summaryrefslogtreecommitdiffstats
path: root/src/kdesvn.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <[email protected]>2011-11-16 16:05:53 -0600
committerTimothy Pearson <[email protected]>2011-11-16 16:05:53 -0600
commit2a84b711d4c9c28fd6e03457311fd05203318d24 (patch)
treec825e162ec40405187fd4892b08e8e036a5db308 /src/kdesvn.cpp
parent6cd1f99df4d8a5385335e0148fb0d4e424631e6b (diff)
downloadtdesvn-2a84b711d4c9c28fd6e03457311fd05203318d24.tar.gz
tdesvn-2a84b711d4c9c28fd6e03457311fd05203318d24.zip
Finish rename from prior commit
Diffstat (limited to 'src/kdesvn.cpp')
-rw-r--r--src/kdesvn.cpp450
1 files changed, 0 insertions, 450 deletions
diff --git a/src/kdesvn.cpp b/src/kdesvn.cpp
deleted file mode 100644
index cafaea6..0000000
--- a/src/kdesvn.cpp
+++ /dev/null
@@ -1,450 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2005-2007 by Rajko Albrecht *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
- ***************************************************************************/
-
-
-#include "tdesvn.h"
-#include "urldlg.h"
-#include "tdesvn_part.h"
-
-#include <tqdragobject.h>
-#include <kprinter.h>
-#include <tqpainter.h>
-#include <tqpaintdevicemetrics.h>
-#include <tqcursor.h>
-
-#include <kglobal.h>
-#include <klocale.h>
-#include <kiconloader.h>
-#include <tdeversion.h>
-#include <kstatusbar.h>
-#include <kaccel.h>
-#include <kio/netaccess.h>
-#include <kfiledialog.h>
-#include <kconfig.h>
-#include <kurl.h>
-#include <kurldrag.h>
-#include <kurlrequesterdlg.h>
-#include <khelpmenu.h>
-#include <kmenubar.h>
-#include <kpopupmenu.h>
-#include <kactionclasses.h>
-#include <kmessagebox.h>
-#include <kstdaccel.h>
-#include <kaction.h>
-#include <kstdaction.h>
-#include <kstandarddirs.h>
-#include <kbookmarkmanager.h>
-#include <kbookmarkmenu.h>
-#include <kdebug.h>
-#include <klibloader.h>
-#include <kedittoolbar.h>
-#include <kkeydialog.h>
-#include <kdirselectdialog.h>
-
-#ifdef TESTING_RC
-#include <kcrash.h>
-#endif
-
-tdesvn::tdesvn()
- : KParts::MainWindow( 0, "tdesvn" ),
- KBookmarkOwner()
-{
- m_part = 0;
-#ifdef TESTING_RC
- setXMLFile(TESTING_RC);
- kdDebug()<<"Using test rc file in " << TESTING_RC << endl;
- // I hate this crashhandler in development
- KCrash::setCrashHandler(0);
-#else
- setXMLFile("tdesvnui.rc");
-#endif
- setStandardToolBarMenuEnabled(true);
- // then, setup our actions
- setupActions();
- // and a status bar
- statusBar()->show();
-
- m_bookmarkFile = locateLocal("appdata",TQString::tqfromLatin1("bookmarks.xml"),true);
-
- m_BookmarkManager = KBookmarkManager::managerForFile(m_bookmarkFile,false);
- m_BookmarkManager->setShowNSBookmarks(false);
- m_BookmarkManager->setEditorOptions(TQString::tqfromLatin1("KDE Svn"),false);
-
- m_BookmarksActionmenu = new KActionMenu(i18n("&Bookmarks"),"bookmark",actionCollection(),"bookmarks");
- m_BookmarksActionmenu->setDelayed(false);
- m_BookmarksActionmenu->setEnabled(true);
-
- m_Bookmarkactions = new KActionCollection( this );
- m_Bookmarkactions->setHighlightingEnabled( true );
- connectActionCollection( m_Bookmarkactions );
-
- m_pBookmarkMenu = new KBookmarkMenu(m_BookmarkManager,this,m_BookmarksActionmenu->popupMenu(),m_Bookmarkactions,true);
-// m_BookmarksActionmenu->plug(menuBar());
- // this routine will find and load our Part. it finds the Part by
- // name which is a bad idea usually.. but it's alright in this
- // case since our Part is made for this Shell
- KLibFactory *factory = KLibLoader::self()->factory("libtdesvnpart");
-
- if (factory)
- {
- if (TQCString(factory->className())!="cFactory") {
- kdDebug()<<"wrong factory"<<endl;
- KMessageBox::error(this, i18n("Could not find our part"));
- kapp->quit();
- return;
- }
- cFactory*cfa = static_cast<cFactory*>(factory);
-
- // now that the Part is loaded, we cast it to a Part to get
- // our hands on it
- m_part = static_cast<KParts::ReadOnlyPart *>(cfa->createAppPart(this,"tdesvn_part", TQT_TQOBJECT(this), "tdesvn_part", "KParts::ReadOnlyPart",TQStringList()));
-
- if (m_part)
- {
- // tell the KParts::MainWindow that this is indeed the main widget
- setCentralWidget(m_part->widget());
-
- KAction*tmpAction;
- tmpAction = new KAction(i18n("Create and open new repository"),"filenew",
- KShortcut(),TQT_TQOBJECT(m_part->widget()),TQT_SLOT(slotCreateRepo()),actionCollection(),"subversion_create_repo");
- tmpAction->setToolTip(i18n("Create and opens a new local subversion repository"));
- tmpAction = new KAction(i18n("Dump repository to file"),"filenew",
- KShortcut(),TQT_TQOBJECT(m_part->widget()),TQT_SLOT(slotDumpRepo()),actionCollection(),"subversion_dump_repo");
- tmpAction->setToolTip(i18n("Dump a subversion repository to a file"));
- tmpAction = new KAction(i18n("Hotcopy a repository"),"filenew",
- KShortcut(),TQT_TQOBJECT(m_part->widget()),TQT_SLOT(slotHotcopy()),actionCollection(),"subversion_hotcopy_repo");
- tmpAction->setToolTip(i18n("Hotcopy a subversion repository to a new folder"));
- tmpAction = new KAction(i18n("Load dump into repository"),"filenew",
- KShortcut(),TQT_TQOBJECT(m_part->widget()),TQT_SLOT(slotLoaddump()),actionCollection(),"subversion_load_repo");
- tmpAction->setToolTip(i18n("Load a dump file into a repository."));
- tmpAction = new KAction(i18n("Add ssh identities to ssh-agent"),"password",
- KShortcut(),TQT_TQOBJECT(m_part),TQT_SLOT(slotSshAdd()),actionCollection(),"tdesvn_ssh_add");
- tmpAction->setToolTip(i18n("Force add ssh-identities to ssh-agent for future use."));
- tmpAction = new KAction(i18n("Info about tdesvn part"), "tdesvn",
- KShortcut(), TQT_TQOBJECT(m_part), TQT_SLOT(showAboutApplication()), actionCollection(), "help_about_tdesvnpart");
- tmpAction->setToolTip(i18n("Shows info about the tdesvn plugin not the standalone app."));
-
- /* enable tooltips in statusbar for menu */
- actionCollection()->setHighlightingEnabled(true);
- connectActionCollection(actionCollection());
- // and integrate the part's GUI with the shells
- createGUI(m_part);
- connectActionCollection(m_part->actionCollection());
- } else {
- KMessageBox::error(this, i18n("Could not load the part:\n")+KLibLoader::self()->lastErrorMessage());
- kapp->quit();
- return;
- }
- }
- else
- {
- // if we couldn't find our Part, we exit since the Shell by
- // itself can't do anything useful
- KMessageBox::error(this, i18n("Could not find our part")+TQString(":\n")+KLibLoader::self()->lastErrorMessage());
- kapp->quit();
- // we return here, cause kapp->quit() only means "exit the
- // next time we enter the event loop...
- return;
- }
- setAutoSaveSettings();
-}
-
-void tdesvn::connectActionCollection( KActionCollection *coll )
-{
- if (!coll)return;
- connect( coll, TQT_SIGNAL( actionStatusText( const TQString & ) ),
- this, TQT_SLOT( changeStatusbar( const TQString & ) ) );
- connect( coll, TQT_SIGNAL( clearStatusText() ),
- this, TQT_SLOT( resetStatusBar() ) );
-}
-
-void tdesvn::disconnectActionCollection( KActionCollection *coll )
-{
- if (!coll)return;
-}
-
-tdesvn::~tdesvn()
-{
-}
-
-void tdesvn::loadRescent(const KURL& url)
-{
- load(url,true);
-}
-
-void tdesvn::load(const KURL& url,bool addRescent)
-{
- if (m_part) {
- bool ret = m_part->openURL(url);
- KRecentFilesAction*rac = 0;
- if (addRescent) {
- KAction * ac = actionCollection()->action("file_open_recent");
- if (ac) {
- rac = (KRecentFilesAction*)ac;
- }
- }
- if (!ret) {
- changeStatusbar(i18n("Could not open url %1").tqarg(url.prettyURL()));
- if (rac) {
- rac->removeURL(url);
- }
- } else {
- resetStatusBar();
- if (rac) {
- rac->addURL(url);
- }
- }
- if (rac) {
- rac->saveEntries(KGlobal::config(),"recent_files");
- }
- }
-}
-
-void tdesvn::setupActions()
-{
- KAction*ac;
- KStdAction::open(TQT_TQOBJECT(this), TQT_SLOT(fileOpen()), actionCollection());
- KStdAction::openNew(TQT_TQOBJECT(this),TQT_SLOT(fileNew()),actionCollection());
- ac = KStdAction::close(TQT_TQOBJECT(this),TQT_SLOT(fileClose()),actionCollection());
- ac->setEnabled(getMemberList()->count()>1);
- KStdAction::quit(TQT_TQOBJECT(kapp), TQT_SLOT(quit()), actionCollection());
-
- KRecentFilesAction*rac = KStdAction::openRecent(TQT_TQOBJECT(this),TQT_SLOT(loadRescent(const KURL&)),actionCollection());
- if (rac)
- {
- rac->setMaxItems(8);
- rac->loadEntries(KGlobal::config(),"recent_files");
- rac->setText(i18n("Recent opened URLs"));
- }
-
- KStdAction::keyBindings(TQT_TQOBJECT(this), TQT_SLOT(optionsConfigureKeys()), actionCollection());
- KStdAction::configureToolbars(TQT_TQOBJECT(this), TQT_SLOT(optionsConfigureToolbars()), actionCollection());
-
- m_statusbarAction = KStdAction::showStatusbar(TQT_TQOBJECT(this), TQT_SLOT(optionsShowStatusbar()), actionCollection());
-
- KToggleAction *toggletemp;
- toggletemp = new KToggleAction(i18n("Load last opened URL on start"),KShortcut(),
- actionCollection(),"toggle_load_last_url");
- toggletemp->setToolTip(i18n("Reload last opened url if no one is given on commandline"));
- KConfigGroup cs(KGlobal::config(),"startup");
- toggletemp->setChecked(cs.readBoolEntry("load_last_on_start",false));
- connect(toggletemp,TQT_SIGNAL(toggled(bool)),this,TQT_SLOT(slotLoadLast(bool)));
-}
-
-void tdesvn::optionsShowStatusbar()
-{
- // this is all very cut and paste code for showing/hiding the
- // statusbar
- if (m_statusbarAction->isChecked())
- statusBar()->show();
- else
- statusBar()->hide();
-}
-
-void tdesvn::fileClose()
-{
- if (m_part) m_part->closeURL();
- if (getMemberList()->count()>1) {
- close();
- } else {
- enableClose(false);
- }
-}
-
-void tdesvn::saveProperties(KConfig *config)
-{
- // the 'config' object points to the session managed
- // config file. anything you write here will be available
- // later when this app is restored
- if (!m_part) return;
- if (!m_part->url().isEmpty()) {
-#if KDE_IS_VERSION(3,1,3)
- config->writePathEntry("lastURL", m_part->url().prettyURL());
-#else
- config->writeEntry("lastURL", m_part->url().prettyURL());
-#endif
- }
-}
-
-void tdesvn::readProperties(KConfig *config)
-{
- // the 'config' object points to the session managed
- // config file. this function is automatically called whenever
- // the app is being restored. read in here whatever you wrote
- // in 'saveProperties'
-
- TQString url = config->readPathEntry("lastURL");
-
- if (!url.isEmpty() && m_part)
- m_part->openURL(KURL(url));
-}
-
-void tdesvn::fileNew()
-{
- // this slot is called whenever the File->New menu is selected,
- // the New shortcut is pressed (usually CTRL+N) or the New toolbar
- // button is clicked
-
- // create a new window
- (new tdesvn)->show();
- enableClose(true);
-}
-
-void tdesvn::fileOpen()
-{
- KURL url = UrlDlg::getURL(this);
- if (!url.isEmpty())
- load(url,true);
-}
-
-void tdesvn::changeStatusbar(const TQString& text)
-{
- // display the text on the statusbar
- statusBar()->message(text);
-}
-
-void tdesvn::resetStatusBar()
-{
- statusBar()->message(i18n("Ready"));
-}
-
-void tdesvn::openBookmarkURL (const TQString &_url)
-{
- if (!_url.isEmpty() && m_part)
- load(_url,false);
-}
-
-TQString tdesvn::currentURL () const
-{
- if (!m_part) return "";
- return m_part->url().prettyURL();
-}
-
-void tdesvn::enableClose(bool how)
-{
- KAction * ac;
- if ( (ac=actionCollection()->action("file_close"))) {
- ac->setEnabled(how);
- }
-}
-
-/*!
- \fn tdesvn::slotUrlOpened(bool)
- */
-void tdesvn::slotUrlOpened(bool how)
-{
- enableClose(how);
-}
-
-
-/*!
- \fn tdesvn::optionsConfigureToolbars()
- */
-void tdesvn::optionsConfigureToolbars()
-{
-#if defined(KDE_MAKE_VERSION)
-# if TDE_VERSION >= KDE_MAKE_VERSION(3,1,0)
- saveMainWindowSettings(KGlobal::config(), autoSaveGroup());
-# else
- saveMainWindowSettings(KGlobal::config() );
-# endif
-#else
- saveMainWindowSettings(KGlobal::config() );
-#endif
-
- // use the standard toolbar editor
- KEditToolbar dlg(factory());
- connect(&dlg, TQT_SIGNAL(newToolbarConfig()),
- this, TQT_SLOT(applyNewToolbarConfig()));
- dlg.exec();
-}
-
-
-/*!
- \fn tdesvn::applyNewToolbarConfig()
- */
-void tdesvn::applyNewToolbarConfig()
-{
-#if defined(KDE_MAKE_VERSION)
-# if TDE_VERSION >= KDE_MAKE_VERSION(3,1,0)
- applyMainWindowSettings(KGlobal::config(), autoSaveGroup());
-# else
- applyMainWindowSettings(tdesvnPart::config());
-# endif
-#else
- applyMainWindowSettings(tdesvnPart::config());
-#endif
-}
-
-void tdesvn::optionsConfigureKeys()
-{
- KKeyDialog kdlg(true,m_part->widget());
- kdlg.insert(actionCollection());
- kdlg.insert(m_part->actionCollection());
- bool b = kdlg.configure(true);
- if (b) {
- kdlg.commitChanges();
- }
-}
-
-
-/*!
- \fn tdesvn::queryExit()
- */
-bool tdesvn::queryExit()
-{
- if (m_part) {
- KConfigGroup cs(KGlobal::config(),"startup");
-#if KDE_IS_VERSION(3,1,3)
- cs.writePathEntry("lastURL", m_part->url().prettyURL());
-#else
- cs.writeEntry("lastURL", m_part->url().prettyURL());
-#endif
- }
- return KParts::MainWindow::queryExit();
-}
-
-
-/*!
- \fn tdesvn::checkReload()
- */
-void tdesvn::checkReload()
-{
- KConfigGroup cs(KGlobal::config(),"startup");
- if (!cs.readBoolEntry("load_last_on_start",false))
- return;
-
- TQString url = cs.readPathEntry("lastURL");
-
- if (!url.isEmpty() && m_part)
- load(KURL(url),false);
-}
-
-
-/*!
- \fn tdesvn::slotLoadLast(bool)
- */
-void tdesvn::slotLoadLast(bool how)
-{
- KConfigGroup cs(KGlobal::config(),"startup");
- cs.writeEntry("load_last_on_start",how);
-}
-
-#include "tdesvn.moc"