diff options
Diffstat (limited to 'languages/cpp/app_templates/kscons_kmdi/appkmdi.cpp')
| -rw-r--r-- | languages/cpp/app_templates/kscons_kmdi/appkmdi.cpp | 394 |
1 files changed, 0 insertions, 394 deletions
diff --git a/languages/cpp/app_templates/kscons_kmdi/appkmdi.cpp b/languages/cpp/app_templates/kscons_kmdi/appkmdi.cpp deleted file mode 100644 index 30e6647c..00000000 --- a/languages/cpp/app_templates/kscons_kmdi/appkmdi.cpp +++ /dev/null @@ -1,394 +0,0 @@ -%{CPP_TEMPLATE} - -#include <tqdragobject.h> -#include <tqpainter.h> -#include <tqpaintdevicemetrics.h> -#include <tqdragobject.h> -#include <statusbar.h> -#include <tqtoolbutton.h> - -#include <kdebug.h> -#include <kglobal.h> -#include <ktip.h> -#include <kparts/part.h> -#include <kparts/partmanager.h> - -#include <kio/netaccess.h> -#include <kurl.h> -#include <kurldrag.h> -#include <kurlrequesterdlg.h> -#include <kconfig.h> -#include <kconfigdialog.h> -#include <klibloader.h> -#include <kaboutdata.h> -#include <kfiledialog.h> -#include <kactionclasses.h> -#include <kglobal.h> -#include <klocale.h> -#include <kiconloader.h> -#include <tdeversion.h> -#include <kmenubar.h> -#include <kstatusbar.h> -#include <kkeydialog.h> -#include <kmessagebox.h> -#include <ktabwidget.h> -#include <kedittoolbar.h> -#include <tdeversion.h> -#include <kstdaccel.h> -#include <kaction.h> -#include <kstdaction.h> - -#include "settings.h" -#include "prefs.h" -#include "%{APPNAMELC}kmdiView.h" -#include "kmdikonsole.h" -#include "%{APPNAMELC}kmdi.h" - -%{APPNAMELC}kmdi::%{APPNAMELC}kmdi(KMdi::MdiMode mode) - : KMdiMainFrm( 0, "%{APPNAMELC}", mode ) -{ - resize( 800, 600 ); // start at 800x600 the first time - - setManagedDockPositionModeEnabled(true); - setStandardMDIMenuEnabled(false); - - m_manager = new KParts::PartManager(this); - connect(m_manager, TQT_SIGNAL(activePartChanged(KParts::Part*)), - this, TQT_SLOT(createGUI(KParts::Part*)) ); - -#if KDE_IS_VERSION(3, 3, 0) - setToolviewStyle( KMdi::TextAndIcon ); - tabWidget()->setHoverCloseButton( false ); -#endif - - setMenuForSDIModeSysButtons( menuBar() ); - setManagedDockPositionModeEnabled(true); - - m_console = NULL; - - // accept dnd - setAcceptDrops(true); - - // then, setup our actions - setupActions(); - - //createShellGUI( true ); - - // and a status bar - statusBar()->show(); - - connect( this, TQT_SIGNAL( viewActivated( KMdiChildView * ) ), this, TQT_SLOT( currentChanged( KMdiChildView * ) ) ); - - m_console = new kmdikonsole(this, "konsole"); - m_console->setIcon( SmallIcon("konsole") ); - m_console->setCaption( i18n("Terminal") ); - addToolWindow( m_console, KDockWidget::DockBottom, getMainDockWidget(), 20 ); - - -#if KDE_IS_VERSION(3, 3, 0) - if (Settings::showCloseTabsButton()) - { - TQToolButton *but = new TQToolButton(tabWidget()); - but->setIconSet(SmallIcon("tab_remove")); - but->adjustSize(); - but->hide(); - connect(but, TQT_SIGNAL(clicked()), actionCollection()->action( "file_close" ), TQT_SIGNAL(activated())); - tabWidget()->setCornerWidget(but, TopRight); - } -#endif - - // apply the saved mainwindow settings, if any, and ask the mainwindow - // to automatically save settings if changed: window size, toolbar - // position, icon size, etc. - setAutoSaveSettings(); - - // Read the dock config only if the app was started at least only once - kmdi is tricky - TDEConfig *cfg = new TDEConfig("%{APPNAMELC}_dockposrc"); - if (cfg->readNumEntry("%{APPNAMELC}_main_dock_settings", 0) == 1) manager()->readConfig(cfg); - cfg->writeEntry("%{APPNAMELC}_main_dock_settings", 1); - delete cfg; - - showTipOnStart(); -} - -%{APPNAMELC}kmdi::~%{APPNAMELC}kmdi() -{ - // Write the dock config on exit - TDEConfig *cfg = new TDEConfig("%{APPNAMELC}_dockposrc"); - manager()->writeConfig(cfg); - delete cfg; - delete m_console; -} - -void %{APPNAMELC}kmdi::setupActions() -{ - setXMLFile("%{APPNAMELC}_shell.rc"); - - KStdAction::openNew(this, TQT_SLOT(slotFileNew()), actionCollection()); - - KStdAction::tipOfDay( this, TQT_SLOT( showTip() ), actionCollection() - )->setWhatsThis(i18n("This shows useful tips on the use of this application.")); - - KStdAction::close(this, TQT_SLOT(slotFileClose()), actionCollection()); - KStdAction::quit(this, TQT_SLOT(slotFileQuit()), actionCollection()); - - m_toolbarAction = KStdAction::showToolbar(this, TQT_SLOT(optionsShowToolbar()), actionCollection()); - m_statusbarAction = KStdAction::showStatusbar(this, TQT_SLOT(optionsShowStatusbar()), actionCollection()); - - KStdAction::keyBindings(this, TQT_SLOT(optionsConfigureKeys()), actionCollection()); - KStdAction::preferences(this, TQT_SLOT(optionsPreferences()), actionCollection()); - - KAction* action = KStdAction::configureToolbars(this, - TQT_SLOT(optionsConfigureToolbars()), actionCollection()); - - createGUI( NULL ); -} - -void %{APPNAMELC}kmdi::showTip() -{ - KTipDialog::showTip(this,TQString(),true); -} - -void %{APPNAMELC}kmdi::showTipOnStart() -{ - KTipDialog::showTip(this); -} - -void %{APPNAMELC}kmdi::slotFileNew() -{ - %{APPNAMELC}kmdiView *view = new %{APPNAMELC}kmdiView(this); - m_manager->addPart( view->part() ); - - addWindow( view ); - - // add the tree view to the widget stack - m_views += view; - - currentChanged( view ); -} - -void %{APPNAMELC}kmdi::openURL(const KURL & url) -{ - // check if the url is not already opened first - TQValueList<%{APPNAMELC}kmdiView*>::iterator it = m_views.begin(); - TQValueList<%{APPNAMELC}kmdiView*>::iterator end = m_views.end(); - for (; it != end; ++it) - { - %{APPNAMELC}kmdiView *view = *it; - if (view->part()->url() == url) - { - activateView(view); - return; - } - } - - %{APPNAMELC}kmdiView *view = new %{APPNAMELC}kmdiView(this); - m_manager->addPart( view->part() ); - - addWindow( view ); - - m_views += view; - - view->part()->openURL(url); - currentChanged( view ); -} - -void %{APPNAMELC}kmdi::currentChanged( KMdiChildView *current ) -{ - //kdWarning()<<"current view changed"<<endl; - if (!current) - { - m_manager->setActivePart(NULL); - //setCaption("()"); - return; - } - - // switch to the corresponding document - if ( m_views.contains( (%{APPNAMELC}kmdiView*) current ) ) - { - %{APPNAMELC}kmdiView *view = (%{APPNAMELC}kmdiView*) current; - //view->updateCaption(); - m_manager->setActivePart( view->part() ); - } -} - -void %{APPNAMELC}kmdi::slotFileClose() -{ - requestClose( activeWindow() ); -} - -bool %{APPNAMELC}kmdi::requestClose(KMdiChildView* v) -{ - // kdWarning()<<"closing view"<<v<<endl; - // if (view == NULL) - // return; - - if (v == NULL) - { - if ( m_views.count() == 1) - { - %{APPNAMELC}kmdiView *view = m_views[0]; - if (view->part()->queryClose()) - { - m_manager->removePart( view->part() ); - - closeWindow( view ); - m_views.clear(); - setCaption("kdissert"); - return true; - } - return false; - } - return true; - } - - %{APPNAMELC}kmdiView *view = (%{APPNAMELC}kmdiView*) v; - if ( m_views.contains( view ) ) - { - m_views.remove( view ); - if ( view->part()->queryClose() ) - { - m_manager->removePart( view->part() ); - - closeWindow( view ); - return true; - } - return false; - } - return true; -} - -void %{APPNAMELC}kmdi::slotFileQuit() -{ - close(); -} - -void %{APPNAMELC}kmdi::optionsShowToolbar() -{ - if (m_toolbarAction->isChecked()) - toolBar()->show(); - else - toolBar()->hide(); -} - -void %{APPNAMELC}kmdi::optionsShowStatusbar() -{ - if (m_statusbarAction->isChecked()) - statusBar()->show(); - else - statusBar()->hide(); -} - -void %{APPNAMELC}kmdi::optionsConfigureKeys() -{ - //KKeyDialog::configure(actionCollection()); - KKeyDialog dlg( false, this ); - TQPtrList<KXMLGUIClient> clients = guiFactory()->clients(); - - for( TQPtrListIterator<KXMLGUIClient> it( clients ); it.current(); ++it ) - dlg.insert ( (*it)->actionCollection(), (*it)->instance()->aboutData()->programName() ); - - dlg.configure(); - - for (int i=0; i<m_views.count(); i++) - { - m_views[i]->part()->reloadXML(); - } -} - -void %{APPNAMELC}kmdi::optionsConfigureToolbars() -{ - //saveMainWindowSettings(TDEGlobal::config(), autoSaveGroup()); -} - -void %{APPNAMELC}kmdi::newToolbarConfig() -{ - // This slot is called when user clicks "Ok" or "Apply" in the toolbar editor. - // recreate our GUI, and re-apply the settings (e.g. "text under icons", etc.) - //createGUI(); - //applyMainWindowSettings(TDEGlobal::config(), autoSaveGroup()); -} - -void %{APPNAMELC}kmdi::optionsPreferences() -{ - // The preference dialog is derived from prefs-base.ui which is subclassed into Prefs - // - // compare the names of the widgets in the .ui file - // to the names of the variables in the .kcfg file - if (TDEConfigDialog::showDialog("settings")) - return; - - TDEConfigDialog *dialog = new TDEConfigDialog(this, "settings", Settings::self(), KDialogBase::Swallow); - dialog->addPage(new prefs(), i18n("General"), "package_settings"); - connect(dialog, TQT_SIGNAL(settingsChanged()), this, TQT_SLOT(settingsChanged())); - dialog->show(); -} - -void %{APPNAMELC}kmdi::settingsChanged() -{ - // propagate the changes to our views - /*TQValueList<%{APPNAMELC}kmdiView*>::iterator it = m_views.begin(); - TQValueList<%{APPNAMELC}kmdiView*>::iterator end = m_views.end(); - for (; it != end; ++it) - { - %{APPNAMELC}kmdiView *view = *it; - view->settingsChanged(); - }*/ -} - -void %{APPNAMELC}kmdi::changeStatusbar(const TQString& text) -{ - // display the text on the statusbar - statusBar()->message(text, 2000); -} - -void %{APPNAMELC}kmdi::dragEnterEvent(TQDragEnterEvent *event) -{ - // accept uri drops only - event->accept(KURLDrag::canDecode(event)); -} - -void %{APPNAMELC}kmdi::dropEvent(TQDropEvent *event) -{ - KURL::List urls; - - // see if we can decode a URI.. if not, just ignore it - if (KURLDrag::decode(event, urls) && !urls.isEmpty()) - { - // okay, we have a URI.. process it - const KURL &url = urls.first(); - - // load in the file - openURL(url); - } -} - -bool %{APPNAMELC}kmdi::queryClose() -{ - TQValueList<%{APPNAMELC}kmdiView*>::iterator it; - - // check if we can close all documents - for (it = m_views.begin(); it != m_views.end(); ++it) - { - // kdWarning()<<"searching for the part"<<endl; - %{APPNAMELC}kmdiView *view = *it; - if (!view->part()->queryClose()) - { - return false; - } - } - - // and now close the documents - for (it = m_views.begin(); it != m_views.end(); ++it) - { - // now close all views - %{APPNAMELC}kmdiView *view = *it; - - m_manager->removePart( view->part() ); - closeWindow( view ); - } - - return true; -} - -#include "%{APPNAMELC}kmdi.moc" |
