diff options
Diffstat (limited to 'tdevdesigner/designer/mainwindow.h')
-rw-r--r-- | tdevdesigner/designer/mainwindow.h | 513 |
1 files changed, 0 insertions, 513 deletions
diff --git a/tdevdesigner/designer/mainwindow.h b/tdevdesigner/designer/mainwindow.h deleted file mode 100644 index f22d371f..00000000 --- a/tdevdesigner/designer/mainwindow.h +++ /dev/null @@ -1,513 +0,0 @@ -/********************************************************************** -** Copyright (C) 2000 Trolltech AS. All rights reserved. -** -** This file is part of TQt Designer. -** -** This file may be distributed and/or modified under the terms of the -** GNU General Public License version 2 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. -** -** Licensees holding valid TQt Enterprise Edition or TQt Professional Edition -** licenses may use this file in accordance with the TQt Commercial License -** Agreement provided with the Software. -** -** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -** -** See http://www.trolltech.com/gpl/ for GPL licensing information. -** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for -** information about TQt Commercial License Agreements. -** -** Contact info@trolltech.com if any conditions of this licensing are -** not clear to you. -** -**********************************************************************/ - -#ifndef MAINWINDOW_H -#define MAINWINDOW_H - -#include "metadatabase.h" -#include "../interfaces/actioninterface.h" // for GCC 2.7.* compatibility -#include "../interfaces/editorinterface.h" -#include "../interfaces/templatewizardiface.h" -#include "../interfaces/languageinterface.h" -#include "../interfaces/filterinterface.h" -#include "../interfaces/interpreterinterface.h" -#include "../interfaces/preferenceinterface.h" -#include "../interfaces/projectsettingsiface.h" -#include "../interfaces/sourcetemplateiface.h" -#include "sourceeditor.h" - -#include <tqaction.h> -#include <tqmainwindow.h> -#include <tqmap.h> -#include <tqguardedptr.h> -#include <tqpluginmanager_p.h> -#include <tqobjectlist.h> - -class TQToolBox; -class PropertyEditor; -class TQWorkspace; -class TQMenuBar; -class FormWindow; -class TQPopupMenu; -class HierarchyView; -class TQCloseEvent; -class Workspace; -class ActionEditor; -class Project; -class OutputWindow; -class TQTimer; -class FindDialog; -struct DesignerProject; -class ReplaceDialog; -class GotoLineDialog; -class SourceFile; -class FormFile; -class TQAssistantClient; -class DesignerAction; - -#if defined(TQ_FULL_TEMPLATE_INSTANTIATION) -#include <tqtoolbar.h> -#else -class TQToolBar; -#endif -class Preferences; - -class TDevDesignerPart; - -class MainWindow : public TQMainWindow -{ - Q_OBJECT - - -public: - enum LineMode { Error, Step, StackFrame }; - - MainWindow( TDevDesignerPart *part, bool asClient, bool single = FALSE, const TQString &plgDir = "/designer" ); - ~MainWindow(); - - HierarchyView *objectHierarchy() const; - Workspace *workspace() const; - PropertyEditor *propertyeditor() const; - ActionEditor *actioneditor() const; - - void resetTool(); - int currentTool() const; - - FormWindow *formWindow(); - - bool unregisterClient( FormWindow *w ); - void editorClosed( SourceEditor *e ); - TQWidget *isAFormWindowChild( TQObject *o ) const; - TQWidget *isAToolBarChild( TQObject *o ) const; - - void insertFormWindow( FormWindow *fw ); - TQWorkspace *qWorkspace() const; - - void popupFormWindowMenu( const TQPoint &gp, FormWindow *fw ); - void popupWidgetMenu( const TQPoint &gp, FormWindow *fw, TQWidget *w ); - - TQPopupMenu *setupNormalHierarchyMenu( TQWidget *parent ); - TQPopupMenu *setupTabWidgetHierarchyMenu( TQWidget *parent, const char *addSlot, const char *removeSlot ); - - FormWindow *openFormWindow( const TQString &fn, bool validFileName = TRUE, FormFile *ff = 0 ); - bool isCustomWidgetUsed( MetaDataBase::CustomWidget *w ); - - void setGrid( const TQPoint &p ); - void setShowGrid( bool b ); - void setSnapGrid( bool b ); - TQPoint grid() const { return grd; } - bool showGrid() const { return sGrid; } - bool snapGrid() const { return snGrid && sGrid; } - - TQString documentationPath() const; - - static MainWindow *self; - - TQString templatePath() const { return templPath; } - - void editFunction( const TQString &func, bool rereadSource = FALSE ); - - bool isPreviewing() const { return previewing; } - - Project *currProject() const { return currentProject; } - - FormWindow *activeForm() const { return lastActiveFormWindow; } - - TemplateWizardInterface* templateWizardInterface( const TQString& className ); - TQStringList sourceTemplates() const; - SourceTemplateInterface* sourceTemplateInterface( const TQString& templ ); - TQUnknownInterface* designerInterface() const { return desInterface; } - TQPtrList<DesignerProject> projectList() const; - TQStringList projectNames() const; - TQStringList projectFileNames() const; - Project *findProject( const TQString &projectName ) const; - void setCurrentProject( Project *pro ); - void setCurrentProjectByFilename( const TQString& proFilename ); - OutputWindow *outputWindow() const { return oWindow; } - void addPreferencesTab( TQWidget *tab, const TQString &title, TQObject *receiver, const char *init_slot, const char *accept_slot ); - void addProjectTab( TQWidget *tab, const TQString &title, TQObject *receiver, const char *init_slot, const char *accept_slot ); - void setModified( bool b, TQWidget *window ); - void functionsChanged(); - void updateFunctionList(); - void updateWorkspace(); - void runProjectPrecondition(); - void runProjectPostcondition( TQObjectList *l ); - - void formNameChanged( FormWindow *fw ); - - int currentLayoutDefaultSpacing() const; - int currentLayoutDefaultMargin() const; - - void saveAllBreakPoints(); - void resetBreakPoints(); - - SourceFile *sourceFile(); - void createNewProject( const TQString &lang ); - - void popupProjectMenu( const TQPoint &pos ); - TQObject *findRealObject( TQObject *o ); - - void setSingleProject( Project *pro ); - bool singleProjectMode() const { return singleProject; } - - void showSourceLine( TQObject *o, int line, LineMode lm ); - - void shuttingDown(); - void showGUIStuff( bool b ); - void setEditorsReadOnly( bool b ); - bool areEditorsReadOnly() const { return editorsReadOnly; } - void toggleSignalHandlers( bool show ); - bool showSignalHandlers() const { return sSignalHandlers; } - void writeConfig(); - - void openProject( const TQString &fn ); - void setPluginDirectory( const TQString &pd ); - TQString pluginDirectory() const { return pluginDir; } - - TQAssistantClient* assistantClient() const { return assistant; } - - void addRecentlyOpenedFile( const TQString &fn ) { addRecentlyOpened( fn, recentlyFiles ); } - - void statusMessage(const TQString &msg); - - //integration - TDevDesignerPart *part() const { return m_part; } - -public slots: - void showProperties( TQObject *w ); - void updateProperties( TQObject *w ); - void showDialogHelp(); - void showDebugStep( TQObject *o, int line ); - void showStackFrame( TQObject *o, int line ); - void showErrorMessage( TQObject *o, int line, const TQString &errorMessage ); - void finishedRun(); - void breakPointsChanged(); - -signals: - void currentToolChanged(); - void hasActiveForm( bool ); - void hasActiveWindow( bool ); - void hasActiveWindowOrProject( bool ); - void hasNonDummyProject( bool ); - void formModified( bool ); - void formWindowsChanged(); - void formWindowChanged(); - void projectChanged(); - void editorChanged(); - -protected: - bool eventFilter( TQObject *o, TQEvent *e ); - void closeEvent( TQCloseEvent *e ); - -public slots: - void fileNew(); - void fileNewDialog(); - void fileNewFile(); - void fileClose(); - void fileQuit(); - void fileCloseProject(); // not visible in menu, called from fileClose - void fileOpen(); - void fileOpen( const TQString &filter, const TQString &extension, const TQString &filename = "" , bool inProject = TRUE ); - bool fileSave(); - bool fileSaveForm(); // not visible in menu, called from fileSave - bool fileSaveProject(); // not visible in menu, called from fileSaveProject - bool fileSaveAs(); - void fileSaveAll(); - void fileCreateTemplate(); - -public slots: - void editUndo(); - void editRedo(); - void editCut(); - void editCopy(); - void editPaste(); - void editDelete(); - void editSelectAll(); - void editLower(); - void editRaise(); - void editAdjustSize(); - void editLayoutHorizontal(); - void editLayoutVertical(); - void editLayoutHorizontalSplit(); - void editLayoutVerticalSplit(); - void editLayoutGrid(); - void editLayoutContainerHorizontal(); - void editLayoutContainerVertical(); - void editLayoutContainerGrid(); - void editBreakLayout(); - void editAccels(); - void editFunctions(); - void editConnections(); - SourceEditor *editSource(); - SourceEditor *editSource( SourceFile *f ); - SourceEditor *openSourceEditor(); - SourceEditor *createSourceEditor( TQObject *object, Project *project, - const TQString &lang = TQString(), - const TQString &func = TQString(), - bool rereadSource = FALSE ); - void editFormSettings(); - void editProjectSettings(); - void editPixmapCollection(); - void editDatabaseConnections(); - void editPreferences(); - - void projectInsertFile(); - - void searchFind(); - void searchIncremetalFindMenu(); - void searchIncremetalFind(); - void searchIncremetalFindNext(); - void searchReplace(); - void searchGotoLine(); - - void previewForm(); - void previewForm( const TQString& ); - - void toolsCustomWidget(); - void toolsConfigure(); - - void helpContents(); - void helpManual(); - void helpAbout(); - void helpAboutQt(); - void helpRegister(); - -private slots: - void activeWindowChanged( TQWidget *w ); - void updateUndoRedo( bool, bool, const TQString &, const TQString & ); - void updateEditorUndoRedo(); - - void toolSelected( TQAction* ); - - void clipboardChanged(); - void selectionChanged(); - - void windowsMenuActivated( int id ); - void setupWindowActions(); - - void createNewTemplate(); - void projectSelected( TQAction *a ); - - void setupRecentlyFilesMenu(); - void setupRecentlyProjectsMenu(); - void recentlyFilesMenuActivated( int id ); - void recentlyProjectsMenuActivated( int id ); - - void emitProjectSignals(); - - void showStartDialog(); - -private: - void setupMDI(); - void setupMenuBar(); - void setupEditActions(); - void setupProjectActions(); - void setupSearchActions(); - void setupToolActions(); - void setupLayoutActions(); - void setupFileActions(); - void setupPreviewActions(); - void setupHelpActions(); - void setupRMBMenus(); - - void setupPropertyEditor(); - void setupHierarchyView(); - void setupWorkspace(); - void setupActionEditor(); - void setupOutputWindow(); - void setupToolbox(); - - void setupActionManager(); - void setupPluginManagers(); - - void enableAll( bool enable ); - - TQWidget* previewFormInternal( TQStyle* style = 0, TQPalette* pal = 0 ); - - void readConfig(); - - void setupRMBProperties( TQValueList<uint> &ids, TQMap<TQString, int> &props, TQWidget *w ); - void handleRMBProperties( int id, TQMap<TQString, int> &props, TQWidget *w ); - void setupRMBSpecialCommands( TQValueList<uint> &ids, TQMap<TQString, int> &commands, TQWidget *w ); - void handleRMBSpecialCommands( int id, TQMap<TQString, int> &commands, TQWidget *w ); - void setupRMBSpecialCommands( TQValueList<uint> &ids, TQMap<TQString, int> &commands, FormWindow *w ); - void handleRMBSpecialCommands( int id, TQMap<TQString, int> &commands, FormWindow *w ); - bool openEditor( TQWidget *w, FormWindow *fw ); - void rebuildCustomWidgetGUI(); - void rebuildCommonWidgetsToolBoxPage(); - void checkTempFiles(); - - void addRecentlyOpened( const TQString &fn, TQStringList &lst ); - - TQString whatsThisFrom( const TQString &key ); - -private slots: - void doFunctionsChanged(); - bool openProjectSettings( Project *pro ); - -private: - struct Tab - { - TQWidget *w; - TQString title; - TQObject *receiver; - const char *init_slot, *accept_slot; - TQ_DUMMY_COMPARISON_OPERATOR( Tab ) - }; - -private: - PropertyEditor *propertyEditor; - HierarchyView *hierarchyView; - Workspace *wspace; - TQWidget *lastPressWidget; - TQWorkspace *qworkspace; - TQMenuBar *menubar; - TQGuardedPtr<FormWindow> lastActiveFormWindow; - bool breakLayout, layoutChilds, layoutSelected; - TQPoint grd; - bool sGrid, snGrid; - bool restoreConfig; - bool backPix; - bool splashScreen; - TQString fileFilter; - - TQMap<TQAction*, Project*> projects; - DesignerAction *actionEditUndo, *actionEditRedo, *actionEditCut, *actionEditCopy, - *actionEditPaste, *actionEditDelete, - *actionEditAdjustSize, - *actionEditHLayout, *actionEditVLayout, *actionEditGridLayout, - *actionEditSplitHorizontal, *actionEditSplitVertical, - *actionEditSelectAll, *actionEditBreakLayout, *actionEditFunctions, *actionEditConnections, - *actionEditLower, *actionEditRaise; - TQAction *actionInsertSpacer; - TQActionGroup *actionGroupTools, *actionGroupProjects; - TQAction* actionPointerTool, *actionConnectTool, *actionOrderTool, *actionBuddyTool; - TQAction* actionCurrentTool; - DesignerAction *actionHelpContents, *actionHelpAbout, *actionHelpAboutTQt, *actionHelpWhatsThis; - DesignerAction *actionHelpManual; -#if defined(TQT_NON_COMMERCIAL) - DesignerAction *actionHelpRegister; -#endif - DesignerAction *actionToolsCustomWidget, *actionEditPreferences; - DesignerAction *actionWindowTile, *actionWindowCascade, *actionWindowClose, *actionWindowCloseAll; - DesignerAction *actionWindowNext, *actionWindowPrevious; - DesignerAction *actionEditFormSettings, *actionEditAccels; - DesignerAction *actionEditSource, *actionNewFile, *actionFileSave, *actionFileExit; - DesignerAction *actionFileClose, *actionFileSaveAs, *actionFileSaveAll; - DesignerAction *actionSearchFind, *actionSearchIncremetal, *actionSearchReplace, *actionSearchGotoLine; - DesignerAction *actionProjectAddFile, *actionEditPixmapCollection, *actionEditDatabaseConnections, - *actionEditProjectSettings, *actionPreview; - TQActionGroup *actionGroupNew; - - TQPopupMenu *rmbWidgets; - TQPopupMenu *rmbFormWindow; - TQPopupMenu *customWidgetMenu, *windowMenu, *fileMenu, *recentlyFilesMenu, *recentlyProjectsMenu; - TQPopupMenu *toolsMenu, *layoutMenu, *previewMenu; - TQToolBar *customWidgetToolBar, *layoutToolBar, *projectToolBar, *customWidgetToolBar2, *toolsToolBar; - TQToolBar *commonWidgetsToolBar; - TQPtrList<TQToolBar> widgetToolBars; - - Preferences *prefDia; - TQMap<TQString,TQString> propertyDocumentation; - bool client; - TQString templPath; - ActionEditor *actionEditor; - Project *currentProject; - TQPluginManager<ActionInterface> *actionPluginManager; - TQPluginManager<EditorInterface> *editorPluginManager; - TQPluginManager<TemplateWizardInterface> *templateWizardPluginManager; - TQPluginManager<InterpreterInterface> *interpreterPluginManager; - TQPluginManager<PreferenceInterface> *preferencePluginManager; - TQPluginManager<ProjectSettingsInterface> *projectSettingsPluginManager; - TQPluginManager<SourceTemplateInterface> *sourceTemplatePluginManager; - TQPtrList<SourceEditor> sourceEditors; - bool previewing; - TQUnknownInterface *desInterface; - TQStringList recentlyFiles; - TQStringList recentlyProjects; - OutputWindow *oWindow; - TQValueList<Tab> preferenceTabs; - TQValueList<Tab> projectTabs; - bool databaseAutoEdit; - TQTimer *updateFunctionsTimer; - TQTimer *autoSaveTimer; - bool autoSaveEnabled; - int autoSaveInterval; - TQLineEdit *incrementalSearch; - TQGuardedPtr<FindDialog> findDialog; - TQGuardedPtr<ReplaceDialog> replaceDialog; - TQGuardedPtr<GotoLineDialog> gotoLineDialog; - Project *eProject; - bool inDebugMode; - TQObjectList debuggingForms; - TQString lastOpenFilter; - TQGuardedPtr<TQWidget> previewedForm; - TQPopupMenu *projectMenu; - TQString menuHelpFile; - bool singleProject; - TQToolBox *toolBox; - int toolsMenuId, toolsMenuIndex; - uint guiStuffVisible : 1; - uint editorsReadOnly : 1; - uint savePluginPaths : 1; - TQAssistantClient *assistant; - bool shStartDialog; - TQString pluginDir; - bool sSignalHandlers; - - TDevDesignerPart *m_part; - -public: - TQString lastSaveFilter; - TQPtrList<TQAction> toolActions; - TQPtrList<TQAction> commonWidgetsPage; - -friend class TDevDesignerPart; -}; - -class SenderObject : public TQObject -{ - Q_OBJECT - - -public: - SenderObject( TQUnknownInterface *i ) : iface( i ) { iface->addRef(); } - ~SenderObject() { iface->release(); } - -public slots: - void emitInitSignal() { emit initSignal( iface ); } - void emitAcceptSignal() { emit acceptSignal( iface ); } - -signals: - void initSignal( TQUnknownInterface * ); - void acceptSignal( TQUnknownInterface * ); - -private: - TQUnknownInterface *iface; - -}; - -#endif |