| 1 | /**********************************************************************
|
|---|
| 2 | ** Copyright (C) 2000-2001 Trolltech AS. All rights reserved.
|
|---|
| 3 | **
|
|---|
| 4 | ** This file is part of Qt Designer.
|
|---|
| 5 | **
|
|---|
| 6 | ** This file may be distributed and/or modified under the terms of the
|
|---|
| 7 | ** GNU General Public License version 2 as published by the Free Software
|
|---|
| 8 | ** Foundation and appearing in the file LICENSE.GPL included in the
|
|---|
| 9 | ** packaging of this file.
|
|---|
| 10 | **
|
|---|
| 11 | ** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
|
|---|
| 12 | ** licenses may use this file in accordance with the Qt Commercial License
|
|---|
| 13 | ** Agreement provided with the Software.
|
|---|
| 14 | **
|
|---|
| 15 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
|---|
| 16 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|---|
| 17 | **
|
|---|
| 18 | ** See http://www.trolltech.com/gpl/ for GPL licensing information.
|
|---|
| 19 | ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
|
|---|
| 20 | ** information about Qt Commercial License Agreements.
|
|---|
| 21 | **
|
|---|
| 22 | ** Contact info@trolltech.com if any conditions of this licensing are
|
|---|
| 23 | ** not clear to you.
|
|---|
| 24 | **
|
|---|
| 25 | **********************************************************************/
|
|---|
| 26 |
|
|---|
| 27 | #ifndef DESIGNERINTERFACE_H
|
|---|
| 28 | #define DESIGNERINTERFACE_H
|
|---|
| 29 |
|
|---|
| 30 | //
|
|---|
| 31 | // W A R N I N G -- PRIVATE INTERFACES
|
|---|
| 32 | // --------------------------------------
|
|---|
| 33 | //
|
|---|
| 34 | // This file and the interfaces declared in the file are not
|
|---|
| 35 | // public. It exists for internal purpose. This header file and
|
|---|
| 36 | // interfaces may change from version to version (even binary
|
|---|
| 37 | // incompatible) without notice, or even be removed.
|
|---|
| 38 | //
|
|---|
| 39 | // We mean it.
|
|---|
| 40 | //
|
|---|
| 41 | //
|
|---|
| 42 |
|
|---|
| 43 | #include <private/qcom_p.h>
|
|---|
| 44 | #include <qptrlist.h>
|
|---|
| 45 | #include <qstring.h>
|
|---|
| 46 | #include <qmap.h>
|
|---|
| 47 | #include <qstringlist.h>
|
|---|
| 48 | #include <qwidgetlist.h>
|
|---|
| 49 | #include <qobjectlist.h>
|
|---|
| 50 |
|
|---|
| 51 | struct DesignerProject;
|
|---|
| 52 | struct DesignerDatabase;
|
|---|
| 53 | struct DesignerFormWindow;
|
|---|
| 54 | struct DesignerDock;
|
|---|
| 55 | struct DesignerOutputDock;
|
|---|
| 56 | struct DesignerOutput;
|
|---|
| 57 | struct DesignerOutputError;
|
|---|
| 58 | struct DesignerPixmapCollection;
|
|---|
| 59 | struct DesignerSourceFile;
|
|---|
| 60 |
|
|---|
| 61 | class QDockWindow;
|
|---|
| 62 | class QWidget;
|
|---|
| 63 | class QObject;
|
|---|
| 64 | class QAction;
|
|---|
| 65 | class QIconSet;
|
|---|
| 66 | class QSqlDatabase;
|
|---|
| 67 |
|
|---|
| 68 | // {0e661da-f45c-4830-af47-03ec53eb1633}
|
|---|
| 69 | #ifndef IID_Designer
|
|---|
| 70 | #define IID_Designer QUuid( 0xa0e661da, 0xf45c, 0x4830, 0xaf, 0x47, 0x3, 0xec, 0x53, 0xeb, 0x16, 0x33 )
|
|---|
| 71 | #endif
|
|---|
| 72 |
|
|---|
| 73 | /*! These are the interfaces implemented by the Qt Designer which should
|
|---|
| 74 | be used by plugins to access and use functionality of the Qt Designer.
|
|---|
| 75 | */
|
|---|
| 76 |
|
|---|
| 77 | struct DesignerInterface : public QUnknownInterface
|
|---|
| 78 | {
|
|---|
| 79 | virtual DesignerProject *currentProject() const = 0;
|
|---|
| 80 | virtual DesignerFormWindow *currentForm() const = 0;
|
|---|
| 81 | virtual DesignerSourceFile *currentSourceFile() const = 0;
|
|---|
| 82 | virtual QPtrList<DesignerProject> projectList() const = 0;
|
|---|
| 83 | virtual void showStatusMessage( const QString &, int ms = 0 ) const = 0;
|
|---|
| 84 | virtual DesignerDock *createDock() const = 0;
|
|---|
| 85 | virtual DesignerOutputDock *outputDock() const = 0;
|
|---|
| 86 | virtual void setModified( bool b, QWidget *window ) = 0;
|
|---|
| 87 | virtual void updateFunctionList() = 0;
|
|---|
| 88 |
|
|---|
| 89 | virtual void onProjectChange( QObject *receiver, const char *slot ) = 0;
|
|---|
| 90 | virtual void onFormChange( QObject *receiver, const char *slot ) = 0;
|
|---|
| 91 |
|
|---|
| 92 | virtual bool singleProjectMode() const = 0;
|
|---|
| 93 | virtual void showError( QWidget *widget, int line, const QString &message ) = 0;
|
|---|
| 94 | virtual void runFinished() = 0;
|
|---|
| 95 | virtual void showStackFrame( QWidget *w, int line ) = 0;
|
|---|
| 96 | virtual void showDebugStep( QWidget *w, int line ) = 0;
|
|---|
| 97 | virtual void runProjectPrecondition() = 0;
|
|---|
| 98 | virtual void runProjectPostcondition( QObjectList *l ) = 0;
|
|---|
| 99 |
|
|---|
| 100 | };
|
|---|
| 101 |
|
|---|
| 102 | struct DesignerProject
|
|---|
| 103 | {
|
|---|
| 104 | virtual QPtrList<DesignerFormWindow> formList() const = 0;
|
|---|
| 105 | virtual QStringList formNames() const = 0;
|
|---|
| 106 | virtual QString formFileName( const QString &form ) const = 0;
|
|---|
| 107 | virtual void addForm( DesignerFormWindow * ) = 0;
|
|---|
| 108 | virtual void removeForm( DesignerFormWindow * ) = 0;
|
|---|
| 109 | virtual QString fileName() const = 0;
|
|---|
| 110 | virtual void setFileName( const QString & ) = 0;
|
|---|
| 111 | virtual QString projectName() const = 0;
|
|---|
| 112 | virtual void setProjectName( const QString & ) = 0;
|
|---|
| 113 | virtual QString databaseFile() const = 0;
|
|---|
| 114 | virtual void setDatabaseFile( const QString & ) = 0;
|
|---|
| 115 | virtual void setupDatabases() const = 0;
|
|---|
| 116 | virtual QPtrList<DesignerDatabase> databaseConnections() const = 0;
|
|---|
| 117 | virtual void addDatabase( DesignerDatabase * ) = 0;
|
|---|
| 118 | virtual void removeDatabase( DesignerDatabase * ) = 0;
|
|---|
| 119 | virtual void save() const = 0;
|
|---|
| 120 | virtual void setLanguage( const QString & ) = 0;
|
|---|
| 121 | virtual QString language() const = 0;
|
|---|
| 122 | virtual void setCustomSetting( const QString &key, const QString &value ) = 0;
|
|---|
| 123 | virtual QString customSetting( const QString &key ) const = 0;
|
|---|
| 124 | virtual DesignerPixmapCollection *pixmapCollection() const = 0;
|
|---|
| 125 | virtual void breakPoints( QMap<QString, QValueList<uint> > &bps ) const = 0;
|
|---|
| 126 | virtual QString breakPointCondition( QObject *o, int line ) const = 0;
|
|---|
| 127 | virtual void setBreakPointCondition( QObject *o, int line, const QString &condition ) = 0;
|
|---|
| 128 | virtual void clearAllBreakpoints() const = 0;
|
|---|
| 129 | virtual void setIncludePath( const QString &platform, const QString &path ) = 0;
|
|---|
| 130 | virtual void setLibs( const QString &platform, const QString &path ) = 0;
|
|---|
| 131 | virtual void setDefines( const QString &platform, const QString &path ) = 0;
|
|---|
| 132 | virtual void setConfig( const QString &platform, const QString &config ) = 0;
|
|---|
| 133 | virtual void setTemplate( const QString &t ) = 0;
|
|---|
| 134 | virtual QString config( const QString &platform ) const = 0;
|
|---|
| 135 | virtual QString libs( const QString &platform ) const = 0;
|
|---|
| 136 | virtual QString defines( const QString &platform ) const = 0;
|
|---|
| 137 | virtual QString includePath( const QString &platform ) const = 0;
|
|---|
| 138 | virtual QString templte() const = 0;
|
|---|
| 139 | virtual bool isGenericObject( QObject *o ) const = 0;
|
|---|
| 140 |
|
|---|
| 141 | };
|
|---|
| 142 |
|
|---|
| 143 | struct DesignerDatabase
|
|---|
| 144 | {
|
|---|
| 145 | virtual QString name() const = 0;
|
|---|
| 146 | virtual void setName( const QString & ) = 0;
|
|---|
| 147 | virtual QString driver() const = 0;
|
|---|
| 148 | virtual void setDriver( const QString & ) = 0;
|
|---|
| 149 | virtual QString database() const = 0;
|
|---|
| 150 | virtual void setDatabase( const QString & ) = 0;
|
|---|
| 151 | virtual QString userName() const = 0;
|
|---|
| 152 | virtual void setUserName( const QString & ) = 0;
|
|---|
| 153 | virtual QString password() const = 0;
|
|---|
| 154 | virtual void setPassword( const QString & ) = 0;
|
|---|
| 155 | virtual QString hostName() const = 0;
|
|---|
| 156 | virtual void setHostName( const QString & ) = 0;
|
|---|
| 157 | virtual QStringList tables() const = 0;
|
|---|
| 158 | virtual void setTables( const QStringList & ) = 0;
|
|---|
| 159 | virtual QMap<QString, QStringList> fields() const = 0;
|
|---|
| 160 | virtual void setFields( const QMap<QString, QStringList> & ) = 0;
|
|---|
| 161 | virtual void open( bool suppressDialog = FALSE ) const = 0;
|
|---|
| 162 | virtual void close() const = 0;
|
|---|
| 163 | virtual QSqlDatabase* connection() = 0;
|
|---|
| 164 |
|
|---|
| 165 | };
|
|---|
| 166 |
|
|---|
| 167 | struct DesignerPixmapCollection
|
|---|
| 168 | {
|
|---|
| 169 | virtual void addPixmap( const QPixmap &p, const QString &name, bool force ) = 0;
|
|---|
| 170 | virtual QPixmap pixmap( const QString &name ) const = 0;
|
|---|
| 171 | };
|
|---|
| 172 |
|
|---|
| 173 | struct DesignerFormWindow
|
|---|
| 174 | {
|
|---|
| 175 | virtual QString name() const = 0;
|
|---|
| 176 | virtual void setName( const QString &n ) = 0;
|
|---|
| 177 | virtual QString fileName() const = 0;
|
|---|
| 178 | virtual void setFileName( const QString & ) = 0;
|
|---|
| 179 | virtual void save() const = 0;
|
|---|
| 180 | virtual bool isModified() const = 0;
|
|---|
| 181 | virtual void insertWidget( QWidget * ) = 0;
|
|---|
| 182 | virtual void removeWidget( QWidget * ) = 0;
|
|---|
| 183 | virtual QWidget *create( const char *className, QWidget *parent, const char *name ) = 0;
|
|---|
| 184 | virtual QWidgetList widgets() const = 0;
|
|---|
| 185 | virtual void undo() = 0;
|
|---|
| 186 | virtual void redo() = 0;
|
|---|
| 187 | virtual void cut() = 0;
|
|---|
| 188 | virtual void copy() = 0;
|
|---|
| 189 | virtual void paste() = 0;
|
|---|
| 190 | virtual void adjustSize() = 0;
|
|---|
| 191 | virtual void editConnections() = 0;
|
|---|
| 192 | virtual void checkAccels() = 0;
|
|---|
| 193 | virtual void layoutH() = 0;
|
|---|
| 194 | virtual void layoutV() = 0;
|
|---|
| 195 | virtual void layoutHSplit() = 0;
|
|---|
| 196 | virtual void layoutVSplit() = 0;
|
|---|
| 197 | virtual void layoutG() = 0;
|
|---|
| 198 | virtual void layoutHContainer( QWidget* w ) = 0;
|
|---|
| 199 | virtual void layoutVContainer( QWidget* w ) = 0;
|
|---|
| 200 | virtual void layoutGContainer( QWidget* w ) = 0;
|
|---|
| 201 | virtual void breakLayout() = 0;
|
|---|
| 202 | virtual void selectWidget( QWidget * w ) = 0;
|
|---|
| 203 | virtual void selectAll() = 0;
|
|---|
| 204 | virtual void clearSelection() = 0;
|
|---|
| 205 | virtual bool isWidgetSelected( QWidget * ) const = 0;
|
|---|
| 206 | virtual QWidgetList selectedWidgets() const = 0;
|
|---|
| 207 | virtual QWidget *currentWidget() const = 0;
|
|---|
| 208 | virtual QWidget *form() const = 0;
|
|---|
| 209 | virtual void setCurrentWidget( QWidget * ) = 0;
|
|---|
| 210 | virtual QPtrList<QAction> actionList() const = 0;
|
|---|
| 211 | virtual QAction *createAction( const QString& text, const QIconSet& icon, const QString& menuText, int accel,
|
|---|
| 212 | QObject* parent, const char* name = 0, bool toggle = FALSE ) = 0;
|
|---|
| 213 | virtual void addAction( QAction * ) = 0;
|
|---|
| 214 | virtual void removeAction( QAction * ) = 0;
|
|---|
| 215 | virtual void preview() const = 0;
|
|---|
| 216 | virtual void addFunction( const QCString &slot, const QString &specifier, const QString &access,
|
|---|
| 217 | const QString &type, const QString &language, const QString &returnType ) = 0;
|
|---|
| 218 | virtual void addConnection( QObject *sender, const char *signal, QObject *receiver, const char *slot ) = 0;
|
|---|
| 219 | virtual void setProperty( QObject *o, const char *property, const QVariant &value ) = 0;
|
|---|
| 220 | virtual QVariant property( QObject *o, const char *property ) const = 0;
|
|---|
| 221 | virtual void setPropertyChanged( QObject *o, const char *property, bool changed ) = 0;
|
|---|
| 222 | virtual bool isPropertyChanged( QObject *o, const char *property ) const = 0;
|
|---|
| 223 | virtual void setColumnFields( QObject *o, const QMap<QString, QString> & ) = 0;
|
|---|
| 224 | virtual QStringList implementationIncludes() const = 0;
|
|---|
| 225 | virtual QStringList declarationIncludes() const = 0;
|
|---|
| 226 | virtual void setImplementationIncludes( const QStringList &lst ) = 0;
|
|---|
| 227 | virtual void setDeclarationIncludes( const QStringList &lst ) = 0;
|
|---|
| 228 | virtual QStringList forwardDeclarations() const = 0;
|
|---|
| 229 | virtual void setForwardDeclarations( const QStringList &lst ) = 0;
|
|---|
| 230 | virtual QStringList signalList() const = 0;
|
|---|
| 231 | virtual void setSignalList( const QStringList &lst ) = 0;
|
|---|
| 232 | virtual void addMenu( const QString &text, const QString &name ) = 0;
|
|---|
| 233 | virtual void addMenuAction( const QString &menu, QAction *a ) = 0;
|
|---|
| 234 | virtual void addMenuSeparator( const QString &menu ) = 0;
|
|---|
| 235 | virtual void addToolBar( const QString &text, const QString &name ) = 0;
|
|---|
| 236 | virtual void addToolBarAction( const QString &tb, QAction *a ) = 0;
|
|---|
| 237 | virtual void addToolBarSeparator( const QString &tb ) = 0;
|
|---|
| 238 |
|
|---|
| 239 | virtual void onModificationChange( QObject *receiver, const char *slot ) = 0;
|
|---|
| 240 | };
|
|---|
| 241 |
|
|---|
| 242 | struct DesignerSourceFile
|
|---|
| 243 | {
|
|---|
| 244 | virtual QString fileName() const = 0;
|
|---|
| 245 | };
|
|---|
| 246 |
|
|---|
| 247 | struct DesignerDock
|
|---|
| 248 | {
|
|---|
| 249 | virtual QDockWindow *dockWindow() const = 0;
|
|---|
| 250 | };
|
|---|
| 251 |
|
|---|
| 252 | struct DesignerOutputDock
|
|---|
| 253 | {
|
|---|
| 254 | virtual QWidget *addView( const QString &pageName ) = 0;
|
|---|
| 255 | virtual void appendDebug( const QString & ) = 0;
|
|---|
| 256 | virtual void clearDebug() = 0;
|
|---|
| 257 | virtual void appendError( const QString &, int ) = 0;
|
|---|
| 258 | virtual void clearError() = 0;
|
|---|
| 259 | };
|
|---|
| 260 |
|
|---|
| 261 | #endif
|
|---|