1
/**********************************************************************
2
** Copyright (C) 2000-2001 Trolltech AS. All rights reserved.
4
** This file is part of Qt Designer.
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.
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.
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.
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.
22
** Contact info@trolltech.com if any conditions of this licensing are
25
**********************************************************************/
27
#ifndef DESIGNERINTERFACE_H
28
#define DESIGNERINTERFACE_H
31
// W A R N I N G -- PRIVATE INTERFACES
32
// --------------------------------------
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.
43
#include <private/qcom_p.h>
47
#include <qstringlist.h>
48
#include <qwidgetlist.h>
49
#include <qobjectlist.h>
51
struct DesignerProject;
52
struct DesignerDatabase;
53
struct DesignerFormWindow;
55
struct DesignerOutputDock;
56
struct DesignerOutput;
57
struct DesignerOutputError;
58
struct DesignerPixmapCollection;
59
struct DesignerSourceFile;
68
// {0e661da-f45c-4830-af47-03ec53eb1633}
70
#define IID_Designer QUuid( 0xa0e661da, 0xf45c, 0x4830, 0xaf, 0x47, 0x3, 0xec, 0x53, 0xeb, 0x16, 0x33 )
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.
77
struct DesignerInterface : public QUnknownInterface
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;
89
virtual void onProjectChange( QObject *receiver, const char *slot ) = 0;
90
virtual void onFormChange( QObject *receiver, const char *slot ) = 0;
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;
102
struct DesignerProject
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;
143
struct DesignerDatabase
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;
167
struct DesignerPixmapCollection
169
virtual void addPixmap( const QPixmap &p, const QString &name, bool force ) = 0;
170
virtual QPixmap pixmap( const QString &name ) const = 0;
173
struct DesignerFormWindow
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;
239
virtual void onModificationChange( QObject *receiver, const char *slot ) = 0;
242
struct DesignerSourceFile
244
virtual QString fileName() const = 0;
249
virtual QDockWindow *dockWindow() const = 0;
252
struct DesignerOutputDock
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;