You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdevelop/kdevdesigner/designer/designerappiface.h

278 lines
9.2 KiB

/**********************************************************************
** Copyright (C) 2000-2001 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 DESIGNERAPPIFACE_H
#define DESIGNERAPPIFACE_H
#include "../interfaces/designerinterface.h"
#include "project.h"
class FormWindow;
class MainWindow;
class Project;
class OutputWindow;
class SourceFile;
class DesignerInterfaceImpl : public DesignerInterface
{
public:
DesignerInterfaceImpl( MainWindow *mw );
DesignerProject *currentProject() const;
DesignerFormWindow *currentForm() const;
DesignerSourceFile *currentSourceFile() const;
TQPtrList<DesignerProject> projectList() const;
void showStatusMessage( const TQString &, int ms = 0 ) const;
DesignerDock *createDock() const;
DesignerOutputDock *outputDock() const;
void setModified( bool b, TQWidget *window );
void updateFunctionList();
void onProjectChange( TQObject *receiver, const char *slot );
void onFormChange( TQObject *receiver, const char *slot );
bool singleProjectMode() const;
void showError( TQWidget *widget, int line, const TQString &message );
void runFinished();
void showStackFrame( TQWidget *w, int line );
void showDebugStep( TQWidget *w, int line );
void runProjectPrecondition();
void runProjectPostcondition( TQObjectList *l );
TQRESULT queryInterface( const TQUuid &uuid, TQUnknownInterface** iface );
TQ_REFCOUNT
private:
MainWindow *mainWindow;
};
class DesignerProjectImpl: public DesignerProject
{
public:
DesignerProjectImpl( Project *pr );
TQPtrList<DesignerFormWindow> formList() const;
TQStringList formNames() const;
TQString formFileName( const TQString &form ) const;
void addForm( DesignerFormWindow * );
void removeForm( DesignerFormWindow * );
TQString fileName() const;
void setFileName( const TQString & );
TQString projectName() const;
void setProjectName( const TQString & );
TQString databaseFile() const;
void setDatabaseFile( const TQString & );
void setupDatabases() const;
TQPtrList<DesignerDatabase> databaseConnections() const;
void addDatabase( DesignerDatabase * );
void removeDatabase( DesignerDatabase * );
void save() const;
void setLanguage( const TQString & );
TQString language() const;
void setCustomSetting( const TQString &key, const TQString &value );
TQString customSetting( const TQString &key ) const;
DesignerPixmapCollection *pixmapCollection() const;
void breakPoints( TQMap<TQString, TQValueList<uint> > &bps ) const;
TQString breakPointCondition( TQObject *o, int line ) const;
void setBreakPointCondition( TQObject *o, int line, const TQString &condition );
void clearAllBreakpoints() const;
void setIncludePath( const TQString &platform, const TQString &path );
void setLibs( const TQString &platform, const TQString &path );
void setDefines( const TQString &platform, const TQString &path );
void setConfig( const TQString &platform, const TQString &config );
void setTemplate( const TQString &t );
TQString config( const TQString &platform ) const;
TQString libs( const TQString &platform ) const;
TQString defines( const TQString &platform ) const;
TQString includePath( const TQString &platform ) const;
TQString templte() const;
bool isGenericObject( TQObject *o ) const;
private:
Project *project;
};
#ifndef TQT_NO_SQL
class TQSqlDatabase;
class DesignerDatabaseImpl: public DesignerDatabase
{
public:
DesignerDatabaseImpl( DatabaseConnection *d );
TQString name() const;
void setName( const TQString & );
TQString driver() const;
void setDriver( const TQString & );
TQString database() const;
void setDatabase( const TQString & );
TQString userName() const;
void setUserName( const TQString & );
TQString password() const;
void setPassword( const TQString & );
TQString hostName() const;
void setHostName( const TQString & );
TQStringList tables() const;
void setTables( const TQStringList & );
TQMap<TQString, TQStringList> fields() const;
void setFields( const TQMap<TQString, TQStringList> & );
void open( bool suppressDialog = TRUE ) const;
void close() const;
TQSqlDatabase* connection();
private:
DatabaseConnection *db;
};
#endif
class DesignerPixmapCollectionImpl : public DesignerPixmapCollection
{
public:
DesignerPixmapCollectionImpl( PixmapCollection *coll );
void addPixmap( const TQPixmap &p, const TQString &name, bool force );
TQPixmap pixmap( const TQString &name ) const;
private:
PixmapCollection *pixCollection;
};
class DesignerFormWindowImpl: public DesignerFormWindow
{
public:
DesignerFormWindowImpl( FormWindow *fw );
TQString name() const;
void setName( const TQString &n );
TQString fileName() const;
void setFileName( const TQString & );
void save() const;
bool isModified() const;
void insertWidget( TQWidget * );
TQWidget *create( const char *className, TQWidget *parent, const char *name );
void removeWidget( TQWidget * );
TQWidgetList widgets() const;
void undo();
void redo();
void cut();
void copy();
void paste();
void adjustSize();
void editConnections();
void checkAccels();
void layoutH();
void layoutV();
void layoutHSplit();
void layoutVSplit();
void layoutG();
void layoutHContainer( TQWidget* w );
void layoutVContainer( TQWidget* w );
void layoutGContainer( TQWidget* w );
void breakLayout();
void selectWidget( TQWidget * );
void selectAll();
void clearSelection();
bool isWidgetSelected( TQWidget * ) const;
TQWidgetList selectedWidgets() const;
TQWidget *currentWidget() const;
TQWidget *form() const;
void setCurrentWidget( TQWidget * );
TQPtrList<TQAction> actionList() const;
TQAction *createAction( const TQString& text, const TQIconSet& icon, const TQString& menuText, int accel,
TQObject* parent, const char* name = 0, bool toggle = FALSE );
void addAction( TQAction * );
void removeAction( TQAction * );
void preview() const;
void addFunction( const TQCString &function, const TQString& specifier, const TQString &access,
const TQString &type, const TQString &language, const TQString &returnType );
void addConnection( TQObject *sender, const char *signal, TQObject *receiver, const char *slot );
void setProperty( TQObject *o, const char *property, const TQVariant &value );
TQVariant property( TQObject *o, const char *property ) const;
void setPropertyChanged( TQObject *o, const char *property, bool changed );
bool isPropertyChanged( TQObject *o, const char *property ) const;
void setColumnFields( TQObject *o, const TQMap<TQString, TQString> & );
TQStringList implementationIncludes() const;
TQStringList declarationIncludes() const;
void setImplementationIncludes( const TQStringList &lst );
void setDeclarationIncludes( const TQStringList &lst );
TQStringList forwardDeclarations() const;
void setForwardDeclarations( const TQStringList &lst );
TQStringList signalList() const;
void setSignalList( const TQStringList &lst );
void addMenu( const TQString &text, const TQString &name );
void addMenuAction( const TQString &menu, TQAction *a );
void addMenuSeparator( const TQString &menu );
void addToolBar( const TQString &text, const TQString &name );
void addToolBarAction( const TQString &tb, TQAction *a );
void addToolBarSeparator( const TQString &tb );
void onModificationChange( TQObject *receiver, const char *slot );
private:
FormWindow *formWindow;
};
class DesignerDockImpl: public DesignerDock
{
public:
DesignerDockImpl();
TQDockWindow *dockWindow() const;
};
class DesignerOutputDockImpl: public DesignerOutputDock
{
public:
DesignerOutputDockImpl( OutputWindow *ow );
TQWidget *addView( const TQString &pageName );
void appendDebug( const TQString & );
void clearDebug();
void appendError( const TQString &, int );
void clearError();
private:
OutputWindow *outWin;
};
class DesignerSourceFileImpl : public DesignerSourceFile
{
public:
DesignerSourceFileImpl( SourceFile *e );
TQString fileName() const;
private:
SourceFile *ed;
};
#endif