⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 project.h

📁 Linux下的基于X11的图形开发环境。
💻 H
字号:
/************************************************************************ Copyright (C) 2000 Trolltech AS.  All rights reserved.**** This file is part of Qt 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.**** 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.**** Contact info@trolltech.com if any conditions of this licensing are** not clear to you.************************************************************************/#ifndef PROJECT_H#define PROJECT_H#include <qfeatures.h>#include <qstring.h>#include <qstringlist.h>#include <qptrlist.h>#include <qmap.h>#include <private/qpluginmanager_p.h>#include "../interfaces/projectsettingsiface.h"#include "sourcefile.h"#include "formfile.h"#include <qobjectlist.h>#include <qptrdict.h>#include "formfile.h"class QObjectList;struct DesignerProject;struct DesignerDatabase;class PixmapCollection;class Project;#ifndef QT_NO_SQLclass QSqlDatabase;class DatabaseConnection{public:    DatabaseConnection( Project *p ) :#ifndef QT_NO_SQL	conn( 0 ),#endif	project( p ), loaded( FALSE ), iface( 0 ) {}    ~DatabaseConnection();    bool refreshCatalog();    bool open( bool suppressDialog = TRUE );    void close();    DesignerDatabase *iFace();    bool isLoaded() const { return loaded; }    void setName( const QString& n ) { nm = n; }    QString name() const { return nm; }    void setDriver( const QString& d ) { drv = d; }    QString driver() const { return drv; }    void setDatabase( const QString& db ) { dbName = db; }    QString database() const { return dbName; }    void setUsername( const QString& u ) { uname = u; }    QString username() const { return uname; }    void setPassword( const QString& p ) { pword = p; }    QString password() const { return pword; }    void setHostname( const QString& h ) { hname = h; }    QString hostname() const { return hname; }    void setPort( int p ) { prt = p; }    int port() const { return prt; }    QString lastError() const { return dbErr; }    void addTable( const QString& t ) { tbls.append(t); }    void setFields( const QString& t, const QStringList& f ) { flds[t] = f; }    QStringList tables() const { return tbls; }    QStringList fields( const QString& t ) { return flds[t]; }    QMap<QString, QStringList> fields() { return flds; }#ifndef QT_NO_SQL    QSqlDatabase* connection() const { return conn; }    void remove();#endifprivate:    QString nm;    QString drv, dbName, uname, pword, hname;    QString dbErr;    int prt;    QStringList tbls;    QMap<QString, QStringList> flds;#ifndef QT_NO_SQL    QSqlDatabase *conn;#endif    Project *project;    bool loaded;    DesignerDatabase *iface;};#endifclass Project : public QObject{    Q_OBJECT    friend class DatabaseConnection;public:    Project( const QString &fn, const QString &pName = QString::null,	     QPluginManager<ProjectSettingsInterface> *pm = 0, bool isDummy = FALSE,	     const QString &l = "C++" );    ~Project();    void setFileName( const QString &fn, bool doClear = TRUE );    QString fileName( bool singlePro = FALSE ) const;    QString projectName() const;    void setDatabaseDescription( const QString &db );    QString databaseDescription() const;    void setDescription( const QString &s );    QString description() const;    void setLanguage( const QString &l );    QString language() const;    bool isValid() const;    // returns TRUE if this project is the <No Project> project    bool isDummy() const;    QString makeAbsolute( const QString &f );    QString makeRelative( const QString &f );    void save( bool onlyProjectFile = FALSE );#ifndef QT_NO_SQL    QPtrList<DatabaseConnection> databaseConnections() const;    void setDatabaseConnections( const QPtrList<DatabaseConnection> &lst );    void addDatabaseConnection( DatabaseConnection *conn );    void removeDatabaseConnection( const QString &conn );    DatabaseConnection *databaseConnection( const QString &name );    QStringList databaseConnectionList();    QStringList databaseTableList( const QString &connection );    QStringList databaseFieldList( const QString &connection, const QString &table );#endif    void saveConnections();    void loadConnections();    bool openDatabase( const QString &connection, bool suppressDialog = TRUE );    void closeDatabase( const QString &connection );    QObjectList *formList( bool resolveFakeObjects = FALSE ) const;    DesignerProject *iFace();    void setCustomSetting( const QString &key, const QString &value );    QString customSetting( const QString &key ) const;    PixmapCollection *pixmapCollection() const { return pixCollection; }    void setActive( bool b );    QPtrListIterator<SourceFile> sourceFiles() const { return QPtrListIterator<SourceFile>(sourcefiles); }    void addSourceFile( SourceFile *sf );    bool removeSourceFile( SourceFile *sf );    SourceFile* findSourceFile( const QString& filename, SourceFile *ignore = 0 ) const;    QPtrListIterator<FormFile> formFiles() const { return QPtrListIterator<FormFile>(formfiles); }    void addFormFile( FormFile *ff );    bool removeFormFile( FormFile *ff );    FormFile* findFormFile( const QString& filename, FormFile *ignore = 0 ) const;    void setIncludePath( const QString &platform, const QString &path );    void setLibs( const QString &platform, const QString &path );    void setDefines( const QString &platform, const QString &path );    void setConfig( const QString &platform, const QString &config );    void setTemplate( const QString &t );    QString config( const QString &platform ) const;    QString libs( const QString &platform ) const;    QString defines( const QString &platform ) const;    QString includePath( const QString &platform ) const;    QString templte() const;    bool isModified() const { return !isDummy() && modified; }    void setModified( bool b );    void addObject( QObject *o );    void setObjects( const QObjectList &ol );    void removeObject( QObject *o );    QObjectList objects() const;    FormFile *fakeFormFileFor( QObject *o ) const;    QObject *objectForFakeForm( FormWindow *fw ) const;    QObject *objectForFakeFormFile( FormFile *ff ) const;    void addAndEditFunction( const QString &functionName, const QString &functionBody,			     bool openDeveloper );    void removeTempProject();    bool hasParentObject( QObject *o );    QString qualifiedName( QObject *o );    bool isCpp() const { return is_cpp; }    QObjectList *run();    QWidget *findRealForm( QWidget *wid );    void designerCreated();    void formOpened( FormWindow *fw );    QString locationOfObject( QObject *o );    bool hasGUI() const;signals:    void projectModified();    void sourceFileAdded( SourceFile* );    void sourceFileRemoved( SourceFile* );    void formFileAdded( FormFile* );    void formFileRemoved( FormFile* );    void objectAdded( QObject * );    void objectRemoved( QObject * );    void runtimeError( const QString &message, const QString &file, int line );    void runFinished();    void newFormOpened( FormWindow *fw );private slots:    void emitRuntimeError( QObject *, int, const QString & );private:    void parse();    void clear();    void updateCustomSettings();    void readPlatformSettings( const QString &contents,			       const QString &setting,			       QMap<QString, QString> &res );    void removePlatformSettings( QString &contents, const QString &setting );    void writePlatformSettings( QString &contents, const QString &setting,				const QMap<QString, QString> &input );    bool singleProjectMode() const;    QWidget *messageBoxParent() const;private:    QString filename;    QString proName;    QString desc;    QString dbFile;#ifndef QT_NO_SQL    QPtrList<DatabaseConnection> dbConnections;#endif    QString lang;    DesignerProject *iface;    QMap<QString, QString> customSettings;    QStringList csList;    QPluginManager<ProjectSettingsInterface> *projectSettingsPluginManager;    PixmapCollection *pixCollection;    QPtrList<SourceFile> sourcefiles;    QPtrList<FormFile> formfiles;    QMap<QString, QString> inclPath, defs, lbs, cfg;    QString templ;    bool isDummyProject;    bool modified;    QObjectList objs;    QPtrDict<FormFile> fakeFormFiles;    QString singleProFileName;    bool is_cpp;};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -