joachim99@8: /*************************************************************************** joachim99@8: kreplacements.h - description joachim99@8: ------------------- joachim99@8: begin : Sat Aug 3 2002 joachim99@69: copyright : (C) 2002-2006 by Joachim Eibl joachim99@69: email : joachim.eibl at gmx.de joachim99@8: ***************************************************************************/ joachim99@8: joachim99@8: /*************************************************************************** joachim99@8: * * joachim99@8: * This program is free software; you can redistribute it and/or modify * joachim99@8: * it under the terms of the GNU General Public License as published by * joachim99@8: * the Free Software Foundation; either version 2 of the License, or * joachim99@8: * (at your option) any later version. * joachim99@8: * * joachim99@8: ***************************************************************************/ joachim99@8: joachim99@8: #ifndef KREPLACEMENTS_H joachim99@8: #define KREPLACEMENTS_H joachim99@95: #ifndef __OS2__ joachim99@80: #pragma once joachim99@95: #endif joachim99@8: joachim99@69: #include "common.h" joachim99@69: joachim99@92: #include joachim99@75: #include joachim99@75: #include joachim99@75: #include joachim99@75: #include joachim99@75: #include joachim99@75: #include joachim99@75: #include joachim99@75: #include joachim99@80: //Added by qt3to4: joachim99@80: #include joachim99@80: #include joachim99@80: #include joachim99@80: #include joachim99@75: joachim99@75: class QTabWidget; joachim99@75: class QLabel; joachim99@8: joachim99@8: #include joachim99@66: #include joachim99@8: joachim99@92: QString getTranslationDir(const QString&); joachim99@53: joachim99@8: class KMainWindow; joachim99@80: class KAction; joachim99@80: class KIcon; joachim99@8: joachim99@80: typedef QString KGuiItem; joachim99@80: joachim99@80: inline QString i18n( const char* x ){ return QObject::tr(x); } joachim99@80: joachim99@80: template joachim99@80: inline QString i18n (const char *text, const A1 &a1) joachim99@80: { return QObject::tr(text).arg(a1); } joachim99@80: joachim99@80: template joachim99@80: inline QString i18n (const char *text, const A1 &a1, const A2 &a2) joachim99@80: { return QObject::tr(text).arg(a1).arg(a2); } joachim99@80: joachim99@80: template joachim99@80: inline QString i18n (const char *text, const A1 &a1, const A2 &a2, const A3 &a3) joachim99@80: { return QObject::tr(text).arg(a1).arg(a2).arg(a3); } joachim99@80: joachim99@80: template joachim99@80: inline QString i18n (const char *text, const A1 &a1, const A2 &a2, const A3 &a3, const A4 &a4) joachim99@80: { return QObject::tr(text).arg(a1).arg(a2).arg(a3).arg(a4); } joachim99@80: joachim99@80: joachim99@80: typedef QString KLocalizedString; joachim99@80: #define ki18n(x) QObject::tr(x) joachim99@80: #define I18N_NOOP(x) x joachim99@80: #define RESTORE(x) joachim99@80: #define _UNLOAD(x) joachim99@80: joachim99@80: class KUrl joachim99@8: { joachim99@8: public: joachim99@80: KUrl(){} joachim99@80: KUrl(const QString& s){ m_s = s; } joachim99@80: static KUrl fromPathOrUrl( const QString& s ){ return KUrl(s); } joachim99@8: QString url() const { return m_s; } joachim99@8: bool isEmpty() const { return m_s.isEmpty(); } joachim99@80: QString prettyUrl() const { return m_s; } joachim99@8: bool isLocalFile() const { return true; } joachim99@80: bool isRelative() const { return true; } joachim99@8: bool isValid() const { return true; } joachim99@8: QString path() const { return m_s; } joachim99@8: void setPath( const QString& s ){ m_s=s; } joachim99@8: QString fileName() const { return m_s; } // not really needed joachim99@8: void addPath( const QString& s ){ m_s += "/" + s; } joachim99@8: private: joachim99@8: QString m_s; joachim99@8: }; joachim99@8: joachim99@80: typedef QString KGuiItem; joachim99@80: joachim99@80: class KStandardGuiItem joachim99@80: { joachim99@80: public: joachim99@80: static QString cont() { return i18n("Continue"); } joachim99@80: static QString cancel() { return i18n("Cancel"); } joachim99@80: static QString quit() { return i18n("Quit"); } joachim99@80: }; joachim99@80: joachim99@8: class KMessageBox joachim99@8: { joachim99@8: public: joachim99@8: static void error( QWidget* parent, const QString& text, const QString& caption=QString() ); joachim99@8: static int warningContinueCancel( QWidget* parent, const QString& text, const QString& caption=QString(), joachim99@8: const QString& button1=QString("Continue") ); joachim99@8: static void sorry( QWidget* parent, const QString& text, const QString& caption=QString() ); joachim99@8: static void information( QWidget* parent, const QString& text, const QString& caption=QString() ); joachim99@8: static int warningYesNo( QWidget* parent, const QString& text, const QString& caption, joachim99@8: const QString& button1, const QString& button2 ); joachim99@8: static int warningYesNoCancel( joachim99@8: QWidget* parent, const QString& text, const QString& caption, joachim99@8: const QString& button1, const QString& button2 ); joachim99@8: joachim99@8: enum {Cancel=-1, No=0, Yes=1, Continue=1}; joachim99@8: }; joachim99@8: joachim99@8: joachim99@8: joachim99@80: typedef QMenu KMenu; joachim99@80: joachim99@80: class KPageWidgetItem : public QObject joachim99@80: { joachim99@80: public: joachim99@80: QWidget* m_pWidget; joachim99@80: QString m_title; joachim99@80: joachim99@80: KPageWidgetItem( QWidget* pPage, const QString& title ) joachim99@80: { joachim99@80: m_pWidget = pPage; joachim99@80: m_title = title; joachim99@80: } joachim99@80: void setHeader( const QString& ) {} joachim99@80: void setIcon( const KIcon& ) {} joachim99@80: }; joachim99@80: joachim99@80: joachim99@80: class KPageDialog : public QDialog joachim99@8: { joachim99@8: Q_OBJECT joachim99@75: QTabWidget* m_pTabWidget; joachim99@8: public: joachim99@80: KPageDialog( QWidget* parent ); joachim99@80: ~KPageDialog(); joachim99@8: joachim99@80: void incrementInitialSize ( const QSize& ); joachim99@8: void setHelp(const QString& helpfilename, const QString& ); joachim99@8: enum {IconList, Help, Default, Apply, Ok, Cancel }; joachim99@8: joachim99@8: int BarIcon(const QString& iconName, int ); joachim99@8: joachim99@80: void addPage( KPageWidgetItem* ); joachim99@73: QFrame* addPage( const QString& name, const QString& info, int ); joachim99@8: int spacingHint(); joachim99@8: joachim99@80: enum FaceType { List }; joachim99@80: void setFaceType(FaceType){} joachim99@80: void setButtons(int){} joachim99@80: void setDefaultButton(int){} joachim99@80: void showButtonSeparator(bool){} joachim99@80: private slots: joachim99@80: void slotHelpClicked(); joachim99@8: signals: joachim99@8: void applyClicked(); joachim99@80: void okClicked(); joachim99@80: void helpClicked(); joachim99@80: void defaultClicked(); joachim99@8: }; joachim99@8: joachim99@75: class KFileDialog //: public QFileDialog joachim99@8: { joachim99@8: public: joachim99@80: static KUrl getSaveUrl( const QString &startDir=QString::null, joachim99@8: const QString &filter=QString::null, joachim99@8: QWidget *parent=0, const QString &caption=QString::null); joachim99@80: static KUrl getOpenUrl( const QString & startDir = QString::null, joachim99@8: const QString & filter = QString::null, joachim99@8: QWidget * parent = 0, joachim99@8: const QString & caption = QString::null ); joachim99@80: static KUrl getExistingDirectoryUrl( const QString & startDir = QString::null, joachim99@8: QWidget * parent = 0, joachim99@8: const QString & caption = QString::null ); joachim99@69: static QString getSaveFileName (const QString &startDir=QString::null, joachim99@69: const QString &filter=QString::null, joachim99@69: QWidget *parent=0, joachim99@69: const QString &caption=QString::null); joachim99@8: }; joachim99@8: joachim99@8: typedef QStatusBar KStatusBar; joachim99@8: joachim99@75: class KToolBar : public QToolBar joachim99@8: { joachim99@8: public: joachim99@75: KToolBar(QMainWindow* parent); joachim99@8: joachim99@66: enum BarPosition {Top, Bottom, Left, Right}; joachim99@8: BarPosition barPos(); joachim99@8: void setBarPos(BarPosition); joachim99@66: private: joachim99@75: QMainWindow* m_pMainWindow; joachim99@8: }; joachim99@8: joachim99@8: class KActionCollection joachim99@8: { joachim99@8: public: joachim99@8: KMainWindow* m_pMainWindow; joachim99@8: KActionCollection( KMainWindow* p){ m_pMainWindow=p; } joachim99@80: void addAction(const QString& name, QAction* ); joachim99@80: KAction* addAction(const QString& name ); joachim99@8: }; joachim99@8: joachim99@80: typedef QKeySequence KShortcut; joachim99@80: joachim99@80: class KShortcutsEditor joachim99@8: { joachim99@8: public: joachim99@80: enum { LetterShortcutsAllowed }; joachim99@80: }; joachim99@80: joachim99@80: class KShortcutsDialog joachim99@80: { joachim99@80: public: joachim99@80: static void configure(KActionCollection*){} joachim99@8: static void configureKeys(KActionCollection*, const QString&){} joachim99@80: static void configure(KActionCollection*, int, QWidget*){} joachim99@8: }; joachim99@8: joachim99@8: namespace KParts joachim99@8: { joachim99@8: class ReadWritePart; joachim99@8: } joachim99@8: joachim99@75: class KMainWindow : public QMainWindow joachim99@8: { joachim99@8: Q_OBJECT joachim99@8: private: joachim99@8: KActionCollection m_actionCollection; joachim99@8: protected: joachim99@8: virtual bool queryClose() = 0; joachim99@8: virtual bool queryExit() = 0; joachim99@8: public: joachim99@75: QMenu* fileMenu; joachim99@75: QMenu* editMenu; joachim99@75: QMenu* directoryMenu; joachim99@75: QMenu* dirCurrentItemMenu; joachim99@75: QMenu* dirCurrentSyncItemMenu; joachim99@75: QMenu* movementMenu; joachim99@75: QMenu* mergeMenu; joachim99@75: QMenu* diffMenu; joachim99@75: QMenu* windowsMenu; joachim99@75: QMenu* settingsMenu; joachim99@75: QMenu* helpMenu; joachim99@8: joachim99@8: KToolBar* m_pToolBar; joachim99@8: joachim99@80: KMainWindow( QWidget* parent ); joachim99@8: KToolBar* toolBar(const QString& s = QString::null); joachim99@8: KActionCollection* actionCollection(); joachim99@8: void createGUI(); joachim99@8: void createGUI(KParts::ReadWritePart*){createGUI();} joachim99@8: joachim99@70: QList* memberList; joachim99@8: public slots: joachim99@80: void appHelpActivated(); joachim99@8: void slotAbout(); joachim99@8: }; joachim99@8: joachim99@80: class KConfigGroupData : public ValueMap, public QSharedData joachim99@8: { joachim99@80: public: joachim99@8: QString m_fileName; joachim99@80: ~KConfigGroupData(); joachim99@80: }; joachim99@80: joachim99@80: class KConfigGroup joachim99@80: { joachim99@80: private: joachim99@80: QExplicitlySharedDataPointer d; joachim99@8: public: joachim99@80: KConfigGroup(const KConfigGroup*, const QString& ){} joachim99@80: KConfigGroup(); joachim99@80: ~KConfigGroup(); joachim99@69: void readConfigFile(const QString& configFileName); joachim99@8: joachim99@8: void setGroup(const QString&); joachim99@80: KConfigGroup& group( const QString& groupName ); joachim99@80: joachim99@80: template void writeEntry(const QString& s, const T& v){ d->writeEntry(s,v); } joachim99@80: void writeEntry(const QString& s, const QStringList& v, char separator ){ d->writeEntry(s,v,separator); } joachim99@80: void writeEntry(const QString& s, const char* v){ d->writeEntry(s,v); } joachim99@80: joachim99@80: template T readEntry (const QString& s, const T& defaultVal ){ return d->readEntry(s,defaultVal); } joachim99@80: QString readEntry (const QString& s, const char* defaultVal ){ return d->readEntry(s,defaultVal); } joachim99@80: QStringList readEntry (const QString& s, const QStringList& defaultVal, char separator='|' ){ return d->readEntry(s,defaultVal,separator); } joachim99@8: }; joachim99@8: joachim99@80: typedef KConfigGroup* KSharedConfigPtr; joachim99@80: joachim99@8: class KAction : public QAction joachim99@8: { joachim99@53: Q_OBJECT joachim99@8: public: joachim99@80: KAction( KActionCollection* actionCollection ); joachim99@80: KAction(const QString& text, KActionCollection* actionCollection ); joachim99@70: KAction(const QString& text, const QIcon& icon, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bToggle=false, bool bMenu=true); joachim99@68: KAction(const QString& text, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bToggle=false, bool bMenu=true); joachim99@8: void setStatusText(const QString&); joachim99@75: void plug(QMenu*); joachim99@80: void setIcon( const QIcon& icon ); joachim99@8: }; joachim99@8: joachim99@8: class KToggleAction : public KAction joachim99@8: { joachim99@8: public: joachim99@80: KToggleAction(KActionCollection* actionCollection); joachim99@70: KToggleAction(const QString& text, const QIcon& icon, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bMenu=true); joachim99@68: KToggleAction(const QString& text, int accel, QObject* receiver, const char* slot, KActionCollection* actionCollection, const char* name, bool bMenu=true); joachim99@70: KToggleAction(const QString& text, const QIcon& icon, int accel, KActionCollection* actionCollection, const char* name, bool bMenu=true); joachim99@8: void setChecked(bool); joachim99@8: }; joachim99@8: joachim99@8: joachim99@80: class KStandardAction joachim99@8: { joachim99@8: public: joachim99@8: static KAction* open( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* save( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* saveAs( QWidget* parent, const char* slot, KActionCollection* ); joachim99@69: static KAction* print( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* quit( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* cut( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* copy( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* paste( QWidget* parent, const char* slot, KActionCollection* ); joachim99@69: static KAction* selectAll( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KToggleAction* showToolbar( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KToggleAction* showStatusbar( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* preferences( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* about( QWidget* parent, const char* slot, KActionCollection* ); joachim99@69: static KAction* aboutQt( KActionCollection* ); joachim99@8: static KAction* help( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* find( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* findNext( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: static KAction* keyBindings( QWidget* parent, const char* slot, KActionCollection* ); joachim99@8: }; joachim99@8: joachim99@8: class KIcon joachim99@8: { joachim99@8: public: joachim99@8: enum {SizeMedium,Small}; joachim99@80: KIcon( const QString& ) {} joachim99@8: }; joachim99@8: joachim99@8: class KFontChooser : public QWidget joachim99@8: { joachim99@8: Q_OBJECT joachim99@8: QFont m_font; joachim99@8: QPushButton* m_pSelectFont; joachim99@8: QLabel* m_pLabel; joachim99@8: QWidget* m_pParent; joachim99@8: public: joachim99@80: KFontChooser( QWidget* pParent ); joachim99@8: QFont font(); joachim99@8: void setFont( const QFont&, bool ); joachim99@8: private slots: joachim99@8: void slotSelectFont(); joachim99@8: }; joachim99@8: joachim99@8: class KColorButton : public QPushButton joachim99@8: { joachim99@8: Q_OBJECT joachim99@8: QColor m_color; joachim99@8: public: joachim99@8: KColorButton(QWidget* parent); joachim99@8: QColor color(); joachim99@8: void setColor(const QColor&); joachim99@8: virtual void paintEvent(QPaintEvent* e); joachim99@8: public slots: joachim99@8: void slotClicked(); joachim99@8: }; joachim99@8: joachim99@95: #ifndef QT_NO_PRINTER joachim99@69: class KPrinter : public QPrinter joachim99@69: { joachim99@69: public: joachim99@69: KPrinter(); joachim99@69: enum e_PageSelection {ApplicationSide}; joachim99@75: QList pageList(); joachim99@69: void setCurrentPage(int); joachim99@69: void setPageSelection(e_PageSelection); joachim99@69: }; joachim99@95: #endif joachim99@69: joachim99@69: class KStandardDirs joachim99@69: { joachim99@69: public: joachim99@69: QString findResource(const QString& resource, const QString& appName); joachim99@69: }; joachim99@69: joachim99@80: class KCmdLineOptions joachim99@8: { joachim99@80: public: joachim99@80: KCmdLineOptions& add( const QString& name, const QString& description = 0 ); joachim99@8: }; joachim99@8: joachim99@69: #define KCmdLineLastOption {0,0,0} joachim99@8: joachim99@8: class KAboutData joachim99@8: { joachim99@8: public: joachim99@80: enum LicenseKey { License_GPL, License_GPL_V2, License_Unknown }; joachim99@80: joachim99@80: //KAboutData( const QString& name, const QString& appName, const QString& version, joachim99@80: // const QString& description, int licence, joachim99@80: // const QString& copyright, int w, const QString& homepage, const QString& email); joachim99@80: joachim99@80: KAboutData (const QByteArray &appName, const QByteArray &catalogName, const KLocalizedString &programName, joachim99@80: const QByteArray &version, const KLocalizedString &shortDescription, LicenseKey licenseType, joachim99@80: const KLocalizedString ©rightStatement, const KLocalizedString &text, joachim99@80: const QByteArray &homePageAddress, const QByteArray &bugsEmailAddress); joachim99@80: KAboutData( const QString& name, const QString& appName, const QString& appName2, const QString& version ); joachim99@80: void addAuthor(const QString& name, const QString& task=0, const QString& email=0, const QString& weblink=0); joachim99@80: void addCredit(const QString& name, const QString& task=0, const QString& email=0, const QString& weblink=0); joachim99@66: joachim99@66: struct AboutDataEntry joachim99@66: { joachim99@66: AboutDataEntry(const QString& name, const QString& task, const QString& email, const QString& weblink) joachim99@66: : m_name(name), m_task(task), m_email(email), m_weblink(weblink) joachim99@66: {} joachim99@66: QString m_name; joachim99@66: QString m_task; joachim99@66: QString m_email; joachim99@66: QString m_weblink; joachim99@66: }; joachim99@66: joachim99@66: std::list m_authorList; joachim99@66: std::list m_creditList; joachim99@8: }; joachim99@8: joachim99@75: typedef QList QCStringList; joachim99@8: joachim99@8: class KCmdLineArgs joachim99@8: { joachim99@8: public: joachim99@8: static KCmdLineArgs* parsedArgs(); joachim99@8: static void init( int argc, char**argv, KAboutData* ); joachim99@80: static void addCmdLineOptions( const KCmdLineOptions& options ); // Add our own options. joachim99@8: joachim99@8: int count(); joachim99@8: QString arg(int); joachim99@80: KUrl url(int i){ return KUrl(arg(i)); } joachim99@8: void clear(); joachim99@8: QString getOption(const QString&); joachim99@80: QStringList getOptionList( const QString& ); joachim99@8: bool isSet(const QString&); joachim99@8: }; joachim99@8: joachim99@8: class KIconLoader joachim99@8: { joachim99@8: public: joachim99@80: enum { Small, NoGroup }; joachim99@80: QPixmap loadIcon(const QString& name, int, int =0); joachim99@80: static KIconLoader* global() { return 0; } joachim99@8: }; joachim99@8: joachim99@8: class KApplication : public QApplication joachim99@8: { joachim99@80: KConfigGroup m_config; joachim99@8: KIconLoader m_iconLoader; joachim99@8: public: joachim99@8: KApplication(); joachim99@8: static KApplication* kApplication(); joachim99@8: KIconLoader* iconLoader(); joachim99@80: KConfigGroup* config(); joachim99@8: bool isRestored(); joachim99@8: }; joachim99@8: joachim99@8: extern KApplication* kapp; joachim99@8: joachim99@8: class KLibFactory : public QObject joachim99@8: { joachim99@8: Q_OBJECT joachim99@8: public: joachim99@8: QObject* create(QObject*,const QString&,const QString&); joachim99@8: }; joachim99@8: joachim99@8: class KLibLoader joachim99@8: { joachim99@8: public: joachim99@8: static KLibLoader* self(); joachim99@8: KLibFactory* factory(const QString&); joachim99@8: }; joachim99@8: joachim99@80: class KEditToolBar : public QDialog joachim99@8: { joachim99@8: public: joachim99@80: KEditToolBar( int ){} joachim99@8: }; joachim99@8: joachim99@8: class KGlobal joachim99@8: { joachim99@8: public: joachim99@80: static KConfigGroup* config() { return 0; } joachim99@80: }; joachim99@80: joachim99@80: class KJobUiDelegate joachim99@80: { joachim99@80: public: joachim99@80: void showErrorMessage() {} joachim99@80: }; joachim99@80: joachim99@80: class KJob : public QObject joachim99@80: { joachim99@80: public: joachim99@80: bool error() {return false;} joachim99@80: enum KillVerbosity { Quietly }; joachim99@80: bool kill( KillVerbosity ){return false;} joachim99@80: KJobUiDelegate* uiDelegate() {return 0;} joachim99@8: }; joachim99@8: joachim99@8: namespace KIO joachim99@8: { joachim99@80: enum { Overwrite, DefaultFlags, Resume, HideProgressInfo, NoReload }; joachim99@8: enum UDSEntry {}; joachim99@75: typedef QList UDSEntryList; joachim99@80: class Job : public KJob joachim99@80: { joachim99@8: }; joachim99@80: class SimpleJob : public KJob {}; joachim99@80: SimpleJob* mkdir( KUrl ); joachim99@80: SimpleJob* rmdir( KUrl ); joachim99@80: SimpleJob* file_delete( KUrl, int ); joachim99@80: class FileCopyJob : public KJob {}; joachim99@80: FileCopyJob* file_move( KUrl, KUrl, int, int ); joachim99@80: FileCopyJob* file_copy( KUrl, KUrl, int, int ); joachim99@80: class CopyJob : public KJob {}; joachim99@80: CopyJob* link( KUrl, KUrl, bool ); joachim99@80: class ListJob : public KJob {}; joachim99@80: ListJob* listRecursive( KUrl, bool, bool ); joachim99@80: ListJob* listDir( KUrl, bool, bool ); joachim99@80: class StatJob : public KJob { joachim99@80: public: joachim99@80: enum {SourceSide,DestinationSide}; joachim99@80: UDSEntry statResult(){ return (UDSEntry)0; } joachim99@8: }; joachim99@80: StatJob* stat( KUrl, bool, int, int ); joachim99@80: class TransferJob : public KJob {}; joachim99@80: TransferJob* get( KUrl, int ); joachim99@80: TransferJob* put( KUrl, int, int ); joachim99@8: }; joachim99@8: joachim99@75: typedef QProgressBar KProgress; joachim99@8: joachim99@8: class KInstance : public QObject joachim99@8: { joachim99@8: public: joachim99@8: KInstance(KAboutData*){} joachim99@8: }; joachim99@8: joachim99@80: class KComponentData : public QObject joachim99@80: { joachim99@80: public: joachim99@80: KComponentData(KAboutData*){} joachim99@80: KConfigGroup* config() {return 0;} joachim99@80: }; joachim99@80: joachim99@8: namespace KParts joachim99@8: { joachim99@8: class MainWindow : public KMainWindow joachim99@8: { joachim99@8: public: joachim99@80: MainWindow( QWidget* parent=0 ) : KMainWindow(parent) {} joachim99@8: void setXMLFile(const QString&){} joachim99@8: void setAutoSaveSettings(){} joachim99@80: void saveMainWindowSettings(KConfigGroup&){} joachim99@80: void applyMainWindowSettings(KConfigGroup&){} joachim99@8: int factory(){return 0;} joachim99@8: }; joachim99@8: joachim99@8: class Part : public QObject joachim99@8: { joachim99@8: public: joachim99@8: KActionCollection* actionCollection(); joachim99@8: KApplication* instance(); joachim99@8: void setWidget( QWidget* w ){ m_pWidget=w; } joachim99@8: QWidget* widget(){return m_pWidget;} joachim99@8: void setXMLFile(const QString&){} joachim99@8: private: joachim99@8: QWidget* m_pWidget; joachim99@8: }; joachim99@8: joachim99@8: class ReadOnlyPart : public Part joachim99@8: { joachim99@8: public: joachim99@8: ReadOnlyPart(){} joachim99@75: ReadOnlyPart(QObject*,const QString&){} joachim99@80: QString localFilePath() {return QString(); } joachim99@80: void setComponentData(const KComponentData&){} // actually member of PartBase joachim99@80: KComponentData& componentData() { return *(KComponentData*)0;} joachim99@8: QString m_file; joachim99@8: }; joachim99@8: joachim99@8: class ReadWritePart : public ReadOnlyPart joachim99@8: { joachim99@8: public: joachim99@80: ReadWritePart(QObject*){} joachim99@8: void setReadWrite(bool){} joachim99@8: }; joachim99@8: joachim99@8: class Factory : public KLibFactory joachim99@8: { joachim99@8: Q_OBJECT joachim99@8: public: joachim99@80: virtual KParts::Part* createPartObject( QWidget* /*parentWidget*/, const char * /*widgetName*/, joachim99@80: QObject* /*parent*/, const char * /*name*/, joachim99@80: const char* /*classname*/, const QStringList& /*args*/ ){return 0;} joachim99@8: }; joachim99@8: }; joachim99@8: #endif joachim99@8: joachim99@8: