core.h
00001
00021 #ifndef KOMPOSER_CORE_H
00022 #define KOMPOSER_CORE_H
00023
00024 #include <kparts/mainwindow.h>
00025 #include <kparts/part.h>
00026
00027 #include <qptrlist.h>
00028
00029 namespace KParts {
00030 class PartManager;
00031 }
00032 class QWidgetStack;
00033
00034 namespace Komposer
00035 {
00036
00037 class Editor;
00038
00042 class Core : public KParts::MainWindow
00043 {
00044 Q_OBJECT
00045 public:
00046 Core( QWidget *parentWidget = 0, const char *name = 0 );
00047 virtual ~Core();
00048
00053 virtual void selectEditor( Komposer::Editor* editor );
00058 virtual void selectEditor( const QString& editor );
00059
00063 virtual QPtrList<Komposer::Editor> editorList() const { return m_editors; }
00064
00065 KParts::ReadWritePart* createPart( const char *libname );
00066
00067 protected slots:
00068 void slotActivePartChanged( KParts::Part *part );
00069 void slotPreferences();
00070 void slotQuit();
00071
00072 protected:
00073
00074 virtual void initWidgets();
00075 void loadSettings();
00076 void saveSettings();
00077
00078 void loadEditors();
00079 void unloadEditors();
00080 void addEditor( Komposer::Editor *editor );
00081 void addPart( KParts::Part *part );
00082
00083 private:
00084 QMap<QCString, KParts::ReadWritePart*> m_parts;
00085 KParts::PartManager* m_partManager;
00086 QWidgetStack* m_stack;
00087 Editor* m_currentEditor;
00088 QPtrList<Komposer::Editor> m_editors;
00089
00090 class Private;
00091 Private *d;
00092 };
00093
00094 }
00095
00096 #endif
This file is part of the documentation for libkdepim Library Version 3.2.2.