summaryrefslogtreecommitdiffstats
path: root/kdevdesigner/designer/kdevdesigner_part.h
diff options
context:
space:
mode:
Diffstat (limited to 'kdevdesigner/designer/kdevdesigner_part.h')
-rw-r--r--kdevdesigner/designer/kdevdesigner_part.h146
1 files changed, 146 insertions, 0 deletions
diff --git a/kdevdesigner/designer/kdevdesigner_part.h b/kdevdesigner/designer/kdevdesigner_part.h
new file mode 100644
index 00000000..70712210
--- /dev/null
+++ b/kdevdesigner/designer/kdevdesigner_part.h
@@ -0,0 +1,146 @@
+/***************************************************************************
+ * Copyright (C) 2004 by Alexander Dymo *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the *
+ * Free Software Foundation, Inc., *
+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ ***************************************************************************/
+
+#ifndef _KDEVDESIGNERPART_H_
+#define _KDEVDESIGNERPART_H_
+
+#include <qmap.h>
+
+#include <kparts/part.h>
+#include <kparts/factory.h>
+
+#include "designer.h"
+
+class QWidget;
+class QPainter;
+class KURL;
+class MainWindow;
+class KAction;
+class QAction;
+class KRadioAction;
+
+class KDevDesignerPart : public KInterfaceDesigner::Designer
+{
+ Q_OBJECT
+public:
+ KDevDesignerPart(QWidget *parentWidget, const char *widgetName,
+ QObject *parent, const char *name, const QStringList &args);
+ virtual ~KDevDesignerPart();
+
+ virtual void setReadWrite(bool rw);
+ virtual void setModified(bool modified);
+
+ void statusMessage(const QString &msg);
+
+ //KInterfaceDesigner::Designer methods
+ virtual void openProject(const QString &projectFile);
+ virtual KInterfaceDesigner::DesignerType designerType();
+
+ void emitAddedFunction(const QString &form, KInterfaceDesigner::Function func);
+ void emitEditedFunction(const QString &form, KInterfaceDesigner::Function oldFunc, KInterfaceDesigner::Function func);
+ void emitRemovedFunction(const QString &form, KInterfaceDesigner::Function func);
+
+ void emitEditFunction(const QString &formName, const QString &functionName);
+ void emitEditSource(const QString &formName);
+
+ void emitNewStatus(const QString &formName, int status);
+
+protected:
+ virtual bool openFile();
+ virtual bool saveFile();
+
+ void setupDesignerWindow();
+ void setupActions();
+
+ void stateSync(KAction *kaction, QAction *qaction);
+ void setupToolsAction(KRadioAction *toggle, QAction *action);
+
+protected slots:
+ void setToggleActionChecked(bool b);
+ void setToggleActionOn(bool b);
+
+ void fileNew();
+ void fileOpen();
+ void fileClose();
+ void fileSaveAs();
+ void fileCreateTemplate();
+
+ void editUndo();
+ void editRedo();
+ void editCut();
+ void editCopy();
+ void editPaste();
+ void editDelete();
+ void editSelectAll();
+ void editAccels();
+ void editFunctions();
+ void editConnections();
+ void editFormSettings();
+ void editPreferences();
+
+ void projectAddFile();
+ void projectImageCollection();
+ void projectDatabaseCollections();
+ void projectSettings();
+
+ void toolsConfigureToolbox();
+ void toolsEditCustomWidgets();
+
+ void layoutAdjustSize();
+ void layoutHLayout();
+ void layoutVLayout();
+ void layoutGridLayout();
+ void layoutSplitHLayout();
+ void layoutSplitVLayout();
+ void layoutBreak();
+
+ void windowPreview();
+ void windowNext();
+ void windowPrev();
+
+ void formModified(bool b);
+private:
+ MainWindow *m_widget;
+
+ QMap<const QAction*, KRadioAction*> m_actionMap;
+ QMap<const KRadioAction*, QAction*> m_actionMap2;
+ KRadioAction* pointerAction;
+};
+
+class KInstance;
+class KAboutData;
+
+class KDevDesignerPartFactory : public KParts::Factory
+{
+ Q_OBJECT
+public:
+ KDevDesignerPartFactory();
+ virtual ~KDevDesignerPartFactory();
+ virtual KParts::Part* createPartObject( QWidget *parentWidget, const char *widgetName,
+ QObject *parent, const char *name,
+ const char *classname, const QStringList &args );
+ static KInstance* instance();
+
+private:
+ static KInstance* s_instance;
+ static KAboutData* s_about;
+};
+
+#endif // _KDEVDESIGNERPART_H_