summaryrefslogtreecommitdiffstats
path: root/python/pykde/sip/kmdi
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commit90825e2392b2d70e43c7a25b8a3752299a933894 (patch)
treee33aa27f02b74604afbfd0ea4f1cfca8833d882a /python/pykde/sip/kmdi
downloadtdebindings-90825e2392b2d70e43c7a25b8a3752299a933894.tar.gz
tdebindings-90825e2392b2d70e43c7a25b8a3752299a933894.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebindings@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'python/pykde/sip/kmdi')
-rw-r--r--python/pykde/sip/kmdi/kmdichildarea.sip102
-rw-r--r--python/pykde/sip/kmdi/kmdichildfrm.sip276
-rw-r--r--python/pykde/sip/kmdi/kmdichildfrmcaption.sip57
-rw-r--r--python/pykde/sip/kmdi/kmdichildview.sip120
-rw-r--r--python/pykde/sip/kmdi/kmdidefines.sip115
-rw-r--r--python/pykde/sip/kmdi/kmdimainfrm.sip339
-rw-r--r--python/pykde/sip/kmdi/kmdimod.sip47
-rw-r--r--python/pykde/sip/kmdi/kmdimod.sip.in48
-rw-r--r--python/pykde/sip/kmdi/kmditaskbar.sip88
-rw-r--r--python/pykde/sip/kmdi/kmditoolviewaccessor.sip53
10 files changed, 1245 insertions, 0 deletions
diff --git a/python/pykde/sip/kmdi/kmdichildarea.sip b/python/pykde/sip/kmdi/kmdichildarea.sip
new file mode 100644
index 00000000..f92e2e96
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdichildarea.sip
@@ -0,0 +1,102 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+class KMdiChildArea : QFrame
+{
+%TypeHeaderCode
+#include <kmdichildarea.h>
+%End
+
+
+public:
+//ig QPtrList<KMdiChildFrm>* m_pZ;
+ QSize m_defaultChildFrmSize;
+
+protected:
+
+public:
+ KMdiChildArea (QWidget*);
+ void manageChild (KMdiChildFrm*, bool = 1, bool = 1);
+ void destroyChild (KMdiChildFrm*, bool = 1);
+ void destroyChildButNotItsView (KMdiChildFrm*, bool = 1);
+ void setTopChild (KMdiChildFrm*, bool = 0);
+ KMdiChildFrm* topChild () const;
+ int getVisibleChildCount () const;
+ QPoint getCascadePoint (int = -1);
+ void setMdiCaptionFont (const QFont&);
+ void setMdiCaptionActiveForeColor (const QColor&);
+ void setMdiCaptionActiveBackColor (const QColor&);
+ void setMdiCaptionInactiveForeColor (const QColor&);
+ void setMdiCaptionInactiveBackColor (const QColor&);
+ static void getCaptionColors (const QPalette&, QColor&, QColor&, QColor&, QColor&);
+
+public slots:
+ void cascadeWindows ();
+ void cascadeMaximized ();
+ void expandVertical ();
+ void expandHorizontal ();
+ void focusTopChild ();
+ void tilePragma ();
+ void tileAnodine ();
+ void tileVertically ();
+ void layoutMinimizedChildren ();
+
+protected:
+ void tileAllInternal (int);
+ virtual void resizeEvent (QResizeEvent*);
+ void mousePressEvent (QMouseEvent*);
+ void childMinimized (KMdiChildFrm*, bool);
+
+signals:
+ void noMaximizedChildFrmLeft (KMdiChildFrm*);
+ void nowMaximized (bool);
+ void sysButtonConnectionsMustChange (KMdiChildFrm*, KMdiChildFrm*);
+ void popupWindowMenu (QPoint);
+ void lastChildFrmClosed ();
+
+//force
+%ConvertToSubClassCode
+ // The table of Python class objects indexed by their names. The table
+ // must be sorted by name.
+
+ static sipStringTypeClassMap map[] = {
+ {sipName_KMdiChildArea, &sipClass_KMdiChildArea},
+ {sipName_KMdiChildFrm, &sipClass_KMdiChildFrm},
+ {sipName_KMdiChildView, &sipClass_KMdiChildView},
+ {sipName_KMdiChildFrmCaption, &sipClass_KMdiChildFrmCaption},
+ {sipName_KMdiMainFrm, &sipClass_KMdiMainFrm},
+ {sipName_KMdiTaskBar, &sipClass_KMdiTaskBar},
+ {sipName_KMdiTaskBarButton, &sipClass_KMdiTaskBarButton},
+ {sipName_KMdiToolViewAccessor, &sipClass_KMdiToolViewAccessor},
+ {sipName_KMdiWin32IconButton, &sipClass_KMdiWin32IconButton},
+ };
+
+ sipClass = sipMapStringToClass(sipCpp -> className(),map,sizeof (map)/sizeof (map[0]));
+%End
+//end
+
+}; // class KMdiChildArea
+
diff --git a/python/pykde/sip/kmdi/kmdichildfrm.sip b/python/pykde/sip/kmdi/kmdichildfrm.sip
new file mode 100644
index 00000000..9aed876e
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdichildfrm.sip
@@ -0,0 +1,276 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+class KMdiWin32IconButton : QLabel
+{
+%TypeHeaderCode
+#include <kmdichildfrm.h>
+%End
+
+
+public:
+ KMdiWin32IconButton (QWidget*, const char* = 0);
+ virtual void mousePressEvent (QMouseEvent*);
+
+signals:
+ void pressed ();
+
+}; // class KMdiWin32IconButton
+
+
+class KMdiChildFrmMoveEvent : QCustomEvent
+{
+%TypeHeaderCode
+#include <kmdichildfrm.h>
+%End
+
+
+public:
+ KMdiChildFrmMoveEvent (QMoveEvent*);
+
+}; // class KMdiChildFrmMoveEvent
+
+
+class KMdiChildFrmDragBeginEvent : QCustomEvent
+{
+%TypeHeaderCode
+#include <kmdichildfrm.h>
+%End
+
+
+public:
+ KMdiChildFrmDragBeginEvent (QMouseEvent*);
+
+}; // class KMdiChildFrmDragBeginEvent
+
+
+class KMdiChildFrmDragEndEvent : QCustomEvent
+{
+%TypeHeaderCode
+#include <kmdichildfrm.h>
+%End
+
+
+public:
+ KMdiChildFrmDragEndEvent (QMouseEvent*);
+
+}; // class KMdiChildFrmDragEndEvent
+
+
+class KMdiChildFrmResizeBeginEvent : QCustomEvent
+{
+%TypeHeaderCode
+#include <kmdichildfrm.h>
+%End
+
+
+public:
+ KMdiChildFrmResizeBeginEvent (QMouseEvent*);
+
+}; // class KMdiChildFrmResizeBeginEvent
+
+
+class KMdiChildFrmResizeEndEvent : QCustomEvent
+{
+%TypeHeaderCode
+#include <kmdichildfrm.h>
+%End
+
+
+public:
+ KMdiChildFrmResizeEndEvent (QMouseEvent*);
+
+}; // class KMdiChildFrmResizeEndEvent
+
+
+class KMdiChildFrm : QFrame
+{
+%TypeHeaderCode
+#include <kmdichildfrm.h>
+%End
+
+
+public:
+
+ enum MdiWindowState
+ {
+ Normal,
+ Maximized,
+ Minimized
+ };
+
+ KMdiChildView* m_pClient;
+
+protected:
+
+public:
+ KMdiChildFrm (KMdiChildArea*);
+ void setClient (KMdiChildView*, bool = 0);
+ void unsetClient (QPoint = QPoint (0 ,0 ));
+ void setIcon (const QPixmap&);
+ QPixmap* icon () const;
+ void enableClose (bool);
+ void setCaption (const QString&);
+ const QString& caption ();
+ void setState (KMdiChildFrm::MdiWindowState, bool = 1);
+ KMdiChildFrm::MdiWindowState state () const;
+ QRect mdiAreaContentsRect () const;
+ QRect restoreGeometry () const;
+ void setRestoreGeometry (const QRect&);
+ void updateRects ();
+ QPopupMenu* systemMenu () const;
+ int captionHeight () const;
+ void redecorateButtons ();
+ bool isInDrag () const;
+ bool isInResize () const;
+ void raiseAndActivate ();
+ virtual void setMinimumSize (int, int);
+
+public slots:
+ void slot_resizeViaSystemMenu ();
+
+protected:
+ virtual void resizeEvent (QResizeEvent*);
+ virtual void mouseMoveEvent (QMouseEvent*);
+ virtual void mousePressEvent (QMouseEvent*);
+ virtual void mouseReleaseEvent (QMouseEvent*);
+ virtual void moveEvent (QMoveEvent*);
+ virtual void leaveEvent (QEvent*);
+ virtual bool eventFilter (QObject*, QEvent*);
+ void resizeWindow (int, int, int);
+ void setResizeCursor (int);
+ void unsetResizeCursor ();
+ virtual void switchToMinimizeLayout ();
+ void doResize ();
+ void doResize (bool);
+
+protected slots:
+ void maximizePressed ();
+ void restorePressed ();
+ void minimizePressed ();
+ void closePressed ();
+ void undockPressed ();
+ void showSystemMenu ();
+
+protected:
+//ig void linkChildren (QDict<FocusPolicy>*);
+ QDict<QWidget::FocusPolicy>* unlinkChildren ();
+ int getResizeCorner (int, int);
+
+protected:
+
+%If ( - KDE_3_2_2 )
+ void linkChildren (QDict<QWidget::FocusPolicy>*);
+%End
+
+
+}; // class KMdiChildFrm
+
+
+
+%MappedType QDict<QWidget::FocusPolicy>
+//converts a Python dict of QWidget::FocusPolicy
+{
+%TypeHeaderCode
+#include <qdict.h>
+#include <sipqtQWidget.h>
+#include <sipqtQString.h>
+%End
+
+%ConvertFromTypeCode
+// Convert to a Python dictionary
+
+ if (!sipCpp)
+ return PyDict_New();
+
+ PyObject *dict;
+
+ // Create the dictionary.
+
+ if ((dict = PyDict_New()) == NULL)
+ return NULL;
+
+ // Get it.
+
+ QDict<QWidget::FocusPolicy> qdict = *sipCpp;
+ QDictIterator<QWidget::FocusPolicy> it (qdict);
+
+ while (it.current ())
+ {
+ PyObject *a0 = sipConvertFromInstance (&it.currentKey (), sipClass_QString, sipTransferObj);
+ PyObject *a1 = PyInt_FromLong ((long) it.current ());
+
+ if ((a0 == NULL) || (a1 == NULL) || (PyDict_SetItem (dict, a0, a1) < 0))
+ {
+ Py_XDECREF (a0);
+ Py_XDECREF (a1);
+ Py_DECREF (dict);
+ return NULL;
+ }
+ }
+
+ return dict;
+%End
+
+
+%ConvertToTypeCode
+ // Convert a Python dictionary to a QDict<int> on the heap.
+
+ if (sipIsErr == NULL)
+ return PyDict_Check(sipPy);
+
+ QDict<QWidget::FocusPolicy>* qdict = new QDict<QWidget::FocusPolicy>;
+
+ PyObject *key, *value;
+ int pos = 0;
+ QString *a0;
+ QWidget::FocusPolicy a1;
+
+ while (PyDict_Next(sipPy, &pos, &key, &value))
+ {
+ int iserr = 0;
+
+ a0 = (QString *)sipForceConvertTo_QString (key, &iserr);
+
+ if ((iserr) || (!PyInt_Check (value)))
+ {
+ *sipIsErr = 1;
+ delete qdict;
+ return 0;
+ }
+
+ a1 = (QWidget::FocusPolicy) PyInt_AS_LONG (value);
+
+ qdict->insert (*a0, &a1);
+ }
+
+ *sipCppPtr = qdict;
+
+ return 1;
+%End
+};
+
+
diff --git a/python/pykde/sip/kmdi/kmdichildfrmcaption.sip b/python/pykde/sip/kmdi/kmdichildfrmcaption.sip
new file mode 100644
index 00000000..c484faed
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdichildfrmcaption.sip
@@ -0,0 +1,57 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+class KMdiChildFrmCaption : QWidget
+{
+%TypeHeaderCode
+#include <kmdichildfrmcaption.h>
+%End
+
+
+public:
+ KMdiChildFrmCaption (KMdiChildFrm*);
+ void setActive (bool);
+ void setCaption (const QString&);
+ int heightHint ();
+
+public slots:
+ void slot_moveViaSystemMenu ();
+
+protected:
+ virtual void paintEvent (QPaintEvent*);
+ virtual void mousePressEvent (QMouseEvent*);
+ virtual void mouseDoubleClickEvent (QMouseEvent*);
+ virtual void mouseReleaseEvent (QMouseEvent*);
+ virtual void mouseMoveEvent (QMouseEvent*);
+ QString abbreviateText (QString, int);
+
+public:
+ QString m_szCaption;
+
+protected:
+
+}; // class KMdiChildFrmCaption
+
diff --git a/python/pykde/sip/kmdi/kmdichildview.sip b/python/pykde/sip/kmdi/kmdichildview.sip
new file mode 100644
index 00000000..b411ee73
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdichildview.sip
@@ -0,0 +1,120 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+class KMdiChildView : QWidget
+{
+%TypeHeaderCode
+#include <kmdichildview.h>
+%End
+
+
+protected:
+
+public:
+ KMdiChildView (const QString&, QWidget* = 0, const char* = 0, WFlags = 0);
+ KMdiChildView (QWidget* = 0, const char* = 0, WFlags = 0);
+ void activate ();
+ void setFirstFocusableChildWidget (QWidget*);
+ void setLastFocusableChildWidget (QWidget*);
+ QWidget* focusedChildWidget ();
+ bool isAttached () const;
+ const QString& caption () const;
+ const QString& tabCaption () const;
+ virtual void setCaption (const QString&);
+ virtual void setTabCaption (const QString&);
+ virtual void setMDICaption (const QString&);
+ KMdiChildFrm* mdiParent () const;
+ bool isMinimized () const;
+ bool isMaximized () const;
+ QRect internalGeometry () const;
+ void setInternalGeometry (const QRect&);
+ QRect externalGeometry () const;
+ void setExternalGeometry (const QRect&);
+ virtual QPixmap* myIconPtr ();
+ virtual void minimize (bool);
+ virtual void maximize (bool);
+ QRect restoreGeometry ();
+ void setRestoreGeometry (const QRect&);
+ void removeEventFilterForAllChildren ();
+ void setWindowMenuID (int);
+ virtual void setMinimumSize (int, int);
+ virtual void setMaximumSize (int, int);
+ bool isToolView () const;
+ void updateTimeStamp ();
+ const QDateTime& getTimeStamp () const;
+
+public slots:
+ virtual void attach ();
+ virtual void detach ();
+ virtual void minimize ();
+ virtual void maximize ();
+ virtual void restore ();
+ virtual void youAreAttached (KMdiChildFrm*);
+ virtual void youAreDetached ();
+ virtual void slot_clickedInWindowMenu ();
+ virtual void slot_clickedInDockMenu ();
+ virtual void show ();
+ virtual void hide ();
+ virtual void raise () /PyName=raise_/;
+ virtual void showMinimized ();
+ virtual void showMaximized ();
+ virtual void showNormal ();
+
+protected:
+ virtual void closeEvent (QCloseEvent*);
+ virtual bool eventFilter (QObject*, QEvent*);
+ virtual void focusInEvent (QFocusEvent*);
+ virtual void focusOutEvent (QFocusEvent*);
+ virtual void resizeEvent (QResizeEvent*);
+ void trackIconAndCaptionChanges (QWidget*);
+
+protected slots:
+ void slot_childDestroyed ();
+
+signals:
+ void attachWindow (KMdiChildView*, bool);
+ void detachWindow (KMdiChildView*, bool);
+ void focusInEventOccurs (KMdiChildView*);
+ void gotFocus (KMdiChildView*);
+ void activated (KMdiChildView*);
+ void lostFocus (KMdiChildView*);
+ void deactivated (KMdiChildView*);
+ void childWindowCloseRequest (KMdiChildView*);
+ void windowCaptionChanged (const QString&);
+ void tabCaptionChanged (const QString&);
+ void mdiParentNowMaximized (bool);
+ void clickedInWindowMenu (int);
+ void clickedInDockMenu (int);
+ void isMaximizedNow ();
+ void isMinimizedNow ();
+ void isRestoredNow ();
+ void isAttachedNow ();
+ void isDetachedNow ();
+ void iconUpdated (QWidget*, QPixmap);
+ void captionUpdated (QWidget*, const QString&);
+
+}; // class KMdiChildView
+
diff --git a/python/pykde/sip/kmdi/kmdidefines.sip b/python/pykde/sip/kmdi/kmdidefines.sip
new file mode 100644
index 00000000..32b54357
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdidefines.sip
@@ -0,0 +1,115 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+%ModuleHeaderCode
+#include <kmdidefines.h>
+%End
+
+namespace KMdi
+{
+
+enum EventType
+{
+ EV_Move,
+ EV_DragBegin,
+ EV_DragEnd,
+ EV_ResizeBegin,
+ EV_ResizeEnd
+};
+
+
+%If ( KDE_3_3_2 - )
+
+enum AddWindowFlags
+{
+ StandardAdd,
+ Maximize,
+ Minimize,
+ Hide,
+ Detach,
+ ToolWindow,
+ UseKMdiSizeHint,
+//ig AddWindowFlags
+};
+
+%End
+
+
+enum FrameDecor
+{
+ Win95Look,
+ KDE1Look,
+ KDELook,
+ KDELaptopLook
+};
+
+
+enum MdiMode
+{
+ UndefinedMode,
+ ToplevelMode,
+ ChildframeMode,
+ TabPageMode,
+ IDEAlMode
+};
+
+
+%If ( KDE_3_3_0 - )
+
+enum TabWidgetVisibility
+{
+ AlwaysShowTabs,
+ ShowWhenMoreThanOneTab,
+ NeverShowTabs
+};
+
+
+enum ToolviewStyle
+{
+ IconOnly,
+ TextOnly,
+ TextAndIcon
+};
+
+%End
+
+
+%If ( - KDE_3_3_2 )
+
+enum AddWindowFlags
+{
+ StandardAdd,
+ Maximize,
+ Minimize,
+ Hide,
+ Detach,
+ ToolWindow,
+ UseKMdiSizeHint
+};
+
+%End
+
+}; // namespace KMdi
+
diff --git a/python/pykde/sip/kmdi/kmdimainfrm.sip b/python/pykde/sip/kmdi/kmdimainfrm.sip
new file mode 100644
index 00000000..c071f0cc
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdimainfrm.sip
@@ -0,0 +1,339 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+class KMdiViewCloseEvent : QCustomEvent
+{
+%TypeHeaderCode
+#include <kmdimainfrm.h>
+%End
+
+
+public:
+ KMdiViewCloseEvent (KMdiChildView*);
+
+}; // class KMdiViewCloseEvent
+
+
+class KMdiMainFrm : KParts::DockMainWindow
+{
+%TypeHeaderCode
+#include <kmdimainfrm.h>
+%End
+
+
+protected:
+
+public:
+ KMdiMainFrm (QWidget*, const char* = "", KMdi::MdiMode = KMdi ::ChildframeMode , WFlags = WType_TopLevel |WDestructiveClose );
+ void setStandardMDIMenuEnabled (bool = 1);
+ void setManagedDockPositionModeEnabled (bool);
+ bool isInMaximizedChildFrmMode ();
+ KMdi::MdiMode mdiMode ();
+ KMdiChildView* activeWindow ();
+ virtual QPopupMenu* taskBarPopup (KMdiChildView*, bool = 0);
+ virtual QPopupMenu* windowPopup (KMdiChildView*, bool = 1);
+ virtual void applyOptions ();
+ KMdiChildView* findWindow (const QString&);
+
+ enum ExistsAs
+ {
+ DocumentView,
+ ToolView,
+ AnyView
+ };
+
+ bool windowExists (KMdiChildView*, KMdiMainFrm::ExistsAs);
+ virtual bool event (QEvent*);
+ virtual void setSysButtonsAtMenuPosition ();
+ virtual int taskBarHeight ();
+ virtual void setUndockPositioningOffset (QPoint);
+//ig KMdiIterator<KMdiChildView*>* createIterator ();
+//ig void deleteIterator (KMdiIterator<KMdiChildView*>*);
+ QPopupMenu* windowMenu () const;
+ virtual void setBackgroundColor (const QColor&);
+ virtual void setBackgroundPixmap (const QPixmap&);
+ void setDefaultChildFrmSize (const QSize&);
+ QSize defaultChildFrmSize ();
+ virtual void setMinimumSize (int, int);
+ int childFrameModeHeight ();
+ virtual void setMenuForSDIModeSysButtons (KMenuBar* = 0);
+ static int frameDecorOfAttachedViews ();
+ void fakeSDIApplication ();
+ bool isFakingSDIApplication () const;
+ virtual bool eventFilter (QObject*, QEvent*);
+ void findRootDockWidgets (QPtrList<KDockWidget>*, QValueList<QRect>*);
+ void setSwitching (const bool);
+ bool switching () const;
+
+public slots:
+ KMdiChildView* createWrapper (QWidget*, const QString&, const QString&);
+ virtual void addWindow (KMdiChildView*, int = KMdi ::StandardAdd );
+
+%If ( KDE_3_3_0 - )
+ void addWindow (KMdiChildView*, int, int);
+%End
+
+ virtual void addWindow (KMdiChildView*, QPoint, int = KMdi ::StandardAdd );
+ virtual void addWindow (KMdiChildView*, QRect, int = KMdi ::StandardAdd );
+ virtual KMdiToolViewAccessor* addToolWindow (QWidget*, KDockWidget::DockPosition = KDockWidget ::DockNone , QWidget* = 0, int = 50, const QString& = 0, const QString& = 0);
+ virtual void deleteToolWindow (QWidget*);
+ virtual void deleteToolWindow (KMdiToolViewAccessor*);
+ KMdiToolViewAccessor* createToolWindow ();
+ virtual void removeWindowFromMdi (KMdiChildView*);
+ virtual void closeWindow (KMdiChildView*, bool = 1);
+ virtual void slot_toggleTaskBar ();
+ virtual void attachWindow (KMdiChildView*, bool = 1, bool = 0);
+ virtual void detachWindow (KMdiChildView*, bool = 1);
+ virtual void childWindowCloseRequest (KMdiChildView*);
+ virtual void closeAllViews ();
+ virtual void iconifyAllViews ();
+ virtual void closeActiveView ();
+ virtual void switchToToplevelMode ();
+ virtual void finishToplevelMode ();
+ virtual void switchToChildframeMode ();
+ virtual void finishChildframeMode ();
+ virtual void switchToTabPageMode ();
+ virtual void finishTabPageMode ();
+ virtual void switchToIDEAlMode ();
+ virtual void finishIDEAlMode (bool = 1);
+ void setIDEAlModeStyle (int);
+
+%If ( KDE_3_3_0 - )
+ void setToolviewStyle (int);
+%End
+
+ bool isViewTaskBarOn ();
+ virtual void showViewTaskBar ();
+ virtual void hideViewTaskBar ();
+ virtual void fillWindowMenu ();
+ virtual void cascadeWindows ();
+ virtual void cascadeMaximized ();
+ virtual void expandVertical ();
+ virtual void expandHorizontal ();
+ virtual void tilePragma ();
+ virtual void tileAnodine ();
+ virtual void tileVertically ();
+ virtual void setFrameDecorOfAttachedViews (int);
+ virtual void setEnableMaximizedChildFrmMode (bool);
+ virtual void activateNextWin ();
+ virtual void activatePrevWin ();
+ virtual void activateFirstWin ();
+ virtual void activateLastWin ();
+ virtual void activateView (int);
+
+protected:
+ virtual void resizeEvent (QResizeEvent*);
+ virtual void createTaskBar ();
+ virtual void createMdiManager ();
+ void blockClearingOfWindowMenu (bool);
+ void findToolViewsDockedToMain (QPtrList<KDockWidget>*, KDockWidget::DockPosition);
+ void dockToolViewsIntoContainers (QPtrList<KDockWidget>&, KDockWidget*);
+ QStringList prepareIdealToTabs (KDockWidget*);
+ void idealToolViewsToStandardTabs (QStringList, KDockWidget::DockPosition, int);
+//force
+%If ( KDE_3_4_0 - )
+ KTabWidget* tabWidget() const;
+%End
+//end
+
+%If ( KDE_3_3_0 - )
+ KMdi::TabWidgetVisibility tabWidgetVisibility ();
+ void setTabWidgetVisibility (KMdi::TabWidgetVisibility);
+%End
+
+
+protected slots:
+ virtual void activateView (KMdiChildView*);
+ virtual void taskbarButtonRightClicked (KMdiChildView*);
+ void switchOffMaximizeModeForMenu (KMdiChildFrm*);
+ void updateSysButtonConnections (KMdiChildFrm*, KMdiChildFrm*);
+ void windowMenuItemActivated (int);
+ void dockMenuItemActivated (int);
+ void popupWindowMenu (QPoint);
+ void dragEndTimeOut ();
+ void closeViewButtonPressed ();
+
+signals:
+ void lastChildFrmClosed ();
+ void lastChildViewClosed ();
+ void leftTopLevelMode ();
+ void childViewIsDetachedNow (QWidget*);
+ void collapseOverlapContainers ();
+ void mdiModeHasBeenChangedTo (KMdi::MdiMode);
+ void viewActivated (KMdiChildView*);
+ void viewDeactivated (KMdiChildView*);
+
+public slots:
+ void prevToolViewInDock ();
+ void nextToolViewInDock ();
+
+signals:
+ void toggleTop ();
+ void toggleLeft ();
+ void toggleRight ();
+ void toggleBottom ();
+
+}; // class KMdiMainFrm
+
+
+
+%MappedType QPtrList<KDockWidget>
+//converts a Python list of KDockWidget
+{
+%TypeHeaderCode
+#include <qptrlist.h>
+%End
+
+%ConvertFromTypeCode
+ if (!sipCpp)
+ return PyList_New (0);
+
+ PyObject *pylist;
+
+ // Create the list
+
+ if ((pylist = PyList_New(0)) == NULL)
+ return NULL;
+
+ // Get it.
+
+ QPtrList<KDockWidget> *cpplist = (QPtrList<KDockWidget> *)sipCpp;
+ KDockWidget *cpp;
+ PyObject *inst;
+
+ // the loop depends on the type of iterator the tmeplate makes available
+ for(cpp = cpplist->first (); cpp != 0; cpp = cpplist->next () )
+ {
+ if (((inst = sipConvertFromInstance (cpp, sipClass_KDockWidget, sipTransferObj)) == NULL)
+ || PyList_Append (pylist, inst) < 0)
+ {
+ Py_DECREF (pylist);
+ return NULL;
+ }
+ }
+
+ return pylist;
+%End
+
+%ConvertToTypeCode
+ if (sipIsErr == NULL)
+ return PyList_Check(sipPy);
+
+ QPtrList<KDockWidget> *cpplist = new QPtrList<KDockWidget>;
+
+ PyObject *elem;
+ KDockWidget *cpp;
+ int iserr = 0;
+
+ for (int i = 0; i < PyList_Size (sipPy); i++)
+ {
+ elem = PyList_GET_ITEM (sipPy, i);
+ cpp = (KDockWidget *)sipForceConvertTo_KDockWidget (elem, &iserr);
+
+ if (iserr)
+ {
+ *sipIsErr = 1;
+ delete cpplist;
+ return 0;
+ }
+
+ cpplist->append (cpp);
+ }
+
+ *sipCppPtr = cpplist;
+
+ return 1;
+%End
+};
+
+
+%MappedType QValueList<QRect>
+//converts a Python list of QRect
+{
+%TypeHeaderCode
+#include <qvaluelist.h>
+%End
+
+%ConvertFromTypeCode
+ if (!sipCpp)
+ return PyList_New(0);
+
+ // Create the list
+ PyObject *pylist;
+ if ((pylist = PyList_New(0)) == NULL)
+ return NULL;
+
+ QValueList<QRect> *cpplist = (QValueList<QRect> *)sipCpp;
+ PyObject *inst;
+
+ // Get it.
+ QValueList<QRect>::Iterator it;
+ for( it = cpplist->begin(); it != cpplist->end(); ++it )
+ {
+ if (((inst = sipBuildResult (NULL, "N", new QRect (*it), sipClass_QRect)) == NULL)
+ || PyList_Append (pylist, inst) < 0)
+ {
+ Py_DECREF (pylist);
+ return NULL;
+ }
+ }
+
+ return pylist;
+%End
+
+
+%ConvertToTypeCode
+ if (sipIsErr == NULL)
+ return PyList_Check(sipPy);
+
+ QValueList<QRect> *cpplist = new QValueList<QRect>;
+
+ PyObject *elem;
+ QRect *cpp;
+ int iserr = 0;
+
+ for (int i = 0; i < PyList_Size (sipPy); i++)
+ {
+ elem = PyList_GET_ITEM (sipPy, i);
+ cpp = (QRect *)sipForceConvertTo_QRect (elem, &iserr);
+
+ if (iserr)
+ {
+ *sipIsErr = 1;
+ delete cpplist;
+ return 0;
+ }
+
+ cpplist->append (*cpp);
+ }
+
+ *sipCppPtr = cpplist;
+
+ return 1;
+%End
+};
+
+
diff --git a/python/pykde/sip/kmdi/kmdimod.sip b/python/pykde/sip/kmdi/kmdimod.sip
new file mode 100644
index 00000000..92551e64
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdimod.sip
@@ -0,0 +1,47 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE_3_5_2
+
+%Copying
+
+ This software 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 software 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 library; see the file COPYING.
+ If not, write to the Free Software Foundation, Inc.,
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+%End
+
+%Module kmdi
+
+%Import qt/qtmod.sip
+%Import dcopmod.sip
+%Import kdecoremod.sip
+%Import qtxml/qtxmlmod.sip
+%Import kdefxmod.sip
+%Import kdeuimod.sip
+%Import kiomod.sip
+%Import kpartsmod.sip
+
+%Include kmdichildarea.sip
+%Include kmdichildfrm.sip
+%Include kmdichildfrmcaption.sip
+%Include kmdichildview.sip
+%Include kmdidefines.sip
+%Include kmdimainfrm.sip
+%Include kmditaskbar.sip
+%Include kmditoolviewaccessor.sip
diff --git a/python/pykde/sip/kmdi/kmdimod.sip.in b/python/pykde/sip/kmdi/kmdimod.sip.in
new file mode 100644
index 00000000..fc44999b
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmdimod.sip.in
@@ -0,0 +1,48 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE_3_5_2
+
+%Copying
+
+ This software 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 software 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 library; see the file COPYING.
+ If not, write to the Free Software Foundation, Inc.,
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+%End
+
+%Module kmdi
+
+%Import qt/qtmod.sip
+%Import dcopmod.sip
+%Import kdecoremod.sip
+%Import qtxml/qtxmlmod.sip
+%Import kdefxmod.sip
+%Import kdeuimod.sip
+%Import kiomod.sip
+%Import kpartsmod.sip
+
+%Include kmdichildarea.sip
+%Include kmdichildfrm.sip
+%Include kmdichildfrmcaption.sip
+%Include kmdichildview.sip
+%Include kmdidefines.sip
+%Include kmdimainfrm.sip
+%Include kmditaskbar.sip
+%Include kmditoolviewaccessor.sip
+@mark@
diff --git a/python/pykde/sip/kmdi/kmditaskbar.sip b/python/pykde/sip/kmdi/kmditaskbar.sip
new file mode 100644
index 00000000..70ac8c0f
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmditaskbar.sip
@@ -0,0 +1,88 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+class KMdiTaskBarButton : QPushButton
+{
+%TypeHeaderCode
+#include <kmditaskbar.h>
+%End
+
+
+public:
+ KMdiTaskBarButton (KMdiTaskBar*, KMdiChildView*);
+ QString actualText () const;
+ void fitText (const QString&, int);
+ void setText (const QString&);
+
+signals:
+ void clicked (KMdiChildView*);
+ void leftMouseButtonClicked (KMdiChildView*);
+ void rightMouseButtonClicked (KMdiChildView*);
+ void buttonTextChanged (int);
+
+public slots:
+ void setNewText (const QString&);
+
+protected slots:
+ void mousePressEvent (QMouseEvent*);
+
+public:
+ KMdiChildView* m_pWindow;
+
+protected:
+
+}; // class KMdiTaskBarButton
+
+
+class KMdiTaskBar : KToolBar
+{
+%TypeHeaderCode
+#include <kmditaskbar.h>
+%End
+
+
+public:
+ KMdiTaskBar (KMdiMainFrm*, Qt::Dock);
+ KMdiTaskBarButton* addWinButton (KMdiChildView*);
+ void removeWinButton (KMdiChildView*, bool = 1);
+ KMdiTaskBarButton* getNextWindowButton (bool, KMdiChildView*);
+ KMdiTaskBarButton* getButton (KMdiChildView*);
+ void switchOn (bool);
+ bool isSwitchedOn () const;
+
+protected:
+ void resizeEvent (QResizeEvent*);
+
+protected slots:
+ void layoutTaskBar (int = 0);
+
+public slots:
+ void setActiveButton (KMdiChildView*);
+
+protected:
+
+}; // class KMdiTaskBar
+
diff --git a/python/pykde/sip/kmdi/kmditoolviewaccessor.sip b/python/pykde/sip/kmdi/kmditoolviewaccessor.sip
new file mode 100644
index 00000000..d36b2527
--- /dev/null
+++ b/python/pykde/sip/kmdi/kmditoolviewaccessor.sip
@@ -0,0 +1,53 @@
+//
+// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
+// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
+// may also apply
+
+
+// Generated by preSip
+// module kmdi version KDE 3.5.3
+
+
+// This software 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 software 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 library; see the file COPYING.
+// If not, write to the Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+class KMdiToolViewAccessor : QObject
+{
+%TypeHeaderCode
+#include <kmditoolviewaccessor.h>
+%End
+
+
+private:
+ KMdiToolViewAccessor (KMdiMainFrm*, QWidget*, const QString& = 0, const QString& = 0);
+ KMdiToolViewAccessor (KMdiMainFrm*);
+
+public:
+ QWidget* wrapperWidget ();
+ QWidget* wrappedWidget ();
+ void place (KDockWidget::DockPosition = KDockWidget ::DockNone , QWidget* = 0, int = 50);
+ void placeAndShow (KDockWidget::DockPosition = KDockWidget ::DockNone , QWidget* = 0, int = 50);
+ void show ();
+
+public slots:
+ void setWidgetToWrap (QWidget*, const QString& = 0, const QString& = 0);
+ void hide ();
+
+protected:
+ bool eventFilter (QObject*, QEvent*);
+
+}; // class KMdiToolViewAccessor
+