diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 90825e2392b2d70e43c7a25b8a3752299a933894 (patch) | |
tree | e33aa27f02b74604afbfd0ea4f1cfca8833d882a /python/pykde/sip/kmdi | |
download | tdebindings-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.sip | 102 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmdichildfrm.sip | 276 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmdichildfrmcaption.sip | 57 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmdichildview.sip | 120 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmdidefines.sip | 115 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmdimainfrm.sip | 339 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmdimod.sip | 47 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmdimod.sip.in | 48 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmditaskbar.sip | 88 | ||||
-rw-r--r-- | python/pykde/sip/kmdi/kmditoolviewaccessor.sip | 53 |
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 + |