// // Copyright 2006 Jim Bublitz // Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson // may also apply // Generated by preSip // module kparts 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., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. namespace KParts { class PartManager : QObject { %TypeHeaderCode #include %End public: enum SelectionPolicy { Direct, TriState }; %If ( KDE_3_3_0 - ) enum Reason { ReasonLeftClick, ReasonMidClick, ReasonRightClick, NoReason }; %End PartManager (QWidget* /TransferThis/, const char* = 0); PartManager (QWidget*, QObject* /TransferThis/, const char* = 0); void setSelectionPolicy (KParts::PartManager::SelectionPolicy); KParts::PartManager::SelectionPolicy selectionPolicy () const; void setAllowNestedParts (bool); bool allowNestedParts () const; void setIgnoreScrollBars (bool); bool ignoreScrollBars () const; %If ( KDE_3_1_0 - ) void setActivationButtonMask (short); short activationButtonMask () const; %End virtual bool eventFilter (QObject*, QEvent*); virtual void addPart (KParts::Part*, bool = 1); virtual void removePart (KParts::Part*); virtual void replacePart (KParts::Part*, KParts::Part*, bool = 1); virtual void setActivePart (KParts::Part*, QWidget* = 0); virtual KParts::Part* activePart () const; virtual QWidget* activeWidget () const; virtual void setSelectedPart (KParts::Part*, QWidget* = 0); virtual KParts::Part* selectedPart () const; virtual QWidget* selectedWidget () const; const QPtrList* parts () const; void addManagedTopLevelWidget (const QWidget*); void removeManagedTopLevelWidget (const QWidget*); %If ( KDE_3_3_0 - ) int reason () const; %End signals: void partAdded (KParts::Part*); void partRemoved (KParts::Part*); void activePartChanged (KParts::Part*); protected: virtual void setActiveInstance (KInstance*); protected slots: void slotObjectDestroyed (); void slotWidgetDestroyed (); void slotManagedTopLevelWidgetDestroyed (); protected: //igx virtual void virtual_hook (int, void*); }; // class PartManager }; // namespace KParts %MappedType QPtrList //converts a Python list of KParts.Part { %TypeHeaderCode #include %End %ConvertFromTypeCode if (!sipCpp) return PyList_New (0); PyObject *pylist; // Create the list if ((pylist = PyList_New(0)) == NULL) return NULL; // Get it. QPtrList *cpplist = (QPtrList *)sipCpp; KParts::Part *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_KParts_Part, sipTransferObj)) == NULL) || PyList_Append (pylist, inst) < 0) { Py_DECREF (pylist); return NULL; } } return pylist; %End %ConvertToTypeCode if (sipIsErr == NULL) return PyList_Check(sipPy); QPtrList *cpplist = new QPtrList; PyObject *elem; KParts::Part *cpp; int iserr = 0; for (int i = 0; i < PyList_Size (sipPy); i++) { elem = PyList_GET_ITEM (sipPy, i); cpp = (KParts::Part *)sipForceConvertToType(elem, sipType_KParts_Part, sipTransferObj, SIP_NO_CONVERTORS, NULL, &iserr); if (iserr) { *sipIsErr = 1; delete cpplist; return 0; } cpplist->append (cpp); } *sipCppPtr = cpplist; return 1; %End };