// // Copyright 2006 Jim Bublitz // Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson // may also apply // Generated by preSip // module kdeui 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. class KKeyChooser : QWidget { %TypeHeaderCode #include %End public: enum ActionType { Application, ApplicationGlobal, Standard, Global }; KKeyChooser (QWidget* /TransferThis/, KKeyChooser::ActionType = Application , bool = 1); KKeyChooser (KActionCollection*, QWidget* /TransferThis/, bool = 1); KKeyChooser (KAccel*, QWidget* /TransferThis/, bool = 1); KKeyChooser (KGlobalAccel*, QWidget* /TransferThis/); KKeyChooser (KShortcutList*, QWidget* /TransferThis/, KKeyChooser::ActionType = Application , bool = 1); bool insert (KActionCollection*); %If ( KDE_3_1_0 - ) bool insert (KActionCollection*, const QString&); %End void syncToConfig (const QString&, KConfigBase*, bool); void commitChanges (); void save (); %If ( KDE_3_2_0 - ) static bool checkGlobalShortcutsConflict (const KShortcut&, bool, QWidget* /Transfer/); static bool checkStandardShortcutsConflict (const KShortcut&, bool, QWidget* /Transfer/); %End signals: void keyChange (); public slots: void allDefault (); void setPreferFourModifierKeys (bool); protected: void initGUI (KKeyChooser::ActionType, bool); bool insert (KAccel*); bool insert (KGlobalAccel*); bool insert (KShortcutList*); %If ( KDE_3_1_0 - ) void buildListView (uint, const QString& = QString ::null ); %End void readGlobalKeys (); void updateButtons (); void fontChange (const QFont&); void setShortcut (const KShortcut&); bool isKeyPresent (const KShortcut&, bool = 1); %If ( KDE_3_1_0 - ) //ig bool isKeyPresentLocally (const KShortcut&, KKeyChooserItem*, const QString&); %End void _warning (const KKeySequence&, QString, QString); protected slots: void slotNoKey (); void slotDefaultKey (); void slotCustomKey (); void slotListItemSelected (QListViewItem*); void capturedShortcut (const KShortcut&); %If ( KDE_3_1_0 - ) void slotSettingsChanged (int); %If ( KDE_3_1_2 - ) void slotListItemDoubleClicked (QListViewItem*, const QPoint&, int); %End %End protected: public: KKeyChooser (KAccel*, QWidget* /TransferThis/, bool, bool, bool = 0); KKeyChooser (KGlobalAccel*, QWidget* /TransferThis/, bool, bool, bool = 0); public slots: void listSync (); protected: //igx virtual void virtual_hook (int, void*); protected: %If ( - KDE_3_1_0 ) void buildListView (uint); %End }; // class KKeyChooser class KKeyDialog : KDialogBase { %TypeHeaderCode #include %End public: KKeyDialog (bool = 1, QWidget* /TransferThis/ = 0, const char* = 0); bool insert (KActionCollection*); %If ( KDE_3_1_0 - ) bool insert (KActionCollection*, const QString&); %End bool configure (bool = 1); void commitChanges (); static int configure (KActionCollection*, QWidget* /Transfer/ = 0, bool = 1); static int configure (KAccel*, QWidget* /Transfer/ = 0, bool = 1); static int configure (KGlobalAccel*, QWidget* /Transfer/ = 0, bool = 1); %If ( KDE_3_1_0 - ) static int configure (KActionCollection*, bool, QWidget* /Transfer/ = 0, bool = 1); static int configure (KAccel*, bool, QWidget* /Transfer/ = 0, bool = 1); static int configure (KGlobalAccel*, bool, QWidget* /Transfer/ = 0, bool = 1); %End static int configureKeys (KAccel*, bool = 1, QWidget* /Transfer/ = 0); static int configureKeys (KGlobalAccel*, bool = 1, QWidget* /Transfer/ = 0); static int configureKeys (KActionCollection*, const QString&, bool = 1, QWidget* /Transfer/ = 0); %If ( KDE_3_1_0 - ) private: KKeyDialog (KKeyChooser::ActionType, bool = 1, QWidget* /TransferThis/ = 0, const char* = 0); %End protected: //igx virtual void virtual_hook (int, void*); }; // class KKeyDialog typedef KKeyChooser KKeyChooser; %MappedType IntDict //converts a Python dict of QString:int { %TypeHeaderCode #include typedef QDict IntDict; %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 qdict = *sipCpp; QDictIterator it (qdict); while (it.current ()) { PyObject *a0 = sipConvertFromInstance (&it.currentKey (), sipClass_QCString, 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 on the heap. if (sipIsErr == NULL) return PyDict_Check(sipPy); QDict* qdict = new QDict; PyObject *key, *value; SIP_SSIZE_T pos = 0; QString *a0; int a1; while (PyDict_Next(sipPy, &pos, &key, &value)) { int iserr = 0, a0_state; a0 = (QString *)sipForceConvertToType(key, sipType_QString, sipTransferObj, SIP_NOT_NONE, &a0_state, &iserr); if ((iserr) || (!PyInt_Check (value))) { if (a0) sipReleaseType(a0, sipType_QString, a0_state); *sipIsErr = 1; delete qdict; return 0; } a1 = (int) PyInt_AS_LONG (value); qdict->insert (*a0, &a1); sipReleaseType(a0, sipType_QString, a0_state); } *sipCppPtr = qdict; return 1; %End };