pyKDEsrc (Python Bindings for Qt/KDE)

The Qt bindings are now more or less complete, the KDE bindings are getting there.

The latest version is 0.6 (released on 20th February 1999).  Get it from here (692,340 bytes).

Changes since 0.5 include: support for static member functions; support for KDE v1.1; support for 25 new KDE classes and 47 new Qt classes.

The Qt v1.42 classes that have been implemented are:

QAccel, QApplication, QArray, QBitmap, QBoxLayout, QBrush, QButton, QButtonGroup, QByteArray, QChain, QCheckBox, QChildEvent, QCloseEvent, QColor, QColorGroup, QComboBox, QCursor, QDate, QDateTime, QDialog, QDir, QEvent, QDoubleValidator, QFile, QFileDialog, QFileIconProvider, QFileInfo, QFileInfoList, QFocusEvent, QFont, QFontInfo, QFontMetrics, QFrame, QGManager, QGroupBox, QGridLayout, QHBoxLayout, QHeader, QIconSet, QImage, QIntValidator, QIODevice, QKeyEvent, QLabel, QLayout, QLCDNumber, QLineEdit, QListBox, QMainWindow, QMenuBar, QMenuData, QMessageBox, QMouseEvent, QMoveEvent, QMovie, QMultiLineEdit, QObject, QObjectList, QPaintDevice, QPainter, QPaintEvent, QPalette, QPen, QPicture, QPixmap, QPoint, QPointArray, QPopupMenu, QPrintDialog, QPrinter, QProgressBar, QProgressDialog, QPushButton, QRadioButton, QRangeControl, QRect, QRegExp, QRegion, QResizeEvent, QScrollBar, QScrollView, QSemiModal, QSize, QSlider, QSpinBox, QSplitter, QStatusBar, QString, QStrList, QTab, QTabBar, QTabDialog, QTableView, QTime, QTimerEvent, QToolBar, QToolButton, QToolTip, QToolTipGroup, QValidator, QVBoxLayout, QWhatsThis, QWidget, QWidgetList, QWidgetStack, QWMatrix.

The KDE v1.1 classes that have been implemented are:

DlgLocation, KApplication, KCharset, KCharsetConversionResult, KCharsets, KColorButton, KColorCombo, KColorDialog, KColorGroup, KCombo, KConfig, KConfigBase, KDirDialog, KDirEntry, KEdit, KFM, KFileBaseDialog, KFileBookmark, KFileDialog, KFileInfo, KFileInfoContents, KFileInfoList, KFontDialog, KHTMLView, KIconLoader, KIconLoaderButton, KIconLoaderDialog, KLined, KLocale, KMenuBar, KMsgBox, KPixmap, KProgress, KRadioGroup, KSimpleConfig, KStatusBar, KTMainWindow, KToolBar, KToolBarButton, KURL.
 

pyKDE (Python Bindings for Qt/KDE Interface Specifications)

The above bindings are generated automatically from these interface specifications by SIP (see below).  You do not need these specifications in order to build and use the bindings.

The latest version is 0.6 (released on 20th February 1999).  Get it from here (111,540 bytes).

Changes since 0.5 include: the removal of lots of handwritten code now that slot code is automatically generated; QString is now always mapped to Python strings; the addition of static member functions; changes needed for KDE v1.1; the extra classes.
 

SIP (C++ Interface Code Generator for Python)

SIP does a similar job to SWIG but is designed specifically to generate bindings for C++ libraries for Python.  SIP is so called because it is a small SWIG.  You do not need SIP in order to build and use the bindings.

The latest version is 0.6 (released on 20th February 1999).  Get it from here (101,697 bytes).

Changes since 0.5 include: no signal/slot support code is generated if it isn't needed; the -i switch is now -I; added the -d and -f switches; added support for automatic type conversions; added support for opaque classes; changed the structure of the generated code to prepare for supporting layered bindings; added %PostPythonCode; added some macro processing capability (only $C at the moment) for handwritten code; the signal proxy can now handle any signal arguments; slot handling code is automatically generated; bug fixes.

SIP was originally designed to generate Python bindings for KDE and so has explicit support for the signal/slot mechanism used by the Qt/KDE class libraries.  However, SIP can be used to generate Python bindings for any C++ class library.

The bindings generated by SIP support access to the following C++ and Qt features:


Phil Thompson