From 44d73edbdc7bc207b02d162e0ecee49cc6127d53 Mon Sep 17 00:00:00 2001 From: Pritpal Bedi Date: Tue, 7 Apr 2009 06:51:37 +0000 Subject: [PATCH] 2009-04-06 23:44 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * harbour/contrib/hbqt/generator/hbqtgen.prg + New hbqt.h members. * harbour/contrib/hbqt/generator/qt45.qtp + Added new classes, Rearranged alphabetically. * harbour/contrib/hbqt/qth/QAction.qth + harbour/contrib/hbqt/qth/QBitmap.qth + harbour/contrib/hbqt/qth/QCommonStyle.qth + harbour/contrib/hbqt/qth/QIcon.qth + harbour/contrib/hbqt/qth/QPixmap.qth + harbour/contrib/hbqt/qth/QStatusBar.qth + harbour/contrib/hbqt/qth/QStyle.qth + harbour/contrib/hbqt/qth/QWindowsStyle.qth + harbour/contrib/hbqt/qth/QWindowsXPStyle.qth + Added new classes. Updated old ones. * harbour/contrib/hbqt/tests/demoqt.prg + Implemented StatusBar, Windows Icon, etc. --- harbour/ChangeLog | 21 ++ harbour/contrib/hbqt/generator/hbqtgen.prg | 9 +- harbour/contrib/hbqt/generator/qt45.qtp | 35 +-- harbour/contrib/hbqt/qth/QAction.qth | 2 +- harbour/contrib/hbqt/qth/QBitmap.qth | 98 ++++++++ harbour/contrib/hbqt/qth/QCommonStyle.qth | 90 +++++++ harbour/contrib/hbqt/qth/QIcon.qth | 108 +++++++++ harbour/contrib/hbqt/qth/QPixmap.qth | 152 ++++++++++++ harbour/contrib/hbqt/qth/QStatusBar.qth | 102 ++++++++ harbour/contrib/hbqt/qth/QStyle.qth | 126 ++++++++++ harbour/contrib/hbqt/qth/QWindowsStyle.qth | 92 +++++++ harbour/contrib/hbqt/qth/QWindowsXPStyle.qth | 92 +++++++ harbour/contrib/hbqt/tests/demoqt.prg | 238 +++++++++++++++---- 13 files changed, 1107 insertions(+), 58 deletions(-) create mode 100644 harbour/contrib/hbqt/qth/QBitmap.qth create mode 100644 harbour/contrib/hbqt/qth/QCommonStyle.qth create mode 100644 harbour/contrib/hbqt/qth/QIcon.qth create mode 100644 harbour/contrib/hbqt/qth/QPixmap.qth create mode 100644 harbour/contrib/hbqt/qth/QStatusBar.qth create mode 100644 harbour/contrib/hbqt/qth/QStyle.qth create mode 100644 harbour/contrib/hbqt/qth/QWindowsStyle.qth create mode 100644 harbour/contrib/hbqt/qth/QWindowsXPStyle.qth diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 67a766a9b9..70d0d94c31 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,27 @@ 2009-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-04-06 23:44 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + * harbour/contrib/hbqt/generator/hbqtgen.prg + + New hbqt.h members. + + * harbour/contrib/hbqt/generator/qt45.qtp + + Added new classes, Rearranged alphabetically. + + * harbour/contrib/hbqt/qth/QAction.qth + + harbour/contrib/hbqt/qth/QBitmap.qth + + harbour/contrib/hbqt/qth/QCommonStyle.qth + + harbour/contrib/hbqt/qth/QIcon.qth + + harbour/contrib/hbqt/qth/QPixmap.qth + + harbour/contrib/hbqt/qth/QStatusBar.qth + + harbour/contrib/hbqt/qth/QStyle.qth + + harbour/contrib/hbqt/qth/QWindowsStyle.qth + + harbour/contrib/hbqt/qth/QWindowsXPStyle.qth + + Added new classes. Updated old ones. + + * harbour/contrib/hbqt/tests/demoqt.prg + + Implemented StatusBar, Windows Icon, etc. + 2009-04-06 19:19 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * harbour/contrib/hbqt/generator/hbqtgen.prg ! Fixed: warning - taken address of temprary. Thanks Xavi. diff --git a/harbour/contrib/hbqt/generator/hbqtgen.prg b/harbour/contrib/hbqt/generator/hbqtgen.prg index 653ce60630..f02ca2394f 100644 --- a/harbour/contrib/hbqt/generator/hbqtgen.prg +++ b/harbour/contrib/hbqt/generator/hbqtgen.prg @@ -1095,7 +1095,7 @@ STATIC FUNCTION Build_Class( cWidget, cls_, doc_, cPathOut ) aadd( txt_, '' ) - n := ascan( cls_, {|e_| lower( e_[ 1 ] ) == 'inherit' } ) + n := ascan( cls_, {|e_| left( lower( e_[ 1 ] ),7 ) == 'inherit' .and. !empty( e_[ 2 ] ) } ) s := 'CREATE CLASS '+ cWidget + IF( n > 0, ' INHERIT ' + cls_[ n,2 ], '' ) aadd( txt_, s ) @@ -1385,8 +1385,12 @@ STATIC FUNCTION Build_HBQT_H( cPathOut ) aadd( txt_, "#define hbqt_par_QPaintEvent( n ) ( ( QPaintEvent* ) hb_parptr( n ) ) " ) aadd( txt_, "#define hbqt_par_QInputEvent( n ) ( ( QInputEvent* ) hb_parptr( n ) ) " ) aadd( txt_, "#define hbqt_par_HRGN( n ) ( ( HRGN* ) hb_parptr( n ) ) " ) + aadd( txt_, "#define hbqt_par_QIcon( n ) ( ( QIcon* ) hb_parc( n ) ) " ) + aadd( txt_, "#define hbqt_par_QStyleOption( n ) ( ( QStyleOption* ) hb_parptr( n ) ) " ) + aadd( txt_, "#define hbqt_par_QStyleOptionComplex( n ) ( ( QStyleOptionComplex* ) hb_parptr( n ) ) " ) + aadd( txt_, "#define hbqt_par_QFontMetrics( n ) ( ( QFontMetrics* ) hb_parptr( n ) ) " ) + aadd( txt_, "#define hbqt_par_QStyleHintReturn( n ) ( ( QStyleHintReturn* ) hb_parptr( n ) ) " ) aadd( txt_, " " ) - aadd( txt_, "#define hbqt_par_QIcon( n ) ( ( QIcon ) hb_parc( n ) ) " ) aadd( txt_, "#define hbqt_par_QString( n ) ( ( QString ) hb_parc( n ) ) " ) aadd( txt_, "#define hbqt_par_QRgb( n ) ( hb_parnint( n ) ) " ) aadd( txt_, "#define hbqt_par_Bool( n ) ( hb_parl( n ) ) " ) @@ -2391,4 +2395,3 @@ STATIC FUNCTION Build_Demo() /*----------------------------------------------------------------------*/ - diff --git a/harbour/contrib/hbqt/generator/qt45.qtp b/harbour/contrib/hbqt/generator/qt45.qtp index c99a8d6d07..a5336111ec 100644 --- a/harbour/contrib/hbqt/generator/qt45.qtp +++ b/harbour/contrib/hbqt/generator/qt45.qtp @@ -19,6 +19,7 @@ QAbstractSlider.qth QAbstractSpinBox.qth QAction.qth QApplication.qth +QBitmap.qth QBoxLayout.qth QBrush.qth QCalendarWidget.qth @@ -27,6 +28,7 @@ QColor.qth QColorDialog.qth QComboBox.qth QCommandLinkButton.qth +QCommonStyle.qth QCoreApplication.qth QDateEdit.qth QDateTimeEdit.qth @@ -37,6 +39,8 @@ QDir.qth QDockWidget.qth QDoubleSpinBox.qth QErrorMessage.qth +QEvent.qth +QEventLoop.qth QFileDialog.qth QFocusFrame.qth QFont.qth @@ -51,7 +55,9 @@ QGroupBox.qth QHBoxLayout.qth QHeaderView.qth QHttp.qth +QIcon.qth QInputDialog.qth +QInputEvent.qth QLabel.qth QLayout.qth QLayoutItem.qth @@ -68,21 +74,32 @@ QObject.qth QPaintDevice.qth QPageSetupDialog.qth QPainter.qth +QPaintEvent.qth QPen.qth +QPixmap.qth +QPoint.qth +QPointF.qth QPrintDialog.qth QPrintPreviewDialog.qth QProgressBar.qth QProgressDialog.qth QPushButton.qth +QRect.qth +QRectF.qth QRadioButton.qth +QRegion.qth QScrollArea.qth QScrollBar.qth QSignalMapper.qth +QSize.qth +QSizeF.qth QSizeGrip.qth QSlider.qth QSpinBox.qth QSplashScreen.qth QSplitter.qth +QStatusBar.qth +QStyle.qth QTabBar.qth QTableView.qth QTableWidget.qth @@ -98,22 +115,12 @@ QTreeView.qth QTreeWidget.qth QTreeWidgetItem.qth QUrl.qth +QVariant.qth QVBoxLayout.qth QWebPage.qth QWidget.qth -QWizard.qth QWebView.qth -QSize.qth -QSizeF.qth -QPoint.qth -QPointF.qth -QRect.qth -QRectF.qth - -QRegion.qth -QVariant.qth -QEvent.qth -QEventLoop.qth -QPaintEvent.qth -QInputEvent.qth +QWindowsStyle.qth +QWindowsXPStyle.qth +QWizard.qth diff --git a/harbour/contrib/hbqt/qth/QAction.qth b/harbour/contrib/hbqt/qth/QAction.qth index 1e5c92f772..74e79a5484 100644 --- a/harbour/contrib/hbqt/qth/QAction.qth +++ b/harbour/contrib/hbqt/qth/QAction.qth @@ -80,7 +80,7 @@ HB_FUNC( QT_QACTION ) else if( HB_ISPOINTER( 2 ) ) hb_retptr( new QAction( hbqt_par_QString( 1 ), hbqt_par_QObject( 2 ) ) ); else if( HB_ISPOINTER( 3 ) ) - hb_retptr( new QAction( hbqt_par_QIcon( 1 ), hbqt_par_QString( 2 ), hbqt_par_QObject( 3 ) ) ); + hb_retptr( new QAction( *hbqt_par_QIcon( 1 ), hbqt_par_QString( 2 ), hbqt_par_QObject( 3 ) ) ); } diff --git a/harbour/contrib/hbqt/qth/QBitmap.qth b/harbour/contrib/hbqt/qth/QBitmap.qth new file mode 100644 index 0000000000..1323f8200c --- /dev/null +++ b/harbour/contrib/hbqt/qth/QBitmap.qth @@ -0,0 +1,98 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Inherits = QPixmap +Type = Core +New = + + + +#include + + +/* + * QBitmap () + * QBitmap ( const QPixmap & pixmap ) + * QBitmap ( int width, int height ) + * QBitmap ( const QSize & size ) + * QBitmap ( const QString & fileName, const char * format = 0 ) + * ~QBitmap () + */ +HB_FUNC( QT_QBITMAP ) +{ + hb_retptr( ( QBitmap* ) new QBitmap() ); +} + + + + + + +void clear () +QBitmap transformed ( const QTransform & matrix ) const +QBitmap transformed ( const QMatrix & matrix ) const + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/qth/QCommonStyle.qth b/harbour/contrib/hbqt/qth/QCommonStyle.qth new file mode 100644 index 0000000000..4394f5e43a --- /dev/null +++ b/harbour/contrib/hbqt/qth/QCommonStyle.qth @@ -0,0 +1,90 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Inherits = QStyle +Type = Core +New = + + + +#include + + +/* + * QCommonStyle () + */ +HB_FUNC( QT_QCOMMONSTYLE ) +{ + hb_retptr( ( QCommonStyle* ) new QCommonStyle() ); +} + + + + + + + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/qth/QIcon.qth b/harbour/contrib/hbqt/qth/QIcon.qth new file mode 100644 index 0000000000..8a486b3de5 --- /dev/null +++ b/harbour/contrib/hbqt/qth/QIcon.qth @@ -0,0 +1,108 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Type = Core +New = + + + +#include + + +/* + * QIcon () + * QIcon ( const QPixmap & pixmap ) + * QIcon ( const QIcon & other ) + * QIcon ( const QString & fileName ) + * QIcon ( QIconEngine * engine ) + * QIcon ( QIconEngineV2 * engine ) + * ~QIcon () + */ +HB_FUNC( QT_QICON ) +{ + hb_retptr( ( QIcon* ) new QIcon() ); +} + + + +enum Mode { Normal, Disabled, Active, Selected } +enum State { Off, On } + + + +QSize actualSize ( const QSize & size, Mode mode = Normal, State state = Off ) const +void addFile ( const QString & fileName, const QSize & size = QSize(), Mode mode = Normal, State state = Off ) +void addPixmap ( const QPixmap & pixmap, Mode mode = Normal, State state = Off ) +QList availableSizes ( Mode mode = Normal, State state = Off ) const +qint64 cacheKey () const +bool isNull () const +void paint ( QPainter * painter, const QRect & rect, Qt::Alignment alignment = Qt::AlignCenter, Mode mode = Normal, State state = Off ) const +void paint ( QPainter * painter, int x, int y, int w, int h, Qt::Alignment alignment = Qt::AlignCenter, Mode mode = Normal, State state = Off ) const +QPixmap pixmap ( const QSize & size, Mode mode = Normal, State state = Off ) const +QPixmap pixmap ( int w, int h, Mode mode = Normal, State state = Off ) const +QPixmap pixmap ( int extent, Mode mode = Normal, State state = Off ) const + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/qth/QPixmap.qth b/harbour/contrib/hbqt/qth/QPixmap.qth new file mode 100644 index 0000000000..d523ff4016 --- /dev/null +++ b/harbour/contrib/hbqt/qth/QPixmap.qth @@ -0,0 +1,152 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Inherits = QPaintDevice +Type = Core +New = + + + +#include +#include + +/* + * QPixmap () + * QPixmap ( int width, int height ) + * QPixmap ( const QString & fileName, const char * format = 0, Qt::ImageConversionFlags flags = Qt::AutoColor ) + * QPixmap ( const char * const[] xpm ) + * QPixmap ( const QPixmap & pixmap ) + * QPixmap ( const QSize & size ) + * ~QPixmap () + */ +HB_FUNC( QT_QPIXMAP ) +{ + hb_retptr( ( QPixmap* ) new QPixmap() ); +} + + + +enum HBitmapFormat { NoAlpha, PremultipliedAlpha, Alpha } +enum ShareMode { ImplicitlyShared, ExplicitlyShared } + + + +QPixmap alphaChannel () const +qint64 cacheKey () const +# +// QRgb * clut () const +# +QPixmap copy ( const QRect & rectangle = QRect() ) const +QPixmap copy ( int x, int y, int width, int height ) const +QBitmap createHeuristicMask ( bool clipTight = true ) const +QBitmap createMaskFromColor ( const QColor & maskColor, Qt::MaskMode mode ) const +QBitmap createMaskFromColor ( const QColor & maskColor ) const +int depth () const +void detach () +void fill ( const QColor & color = Qt::white ) +void fill ( const QWidget * widget, const QPoint & offset ) +void fill ( const QWidget * widget, int x, int y ) +# +// Qt::HANDLE handle () const +# +bool hasAlpha () const +bool hasAlphaChannel () const +int height () const +bool isNull () const +bool isQBitmap () const +bool load ( const QString & fileName, const char * format = 0, Qt::ImageConversionFlags flags = Qt::AutoColor ) +# +// bool loadFromData ( const uchar * data, uint len, const char * format = 0, Qt::ImageConversionFlags flags = Qt::AutoColor ) +# +bool loadFromData ( const QByteArray & data, const char * format = 0, Qt::ImageConversionFlags flags = Qt::AutoColor ) +QBitmap mask () const +# +// int numCols () const +# +// const uchar * qwsBits () const +# +// int qwsBytesPerLine () const +# +QRect rect () const +bool save ( const QString & fileName, const char * format = 0, int quality = -1 ) const +bool save ( QIODevice * device, const char * format = 0, int quality = -1 ) const +QPixmap scaled ( const QSize & size, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation ) const +QPixmap scaled ( int width, int height, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation ) const +QPixmap scaledToHeight ( int height, Qt::TransformationMode mode = Qt::FastTransformation ) const +QPixmap scaledToWidth ( int width, Qt::TransformationMode mode = Qt::FastTransformation ) const +void setAlphaChannel ( const QPixmap & alphaChannel ) +void setMask ( const QBitmap & mask ) +QSize size () const +QImage toImage () const +# +// CGImageRef toMacCGImageRef () const +# +HBITMAP toWinHBITMAP ( HBitmapFormat format = NoAlpha ) const +QPixmap transformed ( const QTransform & transform, Qt::TransformationMode mode = Qt::FastTransformation ) const +QPixmap transformed ( const QMatrix & matrix, Qt::TransformationMode mode = Qt::FastTransformation ) const +int width () const + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/qth/QStatusBar.qth b/harbour/contrib/hbqt/qth/QStatusBar.qth new file mode 100644 index 0000000000..f3d5142d6d --- /dev/null +++ b/harbour/contrib/hbqt/qth/QStatusBar.qth @@ -0,0 +1,102 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Inherits = QWidget +Type = Core +New = + + + +#include + + +/* + * QStatusBar ( QWidget * parent = 0 ) + * virtual ~QStatusBar () + */ +HB_FUNC( QT_QSTATUSBAR ) +{ + hb_retptr( ( QStatusBar* ) new QStatusBar( hbqt_par_QWidget( 1 ) ) ); +} + + + + + + +void addPermanentWidget ( QWidget * widget, int stretch = 0 ) +void addWidget ( QWidget * widget, int stretch = 0 ) +QString currentMessage () const +int insertPermanentWidget ( int index, QWidget * widget, int stretch = 0 ) +int insertWidget ( int index, QWidget * widget, int stretch = 0 ) +bool isSizeGripEnabled () const +void removeWidget ( QWidget * widget ) +void setSizeGripEnabled ( bool ) + + + +void clearMessage () +void showMessage ( const QString & message, int timeout = 0 ) + + + +void messageChanged ( const QString & message ) + + + + + diff --git a/harbour/contrib/hbqt/qth/QStyle.qth b/harbour/contrib/hbqt/qth/QStyle.qth new file mode 100644 index 0000000000..2d2a2efc05 --- /dev/null +++ b/harbour/contrib/hbqt/qth/QStyle.qth @@ -0,0 +1,126 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Inherits = QObject +Type = Core +New = + + + +#include + + +/* + * QStyle () + * virtual ~QStyle () + */ +HB_FUNC( QT_QSTYLE ) +{ + +} + + + +flags State +flags SubControls +enum ComplexControl { CC_SpinBox, CC_ComboBox, CC_ScrollBar, CC_Slider, ..., CC_CustomBase } +enum ContentsType { CT_CheckBox, CT_ComboBox, CT_Q3DockWindow, CT_HeaderSection, ..., CT_MdiControls } +enum ControlElement { CE_PushButton, CE_PushButtonBevel, CE_PushButtonLabel, CE_DockWidgetTitle, ..., CE_ShapedFrame } +enum PixelMetric { PM_ButtonMargin, PM_DockWidgetTitleBarButtonMargin, PM_ButtonDefaultIndicator, PM_MenuButtonIndicator, ..., PM_SubMenuOverlap } +enum PrimitiveElement { PE_FrameStatusBar, PE_PanelButtonCommand, PE_FrameDefaultButton, PE_PanelButtonBevel, ..., PE_PanelMenu } +enum StandardPixmap { SP_TitleBarMinButton, SP_TitleBarMenuButton, SP_TitleBarMaxButton, SP_TitleBarCloseButton, ..., SP_CustomBase } +enum StateFlag { State_None, State_Active, State_AutoRaise, State_Children, ..., State_Small } +enum StyleHint { SH_EtchDisabledText, SH_DitherDisabledText, SH_GUIStyle, SH_ScrollBar_ContextMenu, ..., SH_DockWidget_ButtonsHaveFrame } +enum SubControl { SC_None, SC_ScrollBarAddLine, SC_ScrollBarSubLine, SC_ScrollBarAddPage, ..., SC_All } +enum SubElement { SE_PushButtonContents, SE_PushButtonFocusRect, SE_PushButtonLayoutItem, SE_CheckBoxIndicator, ..., SE_TabBarTabText } + + + +int combinedLayoutSpacing ( QSizePolicy::ControlTypes controls1, QSizePolicy::ControlTypes controls2, Qt::Orientation orientation, QStyleOption * option = 0, QWidget * widget = 0 ) const +virtual void drawComplexControl ( ComplexControl control, const QStyleOptionComplex * option, QPainter * painter, const QWidget * widget = 0 ) const = 0 +virtual void drawControl ( ControlElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0 ) const = 0 +virtual void drawItemPixmap ( QPainter * painter, const QRect & rectangle, int alignment, const QPixmap & pixmap ) const +virtual void drawItemText ( QPainter * painter, const QRect & rectangle, int alignment, const QPalette & palette, bool enabled, const QString & text, QPalette::ColorRole textRole = QPalette::NoRole ) const +virtual void drawPrimitive ( PrimitiveElement element, const QStyleOption * option, QPainter * painter, const QWidget * widget = 0 ) const = 0 +virtual QPixmap generatedIconPixmap ( QIcon::Mode iconMode, const QPixmap & pixmap, const QStyleOption * option ) const = 0 +virtual SubControl hitTestComplexControl ( ComplexControl control, const QStyleOptionComplex * option, const QPoint & position, const QWidget * widget = 0 ) const = 0 +virtual QRect itemPixmapRect ( const QRect & rectangle, int alignment, const QPixmap & pixmap ) const +virtual QRect itemTextRect ( const QFontMetrics & metrics, const QRect & rectangle, int alignment, bool enabled, const QString & text ) const +int layoutSpacing ( QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption * option = 0, const QWidget * widget = 0 ) const +virtual int pixelMetric ( PixelMetric metric, const QStyleOption * option = 0, const QWidget * widget = 0 ) const = 0 +virtual void polish ( QWidget * widget ) +virtual void polish ( QApplication * application ) +virtual void polish ( QPalette & palette ) +virtual QSize sizeFromContents ( ContentsType type, const QStyleOption * option, const QSize & contentsSize, const QWidget * widget = 0 ) const = 0 +QIcon standardIcon ( StandardPixmap standardIcon, const QStyleOption * option = 0, const QWidget * widget = 0 ) const +virtual QPalette standardPalette () const +virtual int styleHint ( StyleHint hint, const QStyleOption * option = 0, const QWidget * widget = 0, QStyleHintReturn * returnData = 0 ) const = 0 +virtual QRect subControlRect ( ComplexControl control, const QStyleOptionComplex * option, SubControl subControl, const QWidget * widget = 0 ) const = 0 +virtual QRect subElementRect ( SubElement element, const QStyleOption * option, const QWidget * widget = 0 ) const = 0 +virtual void unpolish ( QWidget * widget ) +virtual void unpolish ( QApplication * application ) + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/qth/QWindowsStyle.qth b/harbour/contrib/hbqt/qth/QWindowsStyle.qth new file mode 100644 index 0000000000..7d0e17f804 --- /dev/null +++ b/harbour/contrib/hbqt/qth/QWindowsStyle.qth @@ -0,0 +1,92 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Inherits = QCommonStyle +Type = Core +New = + + + +#include + + +/* + * QWindowsStyle () + * ~QWindowsStyle () + * + */ +HB_FUNC( QT_QWINDOWSSTYLE ) +{ + hb_retptr( ( QWindowsStyle* ) new QWindowsStyle() ); +} + + + + + + + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/qth/QWindowsXPStyle.qth b/harbour/contrib/hbqt/qth/QWindowsXPStyle.qth new file mode 100644 index 0000000000..071ce2b7e7 --- /dev/null +++ b/harbour/contrib/hbqt/qth/QWindowsXPStyle.qth @@ -0,0 +1,92 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * QT Source Generator for Harbour + * + * Copyright 2009 Pritpal Bedi + * www - http://www.harbour-project.org + * + * This program 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, or (at your option) + * any later version. + * + * This program 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 software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/). + * + * As a special exception, the Harbour Project gives permission for + * additional uses of the text contained in its release of Harbour. + * + * The exception is that, if you link the Harbour libraries with other + * files to produce an executable, this does not by itself cause the + * resulting executable to be covered by the GNU General Public License. + * Your use of that executable is in no way restricted on account of + * linking the Harbour library code into it. + * + * This exception does not however invalidate any other reasons why + * the executable file might be covered by the GNU General Public License. + * + * This exception applies only to the code released by the Harbour + * Project under the name Harbour. If you copy code from other + * Harbour Project or Free Software Foundation releases into a copy of + * Harbour, as the General Public License permits, the exception does + * not apply to the code that you add in this way. To avoid misleading + * anyone as to the status of such modified files, you must delete + * this exception notice from them. + * + * If you write modifications of your own for Harbour, it is your choice + * whether to permit this exception to apply to your modifications. + * If you do not wish that, delete this exception notice. + * + */ +/*----------------------------------------------------------------------*/ +; +; Header File to Generate QT Wrapper Sources +; + + +Inherits = QWindowsStyle +Type = Core +New = + + + +#include + + +/* + * QWindowsXPStyle () + * ~QWindowsXPStyle () + * + */ +HB_FUNC( QT_QWINDOWSXPSTYLE ) +{ + hb_retptr( ( QWindowsXPStyle* ) new QWindowsXPStyle() ); +} + + + + + + + + + + + + + + + + + diff --git a/harbour/contrib/hbqt/tests/demoqt.prg b/harbour/contrib/hbqt/tests/demoqt.prg index ce2da0b71b..7a32895eca 100644 --- a/harbour/contrib/hbqt/tests/demoqt.prg +++ b/harbour/contrib/hbqt/tests/demoqt.prg @@ -54,6 +54,24 @@ #define QT_PTROF( oObj ) ( oObj:pPtr ) +#define QT_EVE_TRIGGERED "triggered(bool)" +#define QT_EVE_TRIGGERED_B "triggered(bool)" +#define QT_EVE_HOVERED "hovered()" +#define QT_EVE_CLICKED "clicked()" + +/*----------------------------------------------------------------------*/ +/* + * A NOTE + * + * This demo is built on auto generated classes by the engine. No attemp + * is exercised to refine the way the code must be written. At this moment + * my emphasis is on testing phase of QT wrapper functions and classes + * generated thereof. In near future the actual implementation will be + * based on the Xbase++ XBPParts compatible framework. You just are + * encouraged to sense the power of QT through this expression. + * + * Pritpal Bedi + */ /*----------------------------------------------------------------------*/ INIT PROCEDURE Qt_Start() @@ -70,57 +88,197 @@ PROCEDURE Main() Local oLabel Local oWnd Local oMenuBar - Local oMenuA + Local oMenuA, pAction LOCAL oPS, oPPrv, oMB, oWZ, oCD, oWP - oWnd := QMainWindow():New() - oWnd:SetWindowTitle("Testing - QMainWindow, QMenu, QMenuBar and QLabel" ) - oWnd:Resize( { 640, 400 } ) - - oMenuBar := QMenuBar():new( QT_PTROF( oWnd ) ) - oMenuBar:resize( { oWnd:width(), 20 } ) - oMenuBar:addAction( "First" ) - oMenuBar:addSeparator() - oMenuBar:addAction( "Second" ) - - oMenuA := QMenu():new( QT_PTROF( oMenuBar ) ) - oMenuA:setTitle( "New" ) - oMenuA:addAction( "File" ) - oMenuA:addAction( "Open" ) - oMenuA:addSeparator() - oMenuA:addAction( "Close" ) - oMenuBar:addMenu( QT_PTROF( oMenuA ) ) - - oLabel := QLabel():New( QT_PTROF( oWnd ) ) - oLabel:SetText( "Testing Harbour + Qt" ) - oLabel:move( { 100,100 } ) - oLabel:Show() - + oWnd := QMainWindow():new() + oWnd:setWindowTitle("Testing - QMainWindow, QMenu, QMenuBar and QAction " ) + oWnd:resize( 640, 400 ) oWnd:Show() - oPS := QPageSetupDialog():new() - oPS:setWindowTitle( "Harbour-QT PageSetup Dialog" ) - oPS:show() - oPPrv := QPrintPreviewDialog():new() - oPPrv:setWindowTitle( "Harbour-QT Preview Preview Dialog" ) - oPPrv:show() - oWZ := QWizard():new() - oWZ:setWindowTitle( "Harbour-QT Wizard to Show Slides etc." ) - oWZ:show() - oCD := QColorDialog():new() - oCD:setWindowTitle( "Harbour-QT Color Selection Dialog" ) - oCD:show() - oWP := QWebView():new() - oWP:setWindowTitle( "Harbour-QT Web Page Navigator" ) - oWP:show() + Build_MenuBar( oWnd ) + + oLabel := QLabel():New( QT_PTROF( oWnd ) ) + oLabel:setText( "Testing Harbour + Qt" ) + oLabel:move( 200,100 ) + oLabel:show() RETURN /*----------------------------------------------------------------------*/ -PROCEDURE HB_GtSys() +STATIC FUNCTION Build_MenuBar( oWnd ) + LOCAL oMenuBar, oMenu + + oMenuBar := QMenuBar():new( QT_PTROF( oWnd ) ) + oMenuBar:resize( oWnd:width(), 25 ) + + oMenu := QMenu():new( QT_PTROF( oMenuBar ) ) + oMenu:setTitle( "&File" ) + Qt_Connect_Signal( oMenu:addAction_1( "new.png" , "&New" ), QT_EVE_TRIGGERED_B, {|w,l| FileDialog( "New" , w, l ) } ) + Qt_Connect_Signal( oMenu:addAction_1( "open.png", "&Open" ), QT_EVE_TRIGGERED_B, {|w,l| FileDialog( "Open", w, l ) } ) + oMenu:addSeparator() + Qt_Connect_Signal( oMenu:addAction_1( "save.png", "&Save" ), QT_EVE_TRIGGERED_B, {|w,l| FileDialog( "Save", w, l ) } ) + oMenu:addSeparator() + Qt_Connect_Signal( oMenu:addAction( "E&xit" ), QT_EVE_TRIGGERED_B, {|w,l| MsgInfo( "Exit ?" ) } ) + oMenuBar:addMenu( QT_PTROF( oMenu ) ) + + oMenu := QMenu():new( QT_PTROF( oMenuBar ) ) + oMenu:setTitle( "&Dialogs" ) + Qt_Connect_Signal( oMenu:addAction( "&Colors" ), QT_EVE_TRIGGERED_B, {|w,l| Dialogs( "Colors" , w, l ) } ) + Qt_Connect_Signal( oMenu:addAction( "&Fonts" ), QT_EVE_TRIGGERED_B, {|w,l| Dialogs( "Fonts" , w, l ) } ) + oMenu:addSeparator() + Qt_Connect_Signal( oMenu:addAction( "&PageSetup" ), QT_EVE_TRIGGERED_B, {|w,l| Dialogs( "PageSetup", w, l ) } ) + Qt_Connect_Signal( oMenu:addAction( "P&review" ), QT_EVE_TRIGGERED_B, {|w,l| Dialogs( "Preview" , w, l ) } ) + oMenu:addSeparator() + Qt_Connect_Signal( oMenu:addAction( "&Wizard" ), QT_EVE_TRIGGERED_B, {|w,l| Dialogs( "Wizard" , w, l ) } ) + Qt_Connect_Signal( oMenu:addAction( "W&ebPage" ), QT_EVE_TRIGGERED_B, {|w,l| Dialogs( "WebPage" , w, l ) } ) + oMenuBar:addMenu( QT_PTROF( oMenu ) ) + + oMenuBar:show() + + RETURN nil + +/*----------------------------------------------------------------------*/ + +FUNCTION MsgInfo( cMsg ) + LOCAL oMB + + oMB := QMessageBox():new() + oMB:setInformativeText( cMsg ) + oMB:setWindowTitle( "Harbour-QT" ) + oMB:show() + + RETURN nil + +/*----------------------------------------------------------------------*/ + +STATIC FUNCTION FileDialog( cType, w, l ) + LOCAL oFD := QFileDialog():new() + + oFD:setWindowTitle( "Select a File" ) + oFD:show() + + RETURN nil + +/*----------------------------------------------------------------------*/ + +STATIC FUNCTION Dialogs( cType, w, l ) + LOCAL oDlg, oUrl + + DO CASE + CASE cType == "PageSetup" + oDlg := QPageSetupDialog():new() + oDlg:setWindowTitle( "Harbour-QT PageSetup Dialog" ) + oDlg:show() + CASE cType == "Preview" + oDlg := QPrintPreviewDialog():new() + oDlg:setWindowTitle( "Harbour-QT Preview Dialog" ) + oDlg:show() + CASE cType == "Wizard" + oDlg := QWizard():new() + oDlg:setWindowTitle( "Harbour-QT Wizard to Show Slides etc." ) + oDlg:show() + CASE cType == "Colors" + oDlg := QColorDialog():new() + oDlg:setWindowTitle( "Harbour-QT Color Selection Dialog" ) + oDlg:show() + CASE cType == "WebPage" + oDlg := QWebView():new() + oUrl := QUrl():new() + oUrl:setUrl( "http://www.harbour.vouch.info" ) + QT_QWebView_SetUrl( QT_PTROF( oDlg ), QT_PTROF( oUrl ) ) + oDlg:setWindowTitle( "Harbour-QT Web Page Navigator" ) + oDlg:show() + CASE cType == "Fonts" + oDlg := QFontDialog():new() + oDlg:setWindowTitle( "Harbour-QT Font Selector" ) + oDlg:show() + ENDCASE + + RETURN nil + +/*----------------------------------------------------------------------*/ + +PROCEDURE hb_GtSys() HB_GT_GUI_DEFAULT() RETURN /*----------------------------------------------------------------------*/ +/* + * Just to Link Every New Widget + */ +STATIC FUNCTION Dummies() + LOCAL oSome + + oSome := QAction():new() + oSome := QBoxLayout():new() + oSome := QCalendarWidget():new() + oSome := QCheckBox():new() + oSome := QColorDialog():new() + oSome := QComboBox():new() + oSome := QCommandLinkButton():new() + oSome := QDateEdit():new() + oSome := QDateTimeEdit():new() + oSome := QDial():new() + oSome := QDialog():new() + oSome := QDoubleSpinBox():new() + oSome := QErrorMessage():new() + oSome := QFileDialog():new() + oSome := QFocusFrame():new() + oSome := QFontComboBox():new() + oSome := QFontDialog():new() + oSome := QFormLayout():new() + oSome := QFrame():new() + oSome := QGroupBox():new() + oSome := QHBoxLayout():new() + oSome := QInputDialog():new() + oSome := QLabel():new() + oSome := QLayout():new() + oSome := QLayoutItem():new() + oSome := QLCDNumber():new() + oSome := QLineEdit():new() + oSome := QListView():new() + oSome := QMainWindow():new() + oSome := QMenu():new() + oSome := QMenuBar():new() + oSome := QMessageBox():new() + oSome := QObject():new() + oSome := QPageSetupDialog():new() + oSome := QPaintDevice():new() + oSome := QPainter():new() + oSome := QPrintDialog():new() + oSome := QPrintPreviewDialog():new() + oSome := QProgressBar():new() + oSome := QProgressDialog():New() + oSome := QPushButton():new() + oSome := QRadioButton():new() + oSome := QScrollArea():new() + oSome := QScrollBar():new() + oSome := QSizeGrip():new() + oSome := QSlider():new() + oSome := QSpinBox():new() + oSome := QSplitter():new() + oSome := QTabBar():new() + oSome := QTableView():new() + oSome := QTableWidget():new() + oSome := QTableWidgetItem():new() + oSome := QTabWidget():new() + oSome := QTextEdit():new() + oSome := QTimeEdit():new() + oSome := QToolBar():new() + oSome := QToolBox():new() + oSome := QToolButton():new() + oSome := QTreeView():new() + oSome := QTreeWidget():new() + oSome := QTreeWidgetItem():new() + oSome := QVBoxLayout():new() + oSome := QWebPage():new() + oSome := QWebView():new() + oSome := QWidget():new() + oSome := QWizard():new() + + RETURN nil + +/*----------------------------------------------------------------------*/