diff --git a/harbour/ChangeLog b/harbour/ChangeLog index bc5c04af42..f05a8fc92c 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,19 @@ past entries belonging to author(s): Viktor Szakats. */ +2010-01-15 21:14 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + * contrib/hbqt/generator/qt45.qtp + * contrib/hbqt/hbqt.h + * contrib/hbqt/hbqt_garbage.h + * contrib/hbqt/qtgui/filelist.mk + + contrib/hbqt/qtgui/QMdiArea.cpp + + contrib/hbqt/qtgui/QMdiSubWindow.cpp + + contrib/hbqt/qtgui/TQMdiArea.prg + + contrib/hbqt/qtgui/TQMdiSubWindow.prg + + contrib/hbqt/qth/QMdiArea.qth + + contrib/hbqt/qth/QMdiSubWindow.qth + + Added QMDiArea() and QMdiSubWindow() classes. + 2010-01-16 02:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbnetio/tests/netiotst.prg ! Fixed to REQUEST dir related functions to avoid RTE. diff --git a/harbour/contrib/hbqt/generator/qt45.qtp b/harbour/contrib/hbqt/generator/qt45.qtp index 72400d3ef1..8ff2ead228 100644 --- a/harbour/contrib/hbqt/generator/qt45.qtp +++ b/harbour/contrib/hbqt/generator/qt45.qtp @@ -125,6 +125,8 @@ QListWidgetItem.qth QLocale.qth QMainWindow.qth QMatrix.qth +QMdiArea.qth +QMdiSubWindow.qth QMenu.qth QMenuBar.qth QMessageBox.qth diff --git a/harbour/contrib/hbqt/hbqt.h b/harbour/contrib/hbqt/hbqt.h index 77985572d6..838bfd6a1e 100644 --- a/harbour/contrib/hbqt/hbqt.h +++ b/harbour/contrib/hbqt/hbqt.h @@ -207,6 +207,8 @@ extern void * hbqt_pPtrFromObj( int iParam ); #define hbqt_par_QLocale( n ) ( ( QLocale * ) hbqt_gcpointer( n ) ) #define hbqt_par_QMainWindow( n ) ( ( QMainWindow * ) hbqt_gcpointer( n ) ) #define hbqt_par_QMatrix( n ) ( ( QMatrix * ) hbqt_gcpointer( n ) ) +#define hbqt_par_QMdiArea( n ) ( ( QMdiArea * ) hbqt_gcpointer( n ) ) +#define hbqt_par_QMdiSubWindow( n ) ( ( QMdiSubWindow * ) hbqt_gcpointer( n ) ) #define hbqt_par_QMenu( n ) ( ( QMenu * ) hbqt_gcpointer( n ) ) #define hbqt_par_QMenuBar( n ) ( ( QMenuBar * ) hbqt_gcpointer( n ) ) #define hbqt_par_QMessageBox( n ) ( ( QMessageBox * ) hbqt_gcpointer( n ) ) diff --git a/harbour/contrib/hbqt/hbqt_garbage.h b/harbour/contrib/hbqt/hbqt_garbage.h index 9eadbe5e9d..b22d0bbf88 100644 --- a/harbour/contrib/hbqt/hbqt_garbage.h +++ b/harbour/contrib/hbqt/hbqt_garbage.h @@ -118,6 +118,8 @@ extern QT_G_FUNC( hbqt_gcRelease_QListWidgetItem ); extern QT_G_FUNC( hbqt_gcRelease_QLocale ); extern QT_G_FUNC( hbqt_gcRelease_QMainWindow ); extern QT_G_FUNC( hbqt_gcRelease_QMatrix ); +extern QT_G_FUNC( hbqt_gcRelease_QMdiArea ); +extern QT_G_FUNC( hbqt_gcRelease_QMdiSubWindow ); extern QT_G_FUNC( hbqt_gcRelease_QMenu ); extern QT_G_FUNC( hbqt_gcRelease_QMenuBar ); extern QT_G_FUNC( hbqt_gcRelease_QMessageBox ); @@ -389,6 +391,8 @@ extern void * hbqt_gcAllocate_QListWidgetItem( void * pObj ); extern void * hbqt_gcAllocate_QLocale( void * pObj ); extern void * hbqt_gcAllocate_QMainWindow( void * pObj ); extern void * hbqt_gcAllocate_QMatrix( void * pObj ); +extern void * hbqt_gcAllocate_QMdiArea( void * pObj ); +extern void * hbqt_gcAllocate_QMdiSubWindow( void * pObj ); extern void * hbqt_gcAllocate_QMenu( void * pObj ); extern void * hbqt_gcAllocate_QMenuBar( void * pObj ); extern void * hbqt_gcAllocate_QMessageBox( void * pObj ); diff --git a/harbour/contrib/hbqt/qtgui/QMdiArea.cpp b/harbour/contrib/hbqt/qtgui/QMdiArea.cpp new file mode 100644 index 0000000000..1b27ce6865 --- /dev/null +++ b/harbour/contrib/hbqt/qtgui/QMdiArea.cpp @@ -0,0 +1,370 @@ +/* + * $Id$ + */ + +/* -------------------------------------------------------------------- */ +/* WARNING: Automatically generated source file. DO NOT EDIT! */ +/* Instead, edit corresponding .qth file, */ +/* or the generator tool itself, and run regenarate. */ +/* -------------------------------------------------------------------- */ + +/* + * Harbour Project source code: + * QT wrapper main header + * + * Copyright 2009 Pritpal Bedi + * + * Copyright 2009 Marcos Antonio Gambeta + * 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. + * + */ +/*----------------------------------------------------------------------*/ + +#include "hbapi.h" +#include "../hbqt.h" + +/*----------------------------------------------------------------------*/ +#if QT_VERSION >= 0x040500 +/*----------------------------------------------------------------------*/ + +/* + * enum AreaOption { DontMaximizeSubWindowOnActivation } + * flags AreaOptions + * enum ViewMode { SubWindowView, TabbedView } + * enum WindowOrder { CreationOrder, StackingOrder, ActivationHistoryOrder } + */ + +/* + * Constructed[ 25/26 [ 96.15% ] ] + * + * *** Unconvered Prototypes *** + * ----------------------------- + * + * QList subWindowList ( WindowOrder order = CreationOrder ) const + */ + +#include + +#include + + +/* + * QMdiArea ( QWidget * parent = 0 ) + * ~QMdiArea () + * + */ + +typedef struct +{ + void * ph; + QT_G_FUNC_PTR func; + QPointer< QMdiArea > pq; +} QGC_POINTER_QMdiArea; + +QT_G_FUNC( hbqt_gcRelease_QMdiArea ) +{ + QGC_POINTER_QMdiArea * p = ( QGC_POINTER_QMdiArea * ) Cargo; + + HB_TRACE( HB_TR_DEBUG, ( "hbqt_gcRelease_QMdiArea p=%p", p)); + HB_TRACE( HB_TR_DEBUG, ( "hbqt_gcRelease_QMdiArea ph=%p pq=%p", p->ph, (void *)(p->pq))); + + if( p && p->ph && p->pq ) + { + const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject(); + if( ( QString ) m->className() != ( QString ) "QObject" ) + { + switch( hbqt_get_object_release_method() ) + { + case HBQT_RELEASE_WITH_DELETE: + delete ( ( QMdiArea * ) p->ph ); + break; + case HBQT_RELEASE_WITH_DESTRUTOR: + ( ( QMdiArea * ) p->ph )->~QMdiArea(); + break; + case HBQT_RELEASE_WITH_DELETE_LATER: + ( ( QMdiArea * ) p->ph )->deleteLater(); + break; + } + p->ph = NULL; + HB_TRACE( HB_TR_DEBUG, ( "hbqt_gcRelease_QMdiArea Object deleted! %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) ); + } + else + { + HB_TRACE( HB_TR_DEBUG, ( "NO hbqt_gcRelease_QMdiArea Object Name Missing!" ) ); + } + } + else + { + HB_TRACE( HB_TR_DEBUG, ( "DEL hbqt_gcRelease_QMdiArea Object Already deleted!" ) ); + } +} + +void * hbqt_gcAllocate_QMdiArea( void * pObj ) +{ + QGC_POINTER_QMdiArea * p = ( QGC_POINTER_QMdiArea * ) hb_gcAllocate( sizeof( QGC_POINTER_QMdiArea ), hbqt_gcFuncs() ); + + p->ph = pObj; + p->func = hbqt_gcRelease_QMdiArea; + new( & p->pq ) QPointer< QMdiArea >( ( QMdiArea * ) pObj ); + HB_TRACE( HB_TR_DEBUG, ( " new_QMdiArea %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) ); + return p; +} + +HB_FUNC( QT_QMDIAREA ) +{ + void * pObj = NULL; + + if( hb_pcount() == 1 && HB_ISPOINTER( 1 ) ) + { + pObj = new QMdiArea( hbqt_par_QWidget( 1 ) ) ; + } + else + { + pObj = new QMdiArea() ; + } + + hb_retptrGC( hbqt_gcAllocate_QMdiArea( pObj ) ); +} +/* + * WindowOrder activationOrder () const + */ +HB_FUNC( QT_QMDIAREA_ACTIVATIONORDER ) +{ + hb_retni( ( QMdiArea::WindowOrder ) hbqt_par_QMdiArea( 1 )->activationOrder() ); +} + +/* + * QMdiSubWindow * activeSubWindow () const + */ +HB_FUNC( QT_QMDIAREA_ACTIVESUBWINDOW ) +{ + hb_retptr( ( QMdiSubWindow* ) hbqt_par_QMdiArea( 1 )->activeSubWindow() ); +} + +/* + * QMdiSubWindow * addSubWindow ( QWidget * widget, Qt::WindowFlags windowFlags = 0 ) + */ +HB_FUNC( QT_QMDIAREA_ADDSUBWINDOW ) +{ + hb_retptr( ( QMdiSubWindow* ) hbqt_par_QMdiArea( 1 )->addSubWindow( hbqt_par_QWidget( 2 ), ( Qt::WindowFlags ) hb_parni( 3 ) ) ); +} + +/* + * QBrush background () const + */ +HB_FUNC( QT_QMDIAREA_BACKGROUND ) +{ + hb_retptrGC( hbqt_gcAllocate_QBrush( new QBrush( hbqt_par_QMdiArea( 1 )->background() ) ) ); +} + +/* + * QMdiSubWindow * currentSubWindow () const + */ +HB_FUNC( QT_QMDIAREA_CURRENTSUBWINDOW ) +{ + hb_retptr( ( QMdiSubWindow* ) hbqt_par_QMdiArea( 1 )->currentSubWindow() ); +} + +/* + * bool documentMode () const + */ +HB_FUNC( QT_QMDIAREA_DOCUMENTMODE ) +{ + hb_retl( hbqt_par_QMdiArea( 1 )->documentMode() ); +} + +/* + * void removeSubWindow ( QWidget * widget ) + */ +HB_FUNC( QT_QMDIAREA_REMOVESUBWINDOW ) +{ + hbqt_par_QMdiArea( 1 )->removeSubWindow( hbqt_par_QWidget( 2 ) ); +} + +/* + * void setActivationOrder ( WindowOrder order ) + */ +HB_FUNC( QT_QMDIAREA_SETACTIVATIONORDER ) +{ + hbqt_par_QMdiArea( 1 )->setActivationOrder( ( QMdiArea::WindowOrder ) hb_parni( 2 ) ); +} + +/* + * void setBackground ( const QBrush & background ) + */ +HB_FUNC( QT_QMDIAREA_SETBACKGROUND ) +{ + hbqt_par_QMdiArea( 1 )->setBackground( *hbqt_par_QBrush( 2 ) ); +} + +/* + * void setDocumentMode ( bool enabled ) + */ +HB_FUNC( QT_QMDIAREA_SETDOCUMENTMODE ) +{ + hbqt_par_QMdiArea( 1 )->setDocumentMode( hb_parl( 2 ) ); +} + +/* + * void setOption ( AreaOption option, bool on = true ) + */ +HB_FUNC( QT_QMDIAREA_SETOPTION ) +{ + hbqt_par_QMdiArea( 1 )->setOption( ( QMdiArea::AreaOption ) hb_parni( 2 ), hb_parl( 3 ) ); +} + +/* + * void setTabPosition ( QTabWidget::TabPosition position ) + */ +HB_FUNC( QT_QMDIAREA_SETTABPOSITION ) +{ + hbqt_par_QMdiArea( 1 )->setTabPosition( ( QTabWidget::TabPosition ) hb_parni( 2 ) ); +} + +/* + * void setTabShape ( QTabWidget::TabShape shape ) + */ +HB_FUNC( QT_QMDIAREA_SETTABSHAPE ) +{ + hbqt_par_QMdiArea( 1 )->setTabShape( ( QTabWidget::TabShape ) hb_parni( 2 ) ); +} + +/* + * void setViewMode ( ViewMode mode ) + */ +HB_FUNC( QT_QMDIAREA_SETVIEWMODE ) +{ + hbqt_par_QMdiArea( 1 )->setViewMode( ( QMdiArea::ViewMode ) hb_parni( 2 ) ); +} + +/* + * QTabWidget::TabPosition tabPosition () const + */ +HB_FUNC( QT_QMDIAREA_TABPOSITION ) +{ + hb_retni( ( QTabWidget::TabPosition ) hbqt_par_QMdiArea( 1 )->tabPosition() ); +} + +/* + * QTabWidget::TabShape tabShape () const + */ +HB_FUNC( QT_QMDIAREA_TABSHAPE ) +{ + hb_retni( ( QTabWidget::TabShape ) hbqt_par_QMdiArea( 1 )->tabShape() ); +} + +/* + * bool testOption ( AreaOption option ) const + */ +HB_FUNC( QT_QMDIAREA_TESTOPTION ) +{ + hb_retl( hbqt_par_QMdiArea( 1 )->testOption( ( QMdiArea::AreaOption ) hb_parni( 2 ) ) ); +} + +/* + * ViewMode viewMode () const + */ +HB_FUNC( QT_QMDIAREA_VIEWMODE ) +{ + hb_retni( ( QMdiArea::ViewMode ) hbqt_par_QMdiArea( 1 )->viewMode() ); +} + +/* + * void activateNextSubWindow () + */ +HB_FUNC( QT_QMDIAREA_ACTIVATENEXTSUBWINDOW ) +{ + hbqt_par_QMdiArea( 1 )->activateNextSubWindow(); +} + +/* + * void activatePreviousSubWindow () + */ +HB_FUNC( QT_QMDIAREA_ACTIVATEPREVIOUSSUBWINDOW ) +{ + hbqt_par_QMdiArea( 1 )->activatePreviousSubWindow(); +} + +/* + * void cascadeSubWindows () + */ +HB_FUNC( QT_QMDIAREA_CASCADESUBWINDOWS ) +{ + hbqt_par_QMdiArea( 1 )->cascadeSubWindows(); +} + +/* + * void closeActiveSubWindow () + */ +HB_FUNC( QT_QMDIAREA_CLOSEACTIVESUBWINDOW ) +{ + hbqt_par_QMdiArea( 1 )->closeActiveSubWindow(); +} + +/* + * void closeAllSubWindows () + */ +HB_FUNC( QT_QMDIAREA_CLOSEALLSUBWINDOWS ) +{ + hbqt_par_QMdiArea( 1 )->closeAllSubWindows(); +} + +/* + * void setActiveSubWindow ( QMdiSubWindow * window ) + */ +HB_FUNC( QT_QMDIAREA_SETACTIVESUBWINDOW ) +{ + hbqt_par_QMdiArea( 1 )->setActiveSubWindow( hbqt_par_QMdiSubWindow( 2 ) ); +} + +/* + * void tileSubWindows () + */ +HB_FUNC( QT_QMDIAREA_TILESUBWINDOWS ) +{ + hbqt_par_QMdiArea( 1 )->tileSubWindows(); +} + + +/*----------------------------------------------------------------------*/ +#endif /* #if QT_VERSION >= 0x040500 */ +/*----------------------------------------------------------------------*/ diff --git a/harbour/contrib/hbqt/qtgui/QMdiSubWindow.cpp b/harbour/contrib/hbqt/qtgui/QMdiSubWindow.cpp new file mode 100644 index 0000000000..4ce7597ed5 --- /dev/null +++ b/harbour/contrib/hbqt/qtgui/QMdiSubWindow.cpp @@ -0,0 +1,271 @@ +/* + * $Id$ + */ + +/* -------------------------------------------------------------------- */ +/* WARNING: Automatically generated source file. DO NOT EDIT! */ +/* Instead, edit corresponding .qth file, */ +/* or the generator tool itself, and run regenarate. */ +/* -------------------------------------------------------------------- */ + +/* + * Harbour Project source code: + * QT wrapper main header + * + * Copyright 2009 Pritpal Bedi + * + * Copyright 2009 Marcos Antonio Gambeta + * 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. + * + */ +/*----------------------------------------------------------------------*/ + +#include "hbapi.h" +#include "../hbqt.h" + +/*----------------------------------------------------------------------*/ +#if QT_VERSION >= 0x040500 +/*----------------------------------------------------------------------*/ + +/* + * enum SubWindowOption { RubberBandResize, RubberBandMove } + * flags SubWindowOptions + */ + +#include + +#include + + +/* + * QMdiSubWindow ( QWidget * parent = 0, Qt::WindowFlags flags = 0 ) + * ~QMdiSubWindow () + * + */ + +typedef struct +{ + void * ph; + QT_G_FUNC_PTR func; + QPointer< QMdiSubWindow > pq; +} QGC_POINTER_QMdiSubWindow; + +QT_G_FUNC( hbqt_gcRelease_QMdiSubWindow ) +{ + QGC_POINTER_QMdiSubWindow * p = ( QGC_POINTER_QMdiSubWindow * ) Cargo; + + HB_TRACE( HB_TR_DEBUG, ( "hbqt_gcRelease_QMdiSubWindow p=%p", p)); + HB_TRACE( HB_TR_DEBUG, ( "hbqt_gcRelease_QMdiSubWindow ph=%p pq=%p", p->ph, (void *)(p->pq))); + + if( p && p->ph && p->pq ) + { + const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject(); + if( ( QString ) m->className() != ( QString ) "QObject" ) + { + switch( hbqt_get_object_release_method() ) + { + case HBQT_RELEASE_WITH_DELETE: + delete ( ( QMdiSubWindow * ) p->ph ); + break; + case HBQT_RELEASE_WITH_DESTRUTOR: + ( ( QMdiSubWindow * ) p->ph )->~QMdiSubWindow(); + break; + case HBQT_RELEASE_WITH_DELETE_LATER: + ( ( QMdiSubWindow * ) p->ph )->deleteLater(); + break; + } + p->ph = NULL; + HB_TRACE( HB_TR_DEBUG, ( "hbqt_gcRelease_QMdiSubWindow Object deleted! %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) ); + } + else + { + HB_TRACE( HB_TR_DEBUG, ( "NO hbqt_gcRelease_QMdiSubWindow Object Name Missing!" ) ); + } + } + else + { + HB_TRACE( HB_TR_DEBUG, ( "DEL hbqt_gcRelease_QMdiSubWindow Object Already deleted!" ) ); + } +} + +void * hbqt_gcAllocate_QMdiSubWindow( void * pObj ) +{ + QGC_POINTER_QMdiSubWindow * p = ( QGC_POINTER_QMdiSubWindow * ) hb_gcAllocate( sizeof( QGC_POINTER_QMdiSubWindow ), hbqt_gcFuncs() ); + + p->ph = pObj; + p->func = hbqt_gcRelease_QMdiSubWindow; + new( & p->pq ) QPointer< QMdiSubWindow >( ( QMdiSubWindow * ) pObj ); + HB_TRACE( HB_TR_DEBUG, ( " new_QMdiSubWindow %i B %i KB", ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) ); + return p; +} + +HB_FUNC( QT_QMDISUBWINDOW ) +{ + void * pObj = NULL; + + if( hb_pcount() >= 1 && HB_ISPOINTER( 1 ) ) + { + pObj = new QMdiSubWindow( hbqt_par_QWidget( 1 ), ( Qt::WindowFlags ) hb_parni( 2 ) ) ; + } + else + { + pObj = new QMdiSubWindow() ; + } + + hb_retptrGC( hbqt_gcAllocate_QMdiSubWindow( pObj ) ); +} +/* + * bool isShaded () const + */ +HB_FUNC( QT_QMDISUBWINDOW_ISSHADED ) +{ + hb_retl( hbqt_par_QMdiSubWindow( 1 )->isShaded() ); +} + +/* + * int keyboardPageStep () const + */ +HB_FUNC( QT_QMDISUBWINDOW_KEYBOARDPAGESTEP ) +{ + hb_retni( hbqt_par_QMdiSubWindow( 1 )->keyboardPageStep() ); +} + +/* + * int keyboardSingleStep () const + */ +HB_FUNC( QT_QMDISUBWINDOW_KEYBOARDSINGLESTEP ) +{ + hb_retni( hbqt_par_QMdiSubWindow( 1 )->keyboardSingleStep() ); +} + +/* + * QMdiArea * mdiArea () const + */ +HB_FUNC( QT_QMDISUBWINDOW_MDIAREA ) +{ + hb_retptr( ( QMdiArea* ) hbqt_par_QMdiSubWindow( 1 )->mdiArea() ); +} + +/* + * void setKeyboardPageStep ( int step ) + */ +HB_FUNC( QT_QMDISUBWINDOW_SETKEYBOARDPAGESTEP ) +{ + hbqt_par_QMdiSubWindow( 1 )->setKeyboardPageStep( hb_parni( 2 ) ); +} + +/* + * void setKeyboardSingleStep ( int step ) + */ +HB_FUNC( QT_QMDISUBWINDOW_SETKEYBOARDSINGLESTEP ) +{ + hbqt_par_QMdiSubWindow( 1 )->setKeyboardSingleStep( hb_parni( 2 ) ); +} + +/* + * void setOption ( SubWindowOption option, bool on = true ) + */ +HB_FUNC( QT_QMDISUBWINDOW_SETOPTION ) +{ + hbqt_par_QMdiSubWindow( 1 )->setOption( ( QMdiSubWindow::SubWindowOption ) hb_parni( 2 ), hb_parl( 3 ) ); +} + +/* + * void setSystemMenu ( QMenu * systemMenu ) + */ +HB_FUNC( QT_QMDISUBWINDOW_SETSYSTEMMENU ) +{ + hbqt_par_QMdiSubWindow( 1 )->setSystemMenu( hbqt_par_QMenu( 2 ) ); +} + +/* + * void setWidget ( QWidget * widget ) + */ +HB_FUNC( QT_QMDISUBWINDOW_SETWIDGET ) +{ + hbqt_par_QMdiSubWindow( 1 )->setWidget( hbqt_par_QWidget( 2 ) ); +} + +/* + * QMenu * systemMenu () const + */ +HB_FUNC( QT_QMDISUBWINDOW_SYSTEMMENU ) +{ + hb_retptr( ( QMenu* ) hbqt_par_QMdiSubWindow( 1 )->systemMenu() ); +} + +/* + * bool testOption ( SubWindowOption option ) const + */ +HB_FUNC( QT_QMDISUBWINDOW_TESTOPTION ) +{ + hb_retl( hbqt_par_QMdiSubWindow( 1 )->testOption( ( QMdiSubWindow::SubWindowOption ) hb_parni( 2 ) ) ); +} + +/* + * QWidget * widget () const + */ +HB_FUNC( QT_QMDISUBWINDOW_WIDGET ) +{ + hb_retptr( ( QWidget* ) hbqt_par_QMdiSubWindow( 1 )->widget() ); +} + +/* + * void showShaded () + */ +HB_FUNC( QT_QMDISUBWINDOW_SHOWSHADED ) +{ + hbqt_par_QMdiSubWindow( 1 )->showShaded(); +} + +/* + * void showSystemMenu () + */ +HB_FUNC( QT_QMDISUBWINDOW_SHOWSYSTEMMENU ) +{ + hbqt_par_QMdiSubWindow( 1 )->showSystemMenu(); +} + + +/*----------------------------------------------------------------------*/ +#endif /* #if QT_VERSION >= 0x040500 */ +/*----------------------------------------------------------------------*/ diff --git a/harbour/contrib/hbqt/qtgui/TQMdiArea.prg b/harbour/contrib/hbqt/qtgui/TQMdiArea.prg new file mode 100644 index 0000000000..92d6700ac9 --- /dev/null +++ b/harbour/contrib/hbqt/qtgui/TQMdiArea.prg @@ -0,0 +1,206 @@ +/* + * $Id$ + */ + +/* -------------------------------------------------------------------- */ +/* WARNING: Automatically generated source file. DO NOT EDIT! */ +/* Instead, edit corresponding .qth file, */ +/* or the generator tool itself, and run regenarate. */ +/* -------------------------------------------------------------------- */ + +/* + * Harbour Project source code: + * QT wrapper main header + * + * Copyright 2009 Pritpal Bedi + * + * Copyright 2009 Marcos Antonio Gambeta + * 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. + * + */ +/*----------------------------------------------------------------------*/ + + +#include "hbclass.ch" + + +CREATE CLASS QMdiArea INHERIT HbQtObjectHandler, QAbstractScrollArea + + METHOD new( ... ) + + METHOD activationOrder() + METHOD activeSubWindow() + METHOD addSubWindow( pWidget, nWindowFlags ) + METHOD background() + METHOD currentSubWindow() + METHOD documentMode() + METHOD removeSubWindow( pWidget ) + METHOD setActivationOrder( nOrder ) + METHOD setBackground( pBackground ) + METHOD setDocumentMode( lEnabled ) + METHOD setOption( nOption, lOn ) + METHOD setTabPosition( nPosition ) + METHOD setTabShape( nShape ) + METHOD setViewMode( nMode ) + METHOD tabPosition() + METHOD tabShape() + METHOD testOption( nOption ) + METHOD viewMode() + METHOD activateNextSubWindow() + METHOD activatePreviousSubWindow() + METHOD cascadeSubWindows() + METHOD closeActiveSubWindow() + METHOD closeAllSubWindows() + METHOD setActiveSubWindow( pWindow ) + METHOD tileSubWindows() + + ENDCLASS + + +METHOD QMdiArea:new( ... ) + LOCAL p + FOR EACH p IN { ... } + hb_pvalue( p:__enumIndex(), hbqt_ptr( p ) ) + NEXT + ::pPtr := Qt_QMdiArea( ... ) + RETURN Self + + +METHOD QMdiArea:activationOrder() + RETURN Qt_QMdiArea_activationOrder( ::pPtr ) + + +METHOD QMdiArea:activeSubWindow() + RETURN Qt_QMdiArea_activeSubWindow( ::pPtr ) + + +METHOD QMdiArea:addSubWindow( pWidget, nWindowFlags ) + RETURN Qt_QMdiArea_addSubWindow( ::pPtr, hbqt_ptr( pWidget ), nWindowFlags ) + + +METHOD QMdiArea:background() + RETURN Qt_QMdiArea_background( ::pPtr ) + + +METHOD QMdiArea:currentSubWindow() + RETURN Qt_QMdiArea_currentSubWindow( ::pPtr ) + + +METHOD QMdiArea:documentMode() + RETURN Qt_QMdiArea_documentMode( ::pPtr ) + + +METHOD QMdiArea:removeSubWindow( pWidget ) + RETURN Qt_QMdiArea_removeSubWindow( ::pPtr, hbqt_ptr( pWidget ) ) + + +METHOD QMdiArea:setActivationOrder( nOrder ) + RETURN Qt_QMdiArea_setActivationOrder( ::pPtr, nOrder ) + + +METHOD QMdiArea:setBackground( pBackground ) + RETURN Qt_QMdiArea_setBackground( ::pPtr, hbqt_ptr( pBackground ) ) + + +METHOD QMdiArea:setDocumentMode( lEnabled ) + RETURN Qt_QMdiArea_setDocumentMode( ::pPtr, lEnabled ) + + +METHOD QMdiArea:setOption( nOption, lOn ) + RETURN Qt_QMdiArea_setOption( ::pPtr, nOption, lOn ) + + +METHOD QMdiArea:setTabPosition( nPosition ) + RETURN Qt_QMdiArea_setTabPosition( ::pPtr, nPosition ) + + +METHOD QMdiArea:setTabShape( nShape ) + RETURN Qt_QMdiArea_setTabShape( ::pPtr, nShape ) + + +METHOD QMdiArea:setViewMode( nMode ) + RETURN Qt_QMdiArea_setViewMode( ::pPtr, nMode ) + + +METHOD QMdiArea:tabPosition() + RETURN Qt_QMdiArea_tabPosition( ::pPtr ) + + +METHOD QMdiArea:tabShape() + RETURN Qt_QMdiArea_tabShape( ::pPtr ) + + +METHOD QMdiArea:testOption( nOption ) + RETURN Qt_QMdiArea_testOption( ::pPtr, nOption ) + + +METHOD QMdiArea:viewMode() + RETURN Qt_QMdiArea_viewMode( ::pPtr ) + + +METHOD QMdiArea:activateNextSubWindow() + RETURN Qt_QMdiArea_activateNextSubWindow( ::pPtr ) + + +METHOD QMdiArea:activatePreviousSubWindow() + RETURN Qt_QMdiArea_activatePreviousSubWindow( ::pPtr ) + + +METHOD QMdiArea:cascadeSubWindows() + RETURN Qt_QMdiArea_cascadeSubWindows( ::pPtr ) + + +METHOD QMdiArea:closeActiveSubWindow() + RETURN Qt_QMdiArea_closeActiveSubWindow( ::pPtr ) + + +METHOD QMdiArea:closeAllSubWindows() + RETURN Qt_QMdiArea_closeAllSubWindows( ::pPtr ) + + +METHOD QMdiArea:setActiveSubWindow( pWindow ) + RETURN Qt_QMdiArea_setActiveSubWindow( ::pPtr, hbqt_ptr( pWindow ) ) + + +METHOD QMdiArea:tileSubWindows() + RETURN Qt_QMdiArea_tileSubWindows( ::pPtr ) + diff --git a/harbour/contrib/hbqt/qtgui/TQMdiSubWindow.prg b/harbour/contrib/hbqt/qtgui/TQMdiSubWindow.prg new file mode 100644 index 0000000000..0e550ff0fa --- /dev/null +++ b/harbour/contrib/hbqt/qtgui/TQMdiSubWindow.prg @@ -0,0 +1,151 @@ +/* + * $Id$ + */ + +/* -------------------------------------------------------------------- */ +/* WARNING: Automatically generated source file. DO NOT EDIT! */ +/* Instead, edit corresponding .qth file, */ +/* or the generator tool itself, and run regenarate. */ +/* -------------------------------------------------------------------- */ + +/* + * Harbour Project source code: + * QT wrapper main header + * + * Copyright 2009 Pritpal Bedi + * + * Copyright 2009 Marcos Antonio Gambeta + * 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. + * + */ +/*----------------------------------------------------------------------*/ + + +#include "hbclass.ch" + + +CREATE CLASS QMdiSubWindow INHERIT HbQtObjectHandler, QWidget + + METHOD new( ... ) + + METHOD isShaded() + METHOD keyboardPageStep() + METHOD keyboardSingleStep() + METHOD mdiArea() + METHOD setKeyboardPageStep( nStep ) + METHOD setKeyboardSingleStep( nStep ) + METHOD setOption( nOption, lOn ) + METHOD setSystemMenu( pSystemMenu ) + METHOD setWidget( pWidget ) + METHOD systemMenu() + METHOD testOption( nOption ) + METHOD widget() + METHOD showShaded() + METHOD showSystemMenu() + + ENDCLASS + + +METHOD QMdiSubWindow:new( ... ) + LOCAL p + FOR EACH p IN { ... } + hb_pvalue( p:__enumIndex(), hbqt_ptr( p ) ) + NEXT + ::pPtr := Qt_QMdiSubWindow( ... ) + RETURN Self + + +METHOD QMdiSubWindow:isShaded() + RETURN Qt_QMdiSubWindow_isShaded( ::pPtr ) + + +METHOD QMdiSubWindow:keyboardPageStep() + RETURN Qt_QMdiSubWindow_keyboardPageStep( ::pPtr ) + + +METHOD QMdiSubWindow:keyboardSingleStep() + RETURN Qt_QMdiSubWindow_keyboardSingleStep( ::pPtr ) + + +METHOD QMdiSubWindow:mdiArea() + RETURN Qt_QMdiSubWindow_mdiArea( ::pPtr ) + + +METHOD QMdiSubWindow:setKeyboardPageStep( nStep ) + RETURN Qt_QMdiSubWindow_setKeyboardPageStep( ::pPtr, nStep ) + + +METHOD QMdiSubWindow:setKeyboardSingleStep( nStep ) + RETURN Qt_QMdiSubWindow_setKeyboardSingleStep( ::pPtr, nStep ) + + +METHOD QMdiSubWindow:setOption( nOption, lOn ) + RETURN Qt_QMdiSubWindow_setOption( ::pPtr, nOption, lOn ) + + +METHOD QMdiSubWindow:setSystemMenu( pSystemMenu ) + RETURN Qt_QMdiSubWindow_setSystemMenu( ::pPtr, hbqt_ptr( pSystemMenu ) ) + + +METHOD QMdiSubWindow:setWidget( pWidget ) + RETURN Qt_QMdiSubWindow_setWidget( ::pPtr, hbqt_ptr( pWidget ) ) + + +METHOD QMdiSubWindow:systemMenu() + RETURN Qt_QMdiSubWindow_systemMenu( ::pPtr ) + + +METHOD QMdiSubWindow:testOption( nOption ) + RETURN Qt_QMdiSubWindow_testOption( ::pPtr, nOption ) + + +METHOD QMdiSubWindow:widget() + RETURN Qt_QMdiSubWindow_widget( ::pPtr ) + + +METHOD QMdiSubWindow:showShaded() + RETURN Qt_QMdiSubWindow_showShaded( ::pPtr ) + + +METHOD QMdiSubWindow:showSystemMenu() + RETURN Qt_QMdiSubWindow_showSystemMenu( ::pPtr ) + diff --git a/harbour/contrib/hbqt/qtgui/filelist.mk b/harbour/contrib/hbqt/qtgui/filelist.mk index 955a6291bf..6911547138 100644 --- a/harbour/contrib/hbqt/qtgui/filelist.mk +++ b/harbour/contrib/hbqt/qtgui/filelist.mk @@ -93,6 +93,8 @@ CPP_SOURCES := \ QListWidgetItem.cpp \ QMainWindow.cpp \ QMatrix.cpp \ + QMdiArea.cpp \ + QMdiSubWindow.cpp \ QMenu.cpp \ QMenuBar.cpp \ QMessageBox.cpp \ @@ -303,6 +305,8 @@ PRG_SOURCES := \ TQListWidgetItem.prg \ TQMainWindow.prg \ TQMatrix.prg \ + TQMdiArea.prg \ + TQMdiSubWindow.prg \ TQMenu.prg \ TQMenuBar.prg \ TQMessageBox.prg \ diff --git a/harbour/contrib/hbqt/qth/QMdiArea.qth b/harbour/contrib/hbqt/qth/QMdiArea.qth new file mode 100644 index 0000000000..c312731003 --- /dev/null +++ b/harbour/contrib/hbqt/qth/QMdiArea.qth @@ -0,0 +1,130 @@ +/* + * $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 +; + + +QObject = +Inherits = QAbstractScrollArea +Type = +New = + + + + + + +#include + + +/* + * QMdiArea ( QWidget * parent = 0 ) + * ~QMdiArea () + * + */ +HB_FUNC( QT_QMDIAREA ) +{ + if( hb_pcount() == 1 && HB_ISPOINTER( 1 ) ) + { + hb_retptr( new QMdiArea( hbqt_par_QWidget( 1 ) ) ); + } + else + { + hb_retptr( new QMdiArea() ); + } +} + + + +enum AreaOption { DontMaximizeSubWindowOnActivation } +flags AreaOptions +enum ViewMode { SubWindowView, TabbedView } +enum WindowOrder { CreationOrder, StackingOrder, ActivationHistoryOrder } + + + +WindowOrder activationOrder () const +QMdiSubWindow * activeSubWindow () const +QMdiSubWindow * addSubWindow ( QWidget * widget, Qt::WindowFlags windowFlags = 0 ) +QBrush background () const +QMdiSubWindow * currentSubWindow () const +bool documentMode () const +void removeSubWindow ( QWidget * widget ) +void setActivationOrder ( WindowOrder order ) +void setBackground ( const QBrush & background ) +void setDocumentMode ( bool enabled ) +void setOption ( AreaOption option, bool on = true ) +void setTabPosition ( QTabWidget::TabPosition position ) +void setTabShape ( QTabWidget::TabShape shape ) +void setViewMode ( ViewMode mode ) +QList subWindowList ( WindowOrder order = CreationOrder ) const +QTabWidget::TabPosition tabPosition () const +QTabWidget::TabShape tabShape () const +bool testOption ( AreaOption option ) const +ViewMode viewMode () const + + + +void activateNextSubWindow () +void activatePreviousSubWindow () +void cascadeSubWindows () +void closeActiveSubWindow () +void closeAllSubWindows () +void setActiveSubWindow ( QMdiSubWindow * window ) +void tileSubWindows () + + + +void subWindowActivated ( QMdiSubWindow * window ) + diff --git a/harbour/contrib/hbqt/qth/QMdiSubWindow.qth b/harbour/contrib/hbqt/qth/QMdiSubWindow.qth new file mode 100644 index 0000000000..d65136c45f --- /dev/null +++ b/harbour/contrib/hbqt/qth/QMdiSubWindow.qth @@ -0,0 +1,117 @@ +/* + * $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 +; + + +QObject = +Inherits = QWidget +Type = +New = + + + + + + +#include + + +/* + * QMdiSubWindow ( QWidget * parent = 0, Qt::WindowFlags flags = 0 ) + * ~QMdiSubWindow () + * + */ +HB_FUNC( QT_QMDISUBWINDOW ) +{ + if( hb_pcount() >= 1 && HB_ISPOINTER( 1 ) ) + { + hb_retptr( new QMdiSubWindow( hbqt_par_QWidget( 1 ), ( Qt::WindowFlags ) hb_parni( 2 ) ) ); + } + else + { + hb_retptr( new QMdiSubWindow() ); + } +} + + + +enum SubWindowOption { RubberBandResize, RubberBandMove } +flags SubWindowOptions + + + +bool isShaded () const +int keyboardPageStep () const +int keyboardSingleStep () const +QMdiArea * mdiArea () const +void setKeyboardPageStep ( int step ) +void setKeyboardSingleStep ( int step ) +void setOption ( SubWindowOption option, bool on = true ) +void setSystemMenu ( QMenu * systemMenu ) +void setWidget ( QWidget * widget ) +QMenu * systemMenu () const +bool testOption ( SubWindowOption option ) const +QWidget * widget () const + + + +void showShaded () +void showSystemMenu () + + + +void aboutToActivate () +void windowStateChanged ( Qt::WindowStates oldState, Qt::WindowStates newState ) +