2010-08-10 09:58 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)

* contrib/hbqt/hbqt.ch

  + contrib/hbide/resources/designer.png
  + contrib/hbide/resources/f-bold-1.png
  + contrib/hbide/resources/f-generic.png
  + contrib/hbide/resources/f-image.png
  + contrib/hbide/resources/f-italic-1.png
  + contrib/hbide/resources/f-strike-1.png
  + contrib/hbide/resources/f-underline-1.png
  + contrib/hbide/resources/f_align_bottom.png
  + contrib/hbide/resources/f_align_center.png
  + contrib/hbide/resources/f_align_justify.png
  + contrib/hbide/resources/f_align_left.png
  + contrib/hbide/resources/f_align_middle.png
  + contrib/hbide/resources/f_align_right.png
  + contrib/hbide/resources/f_align_top.png
  + contrib/hbide/resources/f_barcode.png
  + contrib/hbide/resources/f_box_all.png
  + contrib/hbide/resources/f_box_bottom.png
  + contrib/hbide/resources/f_box_left.png
  + contrib/hbide/resources/f_box_matrix.png
  + contrib/hbide/resources/f_box_plain.png
  + contrib/hbide/resources/f_box_right.png
  + contrib/hbide/resources/f_box_shadow.png
  + contrib/hbide/resources/f_box_top.png
  + contrib/hbide/resources/f_chart.png
  + contrib/hbide/resources/f_gradient.png

  * contrib/hbide/hbide.qrc
    + Added: few more icons.

  * contrib/hbide/hbide.hbp
    + Added: ideprojectmanager.prg and idetoolbar.prg

  * contrib/hbide/hbide.prg
  * contrib/hbide/ideactions.prg
  * contrib/hbide/idedocks.prg
  * contrib/hbide/ideobject.prg
  + contrib/hbide/idereportsmanager.prg
  + contrib/hbide/idetoolbar.prg
    + Started: implementation of Harbour's Report Designer and Print Engine.

    NOTE: It is a very complex subject and more so I have a little 
          knowledge about Qt's rendering system, so please do not 
          pin high hopes. I still do not know which way it will proceed,
          will we be successful or failure, will it touch our expectations.
          It is an ambitious project I ever dreamt of developing one, 
          so I just started. If you can extend help in this direction, 
          every bit will matter. So please gear-up yourselves for next logical
          evolution of hbIDE.
This commit is contained in:
Pritpal Bedi
2010-08-10 17:56:36 +00:00
parent 33e6f41c5d
commit dc1d8ec714
35 changed files with 920 additions and 73 deletions

View File

@@ -16,6 +16,58 @@
The license applies to all entries newer than 2009-04-28.
*/
2010-08-10 09:58 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbqt/hbqt.ch
+ contrib/hbide/resources/designer.png
+ contrib/hbide/resources/f-bold-1.png
+ contrib/hbide/resources/f-generic.png
+ contrib/hbide/resources/f-image.png
+ contrib/hbide/resources/f-italic-1.png
+ contrib/hbide/resources/f-strike-1.png
+ contrib/hbide/resources/f-underline-1.png
+ contrib/hbide/resources/f_align_bottom.png
+ contrib/hbide/resources/f_align_center.png
+ contrib/hbide/resources/f_align_justify.png
+ contrib/hbide/resources/f_align_left.png
+ contrib/hbide/resources/f_align_middle.png
+ contrib/hbide/resources/f_align_right.png
+ contrib/hbide/resources/f_align_top.png
+ contrib/hbide/resources/f_barcode.png
+ contrib/hbide/resources/f_box_all.png
+ contrib/hbide/resources/f_box_bottom.png
+ contrib/hbide/resources/f_box_left.png
+ contrib/hbide/resources/f_box_matrix.png
+ contrib/hbide/resources/f_box_plain.png
+ contrib/hbide/resources/f_box_right.png
+ contrib/hbide/resources/f_box_shadow.png
+ contrib/hbide/resources/f_box_top.png
+ contrib/hbide/resources/f_chart.png
+ contrib/hbide/resources/f_gradient.png
* contrib/hbide/hbide.qrc
+ Added: few more icons.
* contrib/hbide/hbide.hbp
+ Added: ideprojectmanager.prg and idetoolbar.prg
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideobject.prg
+ contrib/hbide/idereportsmanager.prg
+ contrib/hbide/idetoolbar.prg
+ Started: implementation of Harbour's Report Designer and Print Engine.
NOTE: It is a very complex subject and more so I have a little
knowledge about Qt's rendering system, so please do not
pin high hopes. I still do not know which way it will proceed,
will we be successful or failure, will it touch our expectations.
It is an ambitious project I ever dreamt of developing one,
so I just started. If you can extend help in this direction,
every bit will matter. So please gear-up yourselves for next logical
evolution of hbIDE.
2010-08-08 16:49 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ contrib/rddads/adsextrn.prg
* contrib/rddads/rddads.hbp

View File

@@ -48,6 +48,8 @@ ideedit.prg
ideplugins.prg
idedict.prg
idebrowse.prg
idereportsmanager.prg
idetoolbar.prg
docviewgenerator.ui
docwriter.ui

View File

@@ -149,6 +149,7 @@ CLASS HbIde
DATA oSC /* Shortcuts Manager */
DATA oTM /* Plugin Tools Manager */
DATA oTH /* Themes Manager */
DATA oRM /* Reports Manager */
DATA oSetup /* Setup Manager */
DATA oINI /* INI Manager */
@@ -244,6 +245,7 @@ CLASS HbIde
DATA oSourceThumbnailDock
DATA oQScintillaDock
DATA oUpDn
DATA oReportsManagerDock
DATA lProjTreeVisible INIT .t.
DATA lDockRVisible INIT .f.
@@ -452,6 +454,8 @@ METHOD HbIde:create( aParams )
::oDK:buildDockWidgets()
/* Toolbar */
::oAC:buildToolBar()
/* Build additional Toolbars */
::oDK:buildToolBarPanels()
/* Main Menu */
::oAC:buildMainMenu()
@@ -480,6 +484,9 @@ METHOD HbIde:create( aParams )
/* Browser Manager */
::oBM := IdeBrowseManager():new():create( Self )
/* Reports Manager */
::oRM := IdeReportsManager():new():create( Self )
/* Fill various elements of the IDE */
::oPM:populate()
::oSM:loadSources()
@@ -491,8 +498,6 @@ METHOD HbIde:create( aParams )
/* Restore Settings */
hbide_restSettings( Self )
/* Again to be displayed in Statusbar */
//HbXbp_SetCodec( ::cWrkCodec )
//::oDK:setStatusText( SB_PNL_CODEC, ::cWrkCodec )
::setCodec( ::cWrkCodec )
::oDK:setStatusText( SB_PNL_THEME, ::cWrkTheme )

View File

@@ -69,6 +69,7 @@
<file>resources/decreaseindent.png</file>
<file>resources/deleteline.png</file>
<file>resources/description.png</file>
<file>resources/designer.png</file>
<file>resources/docwriter.png</file>
<file>resources/down.png</file>
<file>resources/down16.png</file>
@@ -238,5 +239,29 @@
<file>resources/zoomout.png</file>
<file>resources/zoomin3.png</file>
<file>resources/zoomout3.png</file>
<file>resources/f_align_left.png</file>
<file>resources/f_align_right.png</file>
<file>resources/f_align_center.png</file>
<file>resources/f_align_justify.png</file>
<file>resources/f_align_top.png</file>
<file>resources/f_align_middle.png</file>
<file>resources/f_align_bottom.png</file>
<file>resources/f_box_top.png</file>
<file>resources/f_box_left.png</file>
<file>resources/f_box_bottom.png</file>
<file>resources/f_box_right.png</file>
<file>resources/f_box_all.png</file>
<file>resources/f_box_plain.png</file>
<file>resources/f_box_shadow.png</file>
<file>resources/f-generic.png</file>
<file>resources/f-image.png</file>
<file>resources/f_chart.png</file>
<file>resources/f_gradient.png</file>
<file>resources/f_barcode.png</file>
<file>resources/f-bold-1.png</file>
<file>resources/f-italic-1.png</file>
<file>resources/f-underline-1.png</file>
<file>resources/f-strike-1.png</file>
</qresource>
</RCC>

View File

@@ -557,6 +557,8 @@ METHOD IdeActions:buildMainMenu()
oSubMenu:oWidget:addAction_4( ::oSourceThumbnailDock:oWidget:toggleViewAction() )
oSubMenu:oWidget:addAction_4( ::oQScintillaDock:oWidget:toggleViewAction() )
oSubMenu:oWidget:addAction_4( ::oReportsManagerDock:toggleViewAction() )
oSubMenu:oWidget:addSeparator()
oSubMenu:oWidget:addAction_4( ::oDockB2:oWidget:toggleViewAction() )
* oSubMenu:oWidget:addAction_4( ::oDockB1:oWidget:toggleViewAction() )

View File

@@ -138,6 +138,7 @@ CLASS IdeDocks INHERIT IdeObject
METHOD buildSourceThumbnail()
METHOD buildQScintilla()
METHOD buildUpDownWidget()
METHOD buildReportsDesignerWidget()
METHOD buildSystemTray()
METHOD showDlgBySystemTrayIconCommand()
METHOD setViewInitials()
@@ -177,32 +178,33 @@ METHOD IdeDocks:destroy()
::oIde:oProjRoot := NIL
::oIde:oOpenedSources := NIL
::disconnect( ::oOutputResult:oWidget , "copyAvailable(bool)" )
::disconnect( ::oOutputResult:oWidget , "copyAvailable(bool)" )
::disconnect( ::oEnvironDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oPropertiesDock:oWidget, "visibilityChanged(bool)" )
::disconnect( ::oThemesDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDocViewDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDocWriteDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oFindDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oFunctionsDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oSkeltnDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oHelpDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oFuncDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oEnvironDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oPropertiesDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oThemesDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDocViewDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDocWriteDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oFindDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oFunctionsDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oSkeltnDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oHelpDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oFuncDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oSourceThumbnailDock:oWidget, "visibilityChanged(bool)" )
::disconnect( ::oQScintillaDock:oWidget, "visibilityChanged(bool)" )
::disconnect( ::oQScintillaDock:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oReportsManagerDock:oWidget , "visibilityChanged(bool)" )
#if 0 /* Not Implemented */
::disconnect( ::oDockPT:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDockED:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDockB2:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDockPT:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDockED:oWidget , "visibilityChanged(bool)" )
::disconnect( ::oDockB2:oWidget , "visibilityChanged(bool)" )
#endif
IF !empty( ::oSys )
::disconnect( ::oSys , "activated(QSystemTrayIcon::ActivationReason)" )
::disconnect( ::qAct1 , "triggered(bool)" )
::disconnect( ::qAct2 , "triggered(bool)" )
::disconnect( ::oSys , "activated(QSystemTrayIcon::ActivationReason)" )
::disconnect( ::qAct1 , "triggered(bool)" )
::disconnect( ::qAct2 , "triggered(bool)" )
ENDIF
FOR EACH qTBtn IN ::aPanels
@@ -259,7 +261,7 @@ METHOD IdeDocks:buildDialog()
::oDlg:setTabPosition( Qt_BottomDockWidgetArea, QTabWidget_South )
::oDlg:setCorner( Qt_BottomLeftCorner, Qt_LeftDockWidgetArea )
::oDlg:setCorner( Qt_BottomRightCorner, Qt_RightDockWidgetArea )
::oDlg:resize( 900,470 )
::oDlg:oWidget:resize( 950,520 )
::oIde:oDa := ::oDlg:drawingArea
@@ -317,10 +319,10 @@ METHOD IdeDocks:buildDialog()
aadd( ::aViewsInfo, a_ )
NEXT
IF ascan( ::aViewsInfo, {|e_| e_[ 1 ] == "Main" } ) == 0
hb_ains( ::aViewsInfo, 1, { "Main", NIL, 0, 0, 0, 0 }, .t. )
hb_ains( ::aViewsInfo, 1, { "Main", NIL, 0, 0, QMdiArea_TabbedView, 0 }, .t. )
ENDIF
IF ascan( ::aViewsInfo, {|e_| e_[ 1 ] == "Stats" } ) == 0
hb_ains( ::aViewsInfo, 1, { "Stats", NIL, 0, 0, 0, 0 }, .t. )
hb_ains( ::aViewsInfo, 1, { "Stats", NIL, 0, 0, QMdiArea_TabbedView, 0 }, .t. )
ENDIF
/* View Panels */
@@ -371,6 +373,54 @@ METHOD IdeDocks:buildDialog()
/*----------------------------------------------------------------------*/
METHOD IdeDocks:buildDockWidgets()
::buildProjectTree()
::buildEditorTree()
::buildFuncList()
::buildSkeletonsTree()
::buildHelpWidget()
::buildSkeletonWidget()
::buildFindInFiles()
::buildThemesDock()
::buildPropertiesDock()
::buildEnvironDock()
::buildCompileResults()
::buildLinkResults()
::buildOutputResults()
::buildDocViewer()
::buildDocWriter()
::buildFunctionsDock()
::buildSourceThumbnail()
::buildQScintilla()
::buildUpDownWidget()
::buildReportsDesignerWidget()
/* Bottom Docks */
::oDlg:oWidget:tabifyDockWidget( ::oDockB:oWidget , ::oDockB1:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oDockB1:oWidget , ::oDockB2:oWidget )
/* Right Docks */
::oDlg:oWidget:tabifyDockWidget( ::oHelpDock:oWidget , ::oDocViewDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oDocViewDock:oWidget , ::oFuncDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oFuncDock:oWidget , ::oFunctionsDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oFunctionsDock:oWidget , ::oPropertiesDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oPropertiesDock:oWidget , ::oEnvironDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oEnvironDock:oWidget , ::oSkeltnDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oSkeltnDock:oWidget , ::oThemesDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oThemesDock:oWidget , ::oFindDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oFindDock:oWidget , ::oDocWriteDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oDocWriteDock:oWidget , ::oSourceThumbnailDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oSourceThumbnailDock:oWidget, ::oQScintillaDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oQScintillaDock:oWidget , ::oReportsManagerDock:oWidget )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeDocks:buildSystemTray()
IF empty( ::oSys )
@@ -401,6 +451,12 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
LOCAL qEvent, qMime, qList, qUrl, i, n, oEdit
SWITCH cEvent
CASE "dockReportsManager_visibilityChanged"
IF p; ::oRM:show() ; ENDIF
IF ! p .AND. ! p1:isVisible()
p1:raise()
ENDIF
EXIT
CASE "dockQScintilla_visibilityChanged"
IF p; ::oBM:show() ; ENDIF
IF ! p .AND. ! p1:isVisible()
@@ -788,54 +844,6 @@ METHOD IdeDocks:showDlgBySystemTrayIconCommand()()
/*----------------------------------------------------------------------*/
METHOD IdeDocks:buildDockWidgets()
::buildProjectTree()
::buildEditorTree()
::buildFuncList()
::buildSkeletonsTree()
::buildHelpWidget()
::buildSkeletonWidget()
::buildFindInFiles()
::buildThemesDock()
::buildPropertiesDock()
::buildEnvironDock()
::buildCompileResults()
::buildLinkResults()
::buildOutputResults()
::buildDocViewer()
::buildDocWriter()
::buildFunctionsDock()
::buildSourceThumbnail()
::buildQScintilla()
::buildUpDownWidget()
/* Bottom Docks */
::oDlg:oWidget:tabifyDockWidget( ::oDockB:oWidget , ::oDockB1:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oDockB1:oWidget , ::oDockB2:oWidget )
/* Right Docks */
::oDlg:oWidget:tabifyDockWidget( ::oHelpDock:oWidget , ::oDocViewDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oDocViewDock:oWidget , ::oFuncDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oFuncDock:oWidget , ::oFunctionsDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oFunctionsDock:oWidget , ::oPropertiesDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oPropertiesDock:oWidget , ::oEnvironDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oEnvironDock:oWidget , ::oSkeltnDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oSkeltnDock:oWidget , ::oThemesDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oThemesDock:oWidget , ::oFindDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oFindDock:oWidget , ::oDocWriteDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oDocWriteDock:oWidget , ::oSourceThumbnailDock:oWidget )
::oDlg:oWidget:tabifyDockWidget( ::oSourceThumbnailDock:oWidget, ::oQScintillaDock:oWidget )
::buildToolBarPanels()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeDocks:getADockWidget( nAreas, cObjectName, cWindowTitle, nFlags, cEventVisibility )
LOCAL oDock, nBasic
@@ -1345,6 +1353,7 @@ METHOD IdeDocks:buildToolBarPanels()
aadd( aBtns, { ::oFindDock , "search" } )
aadd( aBtns, { ::oSourceThumbnailDock, "thumbnail" } )
aadd( aBtns, { ::oQScintillaDock , "browser" } )
aadd( aBtns, { ::oReportsManagerDock , "designer" } )
aadd( aBtns, {} )
aadd( aBtns, { ::oDockB2 , "builderror" } )
@@ -1359,7 +1368,11 @@ METHOD IdeDocks:buildToolBarPanels()
ENDIF
NEXT
::oDlg:oWidget:addToolBar( Qt_RightToolBarArea, ::qTBarDocks )
IF ::oIde:lCurEditsMdi
::oDlg:oWidget:addToolBar( Qt_TopToolBarArea, ::qTBarDocks )
ELSE
::oDlg:oWidget:addToolBar( Qt_RightToolBarArea, ::qTBarDocks )
ENDIF
/* User defined toolbars via Tools & Utilities */
::oTM:buildUserToolbars()
@@ -1782,6 +1795,17 @@ METHOD IdeDocks:buildQScintilla()
/*----------------------------------------------------------------------*/
METHOD IdeDocks:buildReportsDesignerWidget()
LOCAL nAreas := Qt_LeftDockWidgetArea + Qt_RightDockWidgetArea + Qt_TopDockWidgetArea + Qt_BottomDockWidgetArea
::oIde:oReportsManagerDock := ::getADockWidget( nAreas, "dockReportDesigner", "ideReports Designer", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget_1( Qt_RightDockWidgetArea, ::oReportsManagerDock:oWidget, Qt_Horizontal )
::connect( ::oReportsManagerDock:oWidget, "visibilityChanged(bool)", {|p| ::execEvent( "dockReportsManager_visibilityChanged", p, ::oReportsManagerDock:oWidget ) } )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeDocks:setStatusText( nPart, xValue )
LOCAL oPanel := ::oSBar:getItem( nPart )

View File

@@ -100,6 +100,7 @@ CLASS IdeObject
ACCESS oTM INLINE ::oIde:oTM
ACCESS oTH INLINE ::oIde:oTH
ACCESS oFF INLINE ::oIde:oFF
ACCESS oRM INLINE ::oIde:oRM
ACCESS oSetup INLINE ::oIde:oSetup
ACCESS oINI INLINE ::oIde:oINI
@@ -197,6 +198,7 @@ CLASS IdeObject
ACCESS oQScintillaDock INLINE ::oIde:oQScintillaDock
ACCESS oMainToolbar INLINE ::oIde:oMainToolbar
ACCESS oUpDn INLINE ::oIde:oUpDn
ACCESS oReportsManagerDock INLINE ::oIde:oReportsManagerDock
ACCESS oSys INLINE ::oIde:oSys
ACCESS oSysMenu INLINE ::oIde:oSysMenu

View File

@@ -0,0 +1,494 @@
/*
* $Id$
*/
/*
* Harbour Project source code:
*
* Copyright 2010 Pritpal Bedi <pritpal@vouchcac.com>
* www - http://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.
*
*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
/*
* EkOnkar
* ( The LORD is ONE )
*
* Harbour-Qt IDE
*
* Pritpal Bedi <bedipritpal@hotmail.com>
* 07Aug2010
*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
#include "hbide.ch"
#include "common.ch"
#include "hbclass.ch"
#include "hbqt.ch"
/*----------------------------------------------------------------------*/
CLASS IdeReportsManager INHERIT IdeObject
DATA oWidget
DATA qLayout
DATA qToolbar
DATA qToolbarL
DATA qToolbarAlign
DATA qStack
DATA qStatus
DATA qTabBar
DATA qWidget1
DATA qWidget2
DATA qWidget3
DATA qSpliter
DATA qLayoutD
DATA qFrameL
DATA qScroll
DATA qFrameR
DATA qLayL
DATA qLayR
DATA qSplL
DATA qSplR
DATA qTabL0
DATA qPageL01
DATA qPageL02
DATA qPageL01Lay
DATA qTreeObjects
DATA qTabL1
DATA qPageL11
DATA qPageL12
DATA qPageL11Lay
DATA qTreeProp
DATA qEditDesc
DATA qTabR1
DATA qPageR11
DATA qPageR11Lay
DATA qTreeData
DATA qPageR12
DATA qPageR13
DATA qDesign
DATA qHRuler
DATA qVRuler
DATA qPort
DATA aStatusPnls INIT {}
METHOD new( oIde )
METHOD create( oIde )
METHOD destroy()
METHOD show()
METHOD execEvent( cEvent, p )
METHOD buildToolbar()
METHOD buildToolbarAlign()
METHOD buildToolbarLeft()
METHOD buildStacks()
METHOD buildStatusBar()
METHOD buildTabBar()
METHOD buildDesignReport()
ENDCLASS
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:new( oIde )
::oIde := oIde
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:create( oIde )
LOCAL qDock
DEFAULT oIde TO ::oIde
::oIde := oIde
qDock := ::oIde:oReportsManagerDock:oWidget
::oWidget := QWidget():new()
qDock:setWidget( ::oWidget )
/* Layout applied to RM widget */
::qLayout := QGridLayout():new()
::qLayout:setContentsMargins( 0,0,0,0 )
::qLayout:setSpacing( 0 )
::oWidget:setLayout( ::qLayout )
/* Toolbar */
::buildToolbar()
::qLayout:addWidget_1( ::qToolbar:oWidget , 0, 0, 1, 2 )
::buildToolbarAlign()
::qLayout:addWidget_1( ::qToolbarAlign:oWidget , 1, 0, 1, 2 )
/* Toolbar left */
::buildToolbarLeft()
::qLayout:addWidget_1( ::qToolbarL:oWidget , 2, 0, 2, 1 )
/* ::qTabBar */
::buildTabBar()
::qLayout:addWidget_1( ::qTabBar , 2, 1, 1, 1 )
/* Stacked widget */
::buildStacks()
::qLayout:addWidget_1( ::qStack , 3, 1, 1, 1 )
/* StatusBar */
::buildStatusBar()
::qLayout:addWidget_1( ::qStatus , 4, 0, 1, 2 )
/* Document manipulation interface */
::buildDesignReport()
::qTabBar:setCurrentIndex( 2 )
::oWidget:show()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:destroy()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:show()
::oReportsManagerDock:raise()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:execEvent( cEvent, p )
HB_SYMBOL_UNUSED( p )
SWITCH cEvent
CASE "tabBar_currentChanged"
IF !empty( ::qStack ) .AND. p < ::qStack:count()
::qStack:setCurrentIndex( p )
ENDIF
EXIT
CASE "buttonNew_clicked"
EXIT
CASE "buttonOpen_clicked"
EXIT
CASE "buttonSave_clicked"
EXIT
CASE "buttonClose_clicked"
EXIT
CASE "buttonPrint_clicked"
EXIT
ENDSWITCH
RETURN NIL
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:buildDesignReport()
::qLayoutD := QHBoxLayout():new()
::qLayoutD:setContentsMargins( 0,0,0,0 )
::qLayoutD:setSpacing( 1 )
::qWidget3:setLayout( ::qLayoutD )
::qSpliter := QSplitter():new()
::qSpliter:setOrientation( Qt_Horizontal )
::qLayoutD:addWidget( ::qSpliter )
::qFrameL := QFrame():new()
::qSpliter:addWidget( ::qFrameL )
::qScroll := QScrollArea():new()
::qScroll:setVerticalScrollBarPolicy( Qt_ScrollBarAsNeeded )
::qScroll:setHorizontalScrollBarPolicy( Qt_ScrollBarAsNeeded )
::qScroll:setWidgetResizable( .f. )
::qScroll:setMinimumWidth( 400 )
::qScroll:setBackgroundRole( QPalette_Dark )
::qSpliter:addWidget( ::qScroll )
::qFrameR := QFrame():new()
::qSpliter:addWidget( ::qFrameR )
::qLayL := QVBoxLayout():new()
::qLayL:setContentsMargins( 0,0,0,0 )
::qLayL:setSpacing( 1 )
::qFrameL:setLayout( ::qLayL )
::qSplL := QSplitter():new()
::qSplL:setOrientation( Qt_Vertical )
::qLayL:addWidget( ::qSplL )
::qLayR := QVBoxLayout():new()
::qLayR:setContentsMargins( 0,0,0,0 )
::qLayR:setSpacing( 1 )
::qFrameR:setLayout( ::qLayR )
::qSplR := QSplitter():new()
::qSplR:setOrientation( Qt_Vertical )
::qLayR:addWidget( ::qSplR )
::qFrameL:setMinimumWidth( 100 )
::qFrameR:setMinimumWidth( 100 )
::qTabL0 := QTabWidget():new()
::qSplL:addWidget( ::qTabL0 )
/* Left Pane Objects Page */
::qPageL01 := QWidget():new()
::qTabL0:addTab( ::qPageL01, "Objects" )
::qPageL01Lay := QVBoxLayout():new()
::qPageL01:setLayout( ::qPageL01Lay )
::qPageL01Lay:setContentsMargins( 0,0,0,0 )
/* Left Pane Events page */
::qPageL02 := QWidget():new()
::qTabL0:addTab( ::qPageL02, "Else" )
/* Left pane Properties Treeview */
::qTreeObjects := QTreeWidget():new()
::qPageL01Lay:addWidget( ::qTreeObjects )
::qTreeObjects:setHeaderHidden( .t. )
::qTabL1 := QTabWidget():new()
::qSplL:addWidget( ::qTabL1 )
/* Left Pane Properties Page */
::qPageL11 := QWidget():new()
::qTabL1:addTab( ::qPageL11, "Props" )
::qPageL11Lay := QVBoxLayout():new()
::qPageL11:setLayout( ::qPageL11Lay )
::qPageL11Lay:setContentsMargins( 0,0,0,0 )
/* Left Pane Events page */
::qPageL12 := QWidget():new()
::qTabL1:addTab( ::qPageL12, "Events" )
/* Left pane Properties Treeview */
::qTreeProp := QTreeWidget():new()
::qPageL11Lay:addWidget( ::qTreeProp )
::qTreeProp:setHeaderHidden( .t. )
::qEditDesc := QTextEdit():new()
::qSplL:addWidget( ::qEditDesc )
::qEditDesc:setPlainText( "Interface implemented is just a proof of concept, no promises yet, please." )
::qEditDesc:setMaximumHeight( 120 )
::qTabR1 := QTabWidget():new()
::qSplR:addWidget( ::qTabR1 )
::qPageR11 := QWidget():new()
::qTabR1:addTab( ::qPageR11, "Data" )
::qPageR12 := QWidget():new()
::qTabR1:addTab( ::qPageR12, "Variables" )
::qPageR13 := QWidget():new()
::qTabR1:addTab( ::qPageR13, "Functions" )
::qPageR11Lay := QVBoxLayout():new()
::qPageR11:setLayout( ::qPageR11Lay )
::qPageR11Lay:setContentsMargins( 0,0,0,0 )
::qTreeData := QTreeWidget():new()
::qPageR11Lay:addWidget( ::qTreeData )
::qTreeData:setHeaderHidden( .t. )
::qDesign := QFrame():new()
::qScroll:setWidget( ::qDesign )
::qDesign:setBackgroundRole( QPalette_Dark )
::qDesign:setGeometry( QRect():new( 0, 0, 600, 900 ) )
::qHRuler := QFrame():new( ::qDesign )
::qHRuler:setGeometry( QRect():new( 30, 0, ::qDesign:width(), 15 ) )
::qHRuler:setStyleSheet( "background-color: rgb(240,240,240);" )
::qVRuler := QFrame():new( ::qDesign )
::qVRuler:setStyleSheet( "background-color: rgb(240,240,240);" )
::qVRuler:setGeometry( QRect():new( 0, 30, 15, ::qDesign:height() ) )
::qPort := QFrame():new( ::qDesign )
::qPort:setStyleSheet( "background-color: white;" )
::qPort:setGeometry( QRect():new( 30, 30, ::qDesign:width() - 45, ::qDesign:height() - 45 ) )
::qWidget1:show()
::qWidget2:show()
::qWidget3:show()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:buildTabBar()
::qTabBar := QTabBar():new()
//::qTabBar:setDocumentMode( .t. )
::qTabBar:setShape( QTabBar_TriangularNorth )
::qTabBar:addTab( "Code" )
::qTabBar:addTab( "Dialogs" )
::qTabBar:addTab( "Page1" )
::connect( ::qTabBar, "currentChanged(int)", {|p| ::execEvent( "tabBar_currentChanged", p ) } )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:buildStacks()
::qStack := QStackedWidget():new()
::qWidget1 := QWidget():new()
::qStack:addWidget( ::qWidget1 )
::qWidget2 := QWidget():new()
::qStack:addWidget( ::qWidget2 )
::qWidget3 := QWidget():new()
::qStack:addWidget( ::qWidget3 )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:buildToolbar()
::qToolbar := IdeToolbar():new()
::qToolbar:orientation := Qt_Horizontal
::qToolbar:create( "ReportManager_Top_Toolbar" )
::qToolbar:addToolButton( "New" , "New Report" , hbide_image( "new" ), {|| ::execEvent( "buttonNew_clicked" ) } )
::qToolbar:addToolButton( "Open" , "Open Report" , hbide_image( "open3" ), {|| ::execEvent( "buttonOpen_clicked" ) } )
::qToolbar:addToolButton( "Save" , "Save Report" , hbide_image( "save3" ), {|| ::execEvent( "buttonSave_clicked" ) } )
::qToolbar:addToolButton( "Close", "Close Report", hbide_image( "close3" ), {|| ::execEvent( "buttonClose_clicked" ) } )
::qToolbar:addToolButton( "Print", "Print Report", hbide_image( "print" ), {|| ::execEvent( "buttonPrint_clicked" ) } )
::qToolbar:addSeparator()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:buildToolbarAlign()
::qToolbarAlign := IdeToolbar():new()
::qToolbarAlign:orientation := Qt_Horizontal
::qToolbarAlign:create( "ReportManager_Top_Toolbar_Align" )
::qToolbarAlign:addToolButton( "FontG" , "Font", hbide_image( "f-generic" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addSeparator()
::qToolbarAlign:addToolButton( "FontB" , "Text Bold" , hbide_image( "f-bold-1" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "FontI" , "Text Italic" , hbide_image( "f-italic-1" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "FontU" , "Text Underlined" , hbide_image( "f-underline-1" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "FontS" , "Text Strikethrough", hbide_image( "f-strike-1" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addSeparator()
::qToolbarAlign:addToolButton( "JustL" , "Align left" , hbide_image( "f_align_left" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "JustC" , "Align center" , hbide_image( "f_align_center" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "JustR" , "Align right" , hbide_image( "f_align_right" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "JustJ" , "Align justify" , hbide_image( "f_align_justify" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addSeparator()
::qToolbarAlign:addToolButton( "JustT" , "Align top" , hbide_image( "f_align_top" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "JustM" , "Align middle" , hbide_image( "f_align_middle" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "JustB" , "Align bottom" , hbide_image( "f_align_bottom" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addSeparator()
::qToolbarAlign:addToolButton( "BoxT" , "Box-frame top" , hbide_image( "f_box_top" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "BoxL" , "Box-frame left" , hbide_image( "f_box_left" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "BoxB" , "Box-frame bottom" , hbide_image( "f_box_bottom" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "BoxR" , "Box-frame right" , hbide_image( "f_box_right" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addSeparator()
::qToolbarAlign:addToolButton( "BoxA" , "Box-frame all" , hbide_image( "f_box_all" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "BoxP" , "No box-frame" , hbide_image( "f_box_plain" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addToolButton( "BoxS" , "Box shadowed" , hbide_image( "f_box_shadow" ), {|| ::execEvent( "button_clicked" ) } )
::qToolbarAlign:addSeparator()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:buildToolbarLeft()
::qToolbarL := IdeToolbar():new()
::qToolbarL:orientation := Qt_Vertical
::qToolbarL:create( "ReportManager_Left_Toolbar" )
::qToolbarL:addToolButton( "Image" , "Image" , hbide_image( "f-image" ), {|| ::execEvent( "buttonNew_clicked" ) } )
::qToolbarL:addToolButton( "Chart" , "Chart" , hbide_image( "f_chart" ), {|| ::execEvent( "buttonNew_clicked" ) } )
::qToolbarL:addToolButton( "Gradient", "Gradient", hbide_image( "f_gradient" ), {|| ::execEvent( "buttonNew_clicked" ) } )
::qToolbarL:addToolButton( "Barcode" , "Barcode" , hbide_image( "f_barcode" ), {|| ::execEvent( "buttonNew_clicked" ) } )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeReportsManager:buildStatusBar()
LOCAL qLabel
::qStatus := QStatusBar():new()
::qStatus:setSizeGripEnabled( .f. )
qLabel := QLabel():new(); qLabel:setMinimumWidth( 40 )
::qStatus:addPermanentWidget( qLabel, 0 )
aadd( ::aStatusPnls, qLabel )
qLabel:setText( "Ready" )
qLabel := QLabel():new(); qLabel:setMinimumWidth( 40 )
::qStatus:addPermanentWidget( qLabel, 0 )
aadd( ::aStatusPnls, qLabel )
qLabel := QLabel():new(); qLabel:setMinimumWidth( 40 )
::qStatus:addPermanentWidget( qLabel, 0 )
aadd( ::aStatusPnls, qLabel )
qLabel := QLabel():new(); qLabel:setMinimumWidth( 40 )
::qStatus:addPermanentWidget( qLabel, 1 )
aadd( ::aStatusPnls, qLabel )
RETURN Self
/*------------------------------------------------------------------------*/

View File

@@ -0,0 +1,222 @@
/*
* $Id$
*/
/*
* Harbour Project source code:
*
* Copyright 2010 Pritpal Bedi <pritpal@vouchcac.com>
* www - http://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.
*
*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
/*
* EkOnkar
* ( The LORD is ONE )
*
* Harbour-Qt IDE
*
* Pritpal Bedi <bedipritpal@hotmail.com>
* 07Aug2010
*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
/*----------------------------------------------------------------------*/
#include "hbide.ch"
#include "common.ch"
#include "hbclass.ch"
#include "hbqt.ch"
/*----------------------------------------------------------------------*/
CLASS IdeToolbar INHERIT IdeObject
DATA oWidget
DATA cName
DATA oParent
DATA hItems INIT {=>}
DATA allowedAreas INIT Qt_TopToolBarArea
DATA initialArea INIT Qt_TopToolBarArea
DATA orientation INIT Qt_Horizontal
DATA size INIT QSize():new( 16,16 )
DATA moveable INIT .f.
DATA floatable INIT .f.
METHOD new( cName, oParent )
METHOD create( cName, oParent )
METHOD destroy()
METHOD execEvent( cEvent, p )
METHOD addToolButton( cName, cDesc, cImage, bAction, lCheckable )
METHOD setItemChecked( cName, lState )
METHOD setItemEnabled( cName, lEnabled )
ERROR HANDLER onError( ... )
ENDCLASS
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:new( cName, oParent )
::cName := cName
::oParent := oParent
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:create( cName, oParent )
STATIC nID := 0
DEFAULT cName TO ::cName
DEFAULT oParent TO ::oParent
::cName := cName
::oParent := oParent
DEFAULT ::cName TO "IdeToolbar_" + hb_ntos( ++nID )
::oWidget := QToolbar():new()
::oWidget:setObjectName( ::cName )
::oWidget:setAllowedAreas( ::allowedAreas )
::oWidget:setOrientation( ::orientation )
::oWidget:setIconSize( ::size )
::oWidget:setMovable( ::moveable )
::oWidget:setFloatable( ::floatable )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:onError( ... )
LOCAL cMsg := __GetMessage()
IF SubStr( cMsg, 1, 1 ) == "_"
cMsg := SubStr( cMsg, 2 )
ENDIF
RETURN ::oWidget:&cMsg( ... )
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:destroy()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:execEvent( cEvent, p )
HB_SYMBOL_UNUSED( p )
SWITCH cEvent
CASE "buttonNew_clicked"
EXIT
ENDSWITCH
RETURN NIL
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:addToolButton( cName, cDesc, cImage, bAction, lCheckable )
LOCAL oButton, qAction
STATIC nID := 0
DEFAULT cName TO "IdeToolButton_" + hb_ntos( ++nID )
DEFAULT cDesc TO ""
DEFAULT lCheckable TO .f.
oButton := QToolButton():new( ::oWidget )
oButton:setObjectName( cName )
oButton:setTooltip( cDesc )
oButton:setIcon( cImage )
oButton:setCheckable( lCheckable )
IF hb_isBlock( bAction )
::connect( oButton, "clicked()", bAction )
ENDIF
#if 1
qAction := QWidgetAction():new()
qAction:setDefaultWidget( oButton )
::oWidget:addAction( qAction )
#else
::oWidget:addWidget( oButton )
#endif
::hItems[ cName ] := oButton
RETURN oButton
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:setItemChecked( cName, lState )
LOCAL lOldState
IF hb_hHasKey( ::hItems, cName )
IF ::hItems[ cName ]:isCheckable()
lOldState := ::hItems[ cName ]:isChecked()
IF hb_isLogical( lState )
::hItems[ cName ]:setChecked( lState )
ENDIF
ENDIF
ENDIF
RETURN lOldState
/*----------------------------------------------------------------------*/
METHOD IdeToolbar:setItemEnabled( cName, lEnabled )
LOCAL lOldEnabled
IF hb_hHasKey( ::hItems, cName )
lOldEnabled := ::hItems[ cName ]:isEnabled()
IF hb_isLogical( lEnabled )
::hItems[ cName ]:setEnabled( lEnabled )
ENDIF
ENDIF
RETURN lOldEnabled
/*----------------------------------------------------------------------*/

Binary file not shown.

After

Width:  |  Height:  |  Size: 788 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 705 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 627 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 558 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 619 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 611 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 673 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 529 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 587 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 253 B

View File

@@ -2249,10 +2249,29 @@
#define QAbstractItemDelegate_EditNextItem 1 // The view should use the delegate to open an editor on the next item in the view.
#define QAbstractItemDelegate_EditPreviousItem 2 // The view should use the delegate to open an editor on the previous item in the view.
// The following hints are most useful when models are used that cache data, such as those that manipulate data locally in order to increase performance or conserve network bandwidth.
//The following hints are most useful when models are used that cache data, such as those that manipulate data locally in order to increase performance or conserve network bandwidth.
#define QAbstractItemDelegate_SubmitModelCache 3 // If the model caches data, it should write out cached data to the underlying data store.
#define QAbstractItemDelegate_RevertModelCache 4 // If the model caches data, it should discard cached data and replace it with data from the underlying data store.
#define QTabBar_LeftSide 0 // Left side of the tab.
#define QTabBar_RightSide 1 // Right side of the tab.
//This enum was introduced in Qt 4.5.
#define QTabBar_SelectLeftTab 0 // Select the tab to the left of the one being removed.
#define QTabBar_SelectRightTab 1 // Select the tab to the right of the one being removed.
#define QTabBar_SelectPreviousTab 2 // Select the previously selected tab.
//This enum was introduced in Qt 4.5.
//enum QTabBar::Shape
//This enum type lists the built-in shapes supported by QTabBar. Treat these as hints as some styles may not render some of the shapes. However, position should be honored.
#define QTabBar_RoundedNorth 0 // The normal rounded look above the pages
#define QTabBar_RoundedSouth 1 // The normal rounded look below the pages
#define QTabBar_RoundedWest 2 // The normal rounded look on the left side of the pages
#define QTabBar_RoundedEast 3 // The normal rounded look on the right side the pages
#define QTabBar_TriangularNorth 4 // Triangular tabs above the pages.
#define QTabBar_TriangularSouth 5 // Triangular tabs similar to those used in the Excel spreadsheet, for example
#define QTabBar_TriangularWest 6 // Triangular tabs on the left of the pages.
#define QTabBar_TriangularEast 7 // Triangular tabs on the right of the pages.
/*----------------------------------------------------------------------*/