From ebc597c01b8595947704855364f2cc526dc4010a Mon Sep 17 00:00:00 2001 From: Pritpal Bedi Date: Sat, 22 Sep 2012 09:54:07 +0000 Subject: [PATCH] 2012-09-22 02:27 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com) * contrib/hbide/actions.prg + Added: prompts of IdePARTS in "View" menu. * contrib/hbide/docks.prg - Deleted: some redundant code. * contrib/hbide/main.prg * contrib/hbide/parts.prg + Added: new part "IdeREPORTS" as a non-dock widget. It is parallel to "IdeDBU". - Deleted: ReportsManager relevant docking widget code. * contrib/hbide/hbide.qrc - Deleted: resources which are part of XbpAddOns lib. * contrib/hbide/xbpaddons/dbu.prg + contrib/hbide/xbpaddons/misc.prg * contrib/hbide/xbpaddons/reports.prg * contrib/hbide/xbpaddons/xbp.qrc * contrib/hbide/xbpaddons/xbpaddons.hbp + Transferred: resources used for IdeREPORTS. * contrib/hbxbp/toolbar.prg % Optimized: XbpToolbar() class. --- harbour/ChangeLog | 26 ++- harbour/contrib/hbide/actions.prg | 62 +++--- harbour/contrib/hbide/docks.prg | 93 --------- harbour/contrib/hbide/hbide.qrc | 41 ---- harbour/contrib/hbide/main.prg | 12 +- harbour/contrib/hbide/parts.prg | 30 ++- harbour/contrib/hbide/xbpaddons/dbu.prg | 65 +++---- harbour/contrib/hbide/xbpaddons/misc.prg | 76 ++++++++ harbour/contrib/hbide/xbpaddons/reports.prg | 183 ++++++++++-------- .../hbide/xbpaddons/resources/close3.png | Bin 0 -> 646 bytes .../{ => xbpaddons}/resources/f-bold-1.png | Bin .../{ => xbpaddons}/resources/f-generic.png | Bin .../{ => xbpaddons}/resources/f-image.png | Bin .../{ => xbpaddons}/resources/f-italic-1.png | Bin .../{ => xbpaddons}/resources/f-strike-1.png | Bin .../resources/f-underline-1.png | Bin .../resources/f_align_bottom.png | Bin .../resources/f_align_center.png | Bin .../resources/f_align_justify.png | Bin .../resources/f_align_left.png | Bin .../resources/f_align_middle.png | Bin .../resources/f_align_right.png | Bin .../{ => xbpaddons}/resources/f_align_top.png | Bin .../{ => xbpaddons}/resources/f_barcode.png | Bin .../{ => xbpaddons}/resources/f_box_all.png | Bin .../resources/f_box_bottom.png | Bin .../{ => xbpaddons}/resources/f_box_left.png | Bin .../resources/f_box_matrix.png | Bin .../{ => xbpaddons}/resources/f_box_plain.png | Bin .../{ => xbpaddons}/resources/f_box_right.png | Bin .../resources/f_box_shadow.png | Bin .../{ => xbpaddons}/resources/f_box_top.png | Bin .../{ => xbpaddons}/resources/f_chart.png | Bin .../{ => xbpaddons}/resources/f_gradient.png | Bin .../hbide/xbpaddons/resources/grid.png | Bin 0 -> 88 bytes .../hbide/xbpaddons/resources/harbour.png | Bin 0 -> 3049 bytes .../hbide/xbpaddons/resources/load_1.png | Bin 0 -> 727 bytes .../contrib/hbide/xbpaddons/resources/new.png | Bin 0 -> 224 bytes .../hbide/xbpaddons/resources/print.png | Bin 0 -> 278 bytes .../{ => xbpaddons}/resources/r-landscape.png | Bin .../{ => xbpaddons}/resources/r-page.png | Bin .../{ => xbpaddons}/resources/r-portrait.png | Bin .../{ => xbpaddons}/resources/r-report.png | Bin .../{ => xbpaddons}/resources/rp_arc.png | Bin .../{ => xbpaddons}/resources/rp_chord.png | Bin .../{ => xbpaddons}/resources/rp_diamond.png | Bin .../{ => xbpaddons}/resources/rp_ellipse.png | Bin .../resources/rp_linediagleft.png | Bin .../resources/rp_linediagright.png | Bin .../{ => xbpaddons}/resources/rp_linehorz.png | Bin .../{ => xbpaddons}/resources/rp_linevert.png | Bin .../resources/rp_rectangle.png | Bin .../resources/rp_roundrectangle.png | Bin .../{ => xbpaddons}/resources/rp_shapes.png | Bin .../{ => xbpaddons}/resources/rp_triangle.png | Bin .../hbide/xbpaddons/resources/text.png | Bin 0 -> 130 bytes .../hbide/xbpaddons/resources/toback.png | Bin 0 -> 121 bytes .../hbide/xbpaddons/resources/tofront.png | Bin 0 -> 123 bytes .../hbide/xbpaddons/resources/unload_1.png | Bin 0 -> 721 bytes .../hbide/xbpaddons/resources/zoomin.png | Bin 0 -> 209 bytes .../hbide/xbpaddons/resources/zoomin3.png | Bin 0 -> 706 bytes .../hbide/xbpaddons/resources/zoomout.png | Bin 0 -> 197 bytes .../hbide/xbpaddons/resources/zoomout3.png | Bin 0 -> 708 bytes harbour/contrib/hbide/xbpaddons/xbp.qrc | 53 +++++ harbour/contrib/hbide/xbpaddons/xbpaddons.hbp | 1 + harbour/contrib/hbxbp/toolbar.prg | 43 ++-- 66 files changed, 373 insertions(+), 312 deletions(-) create mode 100644 harbour/contrib/hbide/xbpaddons/misc.prg create mode 100644 harbour/contrib/hbide/xbpaddons/resources/close3.png rename harbour/contrib/hbide/{ => xbpaddons}/resources/f-bold-1.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f-generic.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f-image.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f-italic-1.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f-strike-1.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f-underline-1.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_align_bottom.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_align_center.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_align_justify.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_align_left.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_align_middle.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_align_right.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_align_top.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_barcode.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_all.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_bottom.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_left.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_matrix.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_plain.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_right.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_shadow.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_box_top.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_chart.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/f_gradient.png (100%) create mode 100644 harbour/contrib/hbide/xbpaddons/resources/grid.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/harbour.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/load_1.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/new.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/print.png rename harbour/contrib/hbide/{ => xbpaddons}/resources/r-landscape.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/r-page.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/r-portrait.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/r-report.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_arc.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_chord.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_diamond.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_ellipse.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_linediagleft.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_linediagright.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_linehorz.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_linevert.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_rectangle.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_roundrectangle.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_shapes.png (100%) rename harbour/contrib/hbide/{ => xbpaddons}/resources/rp_triangle.png (100%) create mode 100644 harbour/contrib/hbide/xbpaddons/resources/text.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/toback.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/tofront.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/unload_1.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/zoomin.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/zoomin3.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/zoomout.png create mode 100644 harbour/contrib/hbide/xbpaddons/resources/zoomout3.png diff --git a/harbour/ChangeLog b/harbour/ChangeLog index d6ef0863ef..9607778391 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,30 @@ The license applies to all entries newer than 2009-04-28. */ +2012-09-22 02:27 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com) + * contrib/hbide/actions.prg + + Added: prompts of IdePARTS in "View" menu. + * contrib/hbide/docks.prg + - Deleted: some redundant code. + * contrib/hbide/main.prg + * contrib/hbide/parts.prg + + Added: new part "IdeREPORTS" as a non-dock widget. It is + parallel to "IdeDBU". + - Deleted: ReportsManager relevant docking widget code. + + * contrib/hbide/hbide.qrc + - Deleted: resources which are part of XbpAddOns lib. + + * contrib/hbide/xbpaddons/dbu.prg + + contrib/hbide/xbpaddons/misc.prg + * contrib/hbide/xbpaddons/reports.prg + * contrib/hbide/xbpaddons/xbp.qrc + * contrib/hbide/xbpaddons/xbpaddons.hbp + + Transferred: resources used for IdeREPORTS. + + * contrib/hbxbp/toolbar.prg + % Optimized: XbpToolbar() class. + 2012-09-22 11:28 UTC+0200 Viktor Szakats (harbour syenar.net) + contrib/hbide/xbpaddons/dbstruct.ui + contrib/hbide/xbpaddons/fetchdate.ui @@ -43,7 +67,7 @@ + contrib/hbide/xbpaddons/reports.prg * contrib/hbide/xbpaddons/xbpaddons.hbp % Moved: IdeReports functionality from HbIDE to XbpAddOns lib. - TODO: move IdeReports specific resources to XbpAddOns. + DONE: move IdeReports specific resources to XbpAddOns. 2012-09-21 18:50 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com) - contrib/hbide/dbstruct.ui diff --git a/harbour/contrib/hbide/actions.prg b/harbour/contrib/hbide/actions.prg index c8a930704a..7bee3dd9ab 100644 --- a/harbour/contrib/hbide/actions.prg +++ b/harbour/contrib/hbide/actions.prg @@ -361,8 +361,9 @@ METHOD IdeActions:loadActions() aadd( aAct, { "Dictionary" , "Create .tag Dictionary" , "dictionary" , "" , "No", "Yes" } ) aadd( aAct, { "ConfigToolbars" , "Configure Toolbars" , "configtoolbars" , "" , "No", "Yes" } ) // - aadd( aAct, { "DBU" , "ideDBU" , "browser" , "" , "No", "Yes" } ) - aadd( aAct, { "EDITOR" , "ideEDITOR" , "editor" , "" , "No", "Yes" } ) + aadd( aAct, { "DBU" , "IdeDBU" , "browser" , "" , "No", "Yes" } ) + aadd( aAct, { "EDITOR" , "IdeEDITOR" , "editor" , "" , "No", "Yes" } ) + aadd( aAct, { "REPORTS" , "IdeREPORTS" , "designer" , "" , "No", "Yes" } ) RETURN aAct @@ -524,6 +525,15 @@ METHOD IdeActions:buildMainMenu() hbide_menuAddSep( oSubMenu ) + oSubMenu2 := XbpMenu():new( oSubMenu, , .t. ):create() + oSubMenu:addItem( { oSubMenu2, "IdePARTS" } ) + + oSubMenu2:addItem( { ::getAction( "EDITOR" ), {|| ::oIde:execAction( "EDITOR" ) } } ) + oSubMenu2:addItem( { ::getAction( "DBU" ), {|| ::oIde:execAction( "DBU" ) } } ) + oSubMenu2:addItem( { ::getAction( "REPORTS" ), {|| ::oIde:execAction( "REPORTS" ) } } ) + + hbide_menuAddSep( oSubMenu ) + oSubMenu2 := XbpMenu():new( oSubMenu, , .t. ):create() oSubMenu:addItem( { oSubMenu2, "Toolbars" } ) @@ -543,31 +553,28 @@ METHOD IdeActions:buildMainMenu() oSubMenu2 := XbpMenu():new( oSubMenu, , .t. ):create() oSubMenu:addItem( { oSubMenu2, "Docking Widgets" } ) - oSubMenu2:oWidget:addAction( ::oDockPT:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oDockED:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oSkltnsTreeDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oDockPT:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oDockED:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oSkltnsTreeDock:oWidget:toggleViewAction() ) hbide_menuAddSep( oSubMenu2 ) - oSubMenu2:oWidget:addAction( ::oHelpDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oDocViewDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oDocWriteDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oFuncDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oFunctionsDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oPropertiesDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oEnvironDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oSkeltnDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oThemesDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oFindDock:oWidget:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oSourceThumbnailDock:oWidget:toggleViewAction() ) -// oSubMenu2:oWidget:addAction( ::oQScintillaDock:oWidget:toggleViewAction() ) - - oSubMenu2:oWidget:addAction( ::oReportsManagerDock:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oCuiEdDock:toggleViewAction() ) - oSubMenu2:oWidget:addAction( ::oIde:oUISrcDock:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oHelpDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oDocViewDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oDocWriteDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oFuncDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oFunctionsDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oPropertiesDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oEnvironDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oSkeltnDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oThemesDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oFindDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oSourceThumbnailDock:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oCuiEdDock:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oIde:oUISrcDock:toggleViewAction() ) hbide_menuAddSep( oSubMenu2 ) - oSubMenu2:oWidget:addAction( ::oDockB2:oWidget:toggleViewAction() ) - * oSubMenu:oWidget:addAction( ::oDockB1:oWidget:toggleViewAction() ) - * oSubMenu:oWidget:addAction( ::oDockB:oWidget:toggleViewAction() ) + oSubMenu2:oWidget:addAction( ::oDockB2:oWidget:toggleViewAction() ) + * oSubMenu:oWidget:addAction( ::oDockB1:oWidget:toggleViewAction() ) + * oSubMenu:oWidget:addAction( ::oDockB:oWidget:toggleViewAction() ) hbide_menuAddSep( oSubMenu ) @@ -1051,8 +1058,9 @@ METHOD IdeActions:buildToolbarParts() ::qPartsToolbar:setWindowTitle( "Ide Parts" ) ::qPartsToolbar:setToolButtonStyle( Qt_ToolButtonIconOnly ) - ::qPartsToolbar:addAction( "IdeDBU" , ::getAction( "DBU" ), {|| ::oIde:execAction( "DBU" ) } ) - ::qPartsToolbar:addAction( "IdeEDITOR", ::getAction( "EDITOR" ), {|| ::oIde:execAction( "EDITOR" ) } ) + ::qPartsToolbar:addAction( "IdeEDITOR" , ::getAction( "EDITOR" ), {|| ::oIde:execAction( "EDITOR" ) } ) + ::qPartsToolbar:addAction( "IdeDBU" , ::getAction( "DBU" ), {|| ::oIde:execAction( "DBU" ) } ) + ::qPartsToolbar:addAction( "IdeREPORTS", ::getAction( "REPORTS"), {|| ::oIde:execAction( "REPORTS" ) } ) ::oDlg:oWidget:addToolBar( Qt_TopToolBarArea, ::qPartsToolbar:oWidget ) @@ -1113,8 +1121,6 @@ METHOD IdeActions:buildToolBarDocks() aadd( aBtns, { ::oThemesDock , "syntaxhiliter" } ) aadd( aBtns, { ::oFindDock , "search" } ) aadd( aBtns, { ::oSourceThumbnailDock, "thumbnail" } ) -// aadd( aBtns, { ::oQScintillaDock , "browser" } ) - aadd( aBtns, { ::oReportsManagerDock , "designer" } ) aadd( aBtns, { ::oCuiEdDock , "cuied" } ) aadd( aBtns, { ::oUiSrcDock , "fileprg" } ) aadd( aBtns, {} ) diff --git a/harbour/contrib/hbide/docks.prg b/harbour/contrib/hbide/docks.prg index de329facee..435338cdea 100644 --- a/harbour/contrib/hbide/docks.prg +++ b/harbour/contrib/hbide/docks.prg @@ -111,8 +111,6 @@ #define __docEnvironments_visibilityChanged__ 2036 #define __docSkeletons_visibilityChanged__ 2037 #define __dockSourceThumbnail_visibilityChanged__ 2038 -#define __dockQScintilla_visibilityChanged__ 2039 -#define __dockReportsManager_visibilityChanged__ 2040 #define __dockFormat_visibilityChanged__ 2041 #define __dockCuiEd_visibilityChanged__ 2042 #define __dockUISrc_visibilityChanged__ 2043 @@ -179,9 +177,7 @@ CLASS IdeDocks INHERIT IdeObject METHOD getPanelIcon( cView ) METHOD animateComponents( nMode ) METHOD buildSourceThumbnail() - METHOD buildQScintilla() METHOD buildUpDownWidget() - METHOD buildReportsDesignerWidget() METHOD buildSystemTray() METHOD showDlgBySystemTrayIconCommand() METHOD setViewInitials() @@ -237,8 +233,6 @@ METHOD IdeDocks:hideAllDocks() ::oHelpDock : hide() ::oFuncDock : hide() ::oSourceThumbnailDock : hide() - ::oQScintillaDock : hide() - ::oReportsManagerDock : hide() ::oFormatDock : hide() ::oCuiEdDock : hide() ::oUiSrcDock : hide() @@ -280,8 +274,6 @@ METHOD IdeDocks:destroy() ::oFuncDock:oWidget : disconnect( "visibilityChanged(bool)" ) ::oSourceThumbnailDock:oWidget: disconnect( "visibilityChanged(bool)" ) - ::oQScintillaDock:oWidget : disconnect( "visibilityChanged(bool)" ) - ::oReportsManagerDock:oWidget : disconnect( "visibilityChanged(bool)" ) ::oFormatDock:oWidget : disconnect( "visibilityChanged(bool)" ) ::oCuiEdDock:oWidget : disconnect( "visibilityChanged(bool)" ) ::oUiSrcDock:oWidget : disconnect( "visibilityChanged(bool)" ) @@ -310,39 +302,6 @@ METHOD IdeDocks:destroy() ::qTimer := NIL ENDIF - ::oIde:oOutputResult := NIL - ::oIde:oEnvironDock := NIL - ::oIde:oPropertiesDock := NIL - ::oIde:oThemesDock := NIL - ::oIde:oDocViewDock := NIL - ::oIde:oDocWriteDock := NIL - ::oIde:oFindDock := NIL - ::oIde:oFunctionsDock := NIL - ::oIde:oSkeltnDock := NIL - ::oIde:oHelpDock := NIL - ::oIde:oFuncDock := NIL - - ::oIde:oSourceThumbnailDock := NIL - ::oIde:oQScintillaDock := NIL - ::oIde:oReportsManagerDock := NIL - ::oIde:oFormatDock := NIL - ::oIde:oCuiEdDock := NIL - ::oIde:oUiSrcDock := NIL - - ::oIde:oDockPT := NIL - ::oIde:oDockED := NIL - ::oIde:oDockB2 := NIL - - ::oIde:oDockB1 := NIL - ::oIde:oLinkResult := NIL - - ::oIde:oSys := NIL - ::qAct1 := NIL - ::qAct2 := NIL - - ::oIde:oDockB := NIL - ::oIde:oCompileResult := NIL - FOR EACH qTmp IN ::aPanels qTmp:disconnect( "clicked()" ) qTmp := NIL @@ -370,16 +329,6 @@ METHOD IdeDocks:destroy() ::qMdiToolBarL:destroy() ::qMdiToolBarL := NIL ENDIF - ::nPass := NIL - ::aPanels := NIL - ::aMdiBtns := NIL - ::aBtnLines := NIL - ::aBtnDocks := NIL - ::oBtnTabClose := NIL - ::aViewsInfo := NIL - ::qTBtnClose := NIL - ::qTimer := NIL - ::nPrevWindowState := NIL RETURN Self @@ -549,9 +498,7 @@ METHOD IdeDocks:buildDockWidgets() ::buildDocWriter() ::buildFunctionsDock() ::buildSourceThumbnail() - ::buildQScintilla() ::buildUpDownWidget() - ::buildReportsDesignerWidget() ::buildFormatWidget() ::buildCuiEdWidget() ::buildUiSrcDock() @@ -618,23 +565,6 @@ METHOD IdeDocks:execEvent( nEvent, p, p1 ) p1:raise() ENDIF EXIT - CASE __dockReportsManager_visibilityChanged__ - IF !empty( p1 ) - IF ! p .AND. ! p1:isVisible() - p1:raise() - ENDIF - ENDIF - EXIT -#if 0 /* Deprecated */ - CASE __dockQScintilla_visibilityChanged__ - IF p; ::oBM:show() ; ENDIF - IF !empty( p1 ) - IF ! p .AND. ! p1:isVisible() - p1:raise() - ENDIF - ENDIF - EXIT -#endif CASE __dockSourceThumbnail_visibilityChanged__ IF p; ::oEM:showThumbnail(); ENDIF IF !empty( p1 ) @@ -1688,7 +1618,6 @@ METHOD IdeDocks:animateComponents( nMode ) ::oThemesDock:oWidget : setStyleSheet( cStyle ) ::oFindDock:oWidget : setStyleSheet( cStyle ) ::oDockB2:oWidget : setStyleSheet( cStyle ) - ::oQScintillaDock:oWidget : setStyleSheet( cStyle ) ::oSourceThumbnailDock:oWidget : setStyleSheet( cStyle ) ::oProjTree:oWidget:setStyleSheet( GetStyleSheet( "QTreeWidgetHB", ::nAnimantionMode ) ) @@ -1803,28 +1732,6 @@ METHOD IdeDocks:buildSourceThumbnail() /*----------------------------------------------------------------------*/ -METHOD IdeDocks:buildQScintilla() - LOCAL nAreas := Qt_LeftDockWidgetArea + Qt_RightDockWidgetArea + Qt_TopDockWidgetArea + Qt_BottomDockWidgetArea - - ::oIde:oQScintillaDock := ::getADockWidget( nAreas, "dockQScintilla", "ideDBU", QDockWidget_DockWidgetFloatable ) - ::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oQScintillaDock:oWidget, Qt_Horizontal ) - ::oQScintillaDock:oWidget:connect( "visibilityChanged(bool)" , {|p| ::execEvent( __dockQScintilla_visibilityChanged__, p, ::oQScintillaDock:oWidget ) } ) - - RETURN Self - -/*----------------------------------------------------------------------*/ - -METHOD IdeDocks:buildReportsDesignerWidget() - LOCAL nAreas := Qt_LeftDockWidgetArea + Qt_RightDockWidgetArea + Qt_TopDockWidgetArea + Qt_BottomDockWidgetArea - - ::oIde:oReportsManagerDock := ::getADockWidget( nAreas, "dockReportDesigner", "HBReportsManager", QDockWidget_DockWidgetFloatable ) - ::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oReportsManagerDock:oWidget, Qt_Horizontal ) - ::oReportsManagerDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockReportsManager_visibilityChanged__, p, ::oReportsManagerDock:oWidget ) } ) - - RETURN Self - -/*----------------------------------------------------------------------*/ - METHOD IdeDocks:buildFormatWidget() LOCAL nAreas := Qt_LeftDockWidgetArea + Qt_RightDockWidgetArea + Qt_TopDockWidgetArea + Qt_BottomDockWidgetArea diff --git a/harbour/contrib/hbide/hbide.qrc b/harbour/contrib/hbide/hbide.qrc index d21bed3cbe..7e04e95561 100644 --- a/harbour/contrib/hbide/hbide.qrc +++ b/harbour/contrib/hbide/hbide.qrc @@ -219,47 +219,6 @@ resources/zoomout.png resources/zoomin3.png resources/zoomout3.png - resources/f_align_left.png - resources/f_align_right.png - resources/f_align_center.png - resources/f_align_justify.png - resources/f_align_top.png - resources/f_align_middle.png - resources/f_align_bottom.png - resources/f_box_top.png - resources/f_box_left.png - resources/f_box_bottom.png - resources/f_box_right.png - resources/f_box_all.png - resources/f_box_plain.png - resources/f_box_shadow.png - resources/f-generic.png - resources/f-image.png - resources/f_chart.png - resources/f_gradient.png - resources/f_barcode.png - resources/f-bold-1.png - resources/f-italic-1.png - resources/f-underline-1.png - resources/f-strike-1.png - resources/toback.png - resources/tofront.png - resources/r-page.png - resources/r-report.png - resources/r-landscape.png - resources/r-portrait.png - resources/rp_arc.png - resources/rp_chord.png - resources/rp_diamond.png - resources/rp_triangle.png - resources/rp_rectangle.png - resources/rp_roundrectangle.png - resources/rp_linevert.png - resources/rp_linehorz.png - resources/rp_linediagright.png - resources/rp_linediagleft.png - resources/rp_ellipse.png - resources/rp_shapes.png resources/memo.png resources/hideshow.png resources/cuied.png diff --git a/harbour/contrib/hbide/main.prg b/harbour/contrib/hbide/main.prg index 654ca56ae3..238f9dc918 100644 --- a/harbour/contrib/hbide/main.prg +++ b/harbour/contrib/hbide/main.prg @@ -678,9 +678,8 @@ METHOD HbIde:create( aParams ) /* Reports Manager */ ::oRM := HbpReports():new() - ::oRM:qtObject := ::oReportsManagerDock:oWidget - ::oRM:create( , , , , , .T. ) - ::oReportsManagerDock:oWidget:setWidget( ::oRM:oWidget ) + ::oRM:qtObject := ::oParts:oStackReports + ::oRM:create( ::oDlg, , {0,0}, {640,400}, , .T. ) /* Code Formatter Manager */ ::oFmt := IdeFormat():new():create( Self ) @@ -1011,11 +1010,14 @@ METHOD HbIde:execAction( cKey ) CASE "Help" ::oHelpDock:show() EXIT + CASE "EDITOR" + ::oParts:setStack( 0 ) + EXIT CASE "DBU" ::oParts:setStack( 1 ) EXIT - CASE "EDITOR" - ::oParts:setStack( 0 ) + CASE "REPORTS" + ::oParts:setStack( 2 ) EXIT ENDSWITCH diff --git a/harbour/contrib/hbide/parts.prg b/harbour/contrib/hbide/parts.prg index d4c46fa1b1..1849a31945 100644 --- a/harbour/contrib/hbide/parts.prg +++ b/harbour/contrib/hbide/parts.prg @@ -79,11 +79,13 @@ CLASS IdeParts INHERIT IdeObject DATA oLayoutDA DATA oLayoutEditor DATA oLayoutDbu + DATA oLayoutReports DATA oStackWidget DATA oStackEditor DATA oStackDbu + DATA oStackReports DATA oSettings @@ -143,22 +145,26 @@ METHOD IdeParts:buildLayout( nLayout ) METHOD IdeParts:buildParts() - ::oLayoutDA := ::buildLayout( 0 ) - ::oLayoutDbu := ::buildLayout( 0 ) - ::oLayoutEditor := ::buildLayout( 0 ) + ::oLayoutDA := ::buildLayout( 0 ) + ::oLayoutDbu := ::buildLayout( 0 ) + ::oLayoutEditor := ::buildLayout( 0 ) + ::oLayoutReports := ::buildLayout( 0 ) ::oDa:setLayout( ::oLayoutDA ) ::oStackWidget := QStackedWidget( ::oDa:oWidget ) // - ::oStackEditor := QWidget( ::oStackWidget ) - ::oStackDbu := QWidget( ::oStackWidget ) + ::oStackEditor := QWidget( ::oStackWidget ) + ::oStackDbu := QWidget( ::oStackWidget ) + ::oStackReports := QWidget( ::oStackWidget ) // - ::oStackWidget:addWidget( ::oStackEditor ) - ::oStackWidget:addWidget( ::oStackDbu ) + ::oStackWidget:addWidget( ::oStackEditor ) + ::oStackWidget:addWidget( ::oStackDbu ) + ::oStackWidget:addWidget( ::oStackReports ) - ::oStackEditor:setLayout( ::oLayoutEditor ) - ::oStackDbu :setLayout( ::oLayoutDbu ) + ::oStackEditor :setLayout( ::oLayoutEditor ) + ::oStackDbu :setLayout( ::oLayoutDbu ) + ::oStackReports:setLayout( ::oLayoutReports ) ::oLayoutDA:addWidget( ::oStackWidget, 0, 0, 1, 1 ) @@ -187,6 +193,11 @@ METHOD IdeParts:execStackIndexChanged( nIndex ) ::oDK:hideAllDocks() EXIT + CASE IDE_PART_REPORTSDESIGNER + ::oIde:oSBar:hide() + ::oDK:hideAllDocks() + EXIT + ENDSWITCH ::nCurStacksIndex := nIndex @@ -208,6 +219,7 @@ METHOD IdeParts:addWidget( nPart, oWidget, nFromRow, nFromColumn, nRowSpan, nCol EXIT CASE IDE_PART_REPORTSDESIGNER + ::oLayoutReports:addWidget( oWidget, nFromRow, nFromColumn, nRowSpan, nColumnSpan ) EXIT ENDSWITCH diff --git a/harbour/contrib/hbide/xbpaddons/dbu.prg b/harbour/contrib/hbide/xbpaddons/dbu.prg index 6f707757d8..abe6ca6b13 100644 --- a/harbour/contrib/hbide/xbpaddons/dbu.prg +++ b/harbour/contrib/hbide/xbpaddons/dbu.prg @@ -543,7 +543,7 @@ METHOD HbpDBU:addPanelsMenu( cPanel ) LOCAL qAct IF HB_ISOBJECT( ::qPanelsMenu ) qAct := ::qPanelsMenu:addAction( cPanel ) - qAct:setIcon( QIcon( dbu_Image( "panel_7" ) ) ) + qAct:setIcon( QIcon( Hbp_Image( "panel_7" ) ) ) qAct:connect( "triggered(bool)", {|| ::setPanel( cPanel ) } ) aadd( ::aPanelsAct, qAct ) ENDIF @@ -1021,17 +1021,17 @@ METHOD HbpDBU:buildToolbar() qTBar:addItem( ::sp0 ) ::buildRddsCombo() ::buildConxnCombo() - qTBar:addItem( { "Open" , "Open a Table" , QIcon( dbu_Image( "open3" ) ), {|| ::execEvent( __buttonOpen_clicked__ ) }, .F. } ) + qTBar:addItem( { "Open" , "Open a Table" , QIcon( Hbp_Image( "open3" ) ), {|| ::execEvent( __buttonOpen_clicked__ ) }, .F. } ) qTBar:addItem( ::sp1 ) - qTBar:addItem( { "Toggle" , "Show/Hide Form View", QIcon( dbu_Image( "form" ) ), {|| ::execEvent( __buttonShowForm_clicked__ ) }, .T. } ) + qTBar:addItem( { "Toggle" , "Show/Hide Form View", QIcon( Hbp_Image( "form" ) ), {|| ::execEvent( __buttonShowForm_clicked__ ) }, .T. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "Structure", "Table Structure" , QIcon( dbu_Image( "dbstruct" ) ), {|| ::execEvent( __buttonDbStruct_clicked__ ) }, .F. } ) + qTBar:addItem( { "Structure", "Table Structure" , QIcon( Hbp_Image( "dbstruct" ) ), {|| ::execEvent( __buttonDbStruct_clicked__ ) }, .F. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) ::buildIndexButton() - qTBar:addItem( { "Search" , "Search in Table" , QIcon( dbu_Image( "find" ) ), {|| ::execEvent( __buttonFind_clicked__ ) }, .F. } ) - qTBar:addItem( { "Goto" , "Goto Record" , QIcon( dbu_Image( "gotoline3" ) ), {|| ::execEvent( __buttonGoto_clicked__ ) }, .F. } ) + qTBar:addItem( { "Search" , "Search in Table" , QIcon( Hbp_Image( "find" ) ), {|| ::execEvent( __buttonFind_clicked__ ) }, .F. } ) + qTBar:addItem( { "Goto" , "Goto Record" , QIcon( Hbp_Image( "gotoline3" ) ), {|| ::execEvent( __buttonGoto_clicked__ ) }, .F. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "Close" , "Close Current Table", QIcon( dbu_Image( "dc_delete" ) ), {|| ::execEvent( __buttonClose_clicked__ ) }, .F. } ) + qTBar:addItem( { "Close" , "Close Current Table", QIcon( Hbp_Image( "dc_delete" ) ), {|| ::execEvent( __buttonClose_clicked__ ) }, .F. } ) qTBar:addItem( ::sp2 ) ::buildTablesButton() @@ -1051,31 +1051,31 @@ METHOD HbpDBU:buildLeftToolbar() ::qToolbarL := qTBar - qTBar:addItem( { "view_tabbed" , "Toggle Tabbed View" , QIcon( dbu_Image( "view_tabbed" ) ), {|| ::execEvent( __buttonViewTabbed_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_tabbed" , "Toggle Tabbed View" , QIcon( Hbp_Image( "view_tabbed" ) ), {|| ::execEvent( __buttonViewTabbed_clicked__ ) }, .f. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "view_organized" , "View as Arranged" , QIcon( dbu_Image( "view_organized" ) ), {|| ::execEvent( __buttonViewOrganized_clicked__ ) }, .f. } ) - qTBar:addItem( { "save3" , "Save Layout" , QIcon( dbu_Image( "save3" ) ), {|| ::execEvent( __buttonSaveLayout_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_organized" , "View as Arranged" , QIcon( Hbp_Image( "view_organized" ) ), {|| ::execEvent( __buttonViewOrganized_clicked__ ) }, .f. } ) + qTBar:addItem( { "save3" , "Save Layout" , QIcon( Hbp_Image( "save3" ) ), {|| ::execEvent( __buttonSaveLayout_clicked__ ) }, .f. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "view_cascaded" , "View as Cascaded" , QIcon( dbu_Image( "view_cascaded" ) ), {|| ::execEvent( __buttonViewCascaded_clicked__ ) }, .f. } ) - qTBar:addItem( { "view_tiled" , "View as Tiled" , QIcon( dbu_Image( "view_tiled" ) ), {|| ::execEvent( __buttonViewTiled_clicked__ ) }, .f. } ) - qTBar:addItem( { "fullscreen" , "View Maximized" , QIcon( dbu_Image( "fullscreen" ) ), {|| ::execEvent( __buttonViewMaximized_clicked__ ) }, .f. } ) - qTBar:addItem( { "view_vertstacked" , "View Vertically Tiled" , QIcon( dbu_Image( "view_vertstacked" ) ), {|| ::execEvent( __buttonViewStackedVert_clicked__ ) }, .f. } ) - qTBar:addItem( { "view_horzstacked" , "View Horizontally Tiled" , QIcon( dbu_Image( "view_horzstacked" ) ), {|| ::execEvent( __buttonViewStackedHorz_clicked__ ) }, .f. } ) - qTBar:addItem( { "view_zoomin" , "View Zoom In" , QIcon( dbu_Image( "view_zoomin" ) ), {|| ::execEvent( __buttonViewZoomedIn_clicked__ ) }, .f. } ) - qTBar:addItem( { "view_zoomout" , "View Zoom Out" , QIcon( dbu_Image( "view_zoomout" ) ), {|| ::execEvent( __buttonViewZoomedOut_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_cascaded" , "View as Cascaded" , QIcon( Hbp_Image( "view_cascaded" ) ), {|| ::execEvent( __buttonViewCascaded_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_tiled" , "View as Tiled" , QIcon( Hbp_Image( "view_tiled" ) ), {|| ::execEvent( __buttonViewTiled_clicked__ ) }, .f. } ) + qTBar:addItem( { "fullscreen" , "View Maximized" , QIcon( Hbp_Image( "fullscreen" ) ), {|| ::execEvent( __buttonViewMaximized_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_vertstacked" , "View Vertically Tiled" , QIcon( Hbp_Image( "view_vertstacked" ) ), {|| ::execEvent( __buttonViewStackedVert_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_horzstacked" , "View Horizontally Tiled" , QIcon( Hbp_Image( "view_horzstacked" ) ), {|| ::execEvent( __buttonViewStackedHorz_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_zoomin" , "View Zoom In" , QIcon( Hbp_Image( "view_zoomin" ) ), {|| ::execEvent( __buttonViewZoomedIn_clicked__ ) }, .f. } ) + qTBar:addItem( { "view_zoomout" , "View Zoom Out" , QIcon( Hbp_Image( "view_zoomout" ) ), {|| ::execEvent( __buttonViewZoomedOut_clicked__ ) }, .f. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "database_add" , "Append Record" , QIcon( dbu_Image( "database_add" ) ), {|| ::execEvent( __buttonAppendRecord_clicked__ ) }, .f. } ) - qTBar:addItem( { "database_remove" , "Delete Record" , QIcon( dbu_Image( "database_remove" ) ), {|| ::execEvent( __buttonDelRecord_clicked__ ) }, .f. } ) - qTBar:addItem( { "database_lock" , "Lock/Unlock Record" , QIcon( dbu_Image( "database_lock" ) ), {|| ::execEvent( __buttonLockRecord_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_add" , "Append Record" , QIcon( Hbp_Image( "database_add" ) ), {|| ::execEvent( __buttonAppendRecord_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_remove" , "Delete Record" , QIcon( Hbp_Image( "database_remove" ) ), {|| ::execEvent( __buttonDelRecord_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_lock" , "Lock/Unlock Record" , QIcon( Hbp_Image( "database_lock" ) ), {|| ::execEvent( __buttonLockRecord_clicked__ ) }, .f. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "database_up" , "Goto Top" , QIcon( dbu_Image( "database_up" ) ), {|| ::execEvent( __buttonGoTop_clicked__ ) }, .f. } ) - qTBar:addItem( { "database_down" , "Goto Bottom" , QIcon( dbu_Image( "database_down" ) ), {|| ::execEvent( __buttonGoBottom_clicked__ ) }, .f. } ) - qTBar:addItem( { "database_previous", "Scroll to First Column" , QIcon( dbu_Image( "database_previous" ) ), {|| ::execEvent( __buttonScrollToFirst_clicked__ ) }, .f. } ) - qTBar:addItem( { "database_next" , "Scroll to Last Column" , QIcon( dbu_Image( "database_next" ) ), {|| ::execEvent( __buttonScrollToLast_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_up" , "Goto Top" , QIcon( Hbp_Image( "database_up" ) ), {|| ::execEvent( __buttonGoTop_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_down" , "Goto Bottom" , QIcon( Hbp_Image( "database_down" ) ), {|| ::execEvent( __buttonGoBottom_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_previous", "Scroll to First Column" , QIcon( Hbp_Image( "database_previous" ) ), {|| ::execEvent( __buttonScrollToFirst_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_next" , "Scroll to Last Column" , QIcon( Hbp_Image( "database_next" ) ), {|| ::execEvent( __buttonScrollToLast_clicked__ ) }, .f. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "database_search" , "Search in Table" , QIcon( dbu_Image( "database_search" ) ), {|| ::execEvent( __buttonSearchInTable_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_search" , "Search in Table" , QIcon( Hbp_Image( "database_search" ) ), {|| ::execEvent( __buttonSearchInTable_clicked__ ) }, .f. } ) qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) - qTBar:addItem( { "database_process" , "Zap Table" , QIcon( dbu_Image( "database_process" ) ), {|| ::execEvent( __buttonZaptable_clicked__ ) }, .f. } ) + qTBar:addItem( { "database_process" , "Zap Table" , QIcon( Hbp_Image( "database_process" ) ), {|| ::execEvent( __buttonZaptable_clicked__ ) }, .f. } ) RETURN NIL @@ -1087,7 +1087,7 @@ METHOD HbpDBU:buildPanelsButton() ::qPanelsButton := QToolButton() ::qPanelsButton:setTooltip( "HbpDBU Panels" ) - ::qPanelsButton:setIcon( QIcon( dbu_Image( "panel_8" ) ) ) + ::qPanelsButton:setIcon( QIcon( Hbp_Image( "panel_8" ) ) ) ::qPanelsButton:setPopupMode( QToolButton_MenuButtonPopup ) ::qPanelsButton:setMenu( ::qPanelsMenu ) @@ -1135,7 +1135,7 @@ METHOD HbpDBU:buildTablesButton() ::qTablesButton := QToolButton() ::qTablesButton:setTooltip( "Tables" ) - ::qTablesButton:setIcon( QIcon( dbu_Image( "table" ) ) ) + ::qTablesButton:setIcon( QIcon( Hbp_Image( "table" ) ) ) ::qTablesButton:setPopupMode( QToolButton_MenuButtonPopup ) ::qTablesButton:setMenu( ::qTablesMenu ) @@ -1153,7 +1153,7 @@ METHOD HbpDBU:buildIndexButton() ::qIndexButton := QToolButton() ::qIndexButton:setTooltip( "Indexes" ) - ::qIndexButton:setIcon( QIcon( dbu_Image( "sort" ) ) ) + ::qIndexButton:setIcon( QIcon( Hbp_Image( "sort" ) ) ) ::qIndexButton:setPopupMode( QToolButton_MenuButtonPopup ) ::qIndexButton:setMenu( ::qIndexMenu ) @@ -1916,7 +1916,7 @@ METHOD HbpBrowse:buildMdiWindow() ::qMdi:setWindowTitle( ::cTable ) ::qMdi:setObjectName( hb_ntos( nID ) ) - ::qMdi:setWindowIcon( QIcon( dbu_Image( "dbf_p" + hb_ntos( ::nID ) ) ) ) + ::qMdi:setWindowIcon( QIcon( Hbp_Image( "dbf_p" + hb_ntos( ::nID ) ) ) ) IF ! empty( ::aInfo[ TBL_GEOMETRY ] ) qRect := hb_aTokens( ::aInfo[ TBL_GEOMETRY ], " " ) @@ -2896,8 +2896,3 @@ STATIC FUNCTION hbide_fldType2Desc( cType ) /*----------------------------------------------------------------------*/ -FUNCTION dbu_Image( cName ) - - RETURN ":/xbp/resources" + "/" + cName + ".png" - -/*----------------------------------------------------------------------*/ diff --git a/harbour/contrib/hbide/xbpaddons/misc.prg b/harbour/contrib/hbide/xbpaddons/misc.prg new file mode 100644 index 0000000000..0e13b1eb3c --- /dev/null +++ b/harbour/contrib/hbide/xbpaddons/misc.prg @@ -0,0 +1,76 @@ +/* + * $Id$ + */ + +/* + * Harbour Project source code: + * + * Copyright 2012 Pritpal Bedi + * 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-Parts + * + * Pritpal Bedi + * 22Sep2012 + */ +/*----------------------------------------------------------------------*/ +/*----------------------------------------------------------------------*/ +/*----------------------------------------------------------------------*/ + +#include "common.ch" +#include "xbp.ch" + +/*----------------------------------------------------------------------*/ + +FUNCTION Hbp_Image( cName ) + + RETURN ":/xbp/resources" + "/" + cName + ".png" + +/*----------------------------------------------------------------------*/ diff --git a/harbour/contrib/hbide/xbpaddons/reports.prg b/harbour/contrib/hbide/xbpaddons/reports.prg index 06c98e8fca..8f611bc9f1 100644 --- a/harbour/contrib/hbide/xbpaddons/reports.prg +++ b/harbour/contrib/hbide/xbpaddons/reports.prg @@ -68,6 +68,9 @@ #include "hbclass.ch" #include "hbqtgui.ch" #include "hbtrace.ch" +#include "xbp.ch" + +/*----------------------------------------------------------------------*/ #define UNIT 0.1 @@ -356,6 +359,15 @@ METHOD HbpReports:create( oParent, oOwner, aPos, aSize, aPresParams, lVisible ) ::qTabBar:setCurrentIndex( 2 ) + + IF ::visible + ::show() + ENDIF + IF HB_ISOBJECT( oParent ) + ::oParent:AddChild( SELF ) + ::postCreate() + ENDIF + RETURN Self /*----------------------------------------------------------------------*/ @@ -961,7 +973,7 @@ METHOD HbpReports:addObject( cType, qPos, qGeo ) SWITCH cType CASE "Image" - oHqrObject:setPixmap( QPixmap( app_image( "hbide" ) ) ) + oHqrObject:setPixmap( QPixmap( Hbp_image( "harbour" ) ) ) oHqrObject:setBorderWidth( 2 ) EXIT CASE "Chart" @@ -1067,7 +1079,7 @@ METHOD HbpReports:updateObjectsTree( cType, cParent, cName, cSubType ) DO CASE CASE cType == "ReportName" qItem := QTreeWidgetItem() ; qItem:setText( 0, cName ) - qItem:setIcon( 0, QIcon( app_image( "r-report" ) ) ) + qItem:setIcon( 0, QIcon( Hbp_Image( "r-report" ) ) ) ::qTreeObjects:addTopLevelItem( qItem ) ::hObjTree[ cName ] := qItem qItem:setExpanded( .t. ) @@ -1085,7 +1097,7 @@ METHOD HbpReports:updateObjectsTree( cType, cParent, cName, cSubType ) ::hObjTree[ cName ] := qItem IF cType == "Page" - qItem:setIcon( 0, QIcon( app_image( "r-page" ) ) ) + qItem:setIcon( 0, QIcon( Hbp_Image( "r-page" ) ) ) ELSEIF cType == "Object" qItem:setIcon( 0, QIcon( ::getImageOfType( cSubType ) ) ) ELSEIF cType == "Field" @@ -1248,7 +1260,7 @@ METHOD HbpReports:getImageOfType( cType ) CASE cType == "Triangle" ; cImage := "rp_triangle" ENDCASE - RETURN app_image( cImage ) + RETURN Hbp_Image( cImage ) /*----------------------------------------------------------------------*/ @@ -1265,25 +1277,28 @@ METHOD HbpReports:getNextID( cType ) METHOD HbpReports:buildToolbar() LOCAL qTBar - qTBar := HbqToolbar():new() + qTBar := XbpToolbar():new() qTBar:orientation := Qt_Horizontal - qTBar:create( "ReportManager_Top_Toolbar" ) + qTBar:imageWidth := 16 + qTBar:imageHeight := 16 + qTBar:create() + qTBar:buttonClick := {|oButton| iif( HB_ISBLOCK( oButton:key ), Eval( oButton:key ), NIL ) } - qTBar:addToolButton( "New" , "New Report" , app_image( "new" ), {|| ::execEvent( __buttonNew_clicked__ ) } ) - qTBar:addToolButton( "Open" , "Open Report" , app_image( "open3" ), {|| ::execEvent( __buttonOpen_clicked__ ) } ) - qTBar:addToolButton( "Save" , "Save Report" , app_image( "save3" ), {|| ::execEvent( __buttonSave_clicked__ ) } ) - qTBar:addToolButton( "Close" , "Close Report" , app_image( "close3" ), {|| ::execEvent( __buttonClose_clicked__ ) } ) - qTBar:addToolButton( "Print" , "Print Report" , app_image( "print" ), {|| ::execEvent( __buttonPrint_clicked__ ) } ) - qTBar:addSeparator() - qTBar:addToolButton( "ToBack" , "Push to back" , app_image( "toback" ), {|| ::execEvent( __buttonToBack_clicked__ ) }, .f., .f. ) - qTBar:addToolButton( "ToFront" , "Bring to front" , app_image( "tofront" ), {|| ::execEvent( __buttonToFront_clicked__ ) }, .f., .f. ) - qTBar:addSeparator() - qTBar:addToolButton( "RotateL" , "Rotate anti-clock wise", app_image( "unload_1" ), {|| ::execEvent( __buttonRotateL_clicked__ ) }, .f., .f. ) - qTBar:addToolButton( "RotateR" , "Rotate clock wise" , app_image( "load_1" ), {|| ::execEvent( __buttonRotateR_clicked__ ) }, .f., .f. ) - qTBar:addSeparator() - qTBar:addToolButton( "Portrait" , "Portrait orientation" , app_image( "r-portrait" ), {|| ::execEvent( __buttonPortrait_clicked__ ) }, .f., .f. ) - qTBar:addToolButton( "Landscape", "Landscape orientation" , app_image( "r-landscape" ), {|| ::execEvent( __buttonLandscape_clicked__ ) }, .f., .f. ) - qTBar:addSeparator() + qTBar:addItem( { "New" , "New Report" , QIcon( Hbp_Image( "new" ) ), {|| ::execEvent( __buttonNew_clicked__ ) } } ) + qTBar:addItem( { "Open" , "Open Report" , QIcon( Hbp_Image( "open3" ) ), {|| ::execEvent( __buttonOpen_clicked__ ) } } ) + qTBar:addItem( { "Save" , "Save Report" , QIcon( Hbp_Image( "save3" ) ), {|| ::execEvent( __buttonSave_clicked__ ) } } ) + qTBar:addItem( { "Close" , "Close Report" , QIcon( Hbp_Image( "close3" ) ), {|| ::execEvent( __buttonClose_clicked__ ) } } ) + qTBar:addItem( { "Print" , "Print Report" , QIcon( Hbp_Image( "print" ) ), {|| ::execEvent( __buttonPrint_clicked__ ) } } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "ToBack" , "Push to back" , QIcon( Hbp_Image( "toback" ) ), {|| ::execEvent( __buttonToBack_clicked__ ) }, .f., .f. } ) + qTBar:addItem( { "ToFront" , "Bring to front" , QIcon( Hbp_Image( "tofront" ) ), {|| ::execEvent( __buttonToFront_clicked__ ) }, .f., .f. } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "RotateL" , "Rotate anti-clock wise", QIcon( Hbp_Image( "unload_1" ) ), {|| ::execEvent( __buttonRotateL_clicked__ ) }, .f., .f. } ) + qTBar:addItem( { "RotateR" , "Rotate clock wise" , QIcon( Hbp_Image( "load_1" ) ), {|| ::execEvent( __buttonRotateR_clicked__ ) }, .f., .f. } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "Portrait" , "Portrait orientation" , QIcon( Hbp_Image( "r-portrait" ) ), {|| ::execEvent( __buttonPortrait_clicked__ ) }, .f., .f. } ) + qTBar:addItem( { "Landscape", "Landscape orientation" , QIcon( Hbp_Image( "r-landscape" ) ), {|| ::execEvent( __buttonLandscape_clicked__ ) }, .f., .f. } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) ::qToolbar := qTBar @@ -1294,42 +1309,45 @@ METHOD HbpReports:buildToolbar() METHOD HbpReports:buildToolbarAlign() LOCAL qTBar - qTBar := HbqToolbar():new() + qTBar := XbpToolbar():new() qTBar:orientation := Qt_Horizontal - qTBar:create( "ReportManager_Top_Toolbar_Align" ) + qTBar:imageWidth := 16 + qTBar:imageHeight := 16 + qTBar:create() + qTBar:buttonClick := {|oButton| iif( HB_ISBLOCK( oButton:key ), Eval( oButton:key ), NIL ) } - qTBar:addToolButton( "FontG" , "Font" , app_image( "f-generic" ), {|| ::execEvent( __buttonFontG_clicked__ ) }, .f., .f. ) - qTBar:addSeparator() - qTBar:addToolButton( "FontB" , "Text Bold" , app_image( "f-bold-1" ), {|| ::execEvent( __buttonFontB_clicked__ ) } ) - qTBar:addToolButton( "FontI" , "Text Italic" , app_image( "f-italic-1" ), {|| ::execEvent( __buttonFontI_clicked__ ) } ) - qTBar:addToolButton( "FontU" , "Text Underlined" , app_image( "f-underline-1" ), {|| ::execEvent( __buttonFontU_clicked__ ) } ) - qTBar:addToolButton( "FontS" , "Text Strikethrough", app_image( "f-strike-1" ), {|| ::execEvent( __buttonFontS_clicked__ ) } ) - qTBar:addSeparator() - qTBar:addToolButton( "JustL" , "Align left" , app_image( "f_align_left" ), {|| ::execEvent( __buttonJustL_clicked__ ) } ) - qTBar:addToolButton( "JustC" , "Align center" , app_image( "f_align_center" ), {|| ::execEvent( __buttonJustC_clicked__ ) } ) - qTBar:addToolButton( "JustR" , "Align right" , app_image( "f_align_right" ), {|| ::execEvent( __buttonJustR_clicked__ ) } ) - qTBar:addToolButton( "JustJ" , "Align justify" , app_image( "f_align_justify" ), {|| ::execEvent( __buttonJustJ_clicked__ ) } ) - qTBar:addSeparator() - qTBar:addToolButton( "JustT" , "Align top" , app_image( "f_align_top" ), {|| ::execEvent( __buttonJustT_clicked__ ) } ) - qTBar:addToolButton( "JustM" , "Align middle" , app_image( "f_align_middle" ), {|| ::execEvent( __buttonJustM_clicked__ ) } ) - qTBar:addToolButton( "JustB" , "Align bottom" , app_image( "f_align_bottom" ), {|| ::execEvent( __buttonJustB_clicked__ ) } ) - qTBar:addSeparator() - qTBar:addToolButton( "BoxT" , "Box-frame top" , app_image( "f_box_top" ), {|| ::execEvent( __buttonBoxT_clicked__ ) }, .t., .f. ) - qTBar:addToolButton( "BoxL" , "Box-frame left" , app_image( "f_box_left" ), {|| ::execEvent( __buttonBoxL_clicked__ ) }, .t., .f. ) - qTBar:addToolButton( "BoxB" , "Box-frame bottom" , app_image( "f_box_bottom" ), {|| ::execEvent( __buttonBoxB_clicked__ ) }, .t., .f. ) - qTBar:addToolButton( "BoxR" , "Box-frame right" , app_image( "f_box_right" ), {|| ::execEvent( __buttonBoxR_clicked__ ) }, .t., .f. ) - qTBar:addSeparator() - qTBar:addToolButton( "BoxA" , "Box-frame all" , app_image( "f_box_all" ), {|| ::execEvent( __buttonBoxA_clicked__ ) } ) - qTBar:addToolButton( "BoxP" , "No box-frame" , app_image( "f_box_plain" ), {|| ::execEvent( __buttonBoxP_clicked__ ) } ) - qTBar:addToolButton( "BoxS" , "Box shadowed" , app_image( "f_box_shadow" ), {|| ::execEvent( __buttonBoxS_clicked__ ) } ) - qTBar:addSeparator() - qTBar:addToolButton( "ZoomIn" , "Zoom In" , app_image( "zoomin3" ), {|| ::execEvent( __buttonZoom_clicked__, 1 ) } ) - qTBar:addToolButton( "ZoomOut", "Zoom Out" , app_image( "zoomout3" ), {|| ::execEvent( __buttonZoom_clicked__, 2 ) } ) - qTBar:addToolButton( "ZoomWYS", "Zoom WYSIWYG" , app_image( "zoomin" ), {|| ::execEvent( __buttonZoom_clicked__, 3 ) } ) - qTBar:addToolButton( "ZoomOrg", "Zoom Original" , app_image( "zoomout" ), {|| ::execEvent( __buttonZoom_clicked__, 4 ) } ) - qTBar:addSeparator() - qTBar:addToolButton( "Grid" , "Show Grid" , app_image( "grid" ), {|| ::execEvent( __buttonGrid_clicked__ ) }, .t., .f. ) - qTBar:addSeparator() + qTBar:addItem( { "FontG" , "Font" , QIcon( Hbp_Image( "f-generic" ) ), {|| ::execEvent( __buttonFontG_clicked__ ) }, .f., .f. } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "FontB" , "Text Bold" , QIcon( Hbp_Image( "f-bold-1" ) ), {|| ::execEvent( __buttonFontB_clicked__ ) } } ) + qTBar:addItem( { "FontI" , "Text Italic" , QIcon( Hbp_Image( "f-italic-1" ) ), {|| ::execEvent( __buttonFontI_clicked__ ) } } ) + qTBar:addItem( { "FontU" , "Text Underlined" , QIcon( Hbp_Image( "f-underline-1" ) ), {|| ::execEvent( __buttonFontU_clicked__ ) } } ) + qTBar:addItem( { "FontS" , "Text Strikethrough", QIcon( Hbp_Image( "f-strike-1" ) ), {|| ::execEvent( __buttonFontS_clicked__ ) } } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "JustL" , "Align left" , QIcon( Hbp_Image( "f_align_left" ) ), {|| ::execEvent( __buttonJustL_clicked__ ) } } ) + qTBar:addItem( { "JustC" , "Align center" , QIcon( Hbp_Image( "f_align_center" ) ), {|| ::execEvent( __buttonJustC_clicked__ ) } } ) + qTBar:addItem( { "JustR" , "Align right" , QIcon( Hbp_Image( "f_align_right" ) ), {|| ::execEvent( __buttonJustR_clicked__ ) } } ) + qTBar:addItem( { "JustJ" , "Align justify" , QIcon( Hbp_Image( "f_align_justify" ) ), {|| ::execEvent( __buttonJustJ_clicked__ ) } } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "JustT" , "Align top" , QIcon( Hbp_Image( "f_align_top" ) ), {|| ::execEvent( __buttonJustT_clicked__ ) } } ) + qTBar:addItem( { "JustM" , "Align middle" , QIcon( Hbp_Image( "f_align_middle" ) ), {|| ::execEvent( __buttonJustM_clicked__ ) } } ) + qTBar:addItem( { "JustB" , "Align bottom" , QIcon( Hbp_Image( "f_align_bottom" ) ), {|| ::execEvent( __buttonJustB_clicked__ ) } } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "BoxT" , "Box-frame top" , QIcon( Hbp_Image( "f_box_top" ) ), {|| ::execEvent( __buttonBoxT_clicked__ ) }, .t., .F. } ) + qTBar:addItem( { "BoxL" , "Box-frame left" , QIcon( Hbp_Image( "f_box_left" ) ), {|| ::execEvent( __buttonBoxL_clicked__ ) }, .t., .f. } ) + qTBar:addItem( { "BoxB" , "Box-frame bottom" , QIcon( Hbp_Image( "f_box_bottom" ) ), {|| ::execEvent( __buttonBoxB_clicked__ ) }, .t., .f. } ) + qTBar:addItem( { "BoxR" , "Box-frame right" , QIcon( Hbp_Image( "f_box_right" ) ), {|| ::execEvent( __buttonBoxR_clicked__ ) }, .t., .f. } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "BoxA" , "Box-frame all" , QIcon( Hbp_Image( "f_box_all" ) ), {|| ::execEvent( __buttonBoxA_clicked__ ) } } ) + qTBar:addItem( { "BoxP" , "No box-frame" , QIcon( Hbp_Image( "f_box_plain" ) ), {|| ::execEvent( __buttonBoxP_clicked__ ) } } ) + qTBar:addItem( { "BoxS" , "Box shadowed" , QIcon( Hbp_Image( "f_box_shadow" ) ), {|| ::execEvent( __buttonBoxS_clicked__ ) } } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "ZoomIn" , "Zoom In" , QIcon( Hbp_Image( "zoomin3" ) ), {|| ::execEvent( __buttonZoom_clicked__, 1 ) } } ) + qTBar:addItem( { "ZoomOut", "Zoom Out" , QIcon( Hbp_Image( "zoomout3" ) ), {|| ::execEvent( __buttonZoom_clicked__, 2 ) } } ) + qTBar:addItem( { "ZoomWYS", "Zoom WYSIWYG" , QIcon( Hbp_Image( "zoomin" ) ), {|| ::execEvent( __buttonZoom_clicked__, 3 ) } } ) + qTBar:addItem( { "ZoomOrg", "Zoom Original" , QIcon( Hbp_Image( "zoomout" ) ), {|| ::execEvent( __buttonZoom_clicked__, 4 ) } } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "Grid" , "Show Grid" , QIcon( Hbp_Image( "grid" ) ), {|| ::execEvent( __buttonGrid_clicked__ ) }, .t., .f. } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) ::qToolbarAlign := qTBar @@ -1340,56 +1358,53 @@ METHOD HbpReports:buildToolbarAlign() METHOD HbpReports:buildToolbarLeft() LOCAL qTBar - qTBar := HbqToolbar():new() + qTBar := XbpToolbar():new() qTBar:orientation := Qt_Vertical - qTBar:create( "ReportManager_Left_Toolbar" ) - - qTBar:addToolButton( "Image" , "Image" , app_image( "f-image" ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. ) - qTBar:addToolButton( "Chart" , "Chart" , app_image( "f_chart" ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. ) - qTBar:addToolButton( "Gradient", "Gradient", app_image( "f_gradient" ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. ) - qTBar:addToolButton( "Barcode" , "Barcode" , app_image( "f_barcode" ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. ) - qTBar:addToolButton( "Text" , "Text" , app_image( "text" ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. ) - qTBar:addSeparator() - qTBar:addToolButton( "Shapes" , "Shapes" , app_image( "rp_shapes" ), {|| ::execEvent( __buttonShapes_clicked__ ) }, .t., .f. ) + qTBar:imageWidth := 16 + qTBar:imageHeight := 16 + qTBar:create() + qTBar:buttonClick := {|oButton| iif( HB_ISBLOCK( oButton:key ), Eval( oButton:key ), NIL ) } ::qToolbarL := qTBar + qTBar:addItem( { "Image" , "Image" , QIcon( Hbp_Image( "f-image" ) ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. } ) + qTBar:addItem( { "Chart" , "Chart" , QIcon( Hbp_Image( "f_chart" ) ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. } ) + qTBar:addItem( { "Gradient", "Gradient", QIcon( Hbp_Image( "f_gradient" ) ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. } ) + qTBar:addItem( { "Barcode" , "Barcode" , QIcon( Hbp_Image( "f_barcode" ) ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. } ) + qTBar:addItem( { "Text" , "Text" , QIcon( Hbp_Image( "text" ) ), {|| ::execEvent( __buttonNew_clicked__ ) }, .t., .t. } ) + qTBar:addItem( , , , , , XBPTOOLBAR_BUTTON_SEPARATOR ) + qTBar:addItem( { "Shapes" , "Shapes" , QIcon( Hbp_Image( "rp_shapes" ) ), {|| ::execEvent( __buttonShapes_clicked__ ) }, .t., .f. } ) + RETURN Self /*----------------------------------------------------------------------*/ METHOD HbpReports:execMenuShapes() - LOCAL qPos, qBtn IF empty( ::qShapesMenu ) ::qShapesMenu := QMenu() - ::aShapesAct[ SHP_ACT_RECTANGLE ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_rectangle" ) ), "Rectangle" ) - ::aShapesAct[ SHP_ACT_ROUNDRECT ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_roundrectangle") ), "Rounded Rectangle" ) - ::aShapesAct[ SHP_ACT_ELLIPSE ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_ellipse" ) ), "Ellipse" ) - ::aShapesAct[ SHP_ACT_LINEHORZ ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_linehorz" ) ), "Horizontal Line" ) - ::aShapesAct[ SHP_ACT_LINEVERT ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_linevert" ) ), "Vertical Line" ) - ::aShapesAct[ SHP_ACT_LINEDIAGRIGHT ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_linediagright" ) ), "Diagonal Line Right" ) - ::aShapesAct[ SHP_ACT_LINEDIAGLEFT ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_linediagleft" ) ), "Diagonal Line Left" ) - ::aShapesAct[ SHP_ACT_ARC ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_arc" ) ), "Arc" ) - ::aShapesAct[ SHP_ACT_CHORD ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_chord" ) ), "Chord" ) - ::aShapesAct[ SHP_ACT_DIAMOND ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_diamond" ) ), "Diamond" ) - ::aShapesAct[ SHP_ACT_TRIANGLE ] := ::qShapesMenu:addAction( QIcon( app_image( "rp_triangle" ) ), "Triangle" ) + ::aShapesAct[ SHP_ACT_RECTANGLE ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_rectangle" ) ), "Rectangle" ) + ::aShapesAct[ SHP_ACT_ROUNDRECT ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_roundrectangle") ), "Rounded Rectangle" ) + ::aShapesAct[ SHP_ACT_ELLIPSE ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_ellipse" ) ), "Ellipse" ) + ::aShapesAct[ SHP_ACT_LINEHORZ ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_linehorz" ) ), "Horizontal Line" ) + ::aShapesAct[ SHP_ACT_LINEVERT ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_linevert" ) ), "Vertical Line" ) + ::aShapesAct[ SHP_ACT_LINEDIAGRIGHT ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_linediagright" ) ), "Diagonal Line Right" ) + ::aShapesAct[ SHP_ACT_LINEDIAGLEFT ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_linediagleft" ) ), "Diagonal Line Left" ) + ::aShapesAct[ SHP_ACT_ARC ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_arc" ) ), "Arc" ) + ::aShapesAct[ SHP_ACT_CHORD ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_chord" ) ), "Chord" ) + ::aShapesAct[ SHP_ACT_DIAMOND ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_diamond" ) ), "Diamond" ) + ::aShapesAct[ SHP_ACT_TRIANGLE ] := ::qShapesMenu:addAction( QIcon( Hbp_Image( "rp_triangle" ) ), "Triangle" ) ::qShapesMenu:connect( QEvent_MouseButtonPress , {|p| ::execEvent( __QEvent_MousePressMenu__ , p ) } ) ::qShapesMenu:connect( QEvent_MouseMove , {|p| ::execEvent( __QEvent_MouseMoveMenu__ , p ) } ) ::qShapesMenu:connect( QEvent_MouseButtonRelease, {|p| ::execEvent( __QEvent_MouseReleaseMenu__, p ) } ) ENDIF - qBtn := ::qToolbarL:getItem( "Shapes" ) - // - qPos := ::qToolbarL:mapToGlobal( qBtn:pos() ) - qPos:setX( qPos:x() + qBtn:width() / 2 ) - qPos:setY( qPos:y() + qBtn:height() / 2 ) + ::qShapesMenu:exec( QCursor():pos() ) - ::qShapesMenu:exec( qPos ) + ::qToolbarL:setItemChecked( "Shapes", .f. ) - qBtn:setChecked( .f. ) RETURN Self /*----------------------------------------------------------------------*/ diff --git a/harbour/contrib/hbide/xbpaddons/resources/close3.png b/harbour/contrib/hbide/xbpaddons/resources/close3.png new file mode 100644 index 0000000000000000000000000000000000000000..9bc6af9c81a187da45d69045f9c19c3aabafb7fb GIT binary patch literal 646 zcmV;10(t$3P)KuMHHgTy>13QJ!Km4DIU=8#g-lxCCgZCbZHHm%{ z|1SR{z1^MqZ^Z)OWY1Zh#4%|UVhD|CTim#LT>$j#->HS|A=8MfL(hM)El&4e)a`rr z(!8Y&(wMOBp=^UUS1vFxc5TCDe+IGOFbB9#&T`ml}Z%YzvgaN06w9 zz;U@-y#2kgiPi{G!kU9}OG+-Zc<3gl+?opvlAaMltI&uL&Pf)8C#HdB{DV8$|hW?6EFJ+EN1SX zr|ZD3uREwKNh6m>jtsGG`!*Kp72+fy3MF+*047ycA&MHL&U)UDPqR4oigT|=1%OPY zLd{H5$a-w(I7kv@a0(monp%+B#ZOE^U7(>0%zg3+hwpG=_tw=b#1v@$IL7DpPR?9@ zNX|-eZ5z@6&r%q%rl2*}$^u5#re2=m*4y#bKah6Bv*8zH)nhu#6+(ZWXfbBFR${(X gWif$SAmKmp1=1b}L{{=k8UO$Q07*qoM6N<$f}(mTAOHXW literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/resources/f-bold-1.png b/harbour/contrib/hbide/xbpaddons/resources/f-bold-1.png similarity index 100% rename from harbour/contrib/hbide/resources/f-bold-1.png rename to harbour/contrib/hbide/xbpaddons/resources/f-bold-1.png diff --git a/harbour/contrib/hbide/resources/f-generic.png b/harbour/contrib/hbide/xbpaddons/resources/f-generic.png similarity index 100% rename from harbour/contrib/hbide/resources/f-generic.png rename to harbour/contrib/hbide/xbpaddons/resources/f-generic.png diff --git a/harbour/contrib/hbide/resources/f-image.png b/harbour/contrib/hbide/xbpaddons/resources/f-image.png similarity index 100% rename from harbour/contrib/hbide/resources/f-image.png rename to harbour/contrib/hbide/xbpaddons/resources/f-image.png diff --git a/harbour/contrib/hbide/resources/f-italic-1.png b/harbour/contrib/hbide/xbpaddons/resources/f-italic-1.png similarity index 100% rename from harbour/contrib/hbide/resources/f-italic-1.png rename to harbour/contrib/hbide/xbpaddons/resources/f-italic-1.png diff --git a/harbour/contrib/hbide/resources/f-strike-1.png b/harbour/contrib/hbide/xbpaddons/resources/f-strike-1.png similarity index 100% rename from harbour/contrib/hbide/resources/f-strike-1.png rename to harbour/contrib/hbide/xbpaddons/resources/f-strike-1.png diff --git a/harbour/contrib/hbide/resources/f-underline-1.png b/harbour/contrib/hbide/xbpaddons/resources/f-underline-1.png similarity index 100% rename from harbour/contrib/hbide/resources/f-underline-1.png rename to harbour/contrib/hbide/xbpaddons/resources/f-underline-1.png diff --git a/harbour/contrib/hbide/resources/f_align_bottom.png b/harbour/contrib/hbide/xbpaddons/resources/f_align_bottom.png similarity index 100% rename from harbour/contrib/hbide/resources/f_align_bottom.png rename to harbour/contrib/hbide/xbpaddons/resources/f_align_bottom.png diff --git a/harbour/contrib/hbide/resources/f_align_center.png b/harbour/contrib/hbide/xbpaddons/resources/f_align_center.png similarity index 100% rename from harbour/contrib/hbide/resources/f_align_center.png rename to harbour/contrib/hbide/xbpaddons/resources/f_align_center.png diff --git a/harbour/contrib/hbide/resources/f_align_justify.png b/harbour/contrib/hbide/xbpaddons/resources/f_align_justify.png similarity index 100% rename from harbour/contrib/hbide/resources/f_align_justify.png rename to harbour/contrib/hbide/xbpaddons/resources/f_align_justify.png diff --git a/harbour/contrib/hbide/resources/f_align_left.png b/harbour/contrib/hbide/xbpaddons/resources/f_align_left.png similarity index 100% rename from harbour/contrib/hbide/resources/f_align_left.png rename to harbour/contrib/hbide/xbpaddons/resources/f_align_left.png diff --git a/harbour/contrib/hbide/resources/f_align_middle.png b/harbour/contrib/hbide/xbpaddons/resources/f_align_middle.png similarity index 100% rename from harbour/contrib/hbide/resources/f_align_middle.png rename to harbour/contrib/hbide/xbpaddons/resources/f_align_middle.png diff --git a/harbour/contrib/hbide/resources/f_align_right.png b/harbour/contrib/hbide/xbpaddons/resources/f_align_right.png similarity index 100% rename from harbour/contrib/hbide/resources/f_align_right.png rename to harbour/contrib/hbide/xbpaddons/resources/f_align_right.png diff --git a/harbour/contrib/hbide/resources/f_align_top.png b/harbour/contrib/hbide/xbpaddons/resources/f_align_top.png similarity index 100% rename from harbour/contrib/hbide/resources/f_align_top.png rename to harbour/contrib/hbide/xbpaddons/resources/f_align_top.png diff --git a/harbour/contrib/hbide/resources/f_barcode.png b/harbour/contrib/hbide/xbpaddons/resources/f_barcode.png similarity index 100% rename from harbour/contrib/hbide/resources/f_barcode.png rename to harbour/contrib/hbide/xbpaddons/resources/f_barcode.png diff --git a/harbour/contrib/hbide/resources/f_box_all.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_all.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_all.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_all.png diff --git a/harbour/contrib/hbide/resources/f_box_bottom.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_bottom.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_bottom.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_bottom.png diff --git a/harbour/contrib/hbide/resources/f_box_left.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_left.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_left.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_left.png diff --git a/harbour/contrib/hbide/resources/f_box_matrix.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_matrix.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_matrix.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_matrix.png diff --git a/harbour/contrib/hbide/resources/f_box_plain.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_plain.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_plain.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_plain.png diff --git a/harbour/contrib/hbide/resources/f_box_right.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_right.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_right.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_right.png diff --git a/harbour/contrib/hbide/resources/f_box_shadow.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_shadow.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_shadow.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_shadow.png diff --git a/harbour/contrib/hbide/resources/f_box_top.png b/harbour/contrib/hbide/xbpaddons/resources/f_box_top.png similarity index 100% rename from harbour/contrib/hbide/resources/f_box_top.png rename to harbour/contrib/hbide/xbpaddons/resources/f_box_top.png diff --git a/harbour/contrib/hbide/resources/f_chart.png b/harbour/contrib/hbide/xbpaddons/resources/f_chart.png similarity index 100% rename from harbour/contrib/hbide/resources/f_chart.png rename to harbour/contrib/hbide/xbpaddons/resources/f_chart.png diff --git a/harbour/contrib/hbide/resources/f_gradient.png b/harbour/contrib/hbide/xbpaddons/resources/f_gradient.png similarity index 100% rename from harbour/contrib/hbide/resources/f_gradient.png rename to harbour/contrib/hbide/xbpaddons/resources/f_gradient.png diff --git a/harbour/contrib/hbide/xbpaddons/resources/grid.png b/harbour/contrib/hbide/xbpaddons/resources/grid.png new file mode 100644 index 0000000000000000000000000000000000000000..b2bc62a7461e7fff55a5f51e6566027782fe7b06 GIT binary patch literal 88 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%_o-U3d7N?UF76|?DSM#;~FrVpL kLGi&1ot`%l3epS=j>|P}_`YDQ04inhboFyt=akR{0Fv4mfB*mh literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/harbour.png b/harbour/contrib/hbide/xbpaddons/resources/harbour.png new file mode 100644 index 0000000000000000000000000000000000000000..4beb7656f56b0ec0322113d626f639a69ff85bde GIT binary patch literal 3049 zcmVjX;nfPDMzof<*?@3QYg7GgK>}<5a7nVv7n2SY#NdqViBw7!_Jz6j2NWt&a{5 zn~+2_A*Gm*r%CqxxbNHVWJm?FTfhcrJKUK&d-t4s&pp5Mec$i!ZDZxM;F3wv;c&#$T20fK zs;a7~mStT!3w(UIt%9aV#Iv-Tu3u3U!Dh21)Ai}P&Tt$jQxs)g5&+Fzv4Xudt018*Y1Y z)!HTF%E#Ad2vh_XNbBdaEMp5?TmUb=cVyw->efjkhq&9WF7_STxnt{;{l~*MRFoI* zOLsr4exD)I^`%lN0W5IdF7$(?#NV2_%Wr*Z_meC`qA^8T2WW7Oq7kKQ#?4t=C$U5@ z!($nf6j(sW6d!|bfuyYQ3peavuV@B`|4%F%y7!MOm)>=(RUP)zNfY;;bQkKp#!M#p zObj*X09O8~_UY=T?lO_1k=$xRekiqb)it$bv|Qa3-COj zy5ImltM8cn%B~|1J46QIlnKA_b*q=o{Vr+*@~{3$f=jeV*RJ0%&*gH)(mb9q%R&sm z{CVYq#y}*YI&S&h2WvsDkidtCAZZlq?Qk6Vyz*MQXd)^eF`{ADme;2q|F)%=W!VA# zZ2cRdgLM)BxUep?{GIA&k2D8I2<%DsCP}2HB7K1=47(07N;vxJD{JoZc)e*ACxFTr z$Y22xWX6Sap{knJn>JQ9-tQ3E@BM%vk&z5xengIxzi3plQdZ-l{NDR^e3c z=rXAxfoBnCDXJXoW?|_OC3^b;n05z{kq99gSjJOSh73*3BpEWs0JJlM3gF|~wi|xF zr1Cy|?Q;q3H;*saHgTl%(Y<%hc&Ys#jro>k!rVzja(3jnaXz?DE3$iYk?6YunMQgU z0hI>~fXWcyc(*nn1{xb13!xAY$#{LNkyBo+(Pdk zmM{HH%dv0r`|qP{5~98Nh!k8%j~zy?ykf-gBJ8|$rvILBIP3@pgPuSj(6L~_0t2Wr zZGhuygxzi*u;H((s~ZhFHSButof806H<)MNs($2_3He(dnN_yL>*Pb&49AWg%O7)9 z$BO?z`{ymXwryJ!Z_9y6*1o?9R?k|IwpIhe5r_+11q* z*s^8IEG+17g#yMT!73I28jedYwY9Znct?jp;Jx#rMT=IzxW@+oknCI(exj$geNoeJ z?ad3<-I+IcKB5H&L}Kc6T?POs$Z&!u7koiSibjfOjtf#*oi}e@YUId~f1fgC%ExE+ zS5#D7vuf3HHstlf<%6f9s08MKfALCmMC*g=3(c!kgGtFNyg1)v+T+w`B< zz4}WqXH}y+syk=@rJ-jM2RpB*VuF4nk%MPUBN-t<$RPu)K|l~Q3=81^0SpVH>Xw)x zP<4m}Djfsi?Ph;f0*b&_wY9Yk!S&MTpMQSH*s){leo!6=CRAzS^3Pwu?opC!uOBzm z{n_Laf7O~LkKR+cebZFTIHD&9nczaU>;lLOzeJjBhq=2j-{J6}(Q0y}pV? zM@L7_mtTH4?zPumn_F61`qjF1>+S>>+Tn7!;^zh6lcT*AGsfm@o?RYz>#96wElZQe zhD^J%37w!ldM zefLkBHf`^L0|!D-E3J6{{r7K+Mx*wvTer>t2HOrad|Ixc=RNr9cAv-I6UdRi%?o&% z{aLQotSo1Ttc@uW@=Fgx1^1*`#%Rl|}(}}=Pcg&hKYbTaX zrvVsN=x=CjY9C#9q-8=d6wgW|RVUb) z5lh8Pk`Jj!1eS6{WZfQD40}@6Mab$Lyo9z8&J(0z7x^U5GD%=U%_edQI{+7XHfFPN zaeU2jbc$o?6w5LS!%~>g3=muF1D`5EQ7OY>WZhyFP~)0~Xb651atLX_fSRh46jX2g|}2VHJ!FjemWws(Qz4_AaPPL37}4rqI80$bgV-Nyl*zaW+q;I zf`DtPuN}(v6wjp?r!y?%_}d*tg$)I_P2Yab-=jJ@LxG1EzxC#xPmbIm*mxv^;K}w& z(V{DJ>OJ853`Hss4=__h2UgNpQ`c=2g3_IC2$pWyXu_m*gA@%Gk$NeXG0s}6Ouy;S>4i_ey>VA% z%^mmOGiB**)5mYRBF}rGUkNklWa#W%cWjYfLL~>d&?So~IF$$wt z_{A{nF<0hNa<;J4bmlZ|5GB6kGMoDEoC`(y(t*QsIOqR6&%Ni~E6rgl@+@iP5?KoN zcCd5IIZ^wMEg;t~3J-9H6vX3LO+GGIZ?KD)b6jH$YiGlXg(m;hFr+;*puFuNZnvB1 zYsU4~dmM94)L6sXnN9So(lj{pJP((eOJJ}Sqo~CQQ+oy42c0Og-Q*nCghoYLX8!DX zMWmlQq3S5o>ocKm$bjCOgUaqF=oxl_ZDP`c`<;()j_RyoEi=DolC{O4L6V$^6iXtq zt(o}j9>h%R9&STk(^=LCEi+=U3Lk|WQ>n#qIUc8)GYUDJAQWK5P9wLTW zX_<1dtgBVifHvW7hYoDLqjr?G2BPfkT6Pha*n{XK*5P8)2BBq!Suw;Tw*rydxE{rJ zHSKu_o~cRP>DYw_UH-x=Is@n~sHo9uT2YYDGQ+Gm#%-})?m}A-U79s$aHU{+dJ27` zU9_bL$RCxc?)9ZX`s3Q0oz!F_Sj)`cS6i<$`qEzmQRNKAyTMa*_Wf}G9LGyn4eI*K zQPX#Yn#Bl>&Zq=4|6FCoQpuEF>J7_)8m(U<@nKj?_u(+Ueov;=BydjDSi@Ro=6p;s z2@1E_;)j86p%|G67ygN2&QWdFW19Cl2dE@DGD>o=Q#|i;{sj;+@0J0~+bsY9002ov JPDHLkV1fbqTL%CD literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/new.png b/harbour/contrib/hbide/xbpaddons/resources/new.png new file mode 100644 index 0000000000000000000000000000000000000000..27bd47cb4866fdce470f5294d24db066c164581e GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`%ROBjLn>~qy`ad)WGKLTVXx5j z2U0Pas@sZWr!Mx;(iWKNdw{2Fl7iHgbcvlOOJ=93|6G~z?C+M#d5@isS#hg+wtN|v4VTW+S5t7c%$)Vkz^!h_PtB;`+j!VDr8c^J1cExlr< zAfL+Q%JR&&!KY!VZE+^^=FN>dZ#DCo?y;p!i!u{~1gaC@crgv)-?7f!G9sXoVV YH{szw7JV5tppzLqUHx3vIVCg!0O;aUnE(I) literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/print.png b/harbour/contrib/hbide/xbpaddons/resources/print.png new file mode 100644 index 0000000000000000000000000000000000000000..1326f5cca500b23e3ea3cbec68b99d5d9717f9a4 GIT binary patch literal 278 zcmV+x0qOpUP)!-}`z-38_$47bo* zL30k(>9^GbRb4|1npU@kq*xy40;}L)hzjRz5eXh)fa4X`C-4t2+D4P_uAsGmx(}6! z>Ox6`^mKs%k9(`VU2J^UL0-6;AbxlyMk literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/resources/r-landscape.png b/harbour/contrib/hbide/xbpaddons/resources/r-landscape.png similarity index 100% rename from harbour/contrib/hbide/resources/r-landscape.png rename to harbour/contrib/hbide/xbpaddons/resources/r-landscape.png diff --git a/harbour/contrib/hbide/resources/r-page.png b/harbour/contrib/hbide/xbpaddons/resources/r-page.png similarity index 100% rename from harbour/contrib/hbide/resources/r-page.png rename to harbour/contrib/hbide/xbpaddons/resources/r-page.png diff --git a/harbour/contrib/hbide/resources/r-portrait.png b/harbour/contrib/hbide/xbpaddons/resources/r-portrait.png similarity index 100% rename from harbour/contrib/hbide/resources/r-portrait.png rename to harbour/contrib/hbide/xbpaddons/resources/r-portrait.png diff --git a/harbour/contrib/hbide/resources/r-report.png b/harbour/contrib/hbide/xbpaddons/resources/r-report.png similarity index 100% rename from harbour/contrib/hbide/resources/r-report.png rename to harbour/contrib/hbide/xbpaddons/resources/r-report.png diff --git a/harbour/contrib/hbide/resources/rp_arc.png b/harbour/contrib/hbide/xbpaddons/resources/rp_arc.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_arc.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_arc.png diff --git a/harbour/contrib/hbide/resources/rp_chord.png b/harbour/contrib/hbide/xbpaddons/resources/rp_chord.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_chord.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_chord.png diff --git a/harbour/contrib/hbide/resources/rp_diamond.png b/harbour/contrib/hbide/xbpaddons/resources/rp_diamond.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_diamond.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_diamond.png diff --git a/harbour/contrib/hbide/resources/rp_ellipse.png b/harbour/contrib/hbide/xbpaddons/resources/rp_ellipse.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_ellipse.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_ellipse.png diff --git a/harbour/contrib/hbide/resources/rp_linediagleft.png b/harbour/contrib/hbide/xbpaddons/resources/rp_linediagleft.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_linediagleft.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_linediagleft.png diff --git a/harbour/contrib/hbide/resources/rp_linediagright.png b/harbour/contrib/hbide/xbpaddons/resources/rp_linediagright.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_linediagright.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_linediagright.png diff --git a/harbour/contrib/hbide/resources/rp_linehorz.png b/harbour/contrib/hbide/xbpaddons/resources/rp_linehorz.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_linehorz.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_linehorz.png diff --git a/harbour/contrib/hbide/resources/rp_linevert.png b/harbour/contrib/hbide/xbpaddons/resources/rp_linevert.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_linevert.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_linevert.png diff --git a/harbour/contrib/hbide/resources/rp_rectangle.png b/harbour/contrib/hbide/xbpaddons/resources/rp_rectangle.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_rectangle.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_rectangle.png diff --git a/harbour/contrib/hbide/resources/rp_roundrectangle.png b/harbour/contrib/hbide/xbpaddons/resources/rp_roundrectangle.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_roundrectangle.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_roundrectangle.png diff --git a/harbour/contrib/hbide/resources/rp_shapes.png b/harbour/contrib/hbide/xbpaddons/resources/rp_shapes.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_shapes.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_shapes.png diff --git a/harbour/contrib/hbide/resources/rp_triangle.png b/harbour/contrib/hbide/xbpaddons/resources/rp_triangle.png similarity index 100% rename from harbour/contrib/hbide/resources/rp_triangle.png rename to harbour/contrib/hbide/xbpaddons/resources/rp_triangle.png diff --git a/harbour/contrib/hbide/xbpaddons/resources/text.png b/harbour/contrib/hbide/xbpaddons/resources/text.png new file mode 100644 index 0000000000000000000000000000000000000000..d2bf490804ec90fbecbee9f771cbd25557dfd538 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE;=r>Bc!NX4zUR}8rr3^<$v-`8i( zUb^_hK@L8?lRu(FdQNP4c0eghe#O6=JVhdB^H`Q>+U9x{^EG>s^Km@cZQ&Fhia|~%P%qp%U#$k-}FVdQ&MBb@0By@Cxc~qF literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/tofront.png b/harbour/contrib/hbide/xbpaddons/resources/tofront.png new file mode 100644 index 0000000000000000000000000000000000000000..23559d4a1caced764db8bbcc04d3451e03fc6048 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`PM$7~Ar-gIUb@J}V8G*iv9{{J z&E05?sh#J<_^NkJS=+g=)WXH(DeJfBNsJ3Vmo}_nSkBxk_+aOCrl!9aUwAGs-N@3b WD?LBzWWo)gX$+pOelF{r5}E)L*(>n? literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/unload_1.png b/harbour/contrib/hbide/xbpaddons/resources/unload_1.png new file mode 100644 index 0000000000000000000000000000000000000000..bf92c5d33e75555b084c42a909a05a503ad5e429 GIT binary patch literal 721 zcmV;?0xtcDP)l9!5UA1s3mDU8DK zi(=SouFR$6Y+H#y$41cQ&k8Sm~b{inM2isOWlxJKfc| z(RrWpYRGV|x3 zS48@`5^9ejy*U%-Ne_DKFzIoFqt9tajqM3^#vJHcGK7b{%>157*49D|lH^3B7!r}! zb`CaY7iPw1mjl_xO!f#bGh(m`AB7xK6M>U*Jd&IC(H7&7@gj~^Ey09)9QFO>u#a28 zVHvUE%+viiL0)EiP;mB><3B7qQuD#wvGl<0x&p0>= z+E39AqH%y2W+i3Fa_iy8+i3M21Z$Af8iM>+Y807*aiwDmOXPi{MsQTU&lcW8#4sx@ zQ!bXZjcOX+W?X99NYh@AQu8{Lbq1pR?OK+|2gc0cxYwf*oaBi6OjmoJMVb zknm{rzF_8`tE^ZmRi>AD!!WEy=a)!YH3470C)4>K!3Spq*F=v!>}6)o#}t#Ga8(=p z@abC!Mkm9BhAHP7^=3V$d7pEDN|Ga^BrA*Zd7twyV|?$H16yJK00000NkvXXu0mjf DTdr4( literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/zoomin.png b/harbour/contrib/hbide/xbpaddons/resources/zoomin.png new file mode 100644 index 0000000000000000000000000000000000000000..e30b47fe6f487309a05d452012b973d18ea26906 GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Gdx`!Ln>}dZ6WL3Sgzm~DZ!P)j%I7ijQeJ|c=W-iaP zzpTp>T~h3H!F|%AT`zf#>z&`p?afdiKJ7r+gMWgI2lqc=4McWo literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/zoomin3.png b/harbour/contrib/hbide/xbpaddons/resources/zoomin3.png new file mode 100644 index 0000000000000000000000000000000000000000..e8287d0504d3e5500cdb2e9b81082730efc5e38e GIT binary patch literal 706 zcmV;z0zLhSP) zdn^-uW@r(No;K9+duu$cGuG9L-Z&9JqCr=^C+V64Mo<2copA>T_`0^fh+yf z&2A$~?0R;vXaG^NNeJaC1lCW$Lih^A6)(}{tVsH+bh$1i_qO^qOk;ipcs;!V*WzBd zmyf_#wg@}%Aat%2V+%_ZLK;QOVr@!>FtG@{RRWx*c~EE#^x~RvR5}Oy`UMzgcS4sV zQju5u4pI{%`xMzSgXXbSIF$@zUv>{DN(x4_6voLim=^TGs_ruku9bqkDcAT|6-rC;4ggtUE!ZP5TsGde*0 zGBCpLV{d*J93Q>Mp(j(&4;6#Flh~vtNL;!zT&Vj1rJ zYcMbBhOS@QIyp;rlbYZXb1lAP+A>cLm(~TGc=;7(S#7YZ9E4l%GOWt`LH>8)dDUyZ zT|jB1iFROthjwt$nz7(9EF}uq){f#p#SnI-H-nh@I35>+*@*zWt2RVaB5_G0Kar~z zD|0}PlLdWl4)oZW(DqFOTPVQPuqQT_Phv?Kix=6XEDfeTq>%$#kIp7JlaDaW#^-!a zO1M3~baJpd!GmgKKUS0%(N}E&F_&^_Gj4MYK@JxO_Ej)rTnG43-4x={J2&qhJq0P!*Z*>y|ZJWMx!wiz^CP=+N{Q@Rg)Bg~% ob*%+V?dmdKI;Vst0Bg)nf&c&j literal 0 HcmV?d00001 diff --git a/harbour/contrib/hbide/xbpaddons/resources/zoomout3.png b/harbour/contrib/hbide/xbpaddons/resources/zoomout3.png new file mode 100644 index 0000000000000000000000000000000000000000..34b7f1425cc90cf677181f341deea43b6c9c9115 GIT binary patch literal 708 zcmV;#0z3VQP) zdn^*=5IdI>}i|tz;q3 zbVtm*#w{GC^{^tZag8Q)HZ|+pKmE~m*V5-h^rxtYCKOX6q$_oO6k7ulK3XJRK_&6! z?(|RT-Aqd9d~xW`5Mq^+NN<}%aMd_$#BHE3#R>)G#?oJ9cbQUJZ!@QM8d@Eo`3%VV z*AUsVg22W_*eix%9B~JmxROXRC{CGRS2Ti&B|tq3q;>s(plKOC)$?$v)Z%c>0xa@6 zV9J-wlV8$K(i5-z7~3?1hS4=R7mdJP-Vc_v2Ug;CFw<1nBUgh}F^+AQib4KKXGl+6 zJu=$o!L1qt37>$X%RmvOpil+qf(*oy!J%#vI}#s*{F9PNPgI$fQ}F?jEni`GTLYHt z6|AMbu#$FTzq}Jp&)&iL`4qOsC_w(HJkldj6z|GVA-HuJ-pz~fQZ2xv=?gqNm*At( z!Ar9S>%wlBaDRI@Of|#24)X z0;L(39q_4xkF^OQ=HDE|s`fn8resources/database_previous.png resources/database_next.png resources/database_search.png + resources/new.png resources/open3.png resources/save3.png + resources/close3.png + resources/print.png + resources/load_1.png + resources/unload_1.png + resources/zoomin3.png + resources/zoomout3.png + resources/zoomout.png + resources/zoomin.png + resources/grid.png resources/fullscreen.png resources/formview.png resources/dbstruct.png @@ -44,5 +54,48 @@ resources/dbf_p10.png resources/form.png resources/table.png + resources/f_align_left.png + resources/f_align_right.png + resources/f_align_center.png + resources/f_align_justify.png + resources/f_align_top.png + resources/f_align_middle.png + resources/f_align_bottom.png + resources/f_box_top.png + resources/f_box_left.png + resources/f_box_bottom.png + resources/f_box_right.png + resources/f_box_all.png + resources/f_box_plain.png + resources/f_box_shadow.png + resources/f-generic.png + resources/f-image.png + resources/f_chart.png + resources/f_gradient.png + resources/f_barcode.png + resources/f-bold-1.png + resources/f-italic-1.png + resources/f-underline-1.png + resources/f-strike-1.png + resources/toback.png + resources/tofront.png + resources/r-page.png + resources/r-report.png + resources/r-landscape.png + resources/r-portrait.png + resources/rp_arc.png + resources/rp_chord.png + resources/rp_diamond.png + resources/rp_triangle.png + resources/rp_rectangle.png + resources/rp_roundrectangle.png + resources/rp_linevert.png + resources/rp_linehorz.png + resources/rp_linediagright.png + resources/rp_linediagleft.png + resources/rp_ellipse.png + resources/rp_shapes.png + resources/harbour.png + resources/text.png diff --git a/harbour/contrib/hbide/xbpaddons/xbpaddons.hbp b/harbour/contrib/hbide/xbpaddons/xbpaddons.hbp index d478e041ee..0a0a5c79fe 100644 --- a/harbour/contrib/hbide/xbpaddons/xbpaddons.hbp +++ b/harbour/contrib/hbide/xbpaddons/xbpaddons.hbp @@ -13,6 +13,7 @@ hbxbp.hbc dbu.prg reports.prg +misc.prg xbp.qrc diff --git a/harbour/contrib/hbxbp/toolbar.prg b/harbour/contrib/hbxbp/toolbar.prg index d8f93ca5bd..cd629200de 100644 --- a/harbour/contrib/hbxbp/toolbar.prg +++ b/harbour/contrib/hbxbp/toolbar.prg @@ -240,7 +240,7 @@ METHOD XbpToolbar:sendToolbarMessage() /*----------------------------------------------------------------------*/ METHOD XbpToolbar:addItem( cCaption, xImage, xDisabledImage, xHotImage, cDLL, nStyle, xKey ) - LOCAL oBtn + LOCAL oBtn, oButton LOCAL isAction := HB_ISOBJECT( cCaption ) .AND. __ObjGetClsName( cCaption ) == "QACTION" LOCAL isToolButton := HB_ISARRAY( cCaption ) LOCAL isObject := HB_ISOBJECT( cCaption ) @@ -277,17 +277,20 @@ METHOD XbpToolbar:addItem( cCaption, xImage, xDisabledImage, xHotImage, cDLL, nS oBtn:oAction := cCaption ELSEIF isToolButton - oBtn:oAction := QAction( ::oWidget ) + oButton := QToolButton() + oBtn:oAction := QWidgetAction( ::oWidget ) + oBtn:oAction:setDefaultWidget( oButton ) + oBtn:cargo := oButton - oBtn:oAction:setObjectName( cCaption[ 1 ] ) - oBtn:oAction:setTooltip( cCaption[ 2 ] ) - oBtn:oAction:setIcon( cCaption[ 3 ] ) - oBtn:oAction:setCheckable( cCaption[ 5 ] ) + oButton:setObjectName( cCaption[ 1 ] ) + oButton:setTooltip( cCaption[ 2 ] ) + oButton:setIcon( cCaption[ 3 ] ) + oButton:setCheckable( cCaption[ 5 ] ) IF cCaption[ 6 ] - oBtn:oAction:connect( QEvent_MouseButtonPress , {|p| ::execSlot( "QEvent_MousePress" , p, cCaption[ 1 ] ) } ) - oBtn:oAction:connect( QEvent_MouseButtonRelease, {|p| ::execSlot( "QEvent_MouseRelease", p, cCaption[ 1 ] ) } ) - oBtn:oAction:connect( QEvent_MouseMove , {|p| ::execSlot( "QEvent_MouseMove" , p, cCaption[ 1 ] ) } ) - oBtn:oAction:connect( QEvent_Enter , {|p| ::execSlot( "QEvent_MouseEnter" , p, cCaption[ 1 ] ) } ) + oButton:connect( QEvent_MouseButtonPress , {|p| ::execSlot( "QEvent_MousePress" , p, oButton ) } ) + oButton:connect( QEvent_MouseButtonRelease, {|p| ::execSlot( "QEvent_MouseRelease", p, oButton ) } ) + oButton:connect( QEvent_MouseMove , {|p| ::execSlot( "QEvent_MouseMove" , p, oButton ) } ) + oButton:connect( QEvent_Enter , {|p| ::execSlot( "QEvent_MouseEnter" , p, oButton ) } ) ENDIF ELSEIF isObject @@ -308,7 +311,11 @@ METHOD XbpToolbar:addItem( cCaption, xImage, xDisabledImage, xHotImage, cDLL, nS ENDIF /* Attach codeblock to be triggered */ - oBtn:oAction:connect( "triggered(bool)", {|| ::execSlot( "triggered(bool)", oBtn ) } ) + IF ! isToolButton + oBtn:oAction:connect( "triggered(bool)", {|| ::execSlot( "triggered(bool)", oBtn ) } ) + ELSE + oButton:connect( "clicked()", {|| ::execSlot( "triggered(bool)", oBtn ) } ) + ENDIF /* Attach Action with Toolbar */ ::oWidget:addAction( oBtn:oAction ) @@ -338,13 +345,13 @@ METHOD XbpToolbar:execSlot( cSlot, p, p1 ) CASE "QEvent_MouseMove" qRC := QRect( ::qPos:x() - 5, ::qPos:y() - 5, 10, 10 ):normalized() IF qRC:contains( qEvent:pos() ) - ::qByte := QByteArray( ::hItems[ p1 ]:objectName() ) + ::qByte := QByteArray( p1:objectName() ) ::qMime := QMimeData() ::qMime:setData( "application/x-toolbaricon", ::qByte ) - ::qMime:setHtml( ::hItems[ p1 ]:objectName() ) + ::qMime:setHtml( p1:objectName() ) - ::qPix := QIcon( ::hItems[ p1 ]:icon ):pixmap( 16,16 ) + ::qPix := p1:icon():pixmap( 16,16 ) ::qDrag := QDrag( SetAppWindow():oWidget ) ::qDrag:setMimeData( ::qMime ) @@ -355,8 +362,8 @@ METHOD XbpToolbar:execSlot( cSlot, p, p1 ) ::qDrag := NIL ::qPos := NIL - ::hItems[ p1 ]:setChecked( .f. ) - ::hItems[ p1 ]:setWindowState( 0 ) + p1:setChecked( .f. ) + p1:setWindowState( 0 ) ENDIF EXIT @@ -458,6 +465,10 @@ METHOD XbpToolbar:getItem( nItem_cKey ) IF a_[ 2 ]:key == nItem_cKey RETURN a_[ 2 ] ENDIF + ELSEIF HB_ISBLOCK( a_[ 2 ]:key ) + IF HB_ISOBJECT( a_[ 2 ]:cargo ) .AND. a_[ 2 ]:cargo:text() == nItem_cKey + RETURN a_[ 2 ] + ENDIF ENDIF NEXT