2012-07-18 20:04 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)

* contrib/hbide/idedocks.prg
  * contrib/hbide/ideedit.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/ideprojectwizard.prg
  * contrib/hbide/ideuisrcmanager.prg
    ! Optimized: character constants to numeric ones.
       Must speed up the user experience.

  * contrib/hbqt/qtgui/hbqt_hbqsyntaxhighlighter.cpp
  * contrib/hbqt/qtgui/hbqt_hbqsyntaxhighlighter.h
    + Implemented: any #define with front and back as two underscores
       will be displayed in different color in HbIDE. Like..
        #define __this_is_some_constant__     212
This commit is contained in:
Pritpal Bedi
2012-07-19 03:08:52 +00:00
parent 52bb8aa862
commit 8c6a12dab8
7 changed files with 344 additions and 251 deletions

View File

@@ -73,6 +73,52 @@
/*----------------------------------------------------------------------*/
#define __QEvent_WindowStateChange__ 2001
#define __QEvent_Hide__ 2002
#define __qSystemTrayIcon_activated__ 2003
#define __qSystemTrayIcon_show__ 2004
#define __qSystemTrayIcon_close__ 2005
#define __qTimer_timeOut__ 2006
#define __buttonViewTabbed_clicked__ 2007
#define __x_mdiArea_subWindowActivated__ 2008
#define __buttonViewOrganized_clicked__ 2009
#define __buttonSaveLayout_clicked__ 2010
#define __buttonViewCascaded_clicked__ 2011
#define __buttonViewTiled_clicked__ 2012
#define __buttonViewMaximized_clicked__ 2013
#define __buttonViewStackedVert_clicked__ 2014
#define __buttonViewStackedHorz_clicked__ 2015
#define __buttonViewZoomedIn_clicked__ 2016
#define __buttonViewZoomedOut_clicked__ 2017
#define __mdiArea_subWindowActivated__ 2018
#define __editWidget_dragEnterEvent__ 2019
#define __editWidget_dragMoveEvent__ 2020
#define __editWidget_dropEvent__ 2021
#define __mdiSubWindow_windowStateChanged__ 2022
#define __projectTree_dragEnterEvent__ 2023
#define __projectTree_dropEvent__ 2024
#define __dockSkltnsTree_visibilityChanged__ 2025
#define __oFuncDock_visibilityChanged__ 2026
#define __qHelpBrw_contextMenuRequested__ 2027
#define __dockHelpDock_visibilityChanged__ 2028
#define __outputConsole_contextMenuRequested__ 2029
#define __dockThemes_visibilityChanged__ 2030
#define __dockProperties_visibilityChanged__ 2031
#define __dockFindInFiles_visibilityChanged__ 2032
#define __dockDocViewer_visibilityChanged__ 2033
#define __dockDocWriter_visibilityChanged__ 2034
#define __docFunctions_visibilityChanged__ 2035
#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
/*----------------------------------------------------------------------*/
CLASS IdeDocks INHERIT IdeObject
DATA nPass INIT 0
@@ -102,7 +148,7 @@ CLASS IdeDocks INHERIT IdeObject
METHOD new( oIde )
METHOD create( oIde )
METHOD destroy()
METHOD execEvent( cEvent, p, p1 )
METHOD execEvent( nEvent, p, p1 )
METHOD setView( cView )
METHOD buildToolBarPanels()
METHOD buildHelpWidget()
@@ -133,7 +179,7 @@ CLASS IdeDocks INHERIT IdeObject
METHOD dispEnvironment( cEnviron )
//METHOD addPanelButton( cPanel )
METHOD disblePanelButton( qTBtn )
METHOD getADockWidget( nAreas, cObjectName, cWindowTitle, nFlags, cEventVisibility )
METHOD getADockWidget( nAreas, cObjectName, cWindowTitle, nFlags )
METHOD getPanelIcon( cView )
METHOD animateComponents( nMode )
METHOD buildSourceThumbnail()
@@ -473,8 +519,8 @@ METHOD IdeDocks:buildDialog()
ENDIF
ENDIF
::oDlg:oWidget:connect( QEvent_WindowStateChange, {|e| ::execEvent( "QEvent_WindowStateChange", e ) } )
::oDlg:oWidget:connect( QEvent_Hide , {|e| ::execEvent( "QEvent_Hide" , e ) } )
::oDlg:oWidget:connect( QEvent_WindowStateChange, {|e| ::execEvent( __QEvent_WindowStateChange__, e ) } )
::oDlg:oWidget:connect( QEvent_Hide , {|e| ::execEvent( __QEvent_Hide__ , e ) } )
::buildSystemTray()
@@ -542,15 +588,15 @@ METHOD IdeDocks:buildSystemTray()
::oIde:oSys := QSystemTrayIcon( ::oDlg:oWidget )
IF ( ::lSystemTrayAvailable := ::oSys:isSystemTrayAvailable() ) .AND. ::lMinimizeInSystemTray
::oSys:setIcon( QIcon( hbide_image( "hbide" ) ) )
::oSys:connect( "activated(QSystemTrayIcon::ActivationReason)", {|p| ::execEvent( "qSystemTrayIcon_activated", p ) } )
::oSys:connect( "activated(QSystemTrayIcon::ActivationReason)", {|p| ::execEvent( __qSystemTrayIcon_activated__, p ) } )
::oIde:oSysMenu := QMenu()
::qAct1 := ::oSysMenu:addAction( QIcon( hbide_image( "fullscreen" ) ), "&Show" )
::oSysMenu:addSeparator()
::qAct2 := ::oSysMenu:addAction( QIcon( hbide_image( "exit" ) ), "&Exit" )
::qAct1:connect( "triggered(bool)", {|| ::execEvent( "qSystemTrayIcon_show" ) } )
::qAct2:connect( "triggered(bool)", {|| ::execEvent( "qSystemTrayIcon_close" ) } )
::qAct1:connect( "triggered(bool)", {|| ::execEvent( __qSystemTrayIcon_show__ ) } )
::qAct2:connect( "triggered(bool)", {|| ::execEvent( __qSystemTrayIcon_close__ ) } )
::oSys:setContextMenu( ::oSysMenu )
::oSys:hide()
@@ -562,42 +608,42 @@ METHOD IdeDocks:buildSystemTray()
/*----------------------------------------------------------------------*/
METHOD IdeDocks:execEvent( cEvent, p, p1 )
METHOD IdeDocks:execEvent( nEvent, p, p1 )
LOCAL qEvent, qMime, qList, qUrl, i, n, oEdit, aMenu
IF ::lQuitting
RETURN Self
ENDIF
SWITCH cEvent
CASE "dockUISrc_visibilityChanged"
SWITCH nEvent
CASE __dockUISrc_visibilityChanged__
IF p; ::oUiS:show(); ENDIF
IF ! p .AND. ! p1:isVisible()
p1:raise()
ENDIF
EXIT
CASE "dockCuiEd_visibilityChanged"
CASE __dockCuiEd_visibilityChanged__
IF p; ::oCUI:show(); ENDIF
IF ! p .AND. ! p1:isVisible()
p1:raise()
ENDIF
EXIT
CASE "dockFormat_visibilityChanged"
CASE __dockFormat_visibilityChanged__
IF p; ::oFmt:show(); ENDIF
IF ! p .AND. ! p1:isVisible()
p1:raise()
ENDIF
EXIT
CASE "dockReportsManager_visibilityChanged"
CASE __dockReportsManager_visibilityChanged__
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
p1:raise()
ENDIF
ENDIF
EXIT
CASE "dockQScintilla_visibilityChanged"
CASE __dockQScintilla_visibilityChanged__
IF p; ::oBM:show() ; ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -605,7 +651,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "dockSourceThumbnail_visibilityChanged"
CASE __dockSourceThumbnail_visibilityChanged__
IF p; ::oEM:showThumbnail(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -613,7 +659,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "dockSkltnsTree_visibilityChanged"
CASE __dockSkltnsTree_visibilityChanged__
IF p; ::oSK:showTree(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -621,14 +667,14 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "dockHelpDock_visibilityChanged"
CASE __dockHelpDock_visibilityChanged__
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
p1:raise()
ENDIF
ENDIF
EXIT
CASE "dockDocViewer_visibilityChanged"
CASE __dockDocViewer_visibilityChanged__
IF p; ::oHL:show(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -636,7 +682,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "dockDocWriter_visibilityChanged"
CASE __dockDocWriter_visibilityChanged__
IF p; ::oDW:show(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -644,14 +690,14 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "oFuncDock_visibilityChanged"
CASE __oFuncDock_visibilityChanged__
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
p1:raise()
ENDIF
ENDIF
EXIT
CASE "docFunctions_visibilityChanged"
CASE __docFunctions_visibilityChanged__
IF p; ::oFN:show(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -659,7 +705,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "dockProperties_visibilityChanged"
CASE __dockProperties_visibilityChanged__
IF p; ::oPM:fetchProperties(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -667,7 +713,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "docEnvironments_visibilityChanged"
CASE __docEnvironments_visibilityChanged__
IF p; ::oEV:show(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -675,7 +721,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "docSkeletons_visibilityChanged"
CASE __docSkeletons_visibilityChanged__
IF p; ::oSK:show(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -683,7 +729,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "dockThemes_visibilityChanged"
CASE __dockThemes_visibilityChanged__
IF p; ::oTH:show(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -691,7 +737,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "dockFindInFiles_visibilityChanged"
CASE __dockFindInFiles_visibilityChanged__
IF p; ::oFF:show(); ENDIF
IF !empty( p1 )
IF ! p .AND. ! p1:isVisible()
@@ -700,10 +746,10 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
EXIT
/* Miscellaneous */
CASE "qHelpBrw_contextMenuRequested"
CASE __qHelpBrw_contextMenuRequested__
hbide_popupBrwContextMenu( ::qHelpBrw, p )
EXIT
CASE "outputConsole_contextMenuRequested"
CASE __outputConsole_contextMenuRequested__
aMenu := {}
aadd( aMenu, { "Clear" , {|| ::oOutputResult:oWidget:clear() } } )
aadd( aMenu, { "" } )
@@ -712,11 +758,11 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
hbide_execPopup( aMenu, p, ::oOutputResult:oWidget )
EXIT
CASE "QEvent_WindowStateChange"
CASE QEvent_WindowStateChange
::nPrevWindowState := p:oldState()
EXIT
CASE "QEvent_Hide"
CASE QEvent_Hide
IF ::lSystemTrayAvailable .AND. ::lMinimizeInSystemTray
qEvent := p
IF ! ::lChanging
@@ -726,7 +772,7 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
::qTimer := QTimer()
::qTimer:setSingleShot( .t. )
::qTimer:setInterval( 250 )
::qTimer:connect( "timeout()", {|| ::execEvent( "qTimer_timeOut" ) } )
::qTimer:connect( "timeout()", {|| ::execEvent( __qTimer_timeOut__ ) } )
ENDIF
::qTimer:start()
qEvent:ignore()
@@ -736,21 +782,21 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
EXIT
CASE "qTimer_timeOut"
CASE __qTimer_timeOut__
::oDlg:hide()
::oSys:setToolTip( ::oDlg:oWidget:windowTitle() )
::oSys:show()
EXIT
CASE "qSystemTrayIcon_close"
CASE __qSystemTrayIcon_close__
PostAppEvent( xbeP_Close, NIL, NIL, ::oDlg )
EXIT
CASE "qSystemTrayIcon_show"
CASE __qSystemTrayIcon_show__
::showDlgBySystemTrayIconCommand()
EXIT
CASE "qSystemTrayIcon_activated"
CASE __qSystemTrayIcon_activated__
IF p == QSystemTrayIcon_Trigger
::showDlgBySystemTrayIconCommand()
ELSEIF p == QSystemTrayIcon_DoubleClick
@@ -759,13 +805,12 @@ METHOD IdeDocks:execEvent( cEvent, p, p1 )
ENDIF
EXIT
CASE "editWidget_dragMoveEvent"
CASE "editWidget_dragEnterEvent"
HB_TRACE( HB_TR_DEBUG, "editWidget_dragEnterEvent", 0 )
CASE __editWidget_dragMoveEvent__
CASE __editWidget_dragEnterEvent__
p:acceptProposedAction()
EXIT
CASE "editWidget_dropEvent"
CASE __editWidget_dropEvent__
qMime := p:mimeData()
IF qMime:hasUrls()
qList := qMime:urls()
@@ -782,13 +827,11 @@ HB_TRACE( HB_TR_DEBUG, "editWidget_dragEnterEvent", 0 )
qMime := NIL
EXIT
CASE "projectTree_dragEnterEvent"
HB_TRACE( HB_TR_DEBUG, "projectTree_dragEnterEvent" )
CASE __projectTree_dragEnterEvent__
p:acceptProposedAction()
EXIT
CASE "projectTree_dropEvent"
HB_TRACE( HB_TR_DEBUG, "projectTree_dropEvent" )
CASE __projectTree_dropEvent__
qMime := p:mimeData()
IF qMime:hasUrls()
qList := qMime:urls()
@@ -801,7 +844,7 @@ HB_TRACE( HB_TR_DEBUG, "projectTree_dropEvent" )
ENDIF
EXIT
CASE "x_mdiArea_subWindowActivated"
CASE __x_mdiArea_subWindowActivated__
IF ! empty( ::oIde:aMdies )
IF ( n := ascan( ::oIde:aMdies, {|e| hbqt_IsEqual( e, p ) } ) ) > 0
@@ -823,47 +866,47 @@ HB_TRACE( HB_TR_DEBUG, "projectTree_dropEvent" )
EXIT
/* Left-toolbar actions */
CASE "buttonViewTabbed_clicked"
CASE __buttonViewTabbed_clicked__
::oStackedWidget:setViewMode( iif( ::oStackedWidget:viewMode() == QMdiArea_TabbedView, QMdiArea_SubWindowView, QMdiArea_TabbedView ) )
EXIT
CASE "buttonViewOrganized_clicked"
CASE __buttonViewOrganized_clicked__
::oINI:nEditsViewStyle := HBPMDI_STYLE_ORGANIZED
::restState()
EXIT
CASE "buttonSaveLayout_clicked"
CASE __buttonSaveLayout_clicked__
IF ::oINI:nEditsViewStyle == HBPMDI_STYLE_ORGANIZED
::savePanelsGeometry()
ENDIF
EXIT
CASE "buttonViewTiled_clicked"
CASE __buttonViewTiled_clicked__
::oStackedWidget:tileSubWindows()
::oINI:nEditsViewStyle := HBPMDI_STYLE_TILED
EXIT
CASE "buttonViewCascaded_clicked"
CASE __buttonViewCascaded_clicked__
::oStackedWidget:cascadeSubWindows()
::oINI:nEditsViewStyle := HBPMDI_STYLE_CASCADED
EXIT
CASE "buttonViewMaximized_clicked"
CASE __buttonViewMaximized_clicked__
::oINI:nEditsViewStyle := HBPMDI_STYLE_MAXIMIZED
::stackMaximized()
EXIT
CASE "buttonViewStackedVert_clicked"
CASE __buttonViewStackedVert_clicked__
::oINI:nEditsViewStyle := HBPMDI_STYLE_TILEDVERT
::stackVertically()
EXIT
CASE "buttonViewStackedHorz_clicked"
CASE __buttonViewStackedHorz_clicked__
::oINI:nEditsViewStyle := HBPMDI_STYLE_TILEDHORZ
::stackHorizontally()
EXIT
CASE "buttonViewZoomedIn_clicked"
CASE __buttonViewZoomedIn_clicked__
::stackZoom( +1 )
EXIT
CASE "buttonViewZoomedOut_clicked"
CASE __buttonViewZoomedOut_clicked__
::stackZoom( -1 )
EXIT
/* Ends: MDI actions */
CASE "mdiSubWindow_windowStateChanged"
CASE __mdiSubWindow_windowStateChanged__
IF ! empty( ::oIde:aMdies )
IF ( n := ascan( ::oIde:aMdies, {|o| o == p } ) ) > 0
::aViewsInfo[ n, 3 ] := p1[ 1 ]
@@ -1029,7 +1072,7 @@ METHOD IdeDocks:showDlgBySystemTrayIconCommand()()
/*----------------------------------------------------------------------*/
METHOD IdeDocks:getADockWidget( nAreas, cObjectName, cWindowTitle, nFlags, cEventVisibility )
METHOD IdeDocks:getADockWidget( nAreas, cObjectName, cWindowTitle, nFlags )
LOCAL oDock, nBasic
DEFAULT nFlags TO 0
@@ -1047,10 +1090,6 @@ METHOD IdeDocks:getADockWidget( nAreas, cObjectName, cWindowTitle, nFlags, cEven
oDock:oWidget:setStyleSheet( getStyleSheet( "QDockWidget", ::nAnimantionMode ) )
oDock:hide()
IF !empty( cEventVisibility )
oDock:oWidget:connect( cEventVisibility, {|p| ::execEvent( cEventVisibility, p, oDock:oWidget ) } )
ENDIF
RETURN oDock
/*----------------------------------------------------------------------*/
@@ -1146,18 +1185,18 @@ METHOD IdeDocks:buildMdiToolbarLeft()
::qMdiToolbarL:setObjectName( "ToolbarEditingAreaLeft" )
::qMdiToolbarL:setStyleSheet( GetStyleSheet( "QToolBar", ::nAnimantionMode ) )
::qMdiToolbarL:addToolButton( "ViewTabbed" , "Toggle tabbed view" , hbide_image( "view_tabbed" ), {|| ::execEvent( "buttonViewTabbed_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewTabbed" , "Toggle tabbed view" , hbide_image( "view_tabbed" ), {|| ::execEvent( __buttonViewTabbed_clicked__ ) }, .f. )
::qMdiToolbarL:addSeparator()
::qMdiToolbarL:addToolButton( "ViewArranged" , "View as arranged" , hbide_image( "view_organized" ), {|| ::execEvent( "buttonViewOrganized_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "SaveLayout" , "Save layout" , hbide_image( "save3" ), {|| ::execEvent( "buttonSaveLayout_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewArranged" , "View as arranged" , hbide_image( "view_organized" ), {|| ::execEvent( __buttonViewOrganized_clicked__ ) }, .f. )
::qMdiToolbarL:addToolButton( "SaveLayout" , "Save layout" , hbide_image( "save3" ), {|| ::execEvent( __buttonSaveLayout_clicked__ ) }, .f. )
::qMdiToolbarL:addSeparator()
::qMdiToolbarL:addToolButton( "ViewCascaded" , "View as cascaded" , hbide_image( "view_cascaded" ), {|| ::execEvent( "buttonViewCascaded_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "viewTiled" , "View as tiled" , hbide_image( "view_tiled" ), {|| ::execEvent( "buttonViewTiled_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewMaximized" , "View Maximized" , hbide_image( "fullscreen" ), {|| ::execEvent( "buttonViewMaximized_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewTiledVert" , "View Vertically Tiled" , hbide_image( "view_vertstacked" ), {|| ::execEvent( "buttonViewStackedVert_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewTiledHorz" , "View Horizontally Tiled" , hbide_image( "view_horzstacked" ), {|| ::execEvent( "buttonViewStackedHorz_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewZoomedIn" , "View Zoom In" , hbide_image( "view_zoomin" ), {|| ::execEvent( "buttonViewZoomedIn_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewZoomedOut" , "View Zoom Out" , hbide_image( "view_zoomout" ), {|| ::execEvent( "buttonViewZoomedOut_clicked" ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewCascaded" , "View as cascaded" , hbide_image( "view_cascaded" ), {|| ::execEvent( __buttonViewCascaded_clicked__ ) }, .f. )
::qMdiToolbarL:addToolButton( "viewTiled" , "View as tiled" , hbide_image( "view_tiled" ), {|| ::execEvent( __buttonViewTiled_clicked__ ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewMaximized" , "View Maximized" , hbide_image( "fullscreen" ), {|| ::execEvent( __buttonViewMaximized_clicked__ ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewTiledVert" , "View Vertically Tiled" , hbide_image( "view_vertstacked" ), {|| ::execEvent( __buttonViewStackedVert_clicked__ ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewTiledHorz" , "View Horizontally Tiled" , hbide_image( "view_horzstacked" ), {|| ::execEvent( __buttonViewStackedHorz_clicked__ ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewZoomedIn" , "View Zoom In" , hbide_image( "view_zoomin" ), {|| ::execEvent( __buttonViewZoomedIn_clicked__ ) }, .f. )
::qMdiToolbarL:addToolButton( "ViewZoomedOut" , "View Zoom Out" , hbide_image( "view_zoomout" ), {|| ::execEvent( __buttonViewZoomedOut_clicked__ ) }, .f. )
::qMdiToolbarL:addSeparator()
::qMdiToolbarL:addToolButton( "ToggleLineNos" , "Toggle Line Numbers" , hbide_image( "togglelinenumber" ), {|| ::oEM:toggleLineNumbers() }, .f. )
::qMdiToolbarL:addToolButton( "ToggleHorzRuler", "Toggle Horizontal Ruler" , hbide_image( "horzruler" ), {|| ::oEM:toggleHorzRuler() }, .f. )
@@ -1265,7 +1304,7 @@ METHOD IdeDocks:buildStackedWidget()
::oDa:addChild( ::oStackedWidget )
::oStackedWidget:oWidget:connect( "subWindowActivated(QMdiSubWindow*)", {|p| ::execEvent( "mdiArea_subWindowActivated", p ) } )
::oStackedWidget:oWidget:connect( "subWindowActivated(QMdiSubWindow*)", {|p| ::execEvent( __mdiArea_subWindowActivated__, p ) } )
RETURN Self
@@ -1300,9 +1339,9 @@ METHOD IdeDocks:buildViewWidget( cView )
qDrop := oFrame:oTabWidget:oWidget
qDrop:setAcceptDrops( .t. )
qDrop:connect( QEvent_DragEnter, {|p| ::execEvent( "editWidget_dragEnterEvent", p ) } )
qDrop:connect( QEvent_DragMove , {|p| ::execEvent( "editWidget_dragMoveEvent" , p ) } )
qDrop:connect( QEvent_Drop , {|p| ::execEvent( "editWidget_dropEvent" , p ) } )
qDrop:connect( QEvent_DragEnter, {|p| ::execEvent( __editWidget_dragEnterEvent__, p ) } )
qDrop:connect( QEvent_DragMove , {|p| ::execEvent( __editWidget_dragMoveEvent__ , p ) } )
qDrop:connect( QEvent_Drop , {|p| ::execEvent( __editWidget_dropEvent__ , p ) } )
oFrame:oTabWidget:oWidget:setUsesScrollButtons( .t. )
oFrame:oTabWidget:oWidget:setMovable( .t. )
@@ -1324,7 +1363,7 @@ METHOD IdeDocks:buildViewWidget( cView )
::oStackedWidget:oWidget:addSubWindow( qMdi )
qMdi:connect( "windowStateChanged(Qt::WindowStates,Qt::WindowStates)", ;
{|p,p1| ::execEvent( "mdiSubWindow_windowStateChanged", qMdi, { p, p1 } ) } )
{|p,p1| ::execEvent( __mdiSubWindow_windowStateChanged__, qMdi, { p, p1 } ) } )
::setView( cView )
RETURN oFrame
@@ -1483,8 +1522,8 @@ METHOD IdeDocks:buildProjectTree()
qDrop := ::oDockPT:oWidget // ::oProjTree:oWidget
qDrop:setAcceptDrops( .t. )
qDrop:connect( QEvent_DragEnter, {|p| ::execEvent( "projectTree_dragEnterEvent", p ) } )
qDrop:connect( QEvent_Drop , {|p| ::execEvent( "projectTree_dropEvent" , p ) } )
qDrop:connect( QEvent_DragEnter, {|p| ::execEvent( __projectTree_dragEnterEvent__, p ) } )
qDrop:connect( QEvent_Drop , {|p| ::execEvent( __projectTree_dropEvent__ , p ) } )
RETURN Self
@@ -1529,7 +1568,7 @@ METHOD IdeDocks:buildSkeletonsTree()
::oIde:oSkltnsTreeDock := ::getADockWidget( nAreas, "dockSkltnsTree", "Skeletons", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_LeftDockWidgetArea, ::oSkltnsTreeDock:oWidget, Qt_Vertical )
::oSkltnsTreeDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockSkltnsTree_visibilityChanged", p, ::oSkltnsTreeDock:oWidget ) } )
::oSkltnsTreeDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockSkltnsTree_visibilityChanged__, p, ::oSkltnsTreeDock:oWidget ) } )
RETURN Self
@@ -1540,7 +1579,7 @@ METHOD IdeDocks:buildFuncList()
::oIde:oFuncDock := ::getADockWidget( nAreas, "dockFuncList", "Functions List", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oFuncDock:oWidget, Qt_Vertical )
::oFuncDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "oFuncDock_visibilityChanged", p, ::oFuncDock:oWidget ) } )
::oFuncDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __oFuncDock_visibilityChanged__, p, ::oFuncDock:oWidget ) } )
::oIde:oFuncList := XbpListBox():new( ::oFuncDock ):create( , , { 0,0 }, { 100,400 }, , .t. )
::oFuncList:oWidget:setEditTriggers( QAbstractItemView_NoEditTriggers )
@@ -1576,10 +1615,9 @@ METHOD IdeDocks:buildHelpWidget()
::oHelpDock:oWidget:setWidget( ::oIde:qHelpBrw )
//::oHelpDock:connect( ::qHelpBrw, "customContextMenuRequested(QPoint)", {|p| ::execEvent( "qHelpBrw_contextMenuRequested", p ) } )
::qHelpBrw:connect( "customContextMenuRequested(QPoint)", {|p| ::execEvent( "qHelpBrw_contextMenuRequested", p ) } )
::qHelpBrw:connect( "customContextMenuRequested(QPoint)", {|p| ::execEvent( __qHelpBrw_contextMenuRequested__, p ) } )
::oHelpDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockHelpDock_visibilityChanged", p, ::oHelpDock:oWidget ) } )
::oHelpDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockHelpDock_visibilityChanged__, p, ::oHelpDock:oWidget ) } )
RETURN Self
@@ -1622,7 +1660,7 @@ METHOD IdeDocks:buildOutputResults()
::oDockB2:oWidget:setWidget( ::oOutputResult:oWidget )
::oOutputResult:oWidget:connect( "customContextMenuRequested(QPoint)", {|p| ::execEvent( "outputConsole_contextMenuRequested", p ) } )
::oOutputResult:oWidget:connect( "customContextMenuRequested(QPoint)", {|p| ::execEvent( __outputConsole_contextMenuRequested__, p ) } )
::oOutputResult:oWidget:connect( "copyAvailable(bool)", {|l| ::outputDoubleClicked( l ) } )
RETURN Self
@@ -1855,7 +1893,7 @@ METHOD IdeDocks:buildThemesDock()
::oIde:oThemesDock := ::getADockWidget( nAreas, "dockThemes", "Theme Manager", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oThemesDock:oWidget, Qt_Horizontal )
::oThemesDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockThemes_visibilityChanged", p, ::oThemesDock:oWidget ) } )
::oThemesDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockThemes_visibilityChanged__, p, ::oThemesDock:oWidget ) } )
RETURN Self
@@ -1866,7 +1904,7 @@ METHOD IdeDocks:buildPropertiesDock()
::oIde:oPropertiesDock := ::getADockWidget( nAreas, "dockProperties", "Project Properties", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oPropertiesDock:oWidget, Qt_Horizontal )
::oPropertiesDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockProperties_visibilityChanged", p, ::oPropertiesDock:oWidget ) } )
::oPropertiesDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockProperties_visibilityChanged__, p, ::oPropertiesDock:oWidget ) } )
RETURN Self
@@ -1877,7 +1915,7 @@ METHOD IdeDocks:buildFindInFiles()
::oIde:oFindDock := ::getADockWidget( nAreas, "dockFindInFiles", "Find in Files", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oFindDock:oWidget, Qt_Horizontal )
::oFindDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockFindInFiles_visibilityChanged", p, ::oFindDock:oWidget ) } )
::oFindDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockFindInFiles_visibilityChanged__, p, ::oFindDock:oWidget ) } )
RETURN Self
@@ -1888,7 +1926,7 @@ METHOD IdeDocks:buildDocViewer()
::oIde:oDocViewDock := ::getADockWidget( nAreas, "dockDocViewer", "Harbour Documentation", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oDocViewDock:oWidget, Qt_Horizontal )
::oDocViewDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockDocViewer_visibilityChanged", p, ::oDocViewDock:oWidget ) } )
::oDocViewDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockDocViewer_visibilityChanged__, p, ::oDocViewDock:oWidget ) } )
RETURN Self
@@ -1899,7 +1937,7 @@ METHOD IdeDocks:buildDocWriter()
::oIde:oDocWriteDock := ::getADockWidget( nAreas, "dockDocWriter", "Documentation Writer", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oDocWriteDock:oWidget, Qt_Horizontal )
::oDocWriteDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockDocWriter_visibilityChanged", p, ::oDocWriteDock:oWidget ) } )
::oDocWriteDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockDocWriter_visibilityChanged__, p, ::oDocWriteDock:oWidget ) } )
RETURN Self
@@ -1910,7 +1948,7 @@ METHOD IdeDocks:buildFunctionsDock()
::oIde:oFunctionsDock := ::getADockWidget( nAreas, "dockFunctions", "Projects Functions Lookup", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oFunctionsDock:oWidget, Qt_Horizontal )
::oFunctionsDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "docFunctions_visibilityChanged", p, ::oFunctionsDock:oWidget ) } )
::oFunctionsDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __docFunctions_visibilityChanged__, p, ::oFunctionsDock:oWidget ) } )
RETURN Self
@@ -1921,7 +1959,7 @@ METHOD IdeDocks:buildEnvironDock()
::oIde:oEnvironDock := ::getADockWidget( nAreas, "dockEnvironments", "Compiler Environments", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oEnvironDock:oWidget, Qt_Horizontal )
::oEnvironDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "docEnvironments_visibilityChanged", p, ::oEnvironDock:oWidget ) } )
::oEnvironDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __docEnvironments_visibilityChanged__, p, ::oEnvironDock:oWidget ) } )
RETURN Self
@@ -1932,7 +1970,7 @@ METHOD IdeDocks:buildSkeletonWidget()
::oIde:oSkeltnDock := ::getADockWidget( nAreas, "dockSkeleton", "Code Skeletons", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oSkeltnDock:oWidget, Qt_Horizontal )
::oSkeltnDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "docSkeletons_visibilityChanged", p, ::oSkeltnDock:oWidget ) } )
::oSkeltnDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __docSkeletons_visibilityChanged__, p, ::oSkeltnDock:oWidget ) } )
RETURN Self
@@ -1944,7 +1982,7 @@ METHOD IdeDocks:buildSourceThumbnail()
oDock := ::getADockWidget( nAreas, "dockSourceThumbnail", "Source Thumbnail", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, oDock:oWidget, Qt_Horizontal )
oDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockSourceThumbnail_visibilityChanged", p, oDock:oWidget ) } )
oDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockSourceThumbnail_visibilityChanged__, p, oDock:oWidget ) } )
::oIde:oSourceThumbnailDock := oDock
RETURN Self
@@ -1956,7 +1994,7 @@ METHOD IdeDocks:buildQScintilla()
::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 ) } )
::oQScintillaDock:oWidget:connect( "visibilityChanged(bool)" , {|p| ::execEvent( __dockQScintilla_visibilityChanged__, p, ::oQScintillaDock:oWidget ) } )
RETURN Self
@@ -1967,7 +2005,7 @@ METHOD IdeDocks:buildReportsDesignerWidget()
::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 ) } )
::oReportsManagerDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockReportsManager_visibilityChanged__, p, ::oReportsManagerDock:oWidget ) } )
RETURN Self
@@ -1978,7 +2016,7 @@ METHOD IdeDocks:buildFormatWidget()
::oIde:oFormatDock := ::getADockWidget( nAreas, "dockFormat", "Format Source", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oFormatDock:oWidget, Qt_Horizontal )
::oFormatDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockFormat_visibilityChanged", p, ::oFormatDock:oWidget ) } )
::oFormatDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockFormat_visibilityChanged__, p, ::oFormatDock:oWidget ) } )
RETURN Self
@@ -1989,7 +2027,7 @@ METHOD IdeDocks:buildCuiEdWidget()
::oIde:oCuiEdDock := ::getADockWidget( nAreas, "dockCuiEd", "CUI Screen Designer", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oCuiEdDock:oWidget, Qt_Horizontal )
::oCuiEdDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockCuiEd_visibilityChanged", p, ::oCuiEdDock:oWidget ) } )
::oCuiEdDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockCuiEd_visibilityChanged__, p, ::oCuiEdDock:oWidget ) } )
RETURN Self
@@ -2000,7 +2038,7 @@ METHOD IdeDocks:buildUISrcDock()
::oIde:oUISrcDock := ::getADockWidget( nAreas, "dockUISrc", "UI Source Manager", QDockWidget_DockWidgetFloatable )
::oDlg:oWidget:addDockWidget( Qt_RightDockWidgetArea, ::oUISrcDock:oWidget, Qt_Horizontal )
::oUISrcDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( "dockUISrc_visibilityChanged", p, ::oUISrcDock:oWidget ) } )
::oUISrcDock:oWidget:connect( "visibilityChanged(bool)", {|p| ::execEvent( __dockUISrc_visibilityChanged__, p, ::oUISrcDock:oWidget ) } )
RETURN Self

View File

@@ -72,21 +72,21 @@
/*----------------------------------------------------------------------*/
#define __customContextMenuRequested 1
#define __textChanged 2
#define __copyAvailable 3
#define __modificationChanged 4
#define __redoAvailable 5
#define __selectionChanged 6
#define __undoAvailable 7
#define __updateRequest 8
#define __cursorPositionChanged 9
#define __customContextMenuRequested__ 1
#define __textChanged__ 2
#define __copyAvailable__ 3
#define __modificationChanged__ 4
#define __redoAvailable__ 5
#define __selectionChanged__ 6
#define __undoAvailable__ 7
#define __updateRequest__ 8
#define __cursorPositionChanged__ 9
#define __timerTimeout 23
#define __timerTimeout__ 23
#define __selectionMode_stream 1
#define __selectionMode_column 2
#define __selectionMode_line 3
#define __selectionMode_stream__ 1
#define __selectionMode_column__ 2
#define __selectionMode_line__ 3
/*----------------------------------------------------------------------*/
@@ -320,7 +320,7 @@ METHOD IdeEdit:create( oIde, oEditor, nMode )
::qTimer := QTimer()
::qTimer:setInterval( 2000 )
::qTimer:connect( "timeout()", {|| ::execEvent( __timerTimeout ) } )
::qTimer:connect( "timeout()", {|| ::execEvent( __timerTimeout__ ) } )
RETURN Self
@@ -378,17 +378,17 @@ METHOD IdeEdit:disconnectEditSignals()
METHOD IdeEdit:connectEditSignals()
::qEdit:connect( "customContextMenuRequested(QPoint)", {|p | ::execEvent( __customContextMenuRequested, p ) } )
::qEdit:connect( "selectionChanged()" , {|p | ::execEvent( __selectionChanged, p ) } )
::qEdit:connect( "cursorPositionChanged()" , {| | ::execEvent( __cursorPositionChanged, ) } )
::qEdit:connect( "copyAvailable(bool)" , {|p | ::execEvent( __copyAvailable, p ) } )
::qEdit:connect( "customContextMenuRequested(QPoint)", {|p | ::execEvent( __customContextMenuRequested__, p ) } )
::qEdit:connect( "selectionChanged()" , {|p | ::execEvent( __selectionChanged__, p ) } )
::qEdit:connect( "cursorPositionChanged()" , {| | ::execEvent( __cursorPositionChanged__ ) } )
::qEdit:connect( "copyAvailable(bool)" , {|p | ::execEvent( __copyAvailable__, p ) } )
#if 0
::qEdit:connect( "modificationChanged(bool)" , {|p | ::execEvent( __modificationChanged, p ) } )
::qEdit:connect( "textChanged()" , {| | ::execEvent( __textChanged ) } )
::qEdit:connect( "updateRequest(QRect,int)" , {|p,p1| ::execEvent( __updateRequest, p, p1 ) } )
::qEdit:connect( "redoAvailable(bool)" , {|p | ::execEvent( __redoAvailable, p ) } )
::qEdit:connect( "undoAvailable(bool)" , {|p | ::execEvent( __undoAvailable, p ) } )
::qEdit:connect( "modificationChanged(bool)" , {|p | ::execEvent( __modificationChanged__, p ) } )
::qEdit:connect( "textChanged()" , {| | ::execEvent( __textChanged__ ) } )
::qEdit:connect( "updateRequest(QRect,int)" , {|p,p1| ::execEvent( __updateRequest__, p, p1 ) } )
::qEdit:connect( "redoAvailable(bool)" , {|p | ::execEvent( __redoAvailable__, p ) } )
::qEdit:connect( "undoAvailable(bool)" , {|p | ::execEvent( __undoAvailable__, p ) } )
#endif
RETURN NIL
@@ -409,7 +409,7 @@ METHOD IdeEdit:execEvent( nMode, p, p1 )
SWITCH nMode
CASE __timerTimeout
CASE __timerTimeout__
IF empty( ::cProto )
::hidePrototype()
ELSE
@@ -417,12 +417,12 @@ METHOD IdeEdit:execEvent( nMode, p, p1 )
ENDIF
EXIT
CASE __cursorPositionChanged
CASE __cursorPositionChanged__
::oEditor:dispEditInfo( ::qEdit ) /* Is a MUST */
::markCurrentFunction() /* Optimized */
EXIT
CASE __selectionChanged
CASE __selectionChanged__
lOtherEdit := ! ( ::oEditor:qCqEdit == ::qEdit )
IF lOtherEdit
::oEditor:qCqEdit := ::qEdit
@@ -442,14 +442,14 @@ METHOD IdeEdit:execEvent( nMode, p, p1 )
::oUpDn:show( Self )
EXIT
CASE __copyAvailable
CASE __copyAvailable__
IF p .AND. ::lCopyWhenDblClicked
::qEdit:copy()
ENDIF
::lCopyWhenDblClicked := .f.
EXIT
CASE __customContextMenuRequested
CASE __customContextMenuRequested__
::oEM:aActions[ 17, 2 ]:setEnabled( !empty( qCursor:selectedText() ) )
n := ascan( ::oEditor:aEdits, {|o| o == Self } )
@@ -521,21 +521,21 @@ METHOD IdeEdit:execEvent( nMode, p, p1 )
EXIT
#if 0
CASE __textChanged
CASE __textChanged__
// HB_TRACE( HB_TR_ALWAYS, "textChanged()" )
// ::oEditor:setTabImage( ::qEdit )
// ::handlePreviousWord( ::lUpdatePrevWord )
EXIT
CASE __modificationChanged
CASE __modificationChanged__
::oEditor:setTabImage( ::qEdit )
EXIT
CASE __redoAvailable
CASE __redoAvailable__
//HB_TRACE( HB_TR_DEBUG, "redoAvailable(bool)", p )
EXIT
CASE __undoAvailable
CASE __undoAvailable__
//HB_TRACE( HB_TR_DEBUG, "undoAvailable(bool)", p )
EXIT
CASE __updateRequest
CASE __updateRequest__
EXIT
#endif
ENDSWITCH
@@ -883,7 +883,7 @@ METHOD IdeEdit:copyBlockContents()
cLine := strtran( cLine, chr( 13 ) )
cLine := strtran( cLine, chr( 10 ) )
IF nMode == __selectionMode_stream
IF nMode == __selectionMode_stream__
IF aCord[ 1 ] > aCord[ 3 ] // Selection - bottom to top
IF i == nT .AND. i == nB
cLine := substr( cLine, min( aCord[ 2 ], aCord[ 4 ] ) + 1, nW )
@@ -902,10 +902,10 @@ METHOD IdeEdit:copyBlockContents()
ENDIF
ENDIF
ELSEIF nMode == __selectionMode_column
ELSEIF nMode == __selectionMode_column__
cLine := pad( substr( cLine, nL + 1, nW ), nW )
ELSEIF nMode == __selectionMode_line
ELSEIF nMode == __selectionMode_line__
// Nothing to do, complete line is already pulled
ENDIF
@@ -949,14 +949,14 @@ METHOD IdeEdit:pasteBlockContents()
ENDIF
ENDIF
nPasteMode := iif( empty( nPasteMode ), __selectionMode_stream, nPasteMode )
nPasteMode := iif( empty( nPasteMode ), __selectionMode_stream__, nPasteMode )
qCursor := ::qEdit:textCursor()
nCol := qCursor:columnNumber()
qCursor:beginEditBlock()
//
SWITCH nPasteMode
CASE __selectionMode_column
CASE __selectionMode_column__
FOR i := 1 TO Len( aCopy )
qCursor:insertText( aCopy[ i ] )
IF i < Len( aCopy )
@@ -972,7 +972,7 @@ METHOD IdeEdit:pasteBlockContents()
ENDIF
NEXT
EXIT
CASE __selectionMode_stream
CASE __selectionMode_stream__
FOR i := 1 TO Len( aCopy )
qCursor:insertText( aCopy[ i ] )
IF i < Len( aCopy )
@@ -980,7 +980,7 @@ METHOD IdeEdit:pasteBlockContents()
ENDIF
NEXT
EXIT
CASE __selectionMode_line
CASE __selectionMode_line__
qCursor:movePosition( QTextCursor_StartOfLine, QTextCursor_MoveAnchor )
FOR i := 1 TO Len( aCopy )
qCursor:insertText( aCopy[ i ] )
@@ -1059,7 +1059,7 @@ METHOD IdeEdit:deleteBlockContents( k )
qCursor:beginEditBlock()
IF k == Qt_Key_Backspace
IF nSelMode == __selectionMode_column
IF nSelMode == __selectionMode_column__
FOR i := nT TO nB
cLine := ::getLine( i + 1 )
cLine := pad( substr( cLine, 1, nL - 1 ), nL - 1 ) + substr( cLine, nL + 1 )
@@ -1069,7 +1069,7 @@ METHOD IdeEdit:deleteBlockContents( k )
ENDIF
ELSE
IF k == Qt_Key_Delete .OR. k == Qt_Key_X
IF nSelMode == __selectionMode_column
IF nSelMode == __selectionMode_column__
FOR i := nT TO nB
cLine := ::getLine( i + 1 )
cLine := pad( substr( cLine, 1, nL ), nL ) + substr( cLine, nR + 1 )
@@ -1077,7 +1077,7 @@ METHOD IdeEdit:deleteBlockContents( k )
NEXT
hbide_qPositionCursor( qCursor, nT, nL )
ELSEIF nSelMode == __selectionMode_stream
ELSEIF nSelMode == __selectionMode_stream__
hbide_qPositionCursor( qCursor, nT, nL )
qCursor:movePosition( QTextCursor_Down , QTextCursor_KeepAnchor, nB - nT )
qCursor:movePosition( QTextCursor_StartOfLine, QTextCursor_KeepAnchor )
@@ -1085,7 +1085,7 @@ METHOD IdeEdit:deleteBlockContents( k )
qCursor:removeSelectedText()
::qEdit:hbSetSelectionInfo( { -1, -1, -1, -1, 1 } )
ELSEIF nSelMode == __selectionMode_line
ELSEIF nSelMode == __selectionMode_line__
hbide_qPositionCursor( qCursor, nT, nL )
qCursor:movePosition( QTextCursor_Down , QTextCursor_KeepAnchor, nB - nT + 1 )
qCursor:movePosition( QTextCursor_StartOfLine, QTextCursor_KeepAnchor )
@@ -1125,14 +1125,14 @@ METHOD IdeEdit:blockComment()
cLine := ::getLine( i + 1 )
DO CASE
CASE nMode == __selectionMode_stream .OR. nMode == __selectionMode_line
CASE nMode == __selectionMode_stream__ .OR. nMode == __selectionMode_line__
IF substr( cLine, 1, nLen ) == cComment
cLine := substr( cLine, nLen + 1 )
ELSE
cLine := cComment + cLine
ENDIF
CASE nMode == __selectionMode_column
CASE nMode == __selectionMode_column__
IF substr( cLine, nL + 1, nLen ) == cComment
cLine := pad( substr( cLine, 1, nL ), nL ) + substr( cLine, nL + nLen + 1 )
ELSE
@@ -1170,14 +1170,14 @@ METHOD IdeEdit:streamComment()
cLine := ::getLine( i + 1 )
DO CASE
CASE nMode == __selectionMode_stream
CASE nMode == __selectionMode_stream__
IF i == nT
cLine := substr( cLine, 1, nL ) + "/* " + substr( cLine, nL + 1 )
ELSEIF i == nB
cLine := substr( cLine, 1, nR ) + " */" + substr( cLine, nR + 1 )
ENDIF
CASE nMode == __selectionMode_line
CASE nMode == __selectionMode_line__
IF i == nT
cLine := "/* " + cLine
ELSEIF i == nB
@@ -1215,7 +1215,7 @@ METHOD IdeEdit:blockIndent( nDirctn )
cLine := ::getLine( i + 1 )
DO CASE
CASE nMode == __selectionMode_stream .OR. nMode == __selectionMode_line
CASE nMode == __selectionMode_stream__ .OR. nMode == __selectionMode_line__
IF nDirctn == -1
IF left( cLine, 1 ) == " "
cLine := substr( cLine, 2 )
@@ -1224,7 +1224,7 @@ METHOD IdeEdit:blockIndent( nDirctn )
cLine := " " + cLine
ENDIF
CASE nMode == __selectionMode_column
CASE nMode == __selectionMode_column__
cLineSel := pad( substr( cLine, nL + 1, nW ), nW )
IF nDirctn == -1
IF left( cLineSel, 1 ) == " "
@@ -1266,7 +1266,7 @@ METHOD IdeEdit:blockConvert( cMode )
cLine := ::getLine( i + 1 )
DO CASE
CASE nMode == __selectionMode_stream
CASE nMode == __selectionMode_stream__
IF nT == nB
cLine := substr( cLine, 1, nL ) + hbide_convertALine( substr( cLine, nL + 1, nW ), cMode ) + substr( cLine, nL + 1 + nW )
ELSE
@@ -1279,10 +1279,10 @@ METHOD IdeEdit:blockConvert( cMode )
ENDIF
ENDIF
CASE nMode == __selectionMode_column
CASE nMode == __selectionMode_column__
cLine := pad( substr( cLine, 1, nL ), nL ) + hbide_convertALine( pad( substr( cLine, nL + 1, nW ), nW ), cMode ) + substr( cLine, nR + 1 )
CASE nMode == __selectionMode_line
CASE nMode == __selectionMode_line__
cLine := hbide_convertALine( cLine, cMode )
ENDCASE
@@ -1310,7 +1310,7 @@ METHOD IdeEdit:getSelectedText()
FOR i := nT TO nB
cLine := ::getLine( i + 1 )
IF nMode == __selectionMode_stream
IF nMode == __selectionMode_stream__
IF i == nT .AND. i == nB
cLine := substr( cLine, nL + 1, nR - nL )
ELSEIF i == nT
@@ -1319,10 +1319,10 @@ METHOD IdeEdit:getSelectedText()
cLine := substr( cLine, 1, nR + 1 )
ENDIF
ELSEIF nMode == __selectionMode_column
ELSEIF nMode == __selectionMode_column__
cLine := pad( substr( cLine, nL + 1, nW ), nW )
ELSEIF nMode == __selectionMode_line
ELSEIF nMode == __selectionMode_line__
// Nothing to do, complete line is already pulled
ENDIF

View File

@@ -75,6 +75,13 @@
#define EDT_LINNO_WIDTH 50
#define __qcompleter_activated__ 2001
#define __qFldsCompleter_activated__ 2002
#define __qDocModificationChanged__ 2003
#define __qDocContentsChange__ 2004
#define __qTimeSave_timeout__ 2005
#define __qTab_contextMenu__ 2006
/*----------------------------------------------------------------------*/
CLASS IdeEditsManager INHERIT IdeObject
@@ -93,7 +100,7 @@ CLASS IdeEditsManager INHERIT IdeObject
METHOD destroy()
METHOD removeSourceInTree( cSourceFile )
METHOD addSourceInTree( cSourceFile, cView )
METHOD execEvent( cEvent, p )
METHOD execEvent( nEvent, p )
METHOD buildEditor( cSourceFile, nPos, nHPos, nVPos, cTheme, cView, aBookMarks )
METHOD getTabBySource( cSource )
METHOD getTabCurrent()
@@ -270,7 +277,7 @@ METHOD IdeEditsManager:create( oIde )
::oIde:qCompModel := QStringListModel()
::oIde:qCompleter := QCompleter()
//
::qCompleter:connect( "activated(QString)", {|p| ::execEvent( "qcompleter_activated", p ) } )
::qCompleter:connect( "activated(QString)", {|p| ::execEvent( __qcompleter_activated__, p ) } )
/* Define fields completer */
::qFldsStrList := QStringList()
@@ -361,7 +368,7 @@ METHOD IdeEditsManager:updateCompleter()
::qCompleter:popup():setAlternatingRowColors( .t. )
::qCompleter:popup():setFont( QFont( "Courier New", 8 ) )
::qCompleter:connect( "activated(QString)", {|p| ::execEvent( "qcompleter_activated", p ) } )
::qCompleter:connect( "activated(QString)", {|p| ::execEvent( __qcompleter_activated__, p ) } )
RETURN Self
@@ -418,25 +425,25 @@ METHOD IdeEditsManager:addSourceInTree( cSourceFile, cView )
/*----------------------------------------------------------------------*/
METHOD IdeEditsManager:execEvent( cEvent, p )
METHOD IdeEditsManager:execEvent( nEvent, p )
LOCAL oEdit
IF ::lQuitting
RETURN Self
ENDIF
DO CASE
CASE cEvent == "qFldsCompleter_activated"
SWITCH nEvent
CASE __qFldsCompleter_activated__
IF !empty( oEdit := ::getEditObjectCurrent() )
oEdit:completeFieldName( p )
ENDIF
CASE cEvent == "qcompleter_activated"
EXIT
CASE __qcompleter_activated__
IF !empty( oEdit := ::getEditObjectCurrent() )
oEdit:completeCode( p )
ENDIF
ENDCASE
EXIT
ENDSWITCH
RETURN Nil
@@ -1267,7 +1274,7 @@ CLASS IdeEditor INHERIT IdeObject
METHOD split( nOrient, oEditP )
METHOD relay( oEdit )
METHOD destroy()
METHOD execEvent( cEvent, p, p1, p2 )
METHOD execEvent( nEvent, p, p1, p2 )
METHOD setDocumentProperties()
METHOD activateTab( mp1, mp2, oXbp )
METHOD buildTabPage( cSource )
@@ -1387,8 +1394,8 @@ METHOD IdeEditor:create( oIde, cSourceFile, nPos, nHPos, nVPos, cTheme, cView, a
::qEdit:setTextInteractionFlags( Qt_TextSelectableByMouse + Qt_TextSelectableByKeyboard )
ENDIF
::qDocument:connect( "modificationChanged(bool)" , {|p| ::execEvent( "qDocModificationChanged", p ) } )
::qDocument:connect( "contentsChange(int,int,int)", {|p,p1,p2| ::execEvent( "qDocContentsChange", p, p1, p2 ) } )
::qDocument:connect( "modificationChanged(bool)" , {|p| ::execEvent( __qDocModificationChanged__, p ) } )
::qDocument:connect( "contentsChange(int,int,int)", {|p,p1,p2| ::execEvent( __qDocContentsChange__, p, p1, p2 ) } )
::qDocument:setModified( .f. )
@@ -1650,7 +1657,7 @@ METHOD IdeEditor:setDocumentProperties()
IF ::cType $ "PRG,C,CPP,H,CH,HBS"
::qTimerSave := QTimer()
::qTimerSave:setInterval( max( 30000, ::oINI:nTmpBkpPrd * 1000 ) )
::qTimerSave:connect( "timeout()", {|| ::execEvent( "qTimeSave_timeout" ) } )
::qTimerSave:connect( "timeout()", {|| ::execEvent( __qTimeSave_timeout__ ) } )
::qTimerSave:start()
ENDIF
::oUpDn:show()
@@ -1673,37 +1680,32 @@ METHOD IdeEditor:setDocumentProperties()
/*----------------------------------------------------------------------*/
METHOD IdeEditor:execEvent( cEvent, p, p1, p2 )
LOCAL cFileTemp, aPops := {}
METHOD IdeEditor:execEvent( nEvent, p, p1, p2 )
LOCAL cFileTemp
IF ::lQuitting
RETURN Self
ENDIF
SWITCH cEvent
SWITCH nEvent
CASE "qDocModificationChanged"
CASE __qDocModificationChanged__
::setTabImage()
EXIT
CASE "qDocContentsChange"
CASE __qDocContentsChange__
IF p1 + p2 > 0
::qCoEdit:reformatLine( p, p1, p2 )
ENDIF
EXIT
CASE "qTimeSave_timeout"
CASE __qTimeSave_timeout__
IF ::qDocument:isModified()
cFileTemp := hbide_pathToOSPath( ::cPath + ::cFile + ::cExt + ".tmp" )
hb_memowrit( cFileTemp, ::qEdit:toPlainText() )
ENDIF
EXIT
CASE "qTab_contextMenu"
HB_TRACE( HB_TR_DEBUG, "IdeEditor:execEvent( cMode, p )" )
aadd( aPops, { "Close", {|| MsgBox( "closing" ) } } )
hbide_ExecPopup( aPops, p, ::oTab:oWidget )
ENDSWITCH
RETURN Self

View File

@@ -69,6 +69,34 @@
#include "common.ch"
#include "hbclass.ch"
/*----------------------------------------------------------------------*/
#define __frameSrc_dragMoveEvent__ 2001
#define __frameSrc_dragEnterEvent__ 2002
#define __frameSrc_dropEvent__ 2003
#define __treeProps_itemSelectionChanged__ 2004
#define __treeProps_itemCollapsed__ 2005
#define __treeProps_itemExpanded__ 2006
#define __treeSrc_itemExpanded__ 2007
#define __treeSrc_itemCollapsed__ 2008
#define __qTBtn_clicked__ 2009
#define __qSBtn_clicked__ 2010
#define __toolSrcDel_clicked__ 2011
#define __toolSrcMin_clicked__ 2012
#define __toolSrcMax_clicked__ 2013
#define __btnSwMin_clicked__ 2014
#define __btnSwMax_clicked__ 2015
#define __toolSrcGet_clicked__ 2016
#define __treeSrc_contextMenuRequested__ 2017
#define __treeProps_contextMenuRequested__ 2018
#define __treeSrc_doubleClicked__ 2019
#define __btnSw_clicked__ 2020
#define __treeProps_doubleClicked__ 2021
#define __btnNew_clicked__ 2022
#define __btnSave_clicked__ 2023
#define __btnNext_clicked__ 2024
#define __btnBack_clicked__ 2025
/*----------------------------------------------------------------------*/
//
// Class IdeProjectWizard
@@ -86,7 +114,7 @@ CREATE CLASS IdeProjectWizard INHERIT IdeObject
METHOD create( oIde )
METHOD destroy()
METHOD show()
METHOD execEvent( xEvent, p, p1 )
METHOD execEvent( nEvent, p, p1 )
METHOD loadDefaults()
METHOD saveProject()
METHOD clear()
@@ -211,25 +239,25 @@ METHOD IdeProjectWizard:show()
::oUI := ui_projectWizard():new( ::oIde:oDlg:oWidget )
::oUI:oWidget:connect( QEvent_Close, {|| ::oUI:oWidget:done( 0 ) } )
::oUI:btnSwAZ : connect( "clicked()", {|| ::execEvent( "btnSw_clicked", "az" ) } )
::oUI:btnSwZA : connect( "clicked()", {|| ::execEvent( "btnSw_clicked", "za" ) } )
::oUI:btnSwUpper : connect( "clicked()", {|| ::execEvent( "btnSw_clicked", "upper" ) } )
::oUI:btnSwLower : connect( "clicked()", {|| ::execEvent( "btnSw_clicked", "lower" ) } )
::oUI:btnSwDelete : connect( "clicked()", {|| ::execEvent( "btnSw_clicked", "delete") } )
::oUI:btnSwAZ : connect( "clicked()", {|| ::execEvent( __btnSw_clicked__, "az" ) } )
::oUI:btnSwZA : connect( "clicked()", {|| ::execEvent( __btnSw_clicked__, "za" ) } )
::oUI:btnSwUpper : connect( "clicked()", {|| ::execEvent( __btnSw_clicked__, "upper" ) } )
::oUI:btnSwLower : connect( "clicked()", {|| ::execEvent( __btnSw_clicked__, "lower" ) } )
::oUI:btnSwDelete : connect( "clicked()", {|| ::execEvent( __btnSw_clicked__, "delete") } )
::oUI:btnNext : connect( "clicked()", {|| ::execEvent( "btnNext_clicked" ) } )
::oUI:btnBack : connect( "clicked()", {|| ::execEvent( "btnBack_clicked" ) } )
::oUI:btnNew : connect( "clicked()", {|| ::execEvent( "btnNew_clicked" ) } )
::oUI:btnSave : connect( "clicked()", {|| ::execEvent( "btnSave_clicked" ) } )
::oUI:btnNext : connect( "clicked()", {|| ::execEvent( __btnNext_clicked__ ) } )
::oUI:btnBack : connect( "clicked()", {|| ::execEvent( __btnBack_clicked__ ) } )
::oUI:btnNew : connect( "clicked()", {|| ::execEvent( __btnNew_clicked__ ) } )
::oUI:btnSave : connect( "clicked()", {|| ::execEvent( __btnSave_clicked__ ) } )
::oUI:btnCancel : connect( "clicked()", {|| ::oUI:oWidget:done( 0 ) } )
::oUI:btnSwMax : connect( "clicked()", {|| ::execEvent( "btnSwMax_clicked" ) } )
::oUI:btnSwMin : connect( "clicked()", {|| ::execEvent( "btnSwMin_clicked" ) } )
::oUI:btnSwMax : connect( "clicked()", {|| ::execEvent( __btnSwMax_clicked__ ) } )
::oUI:btnSwMin : connect( "clicked()", {|| ::execEvent( __btnSwMin_clicked__ ) } )
::oUI:toolSrcGet : connect( "clicked()", {|| ::execEvent( "toolSrcGet_clicked" ) } )
::oUI:toolSrcMax : connect( "clicked()", {|| ::execEvent( "toolSrcMax_clicked" ) } )
::oUI:toolSrcMin : connect( "clicked()", {|| ::execEvent( "toolSrcMin_clicked" ) } )
::oUI:toolSrcDel : connect( "clicked()", {|| ::execEvent( "toolSrcDel_clicked" ) } )
::oUI:toolSrcGet : connect( "clicked()", {|| ::execEvent( __toolSrcGet_clicked__ ) } )
::oUI:toolSrcMax : connect( "clicked()", {|| ::execEvent( __toolSrcMax_clicked__ ) } )
::oUI:toolSrcMin : connect( "clicked()", {|| ::execEvent( __toolSrcMin_clicked__ ) } )
::oUI:toolSrcDel : connect( "clicked()", {|| ::execEvent( __toolSrcDel_clicked__ ) } )
::oUI:comboProjType : addItem( "Executable" )
::oUI:comboProjType : addItem( "Library" )
@@ -257,11 +285,11 @@ METHOD IdeProjectWizard:show()
::oUI:treeProps:setDragDropMode( QAbstractItemView_InternalMove )
::oUI:treeProps:setRootIsDecorated( .F. ) /* Important to present as a list */
::oUI:treeProps:header():resizeSection( 0, 237 )
::oUI:treeProps:connect( "itemCollapsed(QTreeWidgetItem*)" , {|p | ::execEvent( "treeProps_itemCollapsed" , p ) } )
::oUI:treeProps:connect( "itemExpanded(QTreeWidgetItem*)" , {|p | ::execEvent( "treeProps_itemExpanded" , p ) } )
::oUI:treeProps:connect( "customContextMenuRequested(QPoint)" , {|p | ::execEvent( "treeProps_contextMenuRequested", p ) } )
::oUI:treeProps:connect( "itemDoubleClicked(QTreeWidgetItem*,int)", {|p,p1| ::execEvent( "treeProps_doubleClicked" , p, p1 ) } )
::oUI:treeProps:connect( "itemSelectionChanged()" , {| | ::execEvent( "treeProps_itemSelectionChanged" ) } )
::oUI:treeProps:connect( "itemCollapsed(QTreeWidgetItem*)" , {|p | ::execEvent( __treeProps_itemCollapsed__ , p ) } )
::oUI:treeProps:connect( "itemExpanded(QTreeWidgetItem*)" , {|p | ::execEvent( __treeProps_itemExpanded__ , p ) } )
::oUI:treeProps:connect( "customContextMenuRequested(QPoint)" , {|p | ::execEvent( __treeProps_contextMenuRequested__, p ) } )
::oUI:treeProps:connect( "itemDoubleClicked(QTreeWidgetItem*,int)", {|p,p1| ::execEvent( __treeProps_doubleClicked__ , p, p1 ) } )
::oUI:treeProps:connect( "itemSelectionChanged()" , {| | ::execEvent( __treeProps_itemSelectionChanged__ ) } )
oBrush := QBrush( QColor( 248, 248, 248 ) )
@@ -280,10 +308,10 @@ METHOD IdeProjectWizard:show()
::oUI:treeSrc:setDragDropMode( QAbstractItemView_InternalMove )
::oUI:treeSrc:setRootIsDecorated( .F. ) /* Important to present as a list */
::oUI:treeSrc:header():resizeSection( 0, 393 )
::oUI:treeSrc:connect( "itemCollapsed(QTreeWidgetItem*)" , {|p | ::execEvent( "treeSrc_itemCollapsed" , p ) } )
::oUI:treeSrc:connect( "itemExpanded(QTreeWidgetItem*)" , {|p | ::execEvent( "treeSrc_itemExpanded" , p ) } )
::oUI:treeSrc:connect( "customContextMenuRequested(QPoint)" , {|p | ::execEvent( "treeSrc_contextMenuRequested", p ) } )
::oUI:treeSrc:connect( "itemDoubleClicked(QTreeWidgetItem*,int)", {|p,p1| ::execEvent( "treeSrc_doubleClicked" , p, p1 ) } )
::oUI:treeSrc:connect( "itemCollapsed(QTreeWidgetItem*)" , {|p | ::execEvent( __treeSrc_itemCollapsed__ , p ) } )
::oUI:treeSrc:connect( "itemExpanded(QTreeWidgetItem*)" , {|p | ::execEvent( __treeSrc_itemExpanded__ , p ) } )
::oUI:treeSrc:connect( "customContextMenuRequested(QPoint)" , {|p | ::execEvent( __treeSrc_contextMenuRequested__, p ) } )
::oUI:treeSrc:connect( "itemDoubleClicked(QTreeWidgetItem*,int)", {|p,p1| ::execEvent( __treeSrc_doubleClicked__ , p, p1 ) } )
aadd( ::aItmSrc, { NIL, "PRG Files" , QBrush( QColor( 184, 184, 184 ) ), oBrush, ".prg", NIL, "background-color: rgb(184,184,184);" } )
aadd( ::aItmSrc, { NIL, "C Files" , QBrush( QColor( 176, 176, 176 ) ), oBrush, ".c" , NIL, "background-color: rgb(176,176,176);" } )
@@ -297,9 +325,9 @@ METHOD IdeProjectWizard:show()
::clear()
::oUI:frameSrc:setAcceptDrops( .t. )
::oUI:frameSrc:connect( QEvent_DragEnter, {|p| ::execEvent( "frameSrc_dragEnterEvent", p ) } )
::oUI:frameSrc:connect( QEvent_DragMove , {|p| ::execEvent( "frameSrc_dragMoveEvent" , p ) } )
::oUI:frameSrc:connect( QEvent_Drop , {|p| ::execEvent( "frameSrc_dropEvent" , p ) } )
::oUI:frameSrc:connect( QEvent_DragEnter, {|p| ::execEvent( __frameSrc_dragEnterEvent__, p ) } )
::oUI:frameSrc:connect( QEvent_DragMove , {|p| ::execEvent( __frameSrc_dragMoveEvent__ , p ) } )
::oUI:frameSrc:connect( QEvent_Drop , {|p| ::execEvent( __frameSrc_dropEvent__ , p ) } )
ENDIF
@@ -312,19 +340,19 @@ METHOD IdeProjectWizard:show()
/*----------------------------------------------------------------------*/
METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
METHOD IdeProjectWizard:execEvent( nEvent, p, p1 )
LOCAL cText, qItm, n, i, oFont, aMenu, aFiles, aFilt, cFile, lTop, nChildren, qChild
LOCAL qMime, qUrl, qList, aItm
HB_SYMBOL_UNUSED( p1 )
SWITCH xEvent
SWITCH nEvent
CASE "frameSrc_dragMoveEvent"
CASE "frameSrc_dragEnterEvent"
CASE __frameSrc_dragMoveEvent__
CASE __frameSrc_dragEnterEvent__
p:acceptProposedAction()
EXIT
CASE "frameSrc_dropEvent"
CASE __frameSrc_dropEvent__
qMime := p:mimeData()
IF qMime:hasUrls()
qList := qMime:urls()
@@ -336,7 +364,7 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
p:accept()
ENDIF
EXIT
CASE "treeProps_itemSelectionChanged"
CASE __treeProps_itemSelectionChanged__
IF ! empty( qItm := ::oUI:treeProps:currentItem() )
lTop := ::oUI:treeProps:indexOfTopLevelItem( qItm ) >= 0
::oUI:btnSwPlus:setEnabled( lTop )
@@ -344,26 +372,26 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
::oUI:btnSwZA:setEnabled( lTop )
ENDIF
EXIT
CASE "treeProps_itemCollapsed"
CASE "treeProps_itemExpanded"
CASE __treeProps_itemCollapsed__
CASE __treeProps_itemExpanded__
IF ( n := ::oUI:treeProps:indexOfTopLevelItem( p ) ) >= 0
n++
IF hb_isObject( ::aItmProps[ n, 6 ] )
::aItmProps[ n, 6 ]:setIcon( QIcon( hbide_image( iif( xEvent == "treeProps_itemExpanded", "collapse_m", "expand_m" ) ) ) )
::aItmProps[ n, 6 ]:setIcon( QIcon( hbide_image( iif( nEvent == __treeProps_itemExpanded__, "collapse_m", "expand_m" ) ) ) )
ENDIF
p:setSelected( .t. )
ENDIF
EXIT
CASE "treeSrc_itemExpanded"
CASE "treeSrc_itemCollapsed"
CASE __treeSrc_itemExpanded__
CASE __treeSrc_itemCollapsed__
IF ( n := ::oUI:treeSrc:indexOfTopLevelItem( p ) ) >= 0
IF hb_isObject( ::aItmSrc[ n+1,6 ] )
::aItmSrc[ n+1,6 ]:setIcon( QIcon( hbide_image( iif( xEvent == "treeSrc_itemCollapsed", "expand_m", "collapse_m" ) ) ) )
::aItmSrc[ n+1,6 ]:setIcon( QIcon( hbide_image( iif( nEvent == __treeSrc_itemCollapsed__, "expand_m", "collapse_m" ) ) ) )
ENDIF
p:setSelected( .t. )
ENDIF
EXIT
CASE "qTBtn_clicked"
CASE __qTBtn_clicked__
IF ::aItmProps[ p,1 ]:isExpanded()
::aItmProps[ p,1 ]:setExpanded( .f. )
ELSE
@@ -376,7 +404,7 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
ENDIF
::aItmProps[ p,1 ]:setSelected( .t. )
EXIT
CASE "qSBtn_clicked"
CASE __qSBtn_clicked__
IF ::aItmSrc[ p,1 ]:isExpanded()
::aItmSrc[ p,1 ]:setExpanded( .f. )
ELSE
@@ -389,7 +417,7 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
ENDIF
::aItmSrc[ p,1 ]:setSelected( .t. )
EXIT
CASE "toolSrcDel_clicked"
CASE __toolSrcDel_clicked__
IF hbide_getYesNo( "Do you really want to delete all sources ?", "Dangerous Action", "Confirmation Required!", ::oUI:oWidget )
FOR EACH aItm IN ::aItmSrc
IF ! empty( aItm[ 1 ] )
@@ -401,35 +429,35 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
NEXT
ENDIF
EXIT
CASE "toolSrcMin_clicked"
CASE __toolSrcMin_clicked__
FOR EACH aItm IN ::aItmSrc
IF ! empty( aItm[ 1 ] )
aItm[ 1 ]:setExpanded( .F. )
ENDIF
NEXT
EXIT
CASE "toolSrcMax_clicked"
CASE __toolSrcMax_clicked__
FOR EACH aItm IN ::aItmSrc
IF ! empty( aItm[ 1 ] )
aItm[ 1 ]:setExpanded( .T. )
ENDIF
NEXT
EXIT
CASE "btnSwMin_clicked"
CASE __btnSwMin_clicked__
FOR EACH aItm IN ::aItmProps
IF ! empty( aItm[ 1 ] )
aItm[ 1 ]:setExpanded( .F. )
ENDIF
NEXT
EXIT
CASE "btnSwMax_clicked"
CASE __btnSwMax_clicked__
FOR EACH aItm IN ::aItmProps
IF ! empty( aItm[ 1 ] )
aItm[ 1 ]:setExpanded( .T. )
ENDIF
NEXT
EXIT
CASE "toolSrcGet_clicked"
CASE __toolSrcGet_clicked__
aFilt := {}
aadd( aFilt, { "Program Files", "*.prg" } )
aadd( aFilt, { "C Files" , "*.c" } )
@@ -447,7 +475,7 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
NEXT
ENDIF
EXIT
CASE "treeSrc_contextMenuRequested"
CASE __treeSrc_contextMenuRequested__
IF ! empty( qItm := ::oUI:treeSrc:itemAt( p ) )
cText := substr( qItm:text( 0 ), 8 )
aMenu := {}
@@ -473,7 +501,7 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "treeProps_contextMenuRequested"
CASE __treeProps_contextMenuRequested__
IF ! empty( qItm := ::oUI:treeProps:itemAt( p ) )
cText := substr( qItm:text( 0 ), 8 )
aMenu := {}
@@ -499,9 +527,9 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "treeSrc_doubleClicked"
CASE __treeSrc_doubleClicked__
EXIT
CASE "btnSw_clicked"
CASE __btnSw_clicked__
IF empty( qItm := ::oUI:treeProps:currentItem() )
EXIT
ENDIF
@@ -535,12 +563,12 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
ENDSWITCH
ENDIF
EXIT
CASE "treeProps_doubleClicked"
CASE __treeProps_doubleClicked__
IF ::oUI:treeProps:indexOfTopLevelItem( p ) >= 0
::addTreeItem( p )
ENDIF
EXIT
CASE "btnNew_clicked"
CASE __btnNew_clicked__
IF ::lEdited .AND. hbide_getYesNo( "Create new without saving current ?", "Current project has not been saved !", "Please Confirm", ::oUI:oWidget )
::clear()
IF ! ::loadDefaults()
@@ -548,15 +576,15 @@ METHOD IdeProjectWizard:execEvent( xEvent, p, p1 )
ENDIF
ENDIF
EXIT
CASE "btnSave_clicked"
CASE __btnSave_clicked__
::saveProject()
EXIT
CASE "btnNext_clicked"
CASE __btnNext_clicked__
IF ::oUI:stackedWidget:currentIndex() == 0
::oUI:stackedWidget:setcurrentIndex( 1 )
ENDIF
EXIT
CASE "btnBack_clicked"
CASE __btnBack_clicked__
IF ::oUI:stackedWidget:currentIndex() == 1
::oUI:stackedWidget:setcurrentIndex( 0 )
ENDIF

View File

@@ -77,6 +77,15 @@
#define PNL_OBJECTS 2
#define PNL_TYPE 3
/*----------------------------------------------------------------------*/
#define __dockUIScr_dragEnterEvent__ 2001
#define __dockUISrc_dropEvent__ 2002
#define __mdiArea_subWindowActivated__ 2003
#define __buttonBuild_clicked__ 2004
#define __buttonOpen_clicked__ 2005
#define __child_object__ 2006
/*----------------------------------------------------------------------*/
// CLASS UISrcData
/*----------------------------------------------------------------------*/
@@ -151,7 +160,7 @@ CLASS IdeUISrcManager INHERIT IdeObject
METHOD create( oIde )
METHOD show()
METHOD destroy()
METHOD execEvent( cEvent, p, p1 )
METHOD execEvent( nEvent, p, p1 )
METHOD buildToolbar()
METHOD buildToolButton( qToolbar, aBtn )
METHOD buildStatusPanels()
@@ -212,8 +221,8 @@ METHOD IdeUISrcManager:show()
qDock := ::oIde:oUiSrcDock:oWidget
qDock:setAcceptDrops( .t. )
qDock:connect( QEvent_DragEnter, {|p| ::execEvent( "dockUIScr_dragEnterEvent", p ) } )
qDock:connect( QEvent_Drop , {|p| ::execEvent( "dockUISrc_dropEvent" , p ) } )
qDock:connect( QEvent_DragEnter, {|p| ::execEvent( __dockUIScr_dragEnterEvent__, p ) } )
qDock:connect( QEvent_Drop , {|p| ::execEvent( __dockUISrc_dropEvent__ , p ) } )
::qWidget := QWidget()
@@ -245,7 +254,7 @@ METHOD IdeUISrcManager:show()
::qMdiArea:setVerticalScrollBarPolicy( Qt_ScrollBarAsNeeded )
::qMdiArea:setHorizontalScrollBarPolicy( Qt_ScrollBarAsNeeded )
::qMdiArea:setViewMode( QMdiArea_SubWindowView )
::qMdiArea:connect( "subWindowActivated(QMdiSubWindow*)", {|p| ::execEvent( "mdiArea_subWindowActivated", p ) } )
::qMdiArea:connect( "subWindowActivated(QMdiSubWindow*)", {|p| ::execEvent( __mdiArea_subWindowActivated__, p ) } )
::qSplitter:addWidget( ::qMdiArea )
@@ -294,25 +303,25 @@ METHOD IdeUISrcManager:destroy()
/*----------------------------------------------------------------------*/
METHOD IdeUISrcManager:execEvent( cEvent, p, p1 )
METHOD IdeUISrcManager:execEvent( nEvent, p, p1 )
LOCAL qList, qMime, qUrl, cExt, cUI
SWITCH cEvent
CASE "buttonBuild_clicked"
SWITCH nEvent
CASE __buttonBuild_clicked__
::buildSource()
EXIT
CASE "buttonOpen_clicked"
CASE __buttonOpen_clicked__
IF ! empty( cUI := hbide_fetchAFile( ::oIde:oDlg, "Select a .UI", { { "Qt Designer .UI File", "*.ui" } }, ::oIde:cWrkFolderLast ) )
::buildUiWidget( cUI )
ENDIF
EXIT
CASE "dockUIScr_dragEnterEvent"
CASE __dockUIScr_dragEnterEvent__
p:acceptProposedAction()
EXIT
CASE "dockUISrc_dropEvent"
CASE __dockUISrc_dropEvent__
qMime := p:mimeData()
IF qMime:hasUrls()
qList := qMime:urls()
@@ -324,7 +333,7 @@ METHOD IdeUISrcManager:execEvent( cEvent, p, p1 )
ENDIF
EXIT
CASE "child_object"
CASE __child_object__
IF empty( ::qCurrent ) .OR. ! ( ::qCurrent == p )
::saveMethod()
@@ -339,7 +348,7 @@ METHOD IdeUISrcManager:execEvent( cEvent, p, p1 )
ENDIF
EXIT
CASE "mdiArea_subWindowActivated"
CASE __mdiArea_subWindowActivated__
EXIT
ENDSWITCH
@@ -615,7 +624,7 @@ METHOD IdeUISrcManager:reloadIfOpen( cUI )
IF ! empty( cObjName )
IF __objHasMsg( ::qU, cObjName )
::execEvent( "child_object", ::qU:&cObjName., cObjName )
::execEvent( __child_object__, ::qU:&cObjName., cObjName )
ENDIF
IF ! empty( cAction )
qList := ::qTree:findItems( cAction, Qt_MatchExactly, 0 )
@@ -846,9 +855,9 @@ METHOD IdeUISrcManager:buildToolbar()
::qToolbar:setIconSize( QSize( 16,16 ) )
::qToolbar:setStyleSheet( GetStyleSheet( "QToolBar", ::nAnimantionMode ) )
::buildToolButton( ::qToolbar, { "Open a .UI" , "open3" , {|| ::execEvent( "buttonOpen_clicked" ) }, .f. } )
::buildToolButton( ::qToolbar, { "Open a .UI" , "open3" , {|| ::execEvent( __buttonOpen_clicked__ ) }, .f. } )
::qToolbar:addWidget( ::sp0 )
::buildToolButton( ::qToolbar, { "Build Source", "fileprg", {|| ::execEvent( "buttonBuild_clicked" ) }, .f. } )
::buildToolButton( ::qToolbar, { "Build Source", "fileprg", {|| ::execEvent( __buttonBuild_clicked__ ) }, .f. } )
RETURN Self
@@ -900,7 +909,7 @@ METHOD IdeUISrcManager:buildStatusPanels()
/*------------------------------------------------------------------------*/
STATIC FUNCTION getObject( oSelf, oHbQtUi, cObj )
RETURN {|...| oSelf:execEvent( "child_object", oHbQtUi:&cObj., cObj, ... ) }
RETURN {|...| oSelf:execEvent( __child_object__, oHbQtUi:&cObj., cObj, ... ) }
/*----------------------------------------------------------------------*/

View File

@@ -95,11 +95,16 @@ HBQSyntaxHighlighter::HBQSyntaxHighlighter( QTextDocument * parent )
commentEndExpression = QRegExp( "\\*/" );
commentSingleLine = QRegExp( "//[^\n]*|^[ ]*\\*[^\n]*" );
patternQuotation = QRegExp( "\"[^\"]*\"|\'[^\']*\'" );
// definedConstants = QRegExp( "\b(__[A-Za-z0-9_]+__)\b" );
definedConstants = QRegExp( "__[A-Za-z0-9_]+__" );
initialized = false;
type = 0;
editor = NULL;
constantsFormat.setForeground( QColor( 255, 153, 51 ) );
constantsFormat.setFontWeight( 1000 );
//entryHeaderFormat.setForeground( Qt::red );
entryHeaderFormat.setForeground( QColor( 255, 153, 51 ) );
entryHeaderFormat.setFontWeight( 1000 );
@@ -230,6 +235,15 @@ void HBQSyntaxHighlighter::highlightBlock( const QString &text )
}
}
/* Defined constants */
index = definedConstants.indexIn( text );
while( index >= 0 )
{
length = definedConstants.matchedLength();
setFormat( index, length, constantsFormat );
index = definedConstants.indexIn( text, index + length );
}
/* Multi Line Comments - to ascertain if it is embedded in quotes */
int startIndex = 0;
int startSglLine = 0;

View File

@@ -127,7 +127,9 @@ protected:
QRegExp commentEndExpression;
QRegExp commentSingleLine;
QRegExp patternQuotation;
QRegExp definedConstants;
QTextCharFormat constantsFormat;
QTextCharFormat keywordFormat;
QTextCharFormat classFormat;
QTextCharFormat singleLineCommentFormat;