2010-02-08 08:50 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbide/hbide.prg
* contrib/hbide/ideactions.prg
* contrib/hbide/idedocks.prg
* contrib/hbide/ideeditor.prg
* contrib/hbide/ideobject.prg
* contrib/hbide/idesources.prg
* contrib/hbqt/generator/qt45.qtp
* contrib/hbqt/hbqt.h
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
* contrib/hbqt/hbqt_hbqplaintextedit.h
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
* contrib/hbqt/qtgui/filelist.mk
* contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
* contrib/hbqt/qtgui/HBQSyntaxHighlighter.cpp
+ contrib/hbqt/qtgui/QStackedWidget.cpp
* contrib/hbqt/qtgui/THBQPlainTextEdit.prg
* contrib/hbqt/qtgui/THBQSyntaxHighlighter.prg
+ contrib/hbqt/qtgui/TQStackedWidget.prg
* contrib/hbqt/qth/HBQPlainTextEdit.qth
* contrib/hbqt/qth/HBQSyntaxHighLighter.qth
+ contrib/hbqt/qth/QStackedWidget.qth
+ Added one more class in hbQT.
+ Prepared to present multiple-views of tabbed-editor.
The term multiple-view is a bit confusing. The concept
I am thinking of is to present stacked tabs of common interest
together switchable from "Editor" tree-presentation or from
a combo-box containing such different "views".
A better name to this feature is requested.
% Code shifting, normalization.
+ Started to have block(column)copy and paste operation.
But appears it is a huge task, probably leading to
rewriting the whole HBQPlainTextEdit() class.
I must confess that the more I try in the direction,
the more I am in troubles. Reason: Qt does not provide
any inbuild mechanism to achieve it.
This commit is contained in:
@@ -17,6 +17,50 @@
|
||||
past entries belonging to author(s): Viktor Szakats.
|
||||
*/
|
||||
|
||||
2010-02-08 08:50 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
|
||||
* contrib/hbide/hbide.prg
|
||||
* contrib/hbide/ideactions.prg
|
||||
* contrib/hbide/idedocks.prg
|
||||
* contrib/hbide/ideeditor.prg
|
||||
* contrib/hbide/ideobject.prg
|
||||
* contrib/hbide/idesources.prg
|
||||
|
||||
* contrib/hbqt/generator/qt45.qtp
|
||||
|
||||
* contrib/hbqt/hbqt.h
|
||||
|
||||
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
|
||||
* contrib/hbqt/hbqt_hbqplaintextedit.h
|
||||
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
|
||||
* contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
|
||||
|
||||
* contrib/hbqt/qtgui/filelist.mk
|
||||
* contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
|
||||
* contrib/hbqt/qtgui/HBQSyntaxHighlighter.cpp
|
||||
+ contrib/hbqt/qtgui/QStackedWidget.cpp
|
||||
* contrib/hbqt/qtgui/THBQPlainTextEdit.prg
|
||||
* contrib/hbqt/qtgui/THBQSyntaxHighlighter.prg
|
||||
+ contrib/hbqt/qtgui/TQStackedWidget.prg
|
||||
|
||||
* contrib/hbqt/qth/HBQPlainTextEdit.qth
|
||||
* contrib/hbqt/qth/HBQSyntaxHighLighter.qth
|
||||
+ contrib/hbqt/qth/QStackedWidget.qth
|
||||
|
||||
+ Added one more class in hbQT.
|
||||
+ Prepared to present multiple-views of tabbed-editor.
|
||||
The term multiple-view is a bit confusing. The concept
|
||||
I am thinking of is to present stacked tabs of common interest
|
||||
together switchable from "Editor" tree-presentation or from
|
||||
a combo-box containing such different "views".
|
||||
A better name to this feature is requested.
|
||||
% Code shifting, normalization.
|
||||
+ Started to have block(column)copy and paste operation.
|
||||
But appears it is a huge task, probably leading to
|
||||
rewriting the whole HBQPlainTextEdit() class.
|
||||
I must confess that the more I try in the direction,
|
||||
the more I am in troubles. Reason: Qt does not provide
|
||||
any inbuild mechanism to achieve it.
|
||||
|
||||
2010-02-08 16:49 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
|
||||
* include/hbdefs.h
|
||||
+ Readded HB_U8 and HB_I8. Currently mapped to HB_BYTE/HB_CHAR,
|
||||
|
||||
@@ -155,6 +155,7 @@ CLASS HbIde
|
||||
DATA oSBar
|
||||
DATA oMenu
|
||||
DATA oTBar
|
||||
DATA oStackedWidget
|
||||
DATA oFont
|
||||
DATA oProjTree
|
||||
DATA oEditTree
|
||||
@@ -183,6 +184,7 @@ CLASS HbIde
|
||||
DATA lDockRVisible INIT .f.
|
||||
DATA lDockBVisible INIT .f.
|
||||
DATA lTabCloseRequested INIT .f.
|
||||
DATA isColumnSelectionEnabled INIT .f.
|
||||
|
||||
DATA cWrkProject INIT ""
|
||||
DATA cWrkTheme INIT ""
|
||||
@@ -243,6 +245,8 @@ CLASS HbIde
|
||||
METHOD execEditorAction( cKey )
|
||||
METHOD execWindowsAction( cKey )
|
||||
|
||||
DATA oFrame
|
||||
|
||||
ENDCLASS
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
@@ -318,19 +322,6 @@ METHOD HbIde:create( cProjIni )
|
||||
/* Load Environments */
|
||||
::oEV := IdeEnvironments():new( Self, hbide_pathToOSPath( ::aINI[ INI_HBIDE, PathEnv ] + ::pathSep + "hbide.env" ) ):create()
|
||||
|
||||
/* Prepare Editor's Tabs */
|
||||
::oEM:prepareTabWidget()
|
||||
|
||||
/* Attach GRID Layout to Editor Area - Futuristic */
|
||||
::qLayout := QGridLayout():new()
|
||||
::qLayout:setContentsMargins( 0,0,0,0 )
|
||||
::qLayout:setHorizontalSpacing( 0 )
|
||||
::qLayout:setVerticalSpacing( 0 )
|
||||
//
|
||||
::oDa:oWidget:setLayout( ::qLayout )
|
||||
//
|
||||
::qLayout:addWidget_1( ::oDa:oTabWidget:oWidget, 0, 0, 1, 1 )
|
||||
|
||||
/* Just to spare some GC calls */
|
||||
::qCursor := QTextCursor():new()
|
||||
::qBrushWrkProject := QBrush():new( "QColor", QColor():new( 255,0,0 ) )
|
||||
@@ -344,9 +335,7 @@ METHOD HbIde:create( cProjIni )
|
||||
::cWrkProject := ::aINI[ INI_HBIDE, CurrentProject ]
|
||||
::oPM:populate()
|
||||
::oSM:loadSources()
|
||||
#if 0 /* Must not be greyed as we have more options there */
|
||||
::updateProjectMenu()
|
||||
#endif
|
||||
|
||||
::updateTitleBar()
|
||||
/* Set some last settings */
|
||||
::oPM:setCurrentProject( ::cWrkProject, .f. )
|
||||
@@ -481,6 +470,7 @@ METHOD HbIde:execAction( cKey )
|
||||
CASE "Copy"
|
||||
CASE "Paste"
|
||||
CASE "SelectAll"
|
||||
CASE "SelectionMode"
|
||||
CASE "DuplicateLine"
|
||||
CASE "DeleteLine"
|
||||
CASE "MoveLineUp"
|
||||
@@ -548,6 +538,10 @@ METHOD HbIde:execEditorAction( cKey )
|
||||
CASE "SelectAll"
|
||||
::oEM:selectAll()
|
||||
EXIT
|
||||
CASE "SelectionMode"
|
||||
::isColumnSelectionEnabled := ! ::isColumnSelectionEnabled
|
||||
::oEM:toggleSelectionMode()
|
||||
EXIT
|
||||
CASE "DuplicateLine"
|
||||
::oEM:duplicateLine()
|
||||
EXIT
|
||||
@@ -603,7 +597,8 @@ METHOD HbIde:execEditorAction( cKey )
|
||||
EXIT
|
||||
CASE "MatchPairs"
|
||||
//
|
||||
::oDockFind:show()
|
||||
//::oDockFind:show()
|
||||
::oStackedWidget:oWidget:setCurrentIndex( iif( ::oStackedWidget:oWidget:currentIndex() == 1, 0, 1 ) )
|
||||
EXIT
|
||||
CASE "InsertSeparator"
|
||||
::oEM:insertSeparator()
|
||||
|
||||
@@ -142,8 +142,7 @@ METHOD IdeActions:buildActions()
|
||||
IF !( hb_hHasKey( ::hActions, a_[ ACT_NAME ] ) )
|
||||
|
||||
qAction := QAction():new( ::qDlg )
|
||||
qAction:setCheckable( iif( empty( a_[ ACT_CHECKABLE ] ), .F., ;
|
||||
iif( upper( a_[ ACT_CHECKABLE ] ) == "YES", .T., .F. ) ) )
|
||||
qAction:setCheckable( iif( empty( a_[ ACT_CHECKABLE ] ), .F., upper( a_[ ACT_CHECKABLE ] ) == "YES" ) )
|
||||
qAction:setText( strtran( a_[ ACT_TEXT ], "~", "&" ) )
|
||||
IF !empty( a_[ ACT_IMAGE ] )
|
||||
qAction:setIcon( ::resPath + a_[ ACT_IMAGE ] + ".png" )
|
||||
@@ -194,7 +193,7 @@ METHOD IdeActions:loadActions()
|
||||
aadd( aAct, { "TB_Copy" , "~Copy" , "copy" , "" , "No", "Yes" } )
|
||||
aadd( aAct, { "TB_Paste" , "~Paste" , "paste" , "" , "No", "Yes" } )
|
||||
aadd( aAct, { "TB_SelectAll" , "Select ~All" , "selectall" , "" , "No", "Yes" } )
|
||||
aadd( aAct, { "TB_SelectionMode" , "Toggle Selection Mode" , "stream" , "" , "No", "Yes" } )
|
||||
aadd( aAct, { "TB_SelectionMode" , "Toggle Selection Mode" , "stream" , "" , "Yes", "Yes" } )
|
||||
aadd( aAct, { "TB_Find" , "~Find / Replace" , "find" , "" , "No", "Yes" } )
|
||||
aadd( aAct, { "TB_Search" , "Search" , "search" , "" , "No", "Yes" } )
|
||||
aadd( aAct, { "TB_SetMark" , "Toggle Mark" , "placeremovemark", "" , "No", "Yes" } )
|
||||
|
||||
@@ -80,6 +80,8 @@ CLASS IdeDocks INHERIT IdeObject
|
||||
METHOD create( oIde )
|
||||
METHOD destroy()
|
||||
METHOD buildDialog()
|
||||
METHOD buildTabWidget()
|
||||
METHOD buildStackWidget()
|
||||
METHOD buildDockWidgets()
|
||||
METHOD buildProjectTree()
|
||||
METHOD buildEditorTree()
|
||||
@@ -127,22 +129,15 @@ METHOD IdeDocks:destroy()
|
||||
|
||||
METHOD IdeDocks:buildDialog()
|
||||
|
||||
#if 1
|
||||
::oIde:oDlg := XbpDialog():new()
|
||||
::oDlg:icon := ::resPath + "vr.png"
|
||||
::oDlg:title := "Harbour-Qt IDE"
|
||||
#ifdef HBIDE_USE_UIC
|
||||
::oDlg:qtObject := HbQtUI():new( ::resPath + "mainwindow.uic" ):build()
|
||||
::oDlg:qtObject := HbQtUI():new( ::resPath + "mainwindow.uic" ):build()
|
||||
#else
|
||||
::oDlg:qtObject := HbQtUI():new( ::resPath + "mainwindow.ui" ):create()
|
||||
::oDlg:qtObject := HbQtUI():new( ::resPath + "mainwindow.ui" ):create()
|
||||
#endif
|
||||
::oDlg:create( , , , , , .f. )
|
||||
#else
|
||||
::oIde:oDlg := XbpDialog():new( , , {10,10}, {1100,700}, , .f. )
|
||||
::oDlg:icon := ::resPath + "vr.png"
|
||||
::oDlg:title := "Harbour-Qt IDE"
|
||||
::oDlg:create()
|
||||
#endif
|
||||
|
||||
::oDlg:setStyleSheet( GetStyleSheet( "QMainWindow" ) )
|
||||
|
||||
@@ -157,6 +152,82 @@ METHOD IdeDocks:buildDialog()
|
||||
::oIde:setPosAndSizeByIni( ::oDlg:oWidget, MainWindowGeometry )
|
||||
::oDlg:Show()
|
||||
|
||||
/* Attach GRID Layout to Editor Area - Futuristic */
|
||||
::oIde:qLayout := QGridLayout():new()
|
||||
::oIde:qLayout:setContentsMargins( 0,0,0,0 )
|
||||
::oIde:qLayout:setHorizontalSpacing( 0 )
|
||||
::oIde:qLayout:setVerticalSpacing( 0 )
|
||||
//
|
||||
|
||||
#if 0
|
||||
::buildTabWidget()
|
||||
::qLayout:addWidget_1( ::oDa:oTabWidget:oWidget, 0, 0, 1, 1 )
|
||||
#else
|
||||
::buildStackWidget()
|
||||
::qLayout:addWidget_1( ::oStackedWidget:oWidget, 0, 0, 1, 1 )
|
||||
::buildTabWidget()
|
||||
#endif
|
||||
|
||||
::oDa:oWidget:setLayout( ::oIde:qLayout )
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeDocks:buildStackWidget()
|
||||
|
||||
/* Its parent will be drawing area and pages will be XbpTabWidgets() */
|
||||
|
||||
::oIde:oStackedWidget := XbpWindow():new( ::oDa )
|
||||
::oStackedWidget:oWidget := QStackedWidget():new( ::oDa:oWidget )
|
||||
::oStackedWidget:oWidget:setObjectName( "myStackedWidget" )
|
||||
::oDa:addChild( ::oStackedWidget )
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeDocks:buildTabWidget()
|
||||
#if 0
|
||||
|
||||
::oIde:oDa:oTabWidget := XbpTabWidget():new():create( ::oDa, , {0,0}, {10,10}, , .t. )
|
||||
::oIde:qTabWidget := ::oDa:oTabWidget:oWidget
|
||||
|
||||
::qTabWidget:setUsesScrollButtons( .f. )
|
||||
::qTabWidget:setMovable( .t. )
|
||||
|
||||
::qTabWidget:setContextMenuPolicy( Qt_CustomContextMenu )
|
||||
::connect( ::qTabWidget, "customContextMenuRequested(QPoint)", {|p| ::exeEvent( 1, p ) } )
|
||||
|
||||
#else
|
||||
#if 0
|
||||
::oIde:oFrame := XbpWindow():new( ::oIde:oStackedWidget )
|
||||
::oFrame:oWidget := QWidget():new( ::oIde:oStackedWidget:oWidget )
|
||||
::oStackedWidget:addChild( ::oFrame )
|
||||
::oFrame:oTabWidget := XbpTabWidget():new():create( ::oFrame, , {0,0}, {200,200}, , .t. )
|
||||
::oIde:qTabWidget := ::oIde:oFrame:oTabWidget:oWidget
|
||||
::qTabWidget:setUsesScrollButtons( .f. )
|
||||
::qTabWidget:setMovable( .t. )
|
||||
::oStackedWidget:oWidget:addWidget( ::oFrame:oWidget )
|
||||
::oStackedWidget:oWidget:setCurrentIndex( 1 )
|
||||
#else /* Below Works */
|
||||
LOCAL oTabWidget
|
||||
STATIC qTabWidget
|
||||
|
||||
oTabWidget := XbpTabWidget():new():create( ::oIde:oStackedWidget , {0,0}, {10,10}, , .t. )
|
||||
::oIde:oDa:oTabWidget := oTabWidget /* Important - Look deep why it be so */
|
||||
::oIde:qTabWidget := oTabWidget:oWidget
|
||||
::qTabWidget:setUsesScrollButtons( .f. )
|
||||
::qTabWidget:setMovable( .t. )
|
||||
::oStackedWidget:oWidget:addWidget( ::qTabWidget )
|
||||
|
||||
qTabWidget := QTabWidget():new( ::oStackedWidget:oWidget )
|
||||
::oStackedWidget:oWidget:addWidget( qTabWidget )
|
||||
|
||||
::oStackedWidget:oWidget:setCurrentIndex( 0 )
|
||||
#endif
|
||||
#endif
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
@@ -181,7 +252,7 @@ METHOD IdeDocks:buildDockWidgets()
|
||||
METHOD IdeDocks:buildProjectTree()
|
||||
LOCAL i
|
||||
|
||||
::oIde:oDockPT := XbpWindow():new( ::oDa )
|
||||
::oIde:oDockPT := XbpWindow():new()
|
||||
::oDockPT:oWidget := QDockWidget():new( ::oDlg:oWidget )
|
||||
::oDockPT:oWidget:setObjectName( "dockProjectTree" )
|
||||
::oDlg:addChild( ::oDockPT )
|
||||
@@ -193,7 +264,7 @@ METHOD IdeDocks:buildProjectTree()
|
||||
::oIde:oProjTree := XbpTreeView():new()
|
||||
::oProjTree:hasLines := .T.
|
||||
::oProjTree:hasButtons := .T.
|
||||
::oProjTree:create( ::oDa, , { 0,0 }, { 10,10 }, , .t. )
|
||||
::oProjTree:create( ::oDockPT, , { 0,0 }, { 10,10 }, , .t. )
|
||||
|
||||
::oProjTree:setStyleSheet( GetStyleSheet( "QTreeWidgetHB" ) )
|
||||
|
||||
@@ -231,7 +302,7 @@ METHOD IdeDocks:buildProjectTree()
|
||||
|
||||
METHOD IdeDocks:buildEditorTree()
|
||||
|
||||
::oIde:oDockED := XbpWindow():new( ::oDa )
|
||||
::oIde:oDockED := XbpWindow():new()
|
||||
::oDockED:oWidget := QDockWidget():new( ::oDlg:oWidget )
|
||||
::oDockED:oWidget:setObjectName( "dockEditorTabs" )
|
||||
::oDlg:addChild( ::oDockED )
|
||||
@@ -243,9 +314,7 @@ METHOD IdeDocks:buildEditorTree()
|
||||
::oIde:oEditTree := XbpTreeView():new()
|
||||
::oEditTree:hasLines := .T.
|
||||
::oEditTree:hasButtons := .T.
|
||||
::oEditTree:create( ::oDa, , { 0,0 }, { 10,10 }, , .t. )
|
||||
|
||||
* ::oEditTree:setStyleSheet( GetStyleSheet( "QTreeWidget" ) )
|
||||
::oEditTree:create( ::oDockED, , { 0,0 }, { 10,10 }, , .t. )
|
||||
|
||||
//::oEditTree:itemMarked := {|oItem| ::manageItemSelected( 0, oItem ), ::oCurProjItem := oItem }
|
||||
::oEditTree:itemMarked := {|oItem| ::oIde:oCurProjItem := oItem, ::oIde:manageFocusInEditor() }
|
||||
@@ -273,7 +342,7 @@ METHOD IdeDocks:buildEditorTree()
|
||||
|
||||
METHOD IdeDocks:buildFuncList()
|
||||
|
||||
::oIde:oDockR := XbpWindow():new( ::oDa )
|
||||
::oIde:oDockR := XbpWindow():new()
|
||||
::oDockR:oWidget := QDockWidget():new( ::oDlg:oWidget )
|
||||
::oDockR:oWidget:setObjectName( "dockFuncList" )
|
||||
::oDlg:addChild( ::oDockR )
|
||||
@@ -283,7 +352,6 @@ METHOD IdeDocks:buildFuncList()
|
||||
::oDockR:oWidget:setFocusPolicy( Qt_NoFocus )
|
||||
|
||||
::oIde:oFuncList := XbpListBox():new( ::oDockR ):create( , , { 0,0 }, { 100,400 }, , .t. )
|
||||
* ::oFuncList:setStyleSheet( GetStyleSheet( "QListView" ) )
|
||||
|
||||
//::oFuncList:ItemMarked := {|mp1, mp2, oXbp| ::gotoFunction( mp1, mp2, oXbp ) }
|
||||
::oFuncList:ItemSelected := {|mp1, mp2, oXbp| ::oIde:gotoFunction( mp1, mp2, oXbp ) }
|
||||
@@ -310,7 +378,7 @@ METHOD IdeDocks:buildFuncList()
|
||||
|
||||
METHOD IdeDocks:buildCompileResults()
|
||||
|
||||
::oIde:oDockB := XbpWindow():new( ::oDa )
|
||||
::oIde:oDockB := XbpWindow():new()
|
||||
::oDockB:oWidget := QDockWidget():new( ::oDlg:oWidget )
|
||||
::oDockB:oWidget:setObjectName( "dockCompileResults" )
|
||||
::oDlg:addChild( ::oDockB )
|
||||
@@ -331,7 +399,7 @@ METHOD IdeDocks:buildCompileResults()
|
||||
|
||||
METHOD IdeDocks:buildLinkResults()
|
||||
|
||||
::oIde:oDockB1 := XbpWindow():new( ::oDa )
|
||||
::oIde:oDockB1 := XbpWindow():new()
|
||||
::oDockB1:oWidget := QDockWidget():new( ::oDlg:oWidget )
|
||||
::oDockB1:oWidget:setObjectName( "dockLinkResults" )
|
||||
::oDlg:addChild( ::oDockB1 )
|
||||
@@ -352,7 +420,7 @@ METHOD IdeDocks:buildLinkResults()
|
||||
|
||||
METHOD IdeDocks:buildOutputResults()
|
||||
|
||||
::oIde:oDockB2 := XbpWindow():new( ::oDa )
|
||||
::oIde:oDockB2 := XbpWindow():new()
|
||||
::oDockB2:oWidget := QDockWidget():new( ::oDlg:oWidget )
|
||||
::oDockB2:oWidget:setObjectName( "dockOutputResults" )
|
||||
::oDlg:addChild( ::oDockB2 )
|
||||
|
||||
@@ -68,6 +68,7 @@
|
||||
#include "hbclass.ch"
|
||||
#include "hbqt.ch"
|
||||
#include "hbide.ch"
|
||||
#include "xbp.ch"
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
@@ -96,7 +97,6 @@ CLASS IdeEditsManager INHERIT IdeObject
|
||||
METHOD new( oIde )
|
||||
METHOD create( oIde )
|
||||
METHOD destroy()
|
||||
METHOD prepareTabWidget()
|
||||
METHOD removeSourceInTree( cSourceFile )
|
||||
METHOD addSourceInTree( cSourceFile )
|
||||
METHOD exeEvent( nMode, p )
|
||||
@@ -141,6 +141,7 @@ CLASS IdeEditsManager INHERIT IdeObject
|
||||
METHOD streamComment()
|
||||
METHOD blockComment()
|
||||
METHOD indent( nStep )
|
||||
METHOD toggleSelectionMode()
|
||||
|
||||
ENDCLASS
|
||||
|
||||
@@ -202,22 +203,6 @@ METHOD IdeEditsManager:destroy()
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeEditsManager:prepareTabWidget()
|
||||
|
||||
::oIde:oDa:oTabWidget := XbpTabWidget():new():create( ::oDa, , {0,0}, {10,10}, , .t. )
|
||||
::oIde:oTabWidget := ::oDa:oTabWidget
|
||||
::oIde:qTabWidget := ::oDa:oTabWidget:oWidget
|
||||
|
||||
::qTabWidget:setUsesScrollButtons( .f. )
|
||||
::qTabWidget:setMovable( .t. )
|
||||
|
||||
::qTabWidget:setContextMenuPolicy( Qt_CustomContextMenu )
|
||||
::connect( ::qTabWidget, "customContextMenuRequested(QPoint)", {|p| ::exeEvent( 1, p ) } )
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeEditsManager:removeSourceInTree( cSourceFile )
|
||||
LOCAL n
|
||||
|
||||
@@ -512,6 +497,15 @@ METHOD IdeEditsManager:selectAll()
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeEditsManager:toggleSelectionMode()
|
||||
|
||||
IF !empty( ::qCurEdit )
|
||||
::qCurEdit:highlightSelectedColumns( ::isColumnSelectionEnabled )
|
||||
ENDIF
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeEditsManager:duplicateLine()
|
||||
LOCAL qEdit
|
||||
IF !empty( qEdit := ::getEditCurrent() )
|
||||
@@ -1133,6 +1127,7 @@ METHOD IdeEditor:split( nOrient, oEditP )
|
||||
|
||||
METHOD IdeEditor:destroy()
|
||||
LOCAL n, oEdit
|
||||
|
||||
hbide_dbg( "IdeEditor:destroy()", 0 )
|
||||
::disconnect( ::qDocument, "blockCountChanged(int)" )
|
||||
::disconnect( ::qDocument, "contentsChange(int,int,int)" )
|
||||
@@ -1345,6 +1340,7 @@ CLASS IdeEdit INHERIT IdeObject
|
||||
DATA qBrushMark INIT QBrush():new( "QColor", QColor():new( 0,255,255 ) )
|
||||
DATA qActionTab
|
||||
DATA qLastCursor INIT QTextCursor():new()
|
||||
DATA qSelColor INIT QColor():new( 255,0,255 )
|
||||
|
||||
DATA qCursorMark
|
||||
DATA qMarkUData INIT HBQTextBlockUserData():new()
|
||||
@@ -1638,9 +1634,14 @@ METHOD IdeEdit:execEvent( nMode, oEdit, p, p1 )
|
||||
::oEditor:qCqEdit := qEdit
|
||||
::oEditor:qCoEdit := oEdit
|
||||
|
||||
qCursor := QTextCursor():configure( qEdit:TextCursor() )
|
||||
|
||||
/* Book Marks reach-out buttons */
|
||||
::relayMarkButtons()
|
||||
|
||||
qCursor := QTextCursor():configure( qEdit:TextCursor() )
|
||||
/* An experimental move but seems a lot is required to achieve column selection */
|
||||
* qEdit:highlightSelectedColumns( ::isColumnSelectionEnabled )
|
||||
|
||||
::oDK:setStatusText( SB_PNL_SELECTEDCHARS, len( qCursor:selectedText() ) )
|
||||
|
||||
EXIT
|
||||
|
||||
@@ -103,10 +103,11 @@ CLASS IdeObject
|
||||
ACCESS qDlg INLINE ::oIde:oDlg:oWidget
|
||||
ACCESS oDA INLINE ::oIde:oDA
|
||||
|
||||
ACCESS qLayout INLINE ::oIde:qLayout
|
||||
ACCESS qCurEdit INLINE ::oIde:qCurEdit
|
||||
ACCESS qCurDocument INLINE ::oIde:qCurDocument
|
||||
ACCESS oCurEditor INLINE ::oIde:oCurEditor
|
||||
ACCESS qTabWidget INLINE ::oIde:oDA:oTabWidget:oWidget
|
||||
ACCESS qTabWidget INLINE ::oIde:qTabWidget
|
||||
ACCESS qBrushWrkProject INLINE ::oIde:qBrushWrkProject
|
||||
|
||||
ACCESS cWrkProject INLINE ::oIde:cWrkProject
|
||||
@@ -148,11 +149,14 @@ CLASS IdeObject
|
||||
ACCESS oLinkResult INLINE ::oIde:oLinkResult
|
||||
ACCESS oDockB2 INLINE ::oIde:oDockB2
|
||||
ACCESS oOutputResult INLINE ::oIde:oOutputResult
|
||||
ACCESS oStackedWidget INLINE ::oIde:oStackedWidget
|
||||
ACCESS oFrame INLINE ::oIde:oFrame
|
||||
|
||||
ACCESS lProjTreeVisible INLINE ::oIde:lProjTreeVisible
|
||||
ACCESS lDockRVisible INLINE ::oIde:lDockRVisible
|
||||
ACCESS lDockBVisible INLINE ::oIde:lDockBVisible
|
||||
ACCESS lTabCloseRequested INLINE ::oIde:lTabCloseRequested
|
||||
ACCESS isColumnSelectionEnabled INLINE ::oIde:isColumnSelectionEnabled
|
||||
|
||||
ACCESS aMarkTBtns INLINE ::oIde:aMarkTBtns
|
||||
|
||||
|
||||
@@ -420,7 +420,7 @@ METHOD IdeSourcesManager:openSource()
|
||||
METHOD IdeSourcesManager:selectSource( cMode, cFile, cTitle )
|
||||
LOCAL oDlg, cPath
|
||||
|
||||
oDlg := XbpFileDialog():new():create( ::oDa, , { 10,10 } )
|
||||
oDlg := XbpFileDialog():new():create( ::oDlg, , { 10,10 } )
|
||||
|
||||
IF cMode == "open"
|
||||
oDlg:title := "Select a Source File"
|
||||
|
||||
@@ -193,6 +193,7 @@ QSpacerItem.qth
|
||||
QSpinBox.qth
|
||||
QSplashScreen.qth
|
||||
QSplitter.qth
|
||||
QStackedWidget.qth
|
||||
QStandardItem.qth
|
||||
QStandardItemModel.qth
|
||||
QStatusBar.qth
|
||||
|
||||
@@ -270,6 +270,7 @@ extern void * hbqt_pPtrFromItem( PHB_ITEM pObj );
|
||||
#define hbqt_par_QSpinBox( n ) ( ( QSpinBox * ) hbqt_gcpointer( n ) )
|
||||
#define hbqt_par_QSplashScreen( n ) ( ( QSplashScreen * ) hbqt_gcpointer( n ) )
|
||||
#define hbqt_par_QSplitter( n ) ( ( QSplitter * ) hbqt_gcpointer( n ) )
|
||||
#define hbqt_par_QStackedWidget( n ) ( ( QStackedWidget * ) hbqt_gcpointer( n ) )
|
||||
#define hbqt_par_QStandardItem( n ) ( ( QStandardItem * ) hbqt_gcpointer( n ) )
|
||||
#define hbqt_par_QStandardItemModel( n ) ( ( QStandardItemModel * ) hbqt_gcpointer( n ) )
|
||||
#define hbqt_par_QStatusBar( n ) ( ( QStatusBar * ) hbqt_gcpointer( n ) )
|
||||
|
||||
@@ -86,6 +86,10 @@ HBQPlainTextEdit::HBQPlainTextEdit( QWidget * parent ) : QPlainTextEdit( parent
|
||||
numberBlock = true;
|
||||
lineNumberArea = new LineNumberArea( this );
|
||||
|
||||
columnBegins = -1;
|
||||
columnEnds = -1;
|
||||
isColumnSelectionEnabled = false;
|
||||
|
||||
connect( this, SIGNAL( blockCountChanged( int ) ) , this, SLOT( updateLineNumberAreaWidth( int ) ) );
|
||||
connect( this, SIGNAL( updateRequest( const QRect &, int ) ), this, SLOT( updateLineNumberArea( const QRect &, int ) ) );
|
||||
|
||||
@@ -142,6 +146,8 @@ void HBQPlainTextEdit::paintEvent( QPaintEvent * event )
|
||||
painter.fillRect( r, QBrush( m_currentLineColor ) );
|
||||
}
|
||||
}
|
||||
this->paintColumnSelection( event );
|
||||
|
||||
painter.end();
|
||||
QPlainTextEdit::paintEvent( event );
|
||||
}
|
||||
@@ -533,6 +539,63 @@ void HBQPlainTextEdit::convertDQuotes()
|
||||
insertPlainText( txt );
|
||||
}
|
||||
|
||||
|
||||
void HBQPlainTextEdit::paintColumnSelection( QPaintEvent *event )
|
||||
{
|
||||
QTextCursor c = textCursor();
|
||||
|
||||
if( isColumnSelectionEnabled && c.hasSelection() )
|
||||
{
|
||||
if( columnBegins >= 0 && columnEnds >= 0 )
|
||||
{
|
||||
QTextBlock b = c.document()->findBlock( c.selectionStart() );
|
||||
QTextBlock e = c.document()->findBlock( c.selectionEnd() );
|
||||
|
||||
if( b.isVisible() || e.isVisible() )
|
||||
{
|
||||
if( b.isVisible() )
|
||||
{
|
||||
QPainter p( viewport() );
|
||||
|
||||
if( b.isValid() && b.isVisible() )
|
||||
{
|
||||
int fontWidth = fontMetrics().averageCharWidth();
|
||||
|
||||
int x = ( columnBegins + 1 ) * fontWidth;
|
||||
int w = ( c.columnNumber() - columnBegins ) * fontWidth;
|
||||
QRect r( x, 0, w, viewport()->height() );
|
||||
|
||||
p.fillRect( r, QBrush( QColor( 175, 255, 175 ) ) );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void HBQPlainTextEdit::highlightSelectedColumns( bool yes )
|
||||
{
|
||||
if( yes )
|
||||
{
|
||||
isColumnSelectionEnabled = true;
|
||||
|
||||
QTextCursor c = textCursor();
|
||||
if( columnBegins == -1 && c.hasSelection() )
|
||||
{
|
||||
int b = c.document()->findBlock( c.selectionStart() ).position();
|
||||
columnBegins = c.selectionStart() - b;
|
||||
columnEnds = c.columnNumber();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
columnBegins = -1;
|
||||
columnEnds = -1;
|
||||
isColumnSelectionEnabled = false;
|
||||
}
|
||||
update();
|
||||
}
|
||||
|
||||
void HBQPlainTextEdit::insertTab( int mode )
|
||||
{
|
||||
QTextCursor cursor = textCursor();
|
||||
|
||||
@@ -118,6 +118,10 @@ private:
|
||||
QTextEdit::ExtraSelection selection;
|
||||
void braceHighlight();
|
||||
|
||||
int columnBegins;
|
||||
int columnEnds;
|
||||
bool isColumnSelectionEnabled;
|
||||
|
||||
protected:
|
||||
bool event( QEvent * event );
|
||||
void resizeEvent( QResizeEvent * event );
|
||||
@@ -144,10 +148,12 @@ public slots:
|
||||
void duplicateLine();
|
||||
void replaceSelection( const QString & txt );
|
||||
void insertTab( int mode );
|
||||
void highlightSelectedColumns( bool yes );
|
||||
|
||||
private slots:
|
||||
void slotCursorPositionChanged();
|
||||
void updateLineNumberArea( const QRect &, int );
|
||||
void paintColumnSelection( QPaintEvent * );
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -138,6 +138,11 @@ void HBQSyntaxHighlighter::hbSetSingleLineCommentFormat( const QTextCharFormat &
|
||||
singleLineCommentFormat = format;
|
||||
}
|
||||
|
||||
void HBQSyntaxHighlighter::hbSetFormatColumnSelection( int start, int count, const QColor & color )
|
||||
{
|
||||
setFormat( start, count, color );
|
||||
}
|
||||
|
||||
void HBQSyntaxHighlighter::highlightBlock( const QString &text )
|
||||
{
|
||||
#if 0
|
||||
@@ -159,6 +164,7 @@ void HBQSyntaxHighlighter::highlightBlock( const QString &text )
|
||||
}
|
||||
}
|
||||
#endif
|
||||
//HB_TRACE( HB_TR_ALWAYS, ( "SYNTSX HIGHLIGHTING" ) );
|
||||
|
||||
int index = 0;
|
||||
|
||||
|
||||
@@ -88,6 +88,7 @@ public:
|
||||
void hbSetSingleLineCommentFormat( const QTextCharFormat & format );
|
||||
void hbSetRule( QString name, QString pattern, const QTextCharFormat & format );
|
||||
void hbSetFormat( QString name, const QTextCharFormat & format );
|
||||
void hbSetFormatColumnSelection( int start, int count, const QColor & color );
|
||||
|
||||
protected:
|
||||
void highlightBlock( const QString &text );
|
||||
|
||||
@@ -387,6 +387,14 @@ HB_FUNC( QT_HBQPLAINTEXTEDIT_MOVELINE )
|
||||
hbqt_par_HBQPlainTextEdit( 1 )->moveLine( hb_parni( 2 ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* void highlightSelectedColumns( bool yes )
|
||||
*/
|
||||
HB_FUNC( QT_HBQPLAINTEXTEDIT_HIGHLIGHTSELECTEDCOLUMNS )
|
||||
{
|
||||
hbqt_par_HBQPlainTextEdit( 1 )->highlightSelectedColumns( hb_parl( 2 ) );
|
||||
}
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
#endif /* #if QT_VERSION >= 0x040500 */
|
||||
|
||||
@@ -174,6 +174,14 @@ HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_HBSETFORMAT )
|
||||
hbqt_par_HBQSyntaxHighlighter( 1 )->hbSetFormat( HBQSyntaxHighlighter::tr( hb_parc( 2 ) ), *hbqt_par_QTextCharFormat( 3 ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* void hbSetFormatColumnSelection( int start, int count, const QColor & color )
|
||||
*/
|
||||
HB_FUNC( QT_HBQSYNTAXHIGHLIGHTER_HBSETFORMATCOLUMNSELECTION )
|
||||
{
|
||||
hbqt_par_HBQSyntaxHighlighter( 1 )->hbSetFormatColumnSelection( hb_parni( 2 ), hb_parni( 3 ), *hbqt_par_QColor( 4 ) );
|
||||
}
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
#endif /* #if QT_VERSION >= 0x040500 */
|
||||
|
||||
229
harbour/contrib/hbqt/qtgui/QStackedWidget.cpp
Normal file
229
harbour/contrib/hbqt/qtgui/QStackedWidget.cpp
Normal file
@@ -0,0 +1,229 @@
|
||||
/*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
/* -------------------------------------------------------------------- */
|
||||
/* WARNING: Automatically generated source file. DO NOT EDIT! */
|
||||
/* Instead, edit corresponding .qth file, */
|
||||
/* or the generator tool itself, and run regenarate. */
|
||||
/* -------------------------------------------------------------------- */
|
||||
|
||||
/*
|
||||
* Harbour Project source code:
|
||||
* QT wrapper main header
|
||||
*
|
||||
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
|
||||
*
|
||||
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
|
||||
* www - http://www.harbour-project.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this software; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/).
|
||||
*
|
||||
* As a special exception, the Harbour Project gives permission for
|
||||
* additional uses of the text contained in its release of Harbour.
|
||||
*
|
||||
* The exception is that, if you link the Harbour libraries with other
|
||||
* files to produce an executable, this does not by itself cause the
|
||||
* resulting executable to be covered by the GNU General Public License.
|
||||
* Your use of that executable is in no way restricted on account of
|
||||
* linking the Harbour library code into it.
|
||||
*
|
||||
* This exception does not however invalidate any other reasons why
|
||||
* the executable file might be covered by the GNU General Public License.
|
||||
*
|
||||
* This exception applies only to the code released by the Harbour
|
||||
* Project under the name Harbour. If you copy code from other
|
||||
* Harbour Project or Free Software Foundation releases into a copy of
|
||||
* Harbour, as the General Public License permits, the exception does
|
||||
* not apply to the code that you add in this way. To avoid misleading
|
||||
* anyone as to the status of such modified files, you must delete
|
||||
* this exception notice from them.
|
||||
*
|
||||
* If you write modifications of your own for Harbour, it is your choice
|
||||
* whether to permit this exception to apply to your modifications.
|
||||
* If you do not wish that, delete this exception notice.
|
||||
*
|
||||
*/
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
#include "hbapi.h"
|
||||
#include "../hbqt.h"
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
#if QT_VERSION >= 0x040500
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
#include <QtCore/QPointer>
|
||||
|
||||
#include <QtGui/QStackedWidget>
|
||||
|
||||
|
||||
/*
|
||||
* QStackedWidget ( QWidget * parent = 0 )
|
||||
* ~QStackedWidget ()
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
void * ph;
|
||||
bool bNew;
|
||||
QT_G_FUNC_PTR func;
|
||||
QPointer< QStackedWidget > pq;
|
||||
} QGC_POINTER_QStackedWidget;
|
||||
|
||||
QT_G_FUNC( hbqt_gcRelease_QStackedWidget )
|
||||
{
|
||||
QGC_POINTER_QStackedWidget * p = ( QGC_POINTER_QStackedWidget * ) Cargo;
|
||||
|
||||
if( p && p->bNew )
|
||||
{
|
||||
if( p->ph && p->pq )
|
||||
{
|
||||
const QMetaObject * m = ( ( QObject * ) p->ph )->metaObject();
|
||||
if( ( QString ) m->className() != ( QString ) "QObject" )
|
||||
{
|
||||
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_QStackedWidget /.\\ ph=%p pq=%p", p->ph, (void *)(p->pq) ) );
|
||||
delete ( ( QStackedWidget * ) p->ph );
|
||||
HB_TRACE( HB_TR_DEBUG, ( "YES_rel_QStackedWidget \\./ ph=%p pq=%p", p->ph, (void *)(p->pq) ) );
|
||||
p->ph = NULL;
|
||||
}
|
||||
else
|
||||
{
|
||||
HB_TRACE( HB_TR_DEBUG, ( "NO__rel_QStackedWidgetph=%p pq=%p", p->ph, (void *)(p->pq) ) );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
HB_TRACE( HB_TR_DEBUG, ( "DEL_rel_QStackedWidget : Object already deleted!" ) );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
HB_TRACE( HB_TR_DEBUG, ( "PTR_rel_QStackedWidget : Object not created with new()" ) );
|
||||
p->ph = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void * hbqt_gcAllocate_QStackedWidget( void * pObj, bool bNew )
|
||||
{
|
||||
QGC_POINTER_QStackedWidget * p = ( QGC_POINTER_QStackedWidget * ) hb_gcAllocate( sizeof( QGC_POINTER_QStackedWidget ), hbqt_gcFuncs() );
|
||||
|
||||
p->ph = pObj;
|
||||
p->bNew = bNew;
|
||||
p->func = hbqt_gcRelease_QStackedWidget;
|
||||
|
||||
if( bNew )
|
||||
{
|
||||
new( & p->pq ) QPointer< QStackedWidget >( ( QStackedWidget * ) pObj );
|
||||
HB_TRACE( HB_TR_DEBUG, ( " _new_QStackedWidget ph=%p %i B %i KB", pObj, ( int ) hb_xquery( 1001 ), hbqt_getmemused() ) );
|
||||
}
|
||||
return p;
|
||||
}
|
||||
|
||||
HB_FUNC( QT_QSTACKEDWIDGET )
|
||||
{
|
||||
void * pObj = NULL;
|
||||
|
||||
pObj = new QStackedWidget( hbqt_par_QWidget( 1 ) ) ;
|
||||
|
||||
hb_retptrGC( hbqt_gcAllocate_QStackedWidget( pObj, true ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* int addWidget ( QWidget * widget )
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_ADDWIDGET )
|
||||
{
|
||||
hb_retni( hbqt_par_QStackedWidget( 1 )->addWidget( hbqt_par_QWidget( 2 ) ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* int count () const
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_COUNT )
|
||||
{
|
||||
hb_retni( hbqt_par_QStackedWidget( 1 )->count() );
|
||||
}
|
||||
|
||||
/*
|
||||
* int currentIndex () const
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_CURRENTINDEX )
|
||||
{
|
||||
hb_retni( hbqt_par_QStackedWidget( 1 )->currentIndex() );
|
||||
}
|
||||
|
||||
/*
|
||||
* QWidget * currentWidget () const
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_CURRENTWIDGET )
|
||||
{
|
||||
hb_retptrGC( hbqt_gcAllocate_QWidget( hbqt_par_QStackedWidget( 1 )->currentWidget(), false ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* int indexOf ( QWidget * widget ) const
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_INDEXOF )
|
||||
{
|
||||
hb_retni( hbqt_par_QStackedWidget( 1 )->indexOf( hbqt_par_QWidget( 2 ) ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* int insertWidget ( int index, QWidget * widget )
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_INSERTWIDGET )
|
||||
{
|
||||
hb_retni( hbqt_par_QStackedWidget( 1 )->insertWidget( hb_parni( 2 ), hbqt_par_QWidget( 3 ) ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* void removeWidget ( QWidget * widget )
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_REMOVEWIDGET )
|
||||
{
|
||||
hbqt_par_QStackedWidget( 1 )->removeWidget( hbqt_par_QWidget( 2 ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* QWidget * widget ( int index ) const
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_WIDGET )
|
||||
{
|
||||
hb_retptrGC( hbqt_gcAllocate_QWidget( hbqt_par_QStackedWidget( 1 )->widget( hb_parni( 2 ) ), false ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* void setCurrentIndex ( int index )
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_SETCURRENTINDEX )
|
||||
{
|
||||
hbqt_par_QStackedWidget( 1 )->setCurrentIndex( hb_parni( 2 ) );
|
||||
}
|
||||
|
||||
/*
|
||||
* void setCurrentWidget ( QWidget * widget )
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET_SETCURRENTWIDGET )
|
||||
{
|
||||
hbqt_par_QStackedWidget( 1 )->setCurrentWidget( hbqt_par_QWidget( 2 ) );
|
||||
}
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
#endif /* #if QT_VERSION >= 0x040500 */
|
||||
/*----------------------------------------------------------------------*/
|
||||
@@ -96,6 +96,7 @@ CREATE CLASS HBQPlainTextEdit INHERIT HbQtObjectHandler, QPlainTextEdit
|
||||
METHOD blockIndent( nSteps )
|
||||
METHOD deleteLine()
|
||||
METHOD moveLine( nIDirection )
|
||||
METHOD highlightSelectedColumns( lYes )
|
||||
|
||||
ENDCLASS
|
||||
|
||||
@@ -224,3 +225,7 @@ METHOD HBQPlainTextEdit:deleteLine()
|
||||
METHOD HBQPlainTextEdit:moveLine( nIDirection )
|
||||
RETURN Qt_HBQPlainTextEdit_moveLine( ::pPtr, nIDirection )
|
||||
|
||||
|
||||
METHOD HBQPlainTextEdit:highlightSelectedColumns( lYes )
|
||||
RETURN Qt_HBQPlainTextEdit_highlightSelectedColumns( ::pPtr, lYes )
|
||||
|
||||
|
||||
@@ -71,6 +71,7 @@ CREATE CLASS HBQSyntaxHighlighter INHERIT HbQtObjectHandler, QSyntaxHighlighter
|
||||
METHOD hbSetSingleLineCommentFormat( pFormat )
|
||||
METHOD hbSetRule( cName, cPattern, pFormat )
|
||||
METHOD hbSetFormat( cName, pFormat )
|
||||
METHOD hbSetFormatColumnSelection( nStart, nCount, pColor )
|
||||
|
||||
ENDCLASS
|
||||
|
||||
@@ -99,3 +100,7 @@ METHOD HBQSyntaxHighlighter:hbSetRule( cName, cPattern, pFormat )
|
||||
METHOD HBQSyntaxHighlighter:hbSetFormat( cName, pFormat )
|
||||
RETURN Qt_HBQSyntaxHighlighter_hbSetFormat( ::pPtr, cName, hbqt_ptr( pFormat ) )
|
||||
|
||||
|
||||
METHOD HBQSyntaxHighlighter:hbSetFormatColumnSelection( nStart, nCount, pColor )
|
||||
RETURN Qt_HBQSyntaxHighlighter_hbSetFormatColumnSelection( ::pPtr, nStart, nCount, hbqt_ptr( pColor ) )
|
||||
|
||||
|
||||
131
harbour/contrib/hbqt/qtgui/TQStackedWidget.prg
Normal file
131
harbour/contrib/hbqt/qtgui/TQStackedWidget.prg
Normal file
@@ -0,0 +1,131 @@
|
||||
/*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
/* -------------------------------------------------------------------- */
|
||||
/* WARNING: Automatically generated source file. DO NOT EDIT! */
|
||||
/* Instead, edit corresponding .qth file, */
|
||||
/* or the generator tool itself, and run regenarate. */
|
||||
/* -------------------------------------------------------------------- */
|
||||
|
||||
/*
|
||||
* Harbour Project source code:
|
||||
* QT wrapper main header
|
||||
*
|
||||
* Copyright 2009-2010 Pritpal Bedi <pritpal@vouchcac.com>
|
||||
*
|
||||
* Copyright 2009 Marcos Antonio Gambeta <marcosgambeta at gmail dot com>
|
||||
* www - http://www.harbour-project.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this software; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/).
|
||||
*
|
||||
* As a special exception, the Harbour Project gives permission for
|
||||
* additional uses of the text contained in its release of Harbour.
|
||||
*
|
||||
* The exception is that, if you link the Harbour libraries with other
|
||||
* files to produce an executable, this does not by itself cause the
|
||||
* resulting executable to be covered by the GNU General Public License.
|
||||
* Your use of that executable is in no way restricted on account of
|
||||
* linking the Harbour library code into it.
|
||||
*
|
||||
* This exception does not however invalidate any other reasons why
|
||||
* the executable file might be covered by the GNU General Public License.
|
||||
*
|
||||
* This exception applies only to the code released by the Harbour
|
||||
* Project under the name Harbour. If you copy code from other
|
||||
* Harbour Project or Free Software Foundation releases into a copy of
|
||||
* Harbour, as the General Public License permits, the exception does
|
||||
* not apply to the code that you add in this way. To avoid misleading
|
||||
* anyone as to the status of such modified files, you must delete
|
||||
* this exception notice from them.
|
||||
*
|
||||
* If you write modifications of your own for Harbour, it is your choice
|
||||
* whether to permit this exception to apply to your modifications.
|
||||
* If you do not wish that, delete this exception notice.
|
||||
*
|
||||
*/
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
|
||||
#include "hbclass.ch"
|
||||
|
||||
|
||||
CREATE CLASS QStackedWidget INHERIT HbQtObjectHandler, QFrame
|
||||
|
||||
METHOD new( ... )
|
||||
|
||||
METHOD addWidget( pWidget )
|
||||
METHOD count()
|
||||
METHOD currentIndex()
|
||||
METHOD currentWidget()
|
||||
METHOD indexOf( pWidget )
|
||||
METHOD insertWidget( nIndex, pWidget )
|
||||
METHOD removeWidget( pWidget )
|
||||
METHOD widget( nIndex )
|
||||
METHOD setCurrentIndex( nIndex )
|
||||
METHOD setCurrentWidget( pWidget )
|
||||
|
||||
ENDCLASS
|
||||
|
||||
|
||||
METHOD QStackedWidget:new( ... )
|
||||
LOCAL p
|
||||
FOR EACH p IN { ... }
|
||||
hb_pvalue( p:__enumIndex(), hbqt_ptr( p ) )
|
||||
NEXT
|
||||
::pPtr := Qt_QStackedWidget( ... )
|
||||
RETURN Self
|
||||
|
||||
|
||||
METHOD QStackedWidget:addWidget( pWidget )
|
||||
RETURN Qt_QStackedWidget_addWidget( ::pPtr, hbqt_ptr( pWidget ) )
|
||||
|
||||
|
||||
METHOD QStackedWidget:count()
|
||||
RETURN Qt_QStackedWidget_count( ::pPtr )
|
||||
|
||||
|
||||
METHOD QStackedWidget:currentIndex()
|
||||
RETURN Qt_QStackedWidget_currentIndex( ::pPtr )
|
||||
|
||||
|
||||
METHOD QStackedWidget:currentWidget()
|
||||
RETURN Qt_QStackedWidget_currentWidget( ::pPtr )
|
||||
|
||||
|
||||
METHOD QStackedWidget:indexOf( pWidget )
|
||||
RETURN Qt_QStackedWidget_indexOf( ::pPtr, hbqt_ptr( pWidget ) )
|
||||
|
||||
|
||||
METHOD QStackedWidget:insertWidget( nIndex, pWidget )
|
||||
RETURN Qt_QStackedWidget_insertWidget( ::pPtr, nIndex, hbqt_ptr( pWidget ) )
|
||||
|
||||
|
||||
METHOD QStackedWidget:removeWidget( pWidget )
|
||||
RETURN Qt_QStackedWidget_removeWidget( ::pPtr, hbqt_ptr( pWidget ) )
|
||||
|
||||
|
||||
METHOD QStackedWidget:widget( nIndex )
|
||||
RETURN Qt_QStackedWidget_widget( ::pPtr, nIndex )
|
||||
|
||||
|
||||
METHOD QStackedWidget:setCurrentIndex( nIndex )
|
||||
RETURN Qt_QStackedWidget_setCurrentIndex( ::pPtr, nIndex )
|
||||
|
||||
|
||||
METHOD QStackedWidget:setCurrentWidget( pWidget )
|
||||
RETURN Qt_QStackedWidget_setCurrentWidget( ::pPtr, hbqt_ptr( pWidget ) )
|
||||
|
||||
@@ -141,6 +141,7 @@ CPP_SOURCES := \
|
||||
QSpinBox.cpp \
|
||||
QSplashScreen.cpp \
|
||||
QSplitter.cpp \
|
||||
QStackedWidget.cpp \
|
||||
QStandardItem.cpp \
|
||||
QStandardItemModel.cpp \
|
||||
QStatusBar.cpp \
|
||||
@@ -360,6 +361,7 @@ PRG_SOURCES := \
|
||||
TQSpinBox.prg \
|
||||
TQSplashScreen.prg \
|
||||
TQSplitter.prg \
|
||||
TQStackedWidget.prg \
|
||||
TQStandardItem.prg \
|
||||
TQStandardItemModel.prg \
|
||||
TQStatusBar.prg \
|
||||
|
||||
@@ -127,6 +127,7 @@ HB_FUNC( QT_HBQPLAINTEXTEDIT )
|
||||
void blockIndent( int steps )
|
||||
void deleteLine()
|
||||
void moveLine( int iDirection )
|
||||
void highlightSelectedColumns( bool yes )
|
||||
</SLOTS>
|
||||
|
||||
<SIGNALS>
|
||||
|
||||
@@ -90,6 +90,7 @@ void hbSetMultiLineCommentFormat( const QTextCharFormat & format )
|
||||
void hbSetSingleLineCommentFormat( const QTextCharFormat & format )
|
||||
void hbSetRule( QString name, QString pattern, QTextCharFormat & format )
|
||||
void hbSetFormat( QString name, const QTextCharFormat & format )
|
||||
void hbSetFormatColumnSelection( int start, int count, const QColor & color )
|
||||
|
||||
# QTextBlock currentBlock () const
|
||||
# int currentBlockState () const
|
||||
|
||||
107
harbour/contrib/hbqt/qth/QStackedWidget.qth
Normal file
107
harbour/contrib/hbqt/qth/QStackedWidget.qth
Normal file
@@ -0,0 +1,107 @@
|
||||
/*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
/*
|
||||
* Harbour Project source code:
|
||||
* QT Source Generator for Harbour
|
||||
*
|
||||
* Copyright 2009 Pritpal Bedi <pritpal@vouchcac.com>
|
||||
* www - http://www.harbour-project.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this software; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
* Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/).
|
||||
*
|
||||
* As a special exception, the Harbour Project gives permission for
|
||||
* additional uses of the text contained in its release of Harbour.
|
||||
*
|
||||
* The exception is that, if you link the Harbour libraries with other
|
||||
* files to produce an executable, this does not by itself cause the
|
||||
* resulting executable to be covered by the GNU General Public License.
|
||||
* Your use of that executable is in no way restricted on account of
|
||||
* linking the Harbour library code into it.
|
||||
*
|
||||
* This exception does not however invalidate any other reasons why
|
||||
* the executable file might be covered by the GNU General Public License.
|
||||
*
|
||||
* This exception applies only to the code released by the Harbour
|
||||
* Project under the name Harbour. If you copy code from other
|
||||
* Harbour Project or Free Software Foundation releases into a copy of
|
||||
* Harbour, as the General Public License permits, the exception does
|
||||
* not apply to the code that you add in this way. To avoid misleading
|
||||
* anyone as to the status of such modified files, you must delete
|
||||
* this exception notice from them.
|
||||
*
|
||||
* If you write modifications of your own for Harbour, it is your choice
|
||||
* whether to permit this exception to apply to your modifications.
|
||||
* If you do not wish that, delete this exception notice.
|
||||
*
|
||||
*/
|
||||
/*----------------------------------------------------------------------*/
|
||||
;
|
||||
; Header File to Generate QT Wrapper Sources
|
||||
;
|
||||
|
||||
<CLASS>
|
||||
QObject =
|
||||
Inherits = QFrame
|
||||
Type =
|
||||
New =
|
||||
</CLASS>
|
||||
|
||||
<SUBCLASS>
|
||||
</SUBCLASS>
|
||||
|
||||
<DOC>
|
||||
</DOC>
|
||||
|
||||
<CODE>
|
||||
#include <QtGui/QStackedWidget>
|
||||
|
||||
|
||||
/*
|
||||
* QStackedWidget ( QWidget * parent = 0 )
|
||||
* ~QStackedWidget ()
|
||||
*
|
||||
*/
|
||||
HB_FUNC( QT_QSTACKEDWIDGET )
|
||||
{
|
||||
hb_retptr( new QStackedWidget( hbqt_par_QWidget( 1 ) ) );
|
||||
}
|
||||
</CODE>
|
||||
|
||||
<ENUMS>
|
||||
</ENUMS>
|
||||
|
||||
<PROTOS>
|
||||
int addWidget ( QWidget * widget )
|
||||
int count () const
|
||||
int currentIndex () const
|
||||
QWidget * currentWidget () const
|
||||
int indexOf ( QWidget * widget ) const
|
||||
int insertWidget ( int index, QWidget * widget )
|
||||
void removeWidget ( QWidget * widget )
|
||||
QWidget * widget ( int index ) const
|
||||
</PROTOS>
|
||||
|
||||
<SLOTS>
|
||||
void setCurrentIndex ( int index )
|
||||
void setCurrentWidget ( QWidget * widget )
|
||||
</SLOTS>
|
||||
|
||||
<SIGNALS>
|
||||
void currentChanged ( int index )
|
||||
void widgetRemoved ( int index )
|
||||
</SIGNALS>
|
||||
Reference in New Issue
Block a user