2010-07-22 10:15 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbxbp/hbpprocess.prg
+ Added: :waitForFinished() method.
* contrib/hbide/idebrowse.prg
% Reworked: ideDBU:formView - now it is presented in a scrollable widget.
* contrib/hbide/ideprojmanager.prg
+ Added: "xbuild" project files .xbp as basis for project conversion.
! Changed: hb_processRun() => QProcess().
This commit is contained in:
@@ -16,6 +16,17 @@
|
||||
The license applies to all entries newer than 2009-04-28.
|
||||
*/
|
||||
|
||||
2010-07-22 10:15 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
|
||||
* contrib/hbxbp/hbpprocess.prg
|
||||
+ Added: :waitForFinished() method.
|
||||
|
||||
* contrib/hbide/idebrowse.prg
|
||||
% Reworked: ideDBU:formView - now it is presented in a scrollable widget.
|
||||
|
||||
* contrib/hbide/ideprojmanager.prg
|
||||
+ Added: "xbuild" project files .xbp as basis for project conversion.
|
||||
! Changed: hb_processRun() => QProcess().
|
||||
|
||||
2010-07-22 16:58 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
|
||||
- contrib/hbqt/hbqt_hbdbfmodel.cpp
|
||||
* contrib/hbqt/generator/qt45.qtp
|
||||
|
||||
@@ -471,11 +471,11 @@ METHOD IdeBrowseManager:execEvent( cEvent, p, p1 )
|
||||
|
||||
CASE "buttonShowForm_clicked"
|
||||
IF !empty( ::oCurBrw )
|
||||
IF ::oCurBrw:qForm:isHidden()
|
||||
::oCurBrw:qForm:show()
|
||||
IF ::oCurBrw:qScrollArea:isHidden()
|
||||
::oCurBrw:qScrollArea:show()
|
||||
::aToolBtns[ 3 ]:setChecked( .t. )
|
||||
ELSE
|
||||
::oCurBrw:qForm:hide()
|
||||
::oCurBrw:qScrollArea:hide()
|
||||
::aToolBtns[ 3 ]:setChecked( .f. )
|
||||
ENDIF
|
||||
ENDIF
|
||||
@@ -1236,6 +1236,7 @@ CLASS IdeBrowse INHERIT IdeObject
|
||||
DATA qSplitter
|
||||
DATA qTimer
|
||||
DATA qStatus
|
||||
DATA qScrollArea
|
||||
|
||||
DATA nID INIT 0
|
||||
|
||||
@@ -1465,32 +1466,6 @@ METHOD IdeBrowse:destroy()
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:configure()
|
||||
LOCAL nOff
|
||||
LOCAL nRowPos := ::oBrw:rowPos()
|
||||
LOCAL nColPos := ::oBrw:colPos()
|
||||
|
||||
::oBrw:configure()
|
||||
|
||||
IF nRowPos > ::oBrw:rowCount()
|
||||
nOff := nRowPos - ::oBrw:rowCount()
|
||||
::oBrw:rowPos := ::oBrw:rowCount()
|
||||
ELSE
|
||||
nOff := 0
|
||||
ENDIF
|
||||
::oBrw:colPos := nColPos
|
||||
|
||||
::oBrw:refreshAll()
|
||||
::oBrw:forceStable()
|
||||
::oBrw:setCurrentIndex( nRowPos > ::oBrw:rowCount() )
|
||||
IF nOff > 0
|
||||
SetAppEvent( xbeBRW_Navigate, XBPBRW_Navigate_Skip, nOff, ::oBrw )
|
||||
ENDIF
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:buildBrowser()
|
||||
LOCAL qLayout, oWnd, oXbpBrowse
|
||||
|
||||
@@ -1530,17 +1505,23 @@ METHOD IdeBrowse:buildBrowser()
|
||||
|
||||
/* Form View */
|
||||
::qForm := QWidget():new()
|
||||
::qForm:setMinimumSize( QSize():new( 300 , len( ::aStruct ) * 34 ) )
|
||||
::qForm:setMaximumSize( QSize():new( 12000, 48000 ) )
|
||||
|
||||
::qFLayout := QFormLayout():new()
|
||||
::qForm:setLayout( ::qFLayout )
|
||||
|
||||
//::qSplitter:addWidget( ::qForm )
|
||||
::qScrollArea := QScrollArea():new()
|
||||
::qScrollArea:setWidget( ::qForm )
|
||||
::qScrollArea:hide()
|
||||
|
||||
::qForm:hide() /* Form view defaults to hidden */
|
||||
::qSplitter:addWidget( ::qScrollArea )
|
||||
|
||||
::qLayout := qLayout
|
||||
::oWnd := oWnd
|
||||
::oBrw := oXbpBrowse
|
||||
|
||||
#if 0
|
||||
::qVerSpl := QSplitter():new( Qt_Vertical )
|
||||
::qSplitter:addWidget( ::qVerSpl )
|
||||
|
||||
@@ -1551,7 +1532,52 @@ METHOD IdeBrowse:buildBrowser()
|
||||
::qClose:hide()
|
||||
|
||||
::qVerSpl:addWidget( ::qClose )
|
||||
#endif
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:buildColumns()
|
||||
LOCAL oXbpColumn, aPresParam, a_
|
||||
|
||||
IF ::nType == BRW_TYPE_DBF
|
||||
FOR EACH a_ IN ::aStruct
|
||||
aPresParam := ::getPP( a_ )
|
||||
|
||||
oXbpColumn := XbpColumn():new()
|
||||
oXbpColumn:dataLink := ::dataLink( a_:__enumIndex() )
|
||||
oXbpColumn:create( , , , , aPresParam )
|
||||
|
||||
::oBrw:addColumn( oXbpColumn )
|
||||
NEXT
|
||||
ELSE
|
||||
FOR EACH a_ IN ::aStruct
|
||||
::getPP( a_, a_:__enumIndex() )
|
||||
|
||||
oXbpColumn := XbpColumn():new()
|
||||
oXbpColumn:dataLink := ::dataLink( a_:__enumIndex() )
|
||||
oXbpColumn:create( , , , , aPresParam )
|
||||
|
||||
::oBrw:addColumn( oXbpColumn )
|
||||
NEXT
|
||||
ENDIF
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:buildForm()
|
||||
LOCAL a_, qLbl, qEdit
|
||||
|
||||
IF ::nType == BRW_TYPE_DBF
|
||||
FOR EACH a_ IN ::aStruct
|
||||
qLbl := QLabel():new(); qLbl:setText( a_[ 1 ] )
|
||||
qEdit := QLineEdit():new()
|
||||
::qFLayout:addRow( qLbl, qEdit )
|
||||
aadd( ::aForm, { qLbl, qEdit } )
|
||||
NEXT
|
||||
ELSE
|
||||
ENDIF
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
@@ -1598,6 +1624,32 @@ METHOD IdeBrowse:buildMdiWindow()
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:configure()
|
||||
LOCAL nOff
|
||||
LOCAL nRowPos := ::oBrw:rowPos()
|
||||
LOCAL nColPos := ::oBrw:colPos()
|
||||
|
||||
::oBrw:configure()
|
||||
|
||||
IF nRowPos > ::oBrw:rowCount()
|
||||
nOff := nRowPos - ::oBrw:rowCount()
|
||||
::oBrw:rowPos := ::oBrw:rowCount()
|
||||
ELSE
|
||||
nOff := 0
|
||||
ENDIF
|
||||
::oBrw:colPos := nColPos
|
||||
|
||||
::oBrw:refreshAll()
|
||||
::oBrw:forceStable()
|
||||
::oBrw:setCurrentIndex( nRowPos > ::oBrw:rowCount() )
|
||||
IF nOff > 0
|
||||
SetAppEvent( xbeBRW_Navigate, XBPBRW_Navigate_Skip, nOff, ::oBrw )
|
||||
ENDIF
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*------------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:execEvent( cEvent, p, p1 )
|
||||
LOCAL cIndex, a_, cPmt, nZeros
|
||||
|
||||
@@ -1785,24 +1837,6 @@ METHOD IdeBrowse:populateForm()
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:buildForm()
|
||||
LOCAL a_, qLbl, qEdit
|
||||
|
||||
IF ::nType == BRW_TYPE_DBF
|
||||
FOR EACH a_ IN ::aStruct
|
||||
qLbl := QLabel():new(); qLbl:setText( a_[ 1 ] )
|
||||
qEdit := QLineEdit():new()
|
||||
::qFLayout:addRow( qLbl, qEdit )
|
||||
aadd( ::aForm, { qLbl, qEdit } )
|
||||
NEXT
|
||||
ELSE
|
||||
|
||||
ENDIF
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:saveField( nField, x )
|
||||
IF ( ::cAlias )->( DbrLock() )
|
||||
( ::cAlias )->( FieldPut( nField, x ) )
|
||||
@@ -1829,35 +1863,6 @@ METHOD IdeBrowse:dataLink( nField )
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:buildColumns()
|
||||
LOCAL oXbpColumn, aPresParam, a_
|
||||
|
||||
IF ::nType == BRW_TYPE_DBF
|
||||
FOR EACH a_ IN ::aStruct
|
||||
aPresParam := ::getPP( a_ )
|
||||
|
||||
oXbpColumn := XbpColumn():new()
|
||||
oXbpColumn:dataLink := ::dataLink( a_:__enumIndex() )
|
||||
oXbpColumn:create( , , , , aPresParam )
|
||||
|
||||
::oBrw:addColumn( oXbpColumn )
|
||||
NEXT
|
||||
ELSE
|
||||
FOR EACH a_ IN ::aStruct
|
||||
::getPP( a_, a_:__enumIndex() )
|
||||
|
||||
oXbpColumn := XbpColumn():new()
|
||||
oXbpColumn:dataLink := ::dataLink( a_:__enumIndex() )
|
||||
oXbpColumn:create( , , , , aPresParam )
|
||||
|
||||
::oBrw:addColumn( oXbpColumn )
|
||||
NEXT
|
||||
ENDIF
|
||||
|
||||
RETURN Self
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
METHOD IdeBrowse:getPP( aStruct )
|
||||
LOCAL aPresParam := {}
|
||||
|
||||
|
||||
@@ -342,7 +342,8 @@ METHOD IdeProjManager:loadProperties( cProjFileName, lNew, lFetch, lUpdateTree )
|
||||
ELSE
|
||||
IF empty( cProjFileName )
|
||||
cProjFileName := hbide_fetchAFile( ::oDlg, "Open Project...", { { "Harbour Projects", "*.hbp" } , ;
|
||||
{ "xMate Projects" , "*.xhp" } } )
|
||||
{ "xMate Projects" , "*.xhp" } , ;
|
||||
{ "xBuild Projects" , "*.xbp" } } )
|
||||
cProjFileName := ::synchronizeAlienProject( cProjFileName )
|
||||
|
||||
::oDockPT:show()
|
||||
@@ -814,7 +815,7 @@ METHOD IdeProjManager:buildInterface()
|
||||
|
||||
METHOD IdeProjManager:synchronizeAlienProject( cProjFileName )
|
||||
LOCAL cPath, cFile, cExt, cHbp
|
||||
LOCAL cExeHbMk2
|
||||
LOCAL cExeHbMk2, oProcess, cCmd
|
||||
|
||||
hb_fNameSplit( cProjFileName, @cPath, @cFile, @cExt )
|
||||
IF lower( cExt ) == ".hbp" /* Nothing to do */
|
||||
@@ -832,23 +833,24 @@ METHOD IdeProjManager:synchronizeAlienProject( cProjFileName )
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
cExeHbMk2 := "hbmk2"
|
||||
IF ! Empty( ::oIDE:oINI:cPathHbMk2 )
|
||||
cExeHbMk2 := hbide_DirAddPathSep( ::oIDE:oINI:cPathHbMk2 ) + cExeHbMk2
|
||||
ENDIF
|
||||
cExeHbMk2 := ::oINI:getHbmk2File()
|
||||
|
||||
SWITCH lower( cExt )
|
||||
CASE ".xhp"
|
||||
hb_processRun( cExeHbMk2 + " -xhp=" + cProjFileName )
|
||||
cCmd := cExeHbMk2 + " -xhp=" + cProjFileName
|
||||
EXIT
|
||||
CASE ".xbp"
|
||||
hb_processRun( cExeHbMk2 + " -xbp=" + cProjFileName )
|
||||
cCmd := cExeHbMk2 + " -xbp=" + cProjFileName
|
||||
EXIT
|
||||
CASE "???"
|
||||
hb_processRun( cExeHbMk2 + " -hbmake=" + cProjFileName )
|
||||
cCmd := cExeHbMk2 + " -hbmake=" + cProjFileName
|
||||
EXIT
|
||||
ENDSWITCH
|
||||
|
||||
oProcess := QProcess():new()
|
||||
oProcess:start_1( cCmd )
|
||||
oProcess:waitForFinished()
|
||||
|
||||
RETURN cHbp
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
@@ -99,6 +99,7 @@ CLASS HbpProcess
|
||||
METHOD addArg( cArg )
|
||||
METHOD start( cShellCmd )
|
||||
|
||||
METHOD waitForFinished() INLINE ::qProcess:waitForFinished()
|
||||
METHOD finished( bBlock ) SETGET // Slot
|
||||
METHOD output( bBlock ) SETGET // Slot
|
||||
METHOD workingPath( cPath ) SETGET // Slot
|
||||
|
||||
Reference in New Issue
Block a user