2012-07-13 15:57 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbqt/qtgui/hbqtgui.ch
* contrib/hbqt/hbmk2_qt.hb
+ Applied: patch received from Ryszard Glab ( with my fixes of one overlook ).
fixes:
- some issues with QApplication:translation method
- it allows for binding QAction to a window for wchich the action
was deined, for example,
if SomeDialog.ui file has actions defined then virtual methods:
<actionName>_triggered is added to UI_SomeDialog class.
Thanks Ryszard, it is pleasure to see you on-board again.
This commit is contained in:
@@ -16,6 +16,19 @@
|
||||
The license applies to all entries newer than 2009-04-28.
|
||||
*/
|
||||
|
||||
2012-07-13 15:57 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
|
||||
* contrib/hbqt/qtgui/hbqtgui.ch
|
||||
* contrib/hbqt/hbmk2_qt.hb
|
||||
+ Applied: patch received from Ryszard Glab ( with my fixes of one overlook ).
|
||||
fixes:
|
||||
- some issues with QApplication:translation method
|
||||
- it allows for binding QAction to a window for wchich the action
|
||||
was deined, for example,
|
||||
if SomeDialog.ui file has actions defined then virtual methods:
|
||||
<actionName>_triggered is added to UI_SomeDialog class.
|
||||
|
||||
Thanks Ryszard, it is pleasure to see you on-board again.
|
||||
|
||||
2012-07-12 23:33 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
|
||||
* contrib/hbide/idebrowse.prg
|
||||
* contrib/hbide/ideeditor.prg
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
#include "directry.ch"
|
||||
#include "hbclass.ch"
|
||||
#include "error.ch"
|
||||
|
||||
#define I_( x ) hb_i18n_gettext( x )
|
||||
|
||||
@@ -573,7 +574,7 @@ STATIC FUNCTION uic_to_prg( hbmk, cFileNameSrc, cFileNameDst, cName )
|
||||
|
||||
#define HBQTUI_STRINGIFY( cStr ) '"' + cStr + '"'
|
||||
#define HBQTUI_PAD_30( cStr ) PadR( cStr, Max( Len( cStr ), 35 ) )
|
||||
#define HBQTUI_STRIP_SQ( cStr ) StrTran( StrTran( StrTran( StrTran( s, "[", " " ), "]", " " ), "\n", " " ), Chr( 10 ), " " )
|
||||
#define HBQTUI_STRIP_SQ( cStr ) StrTran( StrTran( StrTran( StrTran( cStr, "[", " " ), "]", " " ), "\n", " " ), Chr( 10 ), " " )
|
||||
|
||||
STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
LOCAL s
|
||||
@@ -588,6 +589,7 @@ STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
LOCAL cCmd
|
||||
LOCAL aReg
|
||||
LOCAL aLinesPRG
|
||||
LOCAL aMethodCalls := { { "QObject_connect( ", {| s | hbqtui_qobject_connect( s ) } } }
|
||||
|
||||
LOCAL regEx := hb_regexComp( "\bQ[A-Za-z_]+ \b" )
|
||||
|
||||
@@ -595,6 +597,7 @@ STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
|
||||
LOCAL aWidgets := {}
|
||||
LOCAL aCommands := {}
|
||||
LOCAL aCalls := {}
|
||||
|
||||
lCreateFinished := .F.
|
||||
|
||||
@@ -623,13 +626,18 @@ STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
ENDIF
|
||||
NEXT
|
||||
|
||||
FOR EACH s IN aLines
|
||||
IF ! Empty( s )
|
||||
hbqtui_replaceConstants( @s ) /* Replace Qt::* with Harbour constants */
|
||||
ENDIF
|
||||
NEXT
|
||||
|
||||
FOR EACH s IN aLines
|
||||
|
||||
IF ! Empty( s )
|
||||
|
||||
/* Replace Qt::* with actual values */
|
||||
hbqtui_replaceConstants( @s )
|
||||
hbqtui_QAppTranslate( @s )
|
||||
// hbqtui_replaceConstants( @s )
|
||||
|
||||
IF "setupUi" $ s
|
||||
lCreateFinished := .T.
|
||||
@@ -638,6 +646,7 @@ STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
/* It is the test for main widget's objectName, leave it. */
|
||||
|
||||
ELSEIF Left( s, 1 ) == "Q" .AND. ! lCreateFinished .AND. ( n := At( "*", s ) ) > 0
|
||||
HB_SYMBOL_UNUSED( n )
|
||||
/* We will deal later - just skip */
|
||||
|
||||
ELSEIF hbqtui_notAString( s ) .AND. ! Empty( aReg := hb_regex( regEx, s ) )
|
||||
@@ -654,13 +663,16 @@ STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
ELSEIF hbqtui_isNonImplementedMethod( s )
|
||||
/* Do nothing */
|
||||
|
||||
ELSEIF ( n := hbqtui_isSupportedMethodCall( s, aMethodCalls ) ) > 0
|
||||
AAdd( aCalls, Eval( aMethodCalls[ n ][ 2 ], s ) )
|
||||
|
||||
ELSEIF ! Empty( cText := hbqtui_pullSetToolTip( aLines, s:__enumIndex() ) )
|
||||
n := At( "->", cText )
|
||||
cNam := AllTrim( SubStr( cText, 1, n - 1 ) )
|
||||
cCmd := hbqtui_formatCommand( SubStr( cText, n + 2 ), .T., aWidgets )
|
||||
AAdd( aCommands, { cNam, cCmd } )
|
||||
AAdd( aCommands, { cNam, hbqtui_pullTranslate( cCmd ) } )
|
||||
|
||||
ELSEIF ! Empty( cText := hbqui_pullText( aLines, s:__enumIndex() ) )
|
||||
ELSEIF ! Empty( cText := hbqtui_pullText( aLines, s:__enumIndex() ) )
|
||||
n := At( "->", cText )
|
||||
cNam := AllTrim( SubStr( cText, 1, n - 1 ) )
|
||||
cCmd := hbqtui_formatCommand( SubStr( cText, n + 2 ), .T., aWidgets )
|
||||
@@ -688,7 +700,7 @@ STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
cNam := SubStr( s, 1, n - 1 )
|
||||
cCmd := hbqtui_formatCommand( SubStr( s, n + 2 ), .F., aWidgets )
|
||||
cCmd := hbqtui_setObjects( cCmd, aWidgets )
|
||||
AAdd( aCommands, { cNam, cCmd } )
|
||||
AAdd( aCommands, { cNam, hbqtui_pullTranslate( cCmd ) } )
|
||||
|
||||
ELSEIF ( n := At( "= new", s ) ) > 0
|
||||
IF ( n1 := At( "*", s ) ) > 0 .AND. n1 < n
|
||||
@@ -719,12 +731,12 @@ STATIC FUNCTION hbqtui_gen_prg( cFile, cFuncName )
|
||||
AAdd( aLinesPRG, " RETURN " + StrTran( cFuncName, "hbqtui_", "ui_" ) + "():new( oParent )" )
|
||||
AAdd( aLinesPRG, "" )
|
||||
|
||||
hbqtui_buildClassCode( cFuncName, cMCls, aWidgets, aCommands, aLinesPRG )
|
||||
hbqtui_buildClassCode( cFuncName, cMCls, aWidgets, aCommands, aCalls, aLinesPRG )
|
||||
|
||||
RETURN aLinesPRG
|
||||
|
||||
STATIC FUNCTION hbqtui_buildClassCode( cFuncName, cMCls, aWidgets, aCommands, aLinesPRG )
|
||||
LOCAL item, cClass, cNam, cCmd, s
|
||||
STATIC FUNCTION hbqtui_buildClassCode( cFuncName, cMCls, aWidgets, aCommands, aCalls, aLinesPRG )
|
||||
LOCAL item, cClass, cNam, cCmd
|
||||
|
||||
cClass := strtran( cFuncName, "hbqtui_", "ui_" )
|
||||
|
||||
@@ -738,10 +750,16 @@ STATIC FUNCTION hbqtui_buildClassCode( cFuncName, cMCls, aWidgets, aCommands, aL
|
||||
NEXT
|
||||
AAdd( aLinesPRG, "" )
|
||||
AAdd( aLinesPRG, " METHOD init( oParent )" )
|
||||
AAdd( aLinesPRG, " METHOD destroy() INLINE ::oWidget:setParent( QWidget() )" )
|
||||
AAdd( aLinesPRG, " METHOD destroy() INLINE ::oWidget:setParent( QWidget() )" )
|
||||
AAdd( aLinesPRG, "" )
|
||||
AAdd( aLinesPRG, " ERROR HANDLER __OnError( ... )" )
|
||||
AAdd( aLinesPRG, "" )
|
||||
FOR EACH item IN aWidgets
|
||||
IF At( "QAction", item[ 1 ] ) > 0
|
||||
AAdd( aLinesPRG, " MESSAGE " + PadR( item[ 2 ] + "_triggered()", max( 38, Len( item[ 2 ] + "_triggered()" ) ) ) + " VIRTUAL" )
|
||||
ENDIF
|
||||
NEXT
|
||||
AAdd( aLinesPRG, "" )
|
||||
AAdd( aLinesPRG, "ENDCLASS" )
|
||||
AAdd( aLinesPRG, "" )
|
||||
AAdd( aLinesPRG, "" )
|
||||
@@ -765,6 +783,7 @@ STATIC FUNCTION hbqtui_buildClassCode( cFuncName, cMCls, aWidgets, aCommands, aL
|
||||
AAdd( aLinesPRG, " ::" + PadR( item[ 2 ], 34 ) + " := " + hbqtui_hashToObj( item[ 4 ] ) )
|
||||
ELSE
|
||||
AAdd( aLinesPRG, " ::" + PadR( item[ 2 ], 34 ) + " := " + "::oWidget" )
|
||||
AAdd( aLinesPRG, "" )
|
||||
ENDIF
|
||||
NEXT
|
||||
AAdd( aLinesPRG, "" )
|
||||
@@ -776,32 +795,45 @@ STATIC FUNCTION hbqtui_buildClassCode( cFuncName, cMCls, aWidgets, aCommands, aL
|
||||
cCmd := StrTran( cCmd, "false", ".F." )
|
||||
|
||||
IF "setToolTip(" $ cCmd
|
||||
s := hbqtui_pullToolTip( cCmd )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": setToolTip( [" + HBQTUI_STRIP_SQ( s ) + "] )" )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": " + hbqtui_pullTranslate( cCmd ) )
|
||||
|
||||
ELSEIF "setPlainText(" $ cCmd
|
||||
s := hbqtui_pullToolTip( cCmd )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": setPlainText( [" + HBQTUI_STRIP_SQ( s ) + "] )" )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": " + cCmd )
|
||||
|
||||
ELSEIF "setStyleSheet(" $ cCmd
|
||||
s := hbqtui_pullToolTip( cCmd )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": setStyleSheet( [" + HBQTUI_STRIP_SQ( s ) + "] )" )
|
||||
hbqtui_stripFront( @cCmd, "(" )
|
||||
hbqtui_stripRear( @cCmd, ")" )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": setStyleSheet( " + HBQTUI_STRIP_SQ( cCmd ) + " )" )
|
||||
|
||||
ELSEIF "setText(" $ cCmd
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": " + hbqtui_pullTranslate( cCmd ) )
|
||||
|
||||
ELSEIF "setWhatsThis(" $ cCmd
|
||||
s := hbqtui_pullToolTip( cCmd )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": setWhatsThis( [" + HBQTUI_STRIP_SQ( s ) + "] )" )
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": " + hbqtui_pullTranslate( cCmd ) )
|
||||
|
||||
ELSEIF "header()->" $ cCmd
|
||||
/* TODO: how to handle : __qtreeviewitem->header()->setVisible( .F. ) */
|
||||
|
||||
ELSEIF cCmd == "pPtr"
|
||||
/* Nothing TO DO */
|
||||
|
||||
ELSE
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( cNam ) + ": " + hbqtui_hashToObj( cCmd ) )
|
||||
|
||||
ENDIF
|
||||
NEXT
|
||||
AAdd( aLinesPRG, "" )
|
||||
|
||||
FOR EACH item IN aWidgets
|
||||
IF item[ 1 ] == "QAction"
|
||||
AAdd( aLinesPRG, " ::" + HBQTUI_PAD_30( item[ 2 ] ) + ": connect( " + '"triggered()", {|| ::' + item[ 2 ] + "_triggered() } )" )
|
||||
ENDIF
|
||||
NEXT
|
||||
|
||||
/* supported method calls */
|
||||
AAdd( aLinesPRG, "" )
|
||||
FOR EACH item IN aCalls
|
||||
AAdd( aLinesPRG, " " + item )
|
||||
NEXT
|
||||
|
||||
AAdd( aLinesPRG, "" )
|
||||
AAdd( aLinesPRG, " RETURN Self" )
|
||||
AAdd( aLinesPRG, "" )
|
||||
@@ -854,12 +886,6 @@ STATIC FUNCTION hbqtui_hashToObj( cCmd )
|
||||
|
||||
RETURN cCmd
|
||||
|
||||
STATIC FUNCTION hbqtui_QAppTranslate( cCmd )
|
||||
IF "QApplication_translate" $ cCmd
|
||||
cCmd := hbqtui_pullTranslate( cCmd )
|
||||
ENDIF
|
||||
RETURN cCmd
|
||||
|
||||
STATIC FUNCTION hbqtui_formatCommand( cCmd, lText, widgets )
|
||||
LOCAL regDefine
|
||||
LOCAL aDefine
|
||||
@@ -874,14 +900,10 @@ STATIC FUNCTION hbqtui_formatCommand( cCmd, lText, widgets )
|
||||
lText := .T.
|
||||
ENDIF
|
||||
|
||||
// cCmd := StrTran( cCmd, "QApplication_translate" , "q__tr" )
|
||||
cCmd := StrTran( cCmd, "QApplication::UnicodeUTF8", '"UTF8"' )
|
||||
cCmd := StrTran( cCmd, "QString()" , '""' )
|
||||
cCmd := StrTran( cCmd, "QSize(" , "QSize(" )
|
||||
cCmd := StrTran( cCmd, "QRect(" , "QRect(" )
|
||||
cCmd := StrTran( cCmd, "QString()", ' "" ' )
|
||||
|
||||
IF "::" $ cCmd
|
||||
regDefine := hb_regexComp( "\b[A-Za-z_]+\:\:[A-Za-z_]+\b" )
|
||||
regDefine := hb_regexComp( "\b[A-Za-z_]+\:\:[A-Za-z0-9_]+\b" )
|
||||
aDefine := hb_regex( regDefine, cCmd )
|
||||
IF ! Empty( aDefine )
|
||||
cCmd := StrTran( cCmd, "::", "_" ) /* Qt Defines - how to handle */
|
||||
@@ -905,24 +927,90 @@ STATIC FUNCTION hbqtui_formatCommand( cCmd, lText, widgets )
|
||||
|
||||
STATIC FUNCTION hbqtui_pullTranslate( cCmd )
|
||||
LOCAL n, n1, n2, n3, n4, cArgs, cText
|
||||
LOCAL cName
|
||||
LOCAL cEnd
|
||||
LOCAL cDisamb
|
||||
LOCAL oError
|
||||
|
||||
IF ( n := at( "QApplication_translate", cCmd ) ) > 0
|
||||
/* Examples:
|
||||
object->setWindowTitle(QApplication_translate("DialogName", "[Dialog Title]\"\303\263Title\"", 0, QApplication_UnicodeUTF8))
|
||||
object->setWindowTitle(QApplication::translate("FormEnvironments", "Form", 0, QApplication::UnicodeUTF8));
|
||||
object->setToolTip(QString());
|
||||
object->setWhatsThis(QApplication::translate("FormEnvironments", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
||||
"p, li { white-space: pre-wrap; }\n"
|
||||
"</style></head><body style=\" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
|
||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">HBIDE employes the concept of keeping everything tied together. It means all complier specific environments are kept together in a convinient way and applied as per need.</span></p>\n"
|
||||
"<p align=\"center\" style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
|
||||
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" fo"
|
||||
"nt-size:8pt;\">So here you view/edit all the environments you employ in your applications. At the time you will build the project, a list of stated environments will be presented to choose from.</span></p>\n"
|
||||
"<p align=\"center\" style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;\"></p>\n"
|
||||
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">This opens up the possibility to experiment with different compilers without re-opening the IDE or setting up the envvars manually.</span></p></body></html>", 0, QApplication::UnicodeUTF8));
|
||||
*/
|
||||
|
||||
IF ( n := At( "QApplication_translate", cCmd ) ) > 0
|
||||
n1 := hb_at( "(", cCmd, n )
|
||||
n2 := hb_rat( ")", cCmd )
|
||||
cArgs := SubStr( cCmd, n1 + 1, n2 - n1 - 2 )
|
||||
/* "DialogName", "[Dialog Title]\"\303\263Title\"", 0, QApplication_UnicodeUTF8 */
|
||||
|
||||
n3 := at( ",", cArgs )
|
||||
n4 := hb_at( ",", cArgs, n3 + 1 )
|
||||
cText := StrTran( AllTrim( SubStr( cArgs, n3 + 1, n4 - n3 - 2 ) ), '"' )
|
||||
cName := SubStr( cArgs, 2, n3 - 3 )
|
||||
cArgs := SubStr( cArgs, n3 + 1 )
|
||||
/* "[Dialog Title]\"\303\263Title\"", 0, QApplication_UnicodeUTF8 */
|
||||
IF ( n4 := At( "QApplication_UnicodeUTF8", cArgs ) ) > 0
|
||||
cEnd := SubStr( cArgs, n4 ) /* "QApplication_UnicodeUTF8" */
|
||||
ELSEIF ( n4 := At( "QApplication_CodecForTr", cArgs ) ) > 0
|
||||
cEnd := SubStr( cArgs, n4 ) /* "QApplication_CodecForTr" */
|
||||
ELSE
|
||||
oError := ErrorNew()
|
||||
oError:severity := ES_ERROR
|
||||
oError:genCode := EG_ARG
|
||||
oError:subSystem := "HBMK2"
|
||||
oError:subCode := 1001
|
||||
oError:canRetry := .F.
|
||||
oError:canDefault := .F.
|
||||
oError:Args := cCmd
|
||||
oError:operation := ProcName()
|
||||
oError:Description := "Unsupported QT-encoding in QApplication:translate() call"
|
||||
Eval( ErrorBlock(), oError )
|
||||
ENDIF
|
||||
|
||||
cCmd := SubStr( cCmd, 1, n - 1 ) + ' "' + cText + '" ' + ")"
|
||||
IF ! Empty( cEnd )
|
||||
/* Known translation */
|
||||
cArgs := Left( cArgs, n4 - 1 )
|
||||
/* "[Dialog Title]\"\303\263Title\"", 0, */
|
||||
n4 := hb_RAt( ",", cArgs )
|
||||
cArgs := Left( cArgs, n4 - 1 )
|
||||
/* "[Dialog Title]\"\303\263Title\"", 0 */
|
||||
n4 := hb_RAt( ",", cArgs )
|
||||
cDisamb := AllTrim( SubStr( cArgs, n4 + 1 ) )
|
||||
IF cDisamb == "0"
|
||||
cDisamb := '""'
|
||||
ENDIF
|
||||
cArgs := AllTrim( Left( cArgs, n4 - 1 ) )
|
||||
// cArgs := HB_STRDECODESCAPE( SubStr( cArgs, 2, Len( cArgs ) - 2 ) )
|
||||
|
||||
IF "DOCTYPE HTML PUBLIC" $ cArgs
|
||||
cArgs := StrTran( cArgs, '\"', '"' )
|
||||
cArgs := StrTran( cArgs, '\n', " " )
|
||||
cArgs := StrTran( cArgs, '""' )
|
||||
cArgs := "[" + Substr( cArgs, 2, Len( cArgs ) - 2 ) + "]"
|
||||
cText := ' QApplication():translate( "' + cName + '", ' + cArgs + ', ' + cDisamb + ', ' + cEnd + " )"
|
||||
ELSE
|
||||
cText := ' QApplication():translate( "' + cName + '", e' + cArgs + ', ' + cDisamb + ', ' + cEnd + " )"
|
||||
ENDIF
|
||||
/* Finally translate to CP used by application */
|
||||
cCmd := SubStr( cCmd, 1, n - 1 ) + cText + " )"
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
RETURN cCmd
|
||||
|
||||
STATIC FUNCTION hbqtui_isNonImplementedMethod( cString )
|
||||
LOCAL cMethod, aMethods := {}
|
||||
|
||||
AAdd( aMethods, "setAccessibleName" )
|
||||
AAdd( aMethods, "setAccessibleName" ) /* Add other methods which could not been implemented in HbQt */
|
||||
|
||||
FOR EACH cMethod IN aMethods
|
||||
IF cMethod $ cString
|
||||
@@ -955,6 +1043,36 @@ STATIC FUNCTION hbqtui_occurs( cString, cCharToFind )
|
||||
|
||||
RETURN nCount
|
||||
|
||||
STATIC FUNCTION hbqtui_isSupportedMethodCall( cString, aMethodCalls )
|
||||
LOCAL aMethod
|
||||
|
||||
FOR EACH aMethod IN aMethodCalls
|
||||
IF aMethod[ 1 ] $ cString
|
||||
RETURN aMethod:__enumIndex()
|
||||
ENDIF
|
||||
NEXT
|
||||
|
||||
RETURN 0
|
||||
|
||||
STATIC FUNCTION hbqtui_qobject_connect( cString )
|
||||
LOCAL cCall
|
||||
LOCAL n, n2, n4
|
||||
LOCAL aPar
|
||||
|
||||
/* QObject::connect( buttonOK, SIGNAL( clicked() ), actionName, SLOT( trigger() ) ); */
|
||||
cString := StrTran( cString, "QObject_connect", "hbqt_connect" )
|
||||
n := At( "(", cString )
|
||||
aPar := hb_aTokens( SubStr( cString, n + 1, Len( cString ) - n - 1 ), "," )
|
||||
n2 := At( "(", aPar[ 2 ] )
|
||||
n4 := At( "(", aPar[ 4 ] )
|
||||
cCall := Left( cString, n ) +;
|
||||
"::" + AllTrim( aPar[ 1 ] ) + ', ' +;
|
||||
'"' + SubStr( aPar[ 2 ], n2 + 1, Len( aPar[ 2 ] ) - n2 - 1 ) + '", ' +;
|
||||
"::" + AllTrim( aPar[ 3 ] ) + ', ' +;
|
||||
'"' + SubStr( aPar[ 4 ], n4 + 1, Len( aPar[ 4 ] ) - n4 - 1 ) + '" ) '
|
||||
|
||||
RETURN cCall
|
||||
|
||||
STATIC FUNCTION hbqtui_pullColumn( cCmd, nCol )
|
||||
|
||||
IF "(0," $ cCmd
|
||||
@@ -989,13 +1107,22 @@ STATIC PROCEDURE hbqtui_replaceConstants( /* @ */ cString )
|
||||
LOCAL cCmdB
|
||||
LOCAL cCmdE
|
||||
LOCAL cOR
|
||||
LOCAL n, n1
|
||||
LOCAL n, n1, n2, n3
|
||||
|
||||
LOCAL regDefine := hb_regexComp( "\b[A-Za-z_]+\:\:[A-Za-z_]+\b" )
|
||||
LOCAL regDefine := hb_regexComp( "\b[A-Za-z_]+\:\:[A-Za-z0-9_]+\b" )
|
||||
|
||||
IF ( n := At( "QString::fromUtf8(", cString ) ) > 0
|
||||
IF At( 'QString::fromUtf8("")', cString ) > 0
|
||||
cString := StrTran( cString, 'QString::fromUtf8("")', '""' )
|
||||
|
||||
ELSEIF ( n := At( "QString::fromUtf8(", cString ) ) > 0
|
||||
n2 := hb_At( '"', cString, n )
|
||||
n3 := hb_At( '"', cString, n2 + 1 )
|
||||
n1 := hb_At( ")", cString, n )
|
||||
cString := SubStr( cString, 1, n - 1 ) + SubStr( cString, n + Len( "QString::fromUtf8(" ), n1 - ( n + Len( "QString::fromUtf8(" ) ) ) + SubStr( cString, n1 + 1 )
|
||||
IF n2 < n1 .AND. n1 < n3
|
||||
n1 := hb_At( ")", cString, n3 + 1 )
|
||||
ENDIF
|
||||
cString := SubStr( cString, 1, n - 1 ) + substr( cString, n + len( "QString::fromUtf8(" ), n1 - ( n + len( "QString::fromUtf8(" ) ) ) + SubStr( cString, n1 + 1 )
|
||||
|
||||
ENDIF
|
||||
|
||||
IF hbqtui_occurs( cString, "|" ) > 0
|
||||
@@ -1051,7 +1178,7 @@ STATIC FUNCTION hbqtui_setObjects( cCmd, aWidgets )
|
||||
|
||||
RETURN cCmd
|
||||
|
||||
STATIC FUNCTION hbqui_pullText( aLines, nFrom )
|
||||
STATIC FUNCTION hbqtui_pullText( aLines, nFrom )
|
||||
LOCAL cString := ""
|
||||
LOCAL nLen := Len( aLines )
|
||||
LOCAL aKeyword := { "setText(", "setPlainText(", "setStyleSheet(", "setWhatsThis(" }
|
||||
|
||||
@@ -1407,6 +1407,15 @@
|
||||
#define Qt_WMacNoSheet 0 // No longer needed.
|
||||
|
||||
|
||||
//Input Methods Hints
|
||||
#define Qt_ImhHiddenText 0x1 // Characters should be hidden, as is typically used when entering passwords. This is automatically set when setting QLineEdit::echoMode to Password.
|
||||
#define Qt_ImhNoAutoUppercase 0x2 // The input method should not try to automatically switch to upper case when a sentence ends.
|
||||
#define Qt_ImhPreferNumbers 0x4 // Numbers are preferred (but not required).
|
||||
#define Qt_ImhPreferUppercase 0x8 // Upper case letters are preferred (but not required).
|
||||
#define Qt_ImhPreferLowercase 0x10 // Lower case letters are preferred (but not required).
|
||||
#define Qt_ImhNoPredictiveText 0x20 // Do not use predictive text (i.e. dictionary lookup) while typing.
|
||||
|
||||
|
||||
// Frame Shadow
|
||||
#define QFrame_Plain 0x0010 // the frame and contents appear level with the surroundings; draws using the palette QPalette::WindowText color (without any 3D effect)
|
||||
#define QFrame_Raised 0x0020 // the frame and contents appear raised; draws a 3D raised line using the light and dark colors of the current color group
|
||||
@@ -2353,6 +2362,20 @@
|
||||
#define QDeclarativeEngine_CppOwnership 0 // The object is owned by C++ code, and will never be deleted by QML. The JavaScript destroy() method cannot be used on objects with CppOwnership. This option is similar to QScriptEngine::QtOwnership.
|
||||
#define QDeclarativeEngine_JavaScriptOwnership 1 // The object is owned by JavaScript. When the object is returned to QML as the return value of a method call or property access, QML will delete the object if there are no remaining JavaScript references to it and it has no QObject::parent(). This option is similar to QScriptEngine::ScriptOwnership.
|
||||
|
||||
|
||||
//MenuRole of Qaction
|
||||
#define QAction_NoRole 0 // This action should not be put into the application menu
|
||||
#define QAction_TextHeuristicRole 1 // This action should be put in the application menu based on the action's text as described in the QMenuBar documentation.
|
||||
#define QAction_ApplicationSpecificRole 2 // This action should be put in the application menu with an application specific role
|
||||
#define QAction_AboutQtRole 3 // This action matches handles the "About Qt" menu item.
|
||||
#define QAction_AboutRole 4 // This action should be placed where the "About" menu item is in the application menu. The text of the menu item will be set to "About <application name>". The application name is fetched from the Info.plist file in the application's bundle (See Deploying an Application on Mac OS X).
|
||||
#define QAction_PreferencesRole 5 // This action should be placed where the "Preferences..." menu item is in the application menu.
|
||||
#define QAction_QuitRole 6 // This action should be placed where the Quit menu item is in the application menu.
|
||||
|
||||
//QApplication:Translate
|
||||
#define QApplication_CodecForTr 0 // The encoding specified by QTextCodec::codecForTr() (Latin-1 if none has been set).
|
||||
#define QApplication_UnicodeUTF8 1 // UTF-8
|
||||
|
||||
#define QLCDNumber_Hex 0 // Hexadecimal
|
||||
#define QLCDNumber_Dec 1 // Decimal
|
||||
#define QLCDNumber_Oct 2 // Octal
|
||||
@@ -2366,6 +2389,7 @@
|
||||
#define QValidator_Intermediate 1 // The string is a plausible intermediate value.
|
||||
#define QValidator_Acceptable 2 // The string is acceptable as a final result; i.e. it is valid.
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
// HBQT Defined Constants
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
Reference in New Issue
Block a user