2010-03-11 09:30 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)

* contrib/hbqt/doc/en/class_hbqplaintextedit.txt
  * contrib/hbqt/hbqt_hbqplaintextedit.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.h
  * contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
  * contrib/hbqt/qtgui/THBQPlainTextEdit.prg
  * contrib/hbqt/qth/HBQPlainTextEdit.qth

  * contrib/hbide/resources/themesex.ui
  * contrib/hbide/resources/themesex.uic

  * contrib/hbide/ideeditor.prg
  * contrib/hbide/idethemes.prg
    + Reimplemented "Themes".
      * Now it is possible to change current line and line area background
        colors. Also synchronized the current colors for these areas 
        with rest of the theme.
      * Now you can apply a particular theme globally to all tabs.
      * Made easy the way GUI elements are presented, it is more intuitive.
This commit is contained in:
Pritpal Bedi
2010-03-11 17:36:04 +00:00
parent 575ece20a6
commit 98820767f1
11 changed files with 390 additions and 208 deletions

View File

@@ -17,6 +17,26 @@
past entries belonging to author(s): Viktor Szakats.
*/
2010-03-11 09:30 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* contrib/hbqt/doc/en/class_hbqplaintextedit.txt
* contrib/hbqt/hbqt_hbqplaintextedit.cpp
* contrib/hbqt/hbqt_hbqplaintextedit.h
* contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
* contrib/hbqt/qtgui/THBQPlainTextEdit.prg
* contrib/hbqt/qth/HBQPlainTextEdit.qth
* contrib/hbide/resources/themesex.ui
* contrib/hbide/resources/themesex.uic
* contrib/hbide/ideeditor.prg
* contrib/hbide/idethemes.prg
+ Reimplemented "Themes".
* Now it is possible to change current line and line area background
colors. Also synchronized the current colors for these areas
with rest of the theme.
* Now you can apply a particular theme globally to all tabs.
* Made easy the way GUI elements are presented, it is more intuitive.
2010-03-11 18:29 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbtoken.c
* Marked function below with HB_LEGACY_LEVEL3:

View File

@@ -1408,6 +1408,11 @@ CLASS IdeEdit INHERIT IdeObject
METHOD hidePrototype()
METHOD completeCode( p )
METHOD setLineNumbersBkColor( nR, nG, nB )
METHOD setCurrentLineColor( nR, nG, nB )
METHOD down()
METHOD up()
METHOD refresh()
ENDCLASS
/*----------------------------------------------------------------------*/
@@ -1870,6 +1875,44 @@ METHOD IdeEdit:setNewMark()
/*----------------------------------------------------------------------*/
METHOD IdeEdit:setLineNumbersBkColor( nR, nG, nB )
::qEdit:hbSetLineAreaBkColor( QColor():new( nR, nG, nB ) )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeEdit:setCurrentLineColor( nR, nG, nB )
::qEdit:hbSetCurrentLineColor( QColor():new( nR, nG, nB ) )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeEdit:refresh()
::qEdit:hbRefresh()
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeEdit:down()
LOCAL qCursor := QTextCursor():configure( ::qEdit:textCursor() )
qCursor:movePosition( QTextCursor_Down )
::qEdit:setTextCursor( qCursor )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeEdit:up()
LOCAL qCursor := QTextCursor():configure( ::qEdit:textCursor() )
qCursor:movePosition( QTextCursor_Up )
::qEdit:setTextCursor( qCursor )
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeEdit:duplicateLine()
::qEdit:hbDuplicateLine()
RETURN Self

View File

@@ -82,6 +82,9 @@
#define applyMenu_triggered_applyToCurrentTab 1
#define applyMenu_triggered_setAsDefault 2
#define applyMenu_triggered_applyToAllTabs 3
#define listThemes_currentRowChanged 4
#define listItems_currentRowChanged 5
/*----------------------------------------------------------------------*/
@@ -144,6 +147,8 @@ CLASS IdeThemes INHERIT IdeObject
METHOD selectThemeProc( nMode, p, oSL, cTheme )
METHOD buildINI()
METHOD parseINI( lAppend )
METHOD updateLineNumbersBkColor()
METHOD updateCurrentLineColor()
ENDCLASS
@@ -216,24 +221,14 @@ METHOD IdeThemes:create( oIde, cIniFile )
/*----------------------------------------------------------------------*/
METHOD IdeThemes:destroy()
LOCAL qAct
IF !empty( ::oUI )
::qHiliter := NIL
::qEdit := NIL
FOR EACH qAct IN ::aApplyAct
::disconnect( qAct, "triggered(bool)" )
qAct := NIL
NEXT
::qMenuApply := NIL
::aApplyAct := NIL
::oThemesDock:oWidget:setWidget( QWidget():new() )
hbide_dbg( 0,1,"IdeThemes:destroy()" )
IF !empty( ::oUI )
::oUI:destroy()
hbide_dbg( 1,1,"IdeThemes:destroy()" )
ENDIF
ENDIF
@@ -242,11 +237,31 @@ hbide_dbg( 1,1,"IdeThemes:destroy()" )
/*----------------------------------------------------------------------*/
METHOD IdeThemes:execEvent( nMode, p )
LOCAL oEditor
LOCAL oEditor, a_
HB_SYMBOL_UNUSED( p )
DO CASE
CASE nMode == listItems_currentRowChanged
::nCurItem := p+1
IF ::nCurItem == 13
::updateCurrentLineColor()
ELSEIF ::nCurItem == 16
::updateLineNumbersBkColor()
ELSE
::setAttributes( p )
ENDIF
CASE nMode == listThemes_currentRowChanged
::nCurTheme := p+1
::setTheme( p )
CASE nMode == applyMenu_triggered_applyToAllTabs
FOR EACH a_ IN ::aTabs
a_[ TAB_OEDITOR ]:applyTheme( ::aThemes[ ::nCurTheme, 1 ] )
NEXT
CASE nMode == applyMenu_triggered_applyToCurrentTab
IF !empty( oEditor := ::oEM:getEditorCurrent() )
oEditor:applyTheme( ::aThemes[ ::nCurTheme, 1 ] )
@@ -444,6 +459,14 @@ METHOD IdeThemes:setSyntaxHilighting( qEdit, cTheme, lNew )
::setSingleLineCommentRule( qHiliter, cTheme )
::setQuotesRule( qHiliter, cTheme )
IF __ObjGetClsName( qEdit ) == "HBQPLAINTEXTEDIT"
aAttr := ::getThemeAttribute( "CurrentLineBackground", cTheme )
qEdit:hbSetCurrentLineColor( QColor():new( aAttr[ THM_ATR_R ], aAttr[ THM_ATR_G ], aAttr[ THM_ATR_B ] ) )
aAttr := ::getThemeAttribute( "LineNumbersBkColor", cTheme )
qEdit:hbSetLineAreaBkColor( QColor():new( aAttr[ THM_ATR_R ], aAttr[ THM_ATR_G ], aAttr[ THM_ATR_B ] ) )
ENDIF
qHiliter:setDocument( qEdit:document() )
RETURN qHiliter
@@ -451,25 +474,23 @@ METHOD IdeThemes:setSyntaxHilighting( qEdit, cTheme, lNew )
/*----------------------------------------------------------------------*/
METHOD IdeThemes:show()
#if 1
LOCAL qAct
#endif
IF empty( ::oUI )
::lCreating := .t.
::oUI := HbQtUI():new( hbide_uic( "themesex" ) ):build()
//::oThemesDock:qtObject := Self
::oThemesDock:oWidget:setWidget( ::oUI )
::oUI:signal( "comboThemes" , "currentIndexChanged(int)", {|i| ::nCurTheme := i+1, ::setTheme( i ) } )
::oUI:signal( "comboItems" , "currentIndexChanged(int)", {|i| ::nCurItem := i+1, ::setAttributes( i ) } )
::oUI:signal( "listThemes" , "currentRowChanged(int)" , {|i| ::execEvent( listThemes_currentRowChanged, i ) } )
::oUI:signal( "listItems" , "currentRowChanged(int)" , {|i| ::execEvent( listItems_currentRowChanged, i ) } )
::oUI:signal( "buttonColor" , "clicked()" , {|| ::updateColor() } )
::oUI:signal( "buttonSave" , "clicked()" , {|| ::save( .f. ) } )
::oUI:signal( "buttonSaveAs" , "clicked()" , {|| ::save( .t. ) } )
::oUI:signal( "buttonCopy" , "clicked()" , {|| ::copy( .t. ) } )
::oUI:signal( "buttonApply" , "clicked()" , {|| ::execEvent( applyMenu_triggered_applyToCurrentTab ) } )
::oUI:signal( "buttonApplyAll", "clicked()" , {|| ::execEvent( applyMenu_triggered_applyToAllTabs ) } )
::oUI:signal( "buttonDefault" , "clicked()" , {|| ::execEvent( applyMenu_triggered_setAsDefault ) } )
::oUI:signal( "checkItalic" , "stateChanged(int)" , {|i| ::updateAttribute( THM_ATR_ITALIC, i ) } )
::oUI:signal( "checkBold" , "stateChanged(int)" , {|i| ::updateAttribute( THM_ATR_BOLD , i ) } )
@@ -478,7 +499,6 @@ METHOD IdeThemes:show()
::oUI:signal( "buttonClose" , "clicked()" , {|| ::oThemesDock:hide() } )
/* Fill Themes Dialog Values */
#if 1
::oUI:setWindowTitle( GetKeyValue( ::aControls, "dialogTitle" ) )
//
::oUI:qObj[ "labelItems" ]:setText( GetKeyValue( ::aControls, "labelItems" , "Items" ) )
@@ -493,31 +513,9 @@ METHOD IdeThemes:show()
::oUI:qObj[ "buttonSaveAs" ]:setText( GetKeyValue( ::aControls, "buttonSaveAs" , "SaveAs" ) )
::oUI:qObj[ "buttonClose" ]:setText( GetKeyValue( ::aControls, "buttonClose" , "Close" ) )
::oUI:qObj[ "buttonCopy" ]:setText( GetKeyValue( ::aControls, "buttonCopy" , "Copy" ) )
#endif
#if 1
::qMenuApply := QMenu():new()
//
qAct := QAction():new( ::qMenuApply )
qAct:setText( "Apply to Current Tab" )
::connect( qAct, "triggered(bool)", {|| ::execEvent( applyMenu_triggered_applyToCurrentTab ) } )
::qMenuApply:addAction_4( qAct )
aadd( ::aApplyAct, qAct )
//
::qMenuApply:addSeparator()
//
qAct := QAction():new( ::qMenuApply )
qAct:setText( "Set as Default" )
::connect( qAct, "triggered(bool)", {|| ::execEvent( applyMenu_triggered_setAsDefault ) } )
::qMenuApply:addAction_4( qAct )
::qMenuApply:addAction_4( qAct )
aadd( ::aApplyAct, qAct )
//
::oUI:q_buttonApply:setMenu( ::qMenuApply )
#endif
aeval( ::aThemes, {|e_| ::oUI:q_comboThemes:addItem( e_[ 1 ] ) } )
aeval( ::aItems , {|e_| ::oUI:q_comboItems:addItem( e_[ 2 ] ) } )
aeval( ::aThemes, {|e_| ::oUI:q_listThemes:addItem( e_[ 1 ] ) } )
aeval( ::aItems , {|e_| ::oUI:q_listItems:addItem( e_[ 2 ] ) } )
::qEdit := ::oUI:q_plainThemeText
::qEdit:setPlainText( GetSource() )
@@ -527,12 +525,14 @@ METHOD IdeThemes:show()
::lCreating := .f.
::nCurTheme := 1
::nCurItem := 1
::oUI:q_listThemes:setCurrentRow( 0 )
::oUI:q_listItems:setCurrentRow( 0 )
//::nCurTheme := 1
//::nCurItem := 1
::setTheme()
::setAttributes()
ENDIF
RETURN Self
@@ -555,8 +555,8 @@ METHOD IdeThemes:copy()
aItems := aclone( ::aThemes[ ::nCurTheme ] )
aItems[ 1 ] := cTheme
aadd( ::aThemes, aItems )
::oUI:qObj[ "comboThemes" ]:addItem( cTheme )
::oUI:qObj[ "comboThemes" ]:setCurrentIndex( len( ::aThemes ) - 1 )
::oUI:qObj[ "listThemes" ]:addItem( cTheme )
::oUI:qObj[ "listThemes" ]:setCurrentRow( len( ::aThemes ) - 1 )
ENDIF
RETURN Self
@@ -592,6 +592,34 @@ METHOD IdeThemes:setAttributes()
/*----------------------------------------------------------------------*/
METHOD IdeThemes:updateLineNumbersBkColor()
LOCAL oEdit, aAttr
IF !empty( oEdit := ::oEM:getEditObjectCurrent() )
aAttr := ::getThemeAttribute( "LineNumbersBkColor", ::aThemes[ ::nCurTheme, 1 ] )
oEdit:setLineNumbersBkColor( aAttr[ THM_ATR_R ], aAttr[ THM_ATR_G ], aAttr[ THM_ATR_B ] )
oEdit:refresh()
::setAttributes()
ENDIF
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeThemes:updateCurrentLineColor()
LOCAL oEdit, aAttr
IF !empty( oEdit := ::oEM:getEditObjectCurrent() )
aAttr := ::getThemeAttribute( "CurrentLineBackground", ::aThemes[ ::nCurTheme, 1 ] )
oEdit:setCurrentLineColor( aAttr[ THM_ATR_R ], aAttr[ THM_ATR_G ], aAttr[ THM_ATR_B ] )
oEdit:refresh()
::setAttributes()
ENDIF
RETURN Self
/*----------------------------------------------------------------------*/
METHOD IdeThemes:updateColor()
LOCAL aAttr, oDlg, qColor, s, aF, aB
@@ -624,6 +652,14 @@ METHOD IdeThemes:updateColor()
::setMultiLineCommentRule( ::qHiliter, ::aThemes[ ::nCurTheme, 1 ] )
::setSyntaxFormat( ::qHiliter, aAttr[ 1 ], aAttr[ 2 ] )
ELSEIF aAttr[ 1 ] == "CurrentLineBackground"
::updateCurrentLineColor()
RETURN Self
ELSEIF aAttr[ 1 ] == "LineNumbersBkColor"
::updateLineNumbersBkColor()
RETURN Self
ELSE
::setSyntaxFormat( ::qHiliter, aAttr[ 1 ], aAttr[ 2 ] )
@@ -974,7 +1010,7 @@ STATIC FUNCTION hbide_loadDefaultThemes()
aadd( aIni, "SelectionBackground = Selection Background " )
aadd( aIni, "CurrentLineBackground = Current Line Background " )
aadd( aIni, "UnterminatedStrings = Unterminated Strings " )
aadd( aIni, "WAPIDictionary = WAPIDictionary " )
aadd( aIni, "LineNumbersBkColor = Line Numbers Background " )
aadd( aIni, "UserDictionary = UserDictionary " )
aadd( aIni, " " )
aadd( aIni, " " )
@@ -993,9 +1029,9 @@ STATIC FUNCTION hbide_loadDefaultThemes()
aadd( aIni, "UnrecognizedText = 0, 0, 0, No, No, No, " )
aadd( aIni, "BookMarkLineBackground = 0, 255, 255, No, No, No, " )
aadd( aIni, "SelectionBackground = 255, 128, 255, No, No, No, " )
aadd( aIni, "CurrentLineBackground = 128, 0, 0, No, No, No, " )
aadd( aIni, "CurrentLineBackground = 255, 215, 155, No, No, No, " )
aadd( aIni, "UnterminatedStrings = 255, 128, 128, No, No, No, " )
aadd( aIni, "WAPIDictionary = 0, 0, 128, No, No, No, " )
aadd( aIni, "LineNumbersBkColor = 255, 215, 155, No, No, No, " )
aadd( aIni, "UserDictionary = 0, 0, 0, No, No, No, " )
aadd( aIni, " " )
aadd( aIni, " " )
@@ -1014,9 +1050,9 @@ STATIC FUNCTION hbide_loadDefaultThemes()
aadd( aIni, "UnrecognizedText = 0, 0, 0, No, No, No, " )
aadd( aIni, "BookMarkLineBackground = 0, 255, 255, No, No, No, " )
aadd( aIni, "SelectionBackground = 255, 128, 255, No, No, No, " )
aadd( aIni, "CurrentLineBackground = 128, 0, 0, No, No, No, " )
aadd( aIni, "CurrentLineBackground = 235, 235, 235, No, No, No, " )
aadd( aIni, "UnterminatedStrings = 255, 128, 128, No, No, No, " )
aadd( aIni, "WAPIDictionary = 0, 0, 128, No, No, No, " )
aadd( aIni, "LineNumbersBkColor = 235, 235, 235, No, No, No, " )
aadd( aIni, "UserDictionary = 0, 0, 0, No, No, No, " )
aadd( aIni, " " )
aadd( aIni, " " )
@@ -1035,9 +1071,9 @@ STATIC FUNCTION hbide_loadDefaultThemes()
aadd( aIni, "UnrecognizedText = 0,0,0 , No, No, No, " )
aadd( aIni, "BookMarkLineBackground = 0,255,255 , No, No, No, " )
aadd( aIni, "SelectionBackground = 255,128,255 , No, No, No, " )
aadd( aIni, "CurrentLineBackground = 128,0,0 , No, No, No, " )
aadd( aIni, "CurrentLineBackground = 220,220,220 , No, No, No, " )
aadd( aIni, "UnterminatedStrings = 255,128,128 , No, No, No, " )
aadd( aIni, "WAPIDictionary = 0,0,128 , No, No, No, " )
aadd( aIni, "LineNumbersBkColor = 220,220,220 , No, No, No, " )
aadd( aIni, "UserDictionary = 0,0,0 , No, No, No, " )
aadd( aIni, " " )
aadd( aIni, " " )
@@ -1058,7 +1094,7 @@ STATIC FUNCTION hbide_loadDefaultThemes()
aadd( aIni, "SelectionBackground = 255,128,255 , No, No, No, " )
aadd( aIni, "CurrentLineBackground = 0,0,255 , No, No, No, " )
aadd( aIni, "UnterminatedStrings = 255,255,255 , No, No, No, " )
aadd( aIni, "WAPIDictionary = 0,0,128 , No, No, No, " )
aadd( aIni, "LineNumbersBkColor = 0,0,255 , No, No, No, " )
aadd( aIni, "UserDictionary = 0,0,0 , No, No, No, " )
aadd( aIni, " " )
aadd( aIni, " " )
@@ -1077,9 +1113,9 @@ STATIC FUNCTION hbide_loadDefaultThemes()
aadd( aIni, "UnrecognizedText = 255,255,255 , No, No, No, " )
aadd( aIni, "BookMarkLineBackground = 128,0,255 , No, No, No, " )
aadd( aIni, "SelectionBackground = 0,128,255 , No, No, No, " )
aadd( aIni, "CurrentLineBackground = 128,255,255 , No, No, No, " )
aadd( aIni, "CurrentLineBackground = 90,180,180 , No, No, No, " )
aadd( aIni, "UnterminatedStrings = 255,128,64 , No, No, No, " )
aadd( aIni, "WAPIDictionary = 128,128,64 , No, No, No, " )
aadd( aIni, "LineNumbersBkColor = 90,180,180 , No, No, No, " )
aadd( aIni, "UserDictionary = 0,0,0 , No, No, No, " )
aadd( aIni, " " )
aadd( aIni, " " )
@@ -1098,9 +1134,9 @@ STATIC FUNCTION hbide_loadDefaultThemes()
aadd( aIni, "UnrecognizedText = 0,0,0 , No, No, No, " )
aadd( aIni, "BookMarkLineBackground = 0,255,255 , No, No, No, " )
aadd( aIni, "SelectionBackground = 255,0,255 , No, No, No, " )
aadd( aIni, "CurrentLineBackground = 128,0,0 , No, No, No, " )
aadd( aIni, "CurrentLineBackground = 220,220,110 , No, No, No, " )
aadd( aIni, "UnterminatedStrings = 128,128,0 , No, No, No, " )
aadd( aIni, "WAPIDictionary = 0,0,128 , No, No, No, " )
aadd( aIni, "LineNumbersBkColor = 220,220,110 , No, No, No, " )
aadd( aIni, "UserDictionary = 0,0,0 , No, No, No, " )
aadd( aIni, " " )
ENDIF
@@ -1126,7 +1162,7 @@ SelectionBackground = Selection Background 255,128,255 255,128,255
CurrentLineBackground = Current Line Background 128,0,0 0,0,255 128,255,255 128,0,0
UnrecognizedText = Unrecognized Text 0,0,0 255,255,255 255,255,255 0,0,0
UnterminatedStrings = Unterminated Strings 255,128,128 255,255,255 255,128,64 128,128,0
WAPIDictionary = WAPIDictionary 0,0,128 0,0,128 128,128,64 0,0,128
LineNumbersBkColor = WAPIDictionary 0,0,128 0,0,128 128,128,64 0,0,128
UserDictionary = UserDictionary 0,0,0 0,0,0 0,0,0 0,0,0
#endif

View File

@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>438</width>
<height>402</height>
<width>423</width>
<height>507</height>
</rect>
</property>
<property name="windowTitle">
@@ -23,17 +23,11 @@
</size>
</property>
<property name="text">
<string>Theme</string>
<string>Theme:</string>
</property>
</widget>
</item>
<item row="0" column="1" colspan="8">
<widget class="QComboBox" name="comboThemes"/>
</item>
<item row="1" column="0" colspan="9">
<widget class="QPlainTextEdit" name="plainThemeText"/>
</item>
<item row="2" column="0">
<item row="0" column="1">
<widget class="QLabel" name="labelItems">
<property name="maximumSize">
<size>
@@ -46,10 +40,73 @@
</property>
</widget>
</item>
<item row="2" column="1" colspan="6">
<widget class="QComboBox" name="comboItems"/>
<item row="1" column="0" rowspan="5">
<widget class="QListWidget" name="listThemes">
<property name="minimumSize">
<size>
<width>150</width>
<height>170</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>150</width>
<height>170</height>
</size>
</property>
</widget>
</item>
<item row="2" column="7" colspan="2">
<item row="1" column="1" rowspan="5">
<widget class="QListWidget" name="listItems">
<property name="minimumSize">
<size>
<width>0</width>
<height>170</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>170</height>
</size>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QCheckBox" name="checkBold">
<property name="text">
<string>Bold</string>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QCheckBox" name="checkItalic">
<property name="text">
<string>Italic</string>
</property>
</widget>
</item>
<item row="3" column="2">
<widget class="QCheckBox" name="checkUnderline">
<property name="text">
<string>Underline</string>
</property>
</widget>
</item>
<item row="4" column="2">
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>32</width>
<height>63</height>
</size>
</property>
</spacer>
</item>
<item row="5" column="2">
<widget class="QPushButton" name="buttonColor">
<property name="maximumSize">
<size>
@@ -62,95 +119,85 @@
</property>
</widget>
</item>
<item row="3" column="0">
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>50</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="3" column="1" colspan="2">
<widget class="QCheckBox" name="checkBold">
<item row="6" column="0">
<widget class="QLabel" name="labelPreview">
<property name="text">
<string>Bold</string>
<string>Preview:</string>
</property>
</widget>
</item>
<item row="3" column="3" colspan="2">
<widget class="QCheckBox" name="checkItalic">
<property name="text">
<string>Italic</string>
</property>
</widget>
<item row="7" column="0" rowspan="9" colspan="2">
<widget class="QPlainTextEdit" name="plainThemeText"/>
</item>
<item row="3" column="5" colspan="2">
<widget class="QCheckBox" name="checkUnderline">
<property name="text">
<string>Underline</string>
</property>
</widget>
</item>
<item row="3" column="7" colspan="2">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>120</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="4" column="0" colspan="9">
<widget class="Line" name="lineSep">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="5" column="0" colspan="2">
<item row="7" column="2">
<widget class="QPushButton" name="buttonSave">
<property name="text">
<string>Save</string>
</property>
</widget>
</item>
<item row="5" column="2" colspan="2">
<item row="8" column="2">
<widget class="QPushButton" name="buttonSaveAs">
<property name="text">
<string>Save As</string>
</property>
</widget>
</item>
<item row="5" column="4" colspan="2">
<item row="9" column="2">
<widget class="QPushButton" name="buttonCopy">
<property name="text">
<string>Copy</string>
</property>
</widget>
</item>
<item row="5" column="6" colspan="2">
<widget class="QPushButton" name="buttonApply">
<item row="10" column="2">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>26</height>
</size>
</property>
</spacer>
</item>
<item row="11" column="2">
<widget class="QPushButton" name="buttonDefault">
<property name="text">
<string>Action</string>
<string>SetAsDefault</string>
</property>
</widget>
</item>
<item row="5" column="8">
<item row="12" column="2">
<widget class="QPushButton" name="buttonApply">
<property name="text">
<string>ApplyCurrent</string>
</property>
</widget>
</item>
<item row="13" column="2">
<widget class="QPushButton" name="buttonApplyAll">
<property name="text">
<string>ApplyAll</string>
</property>
</widget>
</item>
<item row="14" column="2">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>24</height>
</size>
</property>
</spacer>
</item>
<item row="15" column="2">
<widget class="QPushButton" name="buttonClose">
<property name="text">
<string>Close</string>

View File

@@ -1,8 +1,8 @@
/********************************************************************************
** Form generated from reading ui file 'themesex.ui'
**
** Created: Tue Mar 2 16:06:43 2010
** by: Qt User Interface Compiler version 4.5.3
** Created: Wed Mar 10 22:01:39 2010
** by: Qt User Interface Compiler version 4.5.2
**
** WARNING! All changes made in this file will be lost when recompiling ui file!
********************************************************************************/
@@ -15,11 +15,10 @@
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QCheckBox>
#include <QtGui/QComboBox>
#include <QtGui/QFrame>
#include <QtGui/QGridLayout>
#include <QtGui/QHeaderView>
#include <QtGui/QLabel>
#include <QtGui/QListWidget>
#include <QtGui/QPlainTextEdit>
#include <QtGui/QPushButton>
#include <QtGui/QSpacerItem>
@@ -32,28 +31,31 @@ class Ui_FormThemes
public:
QGridLayout *gridLayout;
QLabel *labelTheme;
QComboBox *comboThemes;
QPlainTextEdit *plainThemeText;
QLabel *labelItems;
QComboBox *comboItems;
QPushButton *buttonColor;
QSpacerItem *horizontalSpacer;
QListWidget *listThemes;
QListWidget *listItems;
QCheckBox *checkBold;
QCheckBox *checkItalic;
QCheckBox *checkUnderline;
QSpacerItem *horizontalSpacer_2;
QFrame *lineSep;
QSpacerItem *verticalSpacer_3;
QPushButton *buttonColor;
QLabel *labelPreview;
QPlainTextEdit *plainThemeText;
QPushButton *buttonSave;
QPushButton *buttonSaveAs;
QPushButton *buttonCopy;
QSpacerItem *verticalSpacer;
QPushButton *buttonDefault;
QPushButton *buttonApply;
QPushButton *buttonApplyAll;
QSpacerItem *verticalSpacer_2;
QPushButton *buttonClose;
void setupUi(QWidget *FormThemes)
{
if (FormThemes->objectName().isEmpty())
FormThemes->setObjectName(QString::fromUtf8("FormThemes"));
FormThemes->resize(438, 402);
FormThemes->resize(423, 507);
gridLayout = new QGridLayout(FormThemes);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
labelTheme = new QLabel(FormThemes);
@@ -62,87 +64,103 @@ public:
gridLayout->addWidget(labelTheme, 0, 0, 1, 1);
comboThemes = new QComboBox(FormThemes);
comboThemes->setObjectName(QString::fromUtf8("comboThemes"));
gridLayout->addWidget(comboThemes, 0, 1, 1, 8);
plainThemeText = new QPlainTextEdit(FormThemes);
plainThemeText->setObjectName(QString::fromUtf8("plainThemeText"));
gridLayout->addWidget(plainThemeText, 1, 0, 1, 9);
labelItems = new QLabel(FormThemes);
labelItems->setObjectName(QString::fromUtf8("labelItems"));
labelItems->setMaximumSize(QSize(40, 16777215));
gridLayout->addWidget(labelItems, 2, 0, 1, 1);
gridLayout->addWidget(labelItems, 0, 1, 1, 1);
comboItems = new QComboBox(FormThemes);
comboItems->setObjectName(QString::fromUtf8("comboItems"));
listThemes = new QListWidget(FormThemes);
listThemes->setObjectName(QString::fromUtf8("listThemes"));
listThemes->setMinimumSize(QSize(150, 170));
listThemes->setMaximumSize(QSize(150, 170));
gridLayout->addWidget(comboItems, 2, 1, 1, 6);
gridLayout->addWidget(listThemes, 1, 0, 5, 1);
listItems = new QListWidget(FormThemes);
listItems->setObjectName(QString::fromUtf8("listItems"));
listItems->setMinimumSize(QSize(0, 170));
listItems->setMaximumSize(QSize(16777215, 170));
gridLayout->addWidget(listItems, 1, 1, 5, 1);
checkBold = new QCheckBox(FormThemes);
checkBold->setObjectName(QString::fromUtf8("checkBold"));
gridLayout->addWidget(checkBold, 1, 2, 1, 1);
checkItalic = new QCheckBox(FormThemes);
checkItalic->setObjectName(QString::fromUtf8("checkItalic"));
gridLayout->addWidget(checkItalic, 2, 2, 1, 1);
checkUnderline = new QCheckBox(FormThemes);
checkUnderline->setObjectName(QString::fromUtf8("checkUnderline"));
gridLayout->addWidget(checkUnderline, 3, 2, 1, 1);
verticalSpacer_3 = new QSpacerItem(32, 63, QSizePolicy::Minimum, QSizePolicy::Expanding);
gridLayout->addItem(verticalSpacer_3, 4, 2, 1, 1);
buttonColor = new QPushButton(FormThemes);
buttonColor->setObjectName(QString::fromUtf8("buttonColor"));
buttonColor->setMaximumSize(QSize(120, 16777215));
gridLayout->addWidget(buttonColor, 2, 7, 1, 2);
gridLayout->addWidget(buttonColor, 5, 2, 1, 1);
horizontalSpacer = new QSpacerItem(50, 20, QSizePolicy::Fixed, QSizePolicy::Minimum);
labelPreview = new QLabel(FormThemes);
labelPreview->setObjectName(QString::fromUtf8("labelPreview"));
gridLayout->addItem(horizontalSpacer, 3, 0, 1, 1);
gridLayout->addWidget(labelPreview, 6, 0, 1, 1);
checkBold = new QCheckBox(FormThemes);
checkBold->setObjectName(QString::fromUtf8("checkBold"));
plainThemeText = new QPlainTextEdit(FormThemes);
plainThemeText->setObjectName(QString::fromUtf8("plainThemeText"));
gridLayout->addWidget(checkBold, 3, 1, 1, 2);
checkItalic = new QCheckBox(FormThemes);
checkItalic->setObjectName(QString::fromUtf8("checkItalic"));
gridLayout->addWidget(checkItalic, 3, 3, 1, 2);
checkUnderline = new QCheckBox(FormThemes);
checkUnderline->setObjectName(QString::fromUtf8("checkUnderline"));
gridLayout->addWidget(checkUnderline, 3, 5, 1, 2);
horizontalSpacer_2 = new QSpacerItem(120, 20, QSizePolicy::Fixed, QSizePolicy::Minimum);
gridLayout->addItem(horizontalSpacer_2, 3, 7, 1, 2);
lineSep = new QFrame(FormThemes);
lineSep->setObjectName(QString::fromUtf8("lineSep"));
lineSep->setFrameShape(QFrame::HLine);
lineSep->setFrameShadow(QFrame::Sunken);
gridLayout->addWidget(lineSep, 4, 0, 1, 9);
gridLayout->addWidget(plainThemeText, 7, 0, 9, 2);
buttonSave = new QPushButton(FormThemes);
buttonSave->setObjectName(QString::fromUtf8("buttonSave"));
gridLayout->addWidget(buttonSave, 5, 0, 1, 2);
gridLayout->addWidget(buttonSave, 7, 2, 1, 1);
buttonSaveAs = new QPushButton(FormThemes);
buttonSaveAs->setObjectName(QString::fromUtf8("buttonSaveAs"));
gridLayout->addWidget(buttonSaveAs, 5, 2, 1, 2);
gridLayout->addWidget(buttonSaveAs, 8, 2, 1, 1);
buttonCopy = new QPushButton(FormThemes);
buttonCopy->setObjectName(QString::fromUtf8("buttonCopy"));
gridLayout->addWidget(buttonCopy, 5, 4, 1, 2);
gridLayout->addWidget(buttonCopy, 9, 2, 1, 1);
verticalSpacer = new QSpacerItem(20, 26, QSizePolicy::Minimum, QSizePolicy::Expanding);
gridLayout->addItem(verticalSpacer, 10, 2, 1, 1);
buttonDefault = new QPushButton(FormThemes);
buttonDefault->setObjectName(QString::fromUtf8("buttonDefault"));
gridLayout->addWidget(buttonDefault, 11, 2, 1, 1);
buttonApply = new QPushButton(FormThemes);
buttonApply->setObjectName(QString::fromUtf8("buttonApply"));
gridLayout->addWidget(buttonApply, 5, 6, 1, 2);
gridLayout->addWidget(buttonApply, 12, 2, 1, 1);
buttonApplyAll = new QPushButton(FormThemes);
buttonApplyAll->setObjectName(QString::fromUtf8("buttonApplyAll"));
gridLayout->addWidget(buttonApplyAll, 13, 2, 1, 1);
verticalSpacer_2 = new QSpacerItem(20, 24, QSizePolicy::Minimum, QSizePolicy::Expanding);
gridLayout->addItem(verticalSpacer_2, 14, 2, 1, 1);
buttonClose = new QPushButton(FormThemes);
buttonClose->setObjectName(QString::fromUtf8("buttonClose"));
gridLayout->addWidget(buttonClose, 5, 8, 1, 1);
gridLayout->addWidget(buttonClose, 15, 2, 1, 1);
retranslateUi(FormThemes);
@@ -153,16 +171,19 @@ public:
void retranslateUi(QWidget *FormThemes)
{
FormThemes->setWindowTitle(QApplication::translate("FormThemes", "Form", 0, QApplication::UnicodeUTF8));
labelTheme->setText(QApplication::translate("FormThemes", "Theme", 0, QApplication::UnicodeUTF8));
labelTheme->setText(QApplication::translate("FormThemes", "Theme:", 0, QApplication::UnicodeUTF8));
labelItems->setText(QApplication::translate("FormThemes", "Items:", 0, QApplication::UnicodeUTF8));
buttonColor->setText(QApplication::translate("FormThemes", "Color", 0, QApplication::UnicodeUTF8));
checkBold->setText(QApplication::translate("FormThemes", "Bold", 0, QApplication::UnicodeUTF8));
checkItalic->setText(QApplication::translate("FormThemes", "Italic", 0, QApplication::UnicodeUTF8));
checkUnderline->setText(QApplication::translate("FormThemes", "Underline", 0, QApplication::UnicodeUTF8));
buttonColor->setText(QApplication::translate("FormThemes", "Color", 0, QApplication::UnicodeUTF8));
labelPreview->setText(QApplication::translate("FormThemes", "Preview:", 0, QApplication::UnicodeUTF8));
buttonSave->setText(QApplication::translate("FormThemes", "Save", 0, QApplication::UnicodeUTF8));
buttonSaveAs->setText(QApplication::translate("FormThemes", "Save As", 0, QApplication::UnicodeUTF8));
buttonCopy->setText(QApplication::translate("FormThemes", "Copy", 0, QApplication::UnicodeUTF8));
buttonApply->setText(QApplication::translate("FormThemes", "Action", 0, QApplication::UnicodeUTF8));
buttonDefault->setText(QApplication::translate("FormThemes", "SetAsDefault", 0, QApplication::UnicodeUTF8));
buttonApply->setText(QApplication::translate("FormThemes", "ApplyCurrent", 0, QApplication::UnicodeUTF8));
buttonApplyAll->setText(QApplication::translate("FormThemes", "ApplyAll", 0, QApplication::UnicodeUTF8));
buttonClose->setText(QApplication::translate("FormThemes", "Close", 0, QApplication::UnicodeUTF8));
Q_UNUSED(FormThemes);
} // retranslateUi

View File

@@ -1,25 +1,20 @@
/*
* hbQTgen v1.0 - Harbour Callable Wrappers Generator for QT v4.5+
*
* hbQTgen v1.0 - Harbour Callable Wrappers Generator for Qt v4.5.3+
* Please do not modify this document as it is subject to change in future.
*
* Pritpal Bedi <bedipritpal@hotmail.com>
*
* 03/10/10 - 19:03:11
*
*/
/* $DOC$
$TEMPLATE$
Class
$NAME$
HBQPlainTextEdit()
$CATEGORY$
Harbour Bindings for Qt 4.5.3+
Harbour Bindings for Qt
$SUBCATEGORY$
GUI
$EXTERNALLINK$
http://doc.trolltech.com/4.5/hbqplaintextedit.html
$ONELINER$
Creates a new HBQPlainTextEdit object.
$INHERITS$
@@ -70,6 +65,7 @@
:hbSetCompleter( pCompleter ) -> NIL
:hbSetCurrentLineColor( pColor ) -> NIL
:hbSetLineAreaBkColor( pColor ) -> NIL
:hbRefresh() -> NIL
$DESCRIPTION$
@@ -90,6 +86,6 @@
C++ Wrappers : contrib/hbqt/qtgui/HBQPlainTextEdit.cpp
Library : hbqtgui
$SEEALSO$
QPlainTextEdit, http://doc.trolltech.com/4.5/hbqplaintextedit.html
QPlainTextEdit
$END$
*/

View File

@@ -116,6 +116,11 @@ void HBQPlainTextEdit::hbSetEventBlock( PHB_ITEM pBlock )
block = hb_itemNew( pBlock );
}
void HBQPlainTextEdit::hbRefresh()
{
update();
}
void HBQPlainTextEdit::hbShowPrototype( const QString & tip )
{
if( tip == ( QString ) "" )

View File

@@ -163,7 +163,7 @@ public slots:
void hbSetCompleter( QCompleter * completer ) { c = completer; };
void hbSetCurrentLineColor( const QColor & color ) { m_currentLineColor = color; };
void hbSetLineAreaBkColor( const QColor & color ) { m_lineAreaBkColor = color; };
void hbRefresh();
private slots:
void hbSlotCursorPositionChanged();
void hbUpdateLineNumberArea( const QRect &, int );

View File

@@ -450,6 +450,14 @@ HB_FUNC( QT_HBQPLAINTEXTEDIT_HBSETLINEAREABKCOLOR )
hbqt_par_HBQPlainTextEdit( 1 )->hbSetLineAreaBkColor( *hbqt_par_QColor( 2 ) );
}
/*
* void hbRefresh()
*/
HB_FUNC( QT_HBQPLAINTEXTEDIT_HBREFRESH )
{
hbqt_par_HBQPlainTextEdit( 1 )->hbRefresh();
}
/*----------------------------------------------------------------------*/
#endif /* #if QT_VERSION >= 0x040500 */

View File

@@ -104,6 +104,7 @@ CREATE CLASS HBQPlainTextEdit INHERIT HbQtObjectHandler, QPlainTextEdit
METHOD hbSetCompleter( pCompleter )
METHOD hbSetCurrentLineColor( pColor )
METHOD hbSetLineAreaBkColor( pColor )
METHOD hbRefresh()
ENDCLASS
@@ -264,3 +265,7 @@ METHOD HBQPlainTextEdit:hbSetCurrentLineColor( pColor )
METHOD HBQPlainTextEdit:hbSetLineAreaBkColor( pColor )
RETURN Qt_HBQPlainTextEdit_hbSetLineAreaBkColor( ::pPtr, hbqt_ptr( pColor ) )
METHOD HBQPlainTextEdit:hbRefresh()
RETURN Qt_HBQPlainTextEdit_hbRefresh( ::pPtr )

View File

@@ -135,6 +135,7 @@ HB_FUNC( QT_HBQPLAINTEXTEDIT )
void hbSetCompleter( QCompleter * completer )
void hbSetCurrentLineColor( const QColor & color )
void hbSetLineAreaBkColor( const QColor & color )
void hbRefresh()
</SLOTS>
<SIGNALS>