diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 1d7ce4b630..b6b6ff7ba1 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,14 +17,36 @@ past entries belonging to author(s): Viktor Szakats. */ +2010-04-27 01:11 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) + * contrib/hbide/resources/environ.ui + * contrib/hbide/resources/environ.uic + * contrib/hbide/resources/projectpropertiesex.ui + * contrib/hbide/resources/projectpropertiesex.uic + * contrib/hbide/resources/shortcuts.ui + * contrib/hbide/resources/shortcuts.uic + + * contrib/hbxbp/xbplistbox.prg + % Fixed nasty bug. + + * contrib/hbide/hbide.prg + * contrib/hbide/ideactions.prg + * contrib/hbide/idedocks.prg + + Featured: Projects, Editors, Skeletons docking widgets made floatable. + + Added: Manubar->Setup->Tools & Utilities. + ! Refined: Manubar->Setup->Encoding - submenus prompts. + ! Resized: Keyboard Mappings dialog buttons. + ! Refined: Projects Properties Dialog - General tab. + + These tweaks were proposed by Antonio Maniero. + 2010-04-26 18:54 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com) * contrib/hbide/hbide.prg * contrib/hbide/ideactions.prg * contrib/hbide/ideeditor.prg * contrib/hbide/ideenviron.prg * contrib/hbide/idethemes.prg - * contrib/hbide/resources/environ.ui - * contrib/hbide/resources/environ.uic + + contrib/hbide/resources/environ.ui + + contrib/hbide/resources/environ.uic + started: dialog to capture build environment settings for different language compilers on line with xMate. Dialog can be seen via Menubar->Projects->Environments. Please note that this menu option diff --git a/harbour/contrib/hbide/hbide.prg b/harbour/contrib/hbide/hbide.prg index abfcd74806..e921acc995 100644 --- a/harbour/contrib/hbide/hbide.prg +++ b/harbour/contrib/hbide/hbide.prg @@ -652,6 +652,9 @@ METHOD HbIde:showApplicationCursor( nCursor ) METHOD HbIde:execAction( cKey ) SWITCH cKey + CASE "Tools" + ::oTM:show() + EXIT CASE "Environments" ::oEV:fetchNew() EXIT diff --git a/harbour/contrib/hbide/ideactions.prg b/harbour/contrib/hbide/ideactions.prg index 49065280c1..1762159a8a 100644 --- a/harbour/contrib/hbide/ideactions.prg +++ b/harbour/contrib/hbide/ideactions.prg @@ -310,6 +310,7 @@ METHOD IdeActions:loadActions() aadd( aAct, { "GotoFunc" , "Goto Function" , "dc_function" , "" , "No", "Yes" } ) aadd( aAct, { "Shortcuts" , "Keyboard Mappings" , "" , "" , "No", "Yes" } ) + * aadd( aAct, { "Tools" , "Tools & Utilities" , "tools" , "" , "No", "Yes" } ) RETURN aAct @@ -548,6 +549,9 @@ METHOD IdeActions:buildMainMenu() oSubMenu := XbpMenu():new( oMenuBar ):create() oSubMenu:title := "~Setup" oSubMenu:addItem( { ::getAction( "Shortcuts" ), {|| oIde:execAction( "Shortcuts" ) } } ) + hbide_menuAddSep( oSubMenu ) + oSubMenu:addItem( { ::getAction( "TB_Tools" ), {|| oIde:execAction( "Tools" ) } } ) + hbide_menuAddSep( oSubMenu ) oSubMenu2 := hbide_buildCodecMenu( oIde, oSubMenu ) oSubMenu2:title := "~Encoding" oSubMenu:addItem( { oSubMenu2, NIL } ) @@ -621,37 +625,37 @@ STATIC FUNCTION hbide_buildCodecMenu( oIde, oMenu ) oSub1 := XbpMenu():new( oSubMenu ):create() oSub1:title := "ISO 8859-1 to 10" - oSub1:addItem( { "-1" , {|| oIde:setCodec( "ISO 8859-1" ) } } ) - oSub1:addItem( { "-2" , {|| oIde:setCodec( "ISO 8859-2" ) } } ) - oSub1:addItem( { "-3" , {|| oIde:setCodec( "ISO 8859-3" ) } } ) - oSub1:addItem( { "-4" , {|| oIde:setCodec( "ISO 8859-4" ) } } ) - oSub1:addItem( { "-5" , {|| oIde:setCodec( "ISO 8859-5" ) } } ) - oSub1:addItem( { "-6" , {|| oIde:setCodec( "ISO 8859-6" ) } } ) - oSub1:addItem( { "-7" , {|| oIde:setCodec( "ISO 8859-7" ) } } ) - oSub1:addItem( { "-8" , {|| oIde:setCodec( "ISO 8859-8" ) } } ) - oSub1:addItem( { "-9" , {|| oIde:setCodec( "ISO 8859-9" ) } } ) - oSub1:addItem( { "-10" , {|| oIde:setCodec( "ISO 8859-10" ) } } ) + oSub1:addItem( { "ISO 8859-1" , {|| oIde:setCodec( "ISO 8859-1" ) } } ) + oSub1:addItem( { "ISO 8859-2" , {|| oIde:setCodec( "ISO 8859-2" ) } } ) + oSub1:addItem( { "ISO 8859-3" , {|| oIde:setCodec( "ISO 8859-3" ) } } ) + oSub1:addItem( { "ISO 8859-4" , {|| oIde:setCodec( "ISO 8859-4" ) } } ) + oSub1:addItem( { "ISO 8859-5" , {|| oIde:setCodec( "ISO 8859-5" ) } } ) + oSub1:addItem( { "ISO 8859-6" , {|| oIde:setCodec( "ISO 8859-6" ) } } ) + oSub1:addItem( { "ISO 8859-7" , {|| oIde:setCodec( "ISO 8859-7" ) } } ) + oSub1:addItem( { "ISO 8859-8" , {|| oIde:setCodec( "ISO 8859-8" ) } } ) + oSub1:addItem( { "ISO 8859-9" , {|| oIde:setCodec( "ISO 8859-9" ) } } ) + oSub1:addItem( { "ISO 8859-10" , {|| oIde:setCodec( "ISO 8859-10" ) } } ) oSubMenu:addItem( { oSub1, NIL } ) oSub1 := XbpMenu():new( oSubMenu ):create() oSub1:title := "ISO 8859-13 to 16" - oSub1:addItem( { "-13" , {|| oIde:setCodec( "ISO 8859-13" ) } } ) - oSub1:addItem( { "-14" , {|| oIde:setCodec( "ISO 8859-14" ) } } ) - oSub1:addItem( { "-15" , {|| oIde:setCodec( "ISO 8859-15" ) } } ) - oSub1:addItem( { "-16" , {|| oIde:setCodec( "ISO 8859-16" ) } } ) + oSub1:addItem( { "ISO 8859-13" , {|| oIde:setCodec( "ISO 8859-13" ) } } ) + oSub1:addItem( { "ISO 8859-14" , {|| oIde:setCodec( "ISO 8859-14" ) } } ) + oSub1:addItem( { "ISO 8859-15" , {|| oIde:setCodec( "ISO 8859-15" ) } } ) + oSub1:addItem( { "ISO 8859-16" , {|| oIde:setCodec( "ISO 8859-16" ) } } ) oSubMenu:addItem( { oSub1, NIL } ) oSub1 := XbpMenu():new( oSubMenu ):create() oSub1:title := "Iscii" - oSub1:addItem( { "-Bng" , {|| oIde:setCodec( "Iscii-Bng" ) } } ) - oSub1:addItem( { "-Dev" , {|| oIde:setCodec( "Iscii-Dev" ) } } ) - oSub1:addItem( { "-Gjr" , {|| oIde:setCodec( "Iscii-Gjr" ) } } ) - oSub1:addItem( { "-Knd" , {|| oIde:setCodec( "Iscii-Knd" ) } } ) - oSub1:addItem( { "-Mlm" , {|| oIde:setCodec( "Iscii-Mlm" ) } } ) - oSub1:addItem( { "-Ori" , {|| oIde:setCodec( "Iscii-Ori" ) } } ) - oSub1:addItem( { "-Pnj" , {|| oIde:setCodec( "Iscii-Pnj" ) } } ) - oSub1:addItem( { "-Tlg" , {|| oIde:setCodec( "Iscii-Tlg" ) } } ) - oSub1:addItem( { "-Tml" , {|| oIde:setCodec( "Iscii-Tml" ) } } ) + oSub1:addItem( { "Iscii-Bng" , {|| oIde:setCodec( "Iscii-Bng" ) } } ) + oSub1:addItem( { "Iscii-Dev" , {|| oIde:setCodec( "Iscii-Dev" ) } } ) + oSub1:addItem( { "Iscii-Gjr" , {|| oIde:setCodec( "Iscii-Gjr" ) } } ) + oSub1:addItem( { "Iscii-Knd" , {|| oIde:setCodec( "Iscii-Knd" ) } } ) + oSub1:addItem( { "Iscii-Mlm" , {|| oIde:setCodec( "Iscii-Mlm" ) } } ) + oSub1:addItem( { "Iscii-Ori" , {|| oIde:setCodec( "Iscii-Ori" ) } } ) + oSub1:addItem( { "Iscii-Pnj" , {|| oIde:setCodec( "Iscii-Pnj" ) } } ) + oSub1:addItem( { "Iscii-Tlg" , {|| oIde:setCodec( "Iscii-Tlg" ) } } ) + oSub1:addItem( { "Iscii-Tml" , {|| oIde:setCodec( "Iscii-Tml" ) } } ) oSubMenu:addItem( { oSub1, NIL } ) oSubMenu:addItem( { "JIS X 0201 " , {|| oIde:setCodec( "JIS X 0201" ) } } ) diff --git a/harbour/contrib/hbide/idedocks.prg b/harbour/contrib/hbide/idedocks.prg index a094dc4186..31e4e4b97d 100644 --- a/harbour/contrib/hbide/idedocks.prg +++ b/harbour/contrib/hbide/idedocks.prg @@ -663,7 +663,7 @@ METHOD IdeDocks:addPanelButton( cPanel ) METHOD IdeDocks:buildProjectTree() LOCAL i, oItem - ::oIde:oDockPT := ::getADockWidget( Qt_LeftDockWidgetArea, "dockProjectTree", "Projects" ) + ::oIde:oDockPT := ::getADockWidget( Qt_LeftDockWidgetArea, "dockProjectTree", "Projects", QDockWidget_DockWidgetFloatable ) ::oDlg:oWidget:addDockWidget_1( Qt_LeftDockWidgetArea, ::oDockPT:oWidget, Qt_Vertical ) ::oIde:oProjTree := XbpTreeView():new() @@ -711,7 +711,7 @@ METHOD IdeDocks:buildProjectTree() METHOD IdeDocks:buildEditorTree() - ::oIde:oDockED := ::getADockWidget( Qt_LeftDockWidgetArea, "dockEditorTabs", "Editors" ) + ::oIde:oDockED := ::getADockWidget( Qt_LeftDockWidgetArea, "dockEditorTabs", "Editors", QDockWidget_DockWidgetFloatable ) ::oDlg:oWidget:addDockWidget_1( Qt_LeftDockWidgetArea, ::oDockED:oWidget, Qt_Vertical ) ::oIde:oEditTree := XbpTreeView():new() @@ -744,7 +744,7 @@ METHOD IdeDocks:buildEditorTree() METHOD IdeDocks:buildSkeletonsTree() - ::oIde:oSkltnsTreeDock := ::getADockWidget( Qt_LeftDockWidgetArea, "dockSkltnsTree", "Skeletons" ) + ::oIde:oSkltnsTreeDock := ::getADockWidget( Qt_LeftDockWidgetArea, "dockSkltnsTree", "Skeletons", QDockWidget_DockWidgetFloatable ) ::oDlg:oWidget:addDockWidget_1( Qt_LeftDockWidgetArea, ::oSkltnsTreeDock:oWidget, Qt_Vertical ) ::connect( ::oSkltnsTreeDock:oWidget, "visibilityChanged(bool)", {|p| ::execEvent( dockSkltnsTree_visibilityChanged, p ) } ) diff --git a/harbour/contrib/hbide/resources/environ.ui b/harbour/contrib/hbide/resources/environ.ui index f77facd513..3c05353c62 100644 --- a/harbour/contrib/hbide/resources/environ.ui +++ b/harbour/contrib/hbide/resources/environ.ui @@ -167,7 +167,7 @@ 170 - 14 + 12 67 16 @@ -180,7 +180,7 @@ 234 - 12 + 10 239 20 @@ -190,7 +190,7 @@ 492 - 12 + 10 25 20 @@ -256,7 +256,7 @@ 10 134 - 183 + 193 19 diff --git a/harbour/contrib/hbide/resources/environ.uic b/harbour/contrib/hbide/resources/environ.uic index def16322bd..f31864746f 100644 --- a/harbour/contrib/hbide/resources/environ.uic +++ b/harbour/contrib/hbide/resources/environ.uic @@ -1,7 +1,7 @@ /******************************************************************************** ** Form generated from reading ui file 'environ.ui' ** -** Created: Mon Apr 26 18:48:03 2010 +** Created: Tue Apr 27 00:33:12 2010 ** by: Qt User Interface Compiler version 4.5.2 ** ** WARNING! All changes made in this file will be lost when recompiling ui file! @@ -144,13 +144,13 @@ public: lineEdit->setGeometry(QRect(38, 10, 119, 20)); label_5 = new QLabel(tab); label_5->setObjectName(QString::fromUtf8("label_5")); - label_5->setGeometry(QRect(170, 14, 67, 16)); + label_5->setGeometry(QRect(170, 12, 67, 16)); lineEdit_2 = new QLineEdit(tab); lineEdit_2->setObjectName(QString::fromUtf8("lineEdit_2")); - lineEdit_2->setGeometry(QRect(234, 12, 239, 20)); + lineEdit_2->setGeometry(QRect(234, 10, 239, 20)); toolButton = new QToolButton(tab); toolButton->setObjectName(QString::fromUtf8("toolButton")); - toolButton->setGeometry(QRect(492, 12, 25, 20)); + toolButton->setGeometry(QRect(492, 10, 25, 20)); checkBox = new QCheckBox(tab); checkBox->setObjectName(QString::fromUtf8("checkBox")); checkBox->setGeometry(QRect(10, 38, 191, 19)); @@ -165,7 +165,7 @@ public: checkBox_4->setGeometry(QRect(10, 110, 175, 19)); checkBox_5 = new QCheckBox(tab); checkBox_5->setObjectName(QString::fromUtf8("checkBox_5")); - checkBox_5->setGeometry(QRect(10, 134, 183, 19)); + checkBox_5->setGeometry(QRect(10, 134, 193, 19)); plainTextEdit_2 = new QPlainTextEdit(tab); plainTextEdit_2->setObjectName(QString::fromUtf8("plainTextEdit_2")); plainTextEdit_2->setGeometry(QRect(10, 174, 465, 93)); diff --git a/harbour/contrib/hbide/resources/projectpropertiesex.ui b/harbour/contrib/hbide/resources/projectpropertiesex.ui index 990fce669a..0fff44512f 100644 --- a/harbour/contrib/hbide/resources/projectpropertiesex.ui +++ b/harbour/contrib/hbide/resources/projectpropertiesex.ui @@ -253,19 +253,6 @@ p, li { white-space: pre-wrap; } - - - - Qt::Vertical - - - - 20 - 40 - - - - diff --git a/harbour/contrib/hbide/resources/projectpropertiesex.uic b/harbour/contrib/hbide/resources/projectpropertiesex.uic index e7652db6f2..1521c8e424 100644 --- a/harbour/contrib/hbide/resources/projectpropertiesex.uic +++ b/harbour/contrib/hbide/resources/projectpropertiesex.uic @@ -1,7 +1,7 @@ /******************************************************************************** ** Form generated from reading ui file 'projectpropertiesex.ui' ** -** Created: Mon Apr 12 21:20:46 2010 +** Created: Tue Apr 27 00:23:23 2010 ** by: Qt User Interface Compiler version 4.5.2 ** ** WARNING! All changes made in this file will be lost when recompiling ui file! @@ -61,7 +61,6 @@ public: QLabel *labelInitFolder; QToolButton *buttonChooseWd; QSpacerItem *verticalSpacer_2; - QSpacerItem *verticalSpacer_3; QWidget *tabFiles; QGridLayout *gridLayout_2; QPlainTextEdit *editSources; @@ -225,10 +224,6 @@ public: gridLayout->addItem(verticalSpacer_2, 4, 1, 1, 1); - verticalSpacer_3 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); - - gridLayout->addItem(verticalSpacer_3, 12, 1, 1, 1); - tabWidget->addTab(tabGeneral, QString()); tabFiles = new QWidget(); tabFiles->setObjectName(QString::fromUtf8("tabFiles")); diff --git a/harbour/contrib/hbide/resources/shortcuts.ui b/harbour/contrib/hbide/resources/shortcuts.ui index aebac26a38..6b0a2ec9c3 100644 --- a/harbour/contrib/hbide/resources/shortcuts.ui +++ b/harbour/contrib/hbide/resources/shortcuts.ui @@ -111,13 +111,13 @@ - 40 + 50 0 - 40 + 50 16777215 @@ -130,13 +130,13 @@ - 40 + 50 0 - 40 + 50 16777215 @@ -149,13 +149,13 @@ - 40 + 50 0 - 40 + 50 16777215 @@ -168,13 +168,13 @@ - 40 + 50 0 - 40 + 50 16777215 @@ -187,13 +187,13 @@ - 40 + 50 0 - 40 + 50 16777215 @@ -206,13 +206,13 @@ - 40 + 50 0 - 40 + 50 16777215 @@ -225,13 +225,13 @@ - 40 + 50 0 - 40 + 50 16777215 diff --git a/harbour/contrib/hbide/resources/shortcuts.uic b/harbour/contrib/hbide/resources/shortcuts.uic index 4798868bd2..94a4ef544a 100644 --- a/harbour/contrib/hbide/resources/shortcuts.uic +++ b/harbour/contrib/hbide/resources/shortcuts.uic @@ -1,7 +1,7 @@ /******************************************************************************** ** Form generated from reading ui file 'shortcuts.ui' ** -** Created: Mon Apr 12 21:22:31 2010 +** Created: Tue Apr 27 00:36:36 2010 ** by: Qt User Interface Compiler version 4.5.2 ** ** WARNING! All changes made in this file will be lost when recompiling ui file! @@ -156,50 +156,50 @@ public: horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); buttonNew = new QPushButton(FormShortCuts); buttonNew->setObjectName(QString::fromUtf8("buttonNew")); - buttonNew->setMinimumSize(QSize(40, 0)); - buttonNew->setMaximumSize(QSize(40, 16777215)); + buttonNew->setMinimumSize(QSize(50, 0)); + buttonNew->setMaximumSize(QSize(50, 16777215)); horizontalLayout->addWidget(buttonNew); buttonSet = new QPushButton(FormShortCuts); buttonSet->setObjectName(QString::fromUtf8("buttonSet")); - buttonSet->setMinimumSize(QSize(40, 0)); - buttonSet->setMaximumSize(QSize(40, 16777215)); + buttonSet->setMinimumSize(QSize(50, 0)); + buttonSet->setMaximumSize(QSize(50, 16777215)); horizontalLayout->addWidget(buttonSet); buttonTest = new QPushButton(FormShortCuts); buttonTest->setObjectName(QString::fromUtf8("buttonTest")); - buttonTest->setMinimumSize(QSize(40, 0)); - buttonTest->setMaximumSize(QSize(40, 16777215)); + buttonTest->setMinimumSize(QSize(50, 0)); + buttonTest->setMaximumSize(QSize(50, 16777215)); horizontalLayout->addWidget(buttonTest); buttonDelete = new QPushButton(FormShortCuts); buttonDelete->setObjectName(QString::fromUtf8("buttonDelete")); - buttonDelete->setMinimumSize(QSize(40, 0)); - buttonDelete->setMaximumSize(QSize(40, 16777215)); + buttonDelete->setMinimumSize(QSize(50, 0)); + buttonDelete->setMaximumSize(QSize(50, 16777215)); horizontalLayout->addWidget(buttonDelete); buttonLoad = new QPushButton(FormShortCuts); buttonLoad->setObjectName(QString::fromUtf8("buttonLoad")); - buttonLoad->setMinimumSize(QSize(40, 0)); - buttonLoad->setMaximumSize(QSize(40, 16777215)); + buttonLoad->setMinimumSize(QSize(50, 0)); + buttonLoad->setMaximumSize(QSize(50, 16777215)); horizontalLayout->addWidget(buttonLoad); buttonSave = new QPushButton(FormShortCuts); buttonSave->setObjectName(QString::fromUtf8("buttonSave")); - buttonSave->setMinimumSize(QSize(40, 0)); - buttonSave->setMaximumSize(QSize(40, 16777215)); + buttonSave->setMinimumSize(QSize(50, 0)); + buttonSave->setMaximumSize(QSize(50, 16777215)); horizontalLayout->addWidget(buttonSave); buttonSaveAs = new QPushButton(FormShortCuts); buttonSaveAs->setObjectName(QString::fromUtf8("buttonSaveAs")); - buttonSaveAs->setMinimumSize(QSize(40, 0)); - buttonSaveAs->setMaximumSize(QSize(40, 16777215)); + buttonSaveAs->setMinimumSize(QSize(50, 0)); + buttonSaveAs->setMaximumSize(QSize(50, 16777215)); horizontalLayout->addWidget(buttonSaveAs); diff --git a/harbour/contrib/hbxbp/xbplistbox.prg b/harbour/contrib/hbxbp/xbplistbox.prg index 0b42d8aa2b..dd568f0ebe 100644 --- a/harbour/contrib/hbxbp/xbplistbox.prg +++ b/harbour/contrib/hbxbp/xbplistbox.prg @@ -116,6 +116,8 @@ CLASS XbpListBox INHERIT XbpWindow, XbpDataRef METHOD getItemIndex( pItm ) METHOD toggleSelected( nIndex ) + METHOD connectAll() + METHOD disConnectAll() DATA sl_hScroll @@ -178,6 +180,19 @@ METHOD XbpListBox:create( oParent, oOwner, aPos, aSize, aPresParams, lVisible ) ::oWidget:installEventFilter( ::pEvents ) ::connectEvent( ::pWidget, QEvent_ContextMenu, {|e| ::grabEvent( QEvent_ContextMenu, e ) } ) + ::connectAll() + + ::setPosAndSize() + IF ::visible + ::show() + ENDIF + ::oParent:AddChild( SELF ) + RETURN Self + +/*----------------------------------------------------------------------*/ + +METHOD XbpListBox:connectAll() + ::connect( ::oWidget, "currentItemChanged(QLWItem,QLWItem)", {|p,p1| ::execSlot( "currentItemChanged(QLWItem,QLWItem)", p, p1 ) } ) ::connect( ::oWidget, "currentRowChanged(int)" , {|p,p1| ::execSlot( "currentRowChanged(int)" , p, p1 ) } ) ::connect( ::oWidget, "currentTextChanged(QString)" , {|p,p1| ::execSlot( "currentTextChanged(QString)" , p, p1 ) } ) @@ -189,11 +204,23 @@ METHOD XbpListBox:create( oParent, oOwner, aPos, aSize, aPresParams, lVisible ) ::connect( ::oWidget, "itemPressed(QLWItem)" , {|p,p1| ::execSlot( "itemPressed(QLWItem)" , p, p1 ) } ) ::connect( ::oWidget, "itemSelectionChanged()" , {|p,p1| ::execSlot( "itemSelectionChanged()" , p, p1 ) } ) - ::setPosAndSize() - IF ::visible - ::show() - ENDIF - ::oParent:AddChild( SELF ) + RETURN Self + +/*----------------------------------------------------------------------*/ + +METHOD XbpListBox:disConnectAll() + + ::disConnect( ::oWidget, "currentItemChanged(QLWItem,QLWItem)" ) + ::disConnect( ::oWidget, "currentRowChanged(int)" ) + ::disConnect( ::oWidget, "currentTextChanged(QString)" ) + ::disConnect( ::oWidget, "itemActivated(QLWItem)" ) + ::disConnect( ::oWidget, "itemChanged(QLWItem)" ) + ::disConnect( ::oWidget, "itemClicked(QLWItem)" ) + ::disConnect( ::oWidget, "itemDoubleClicked(QLWItem)" ) + ::disConnect( ::oWidget, "itemEntered(QLWItem)" ) + ::disConnect( ::oWidget, "itemPressed(QLWItem)" ) + ::disConnect( ::oWidget, "itemSelectionChanged()" ) + RETURN Self /*----------------------------------------------------------------------*/ @@ -221,7 +248,7 @@ METHOD XbpListBox:toggleSelected( nIndex ) aadd( ::sl_editBuffer, nIndex ) ENDIF ELSE - ::sl_editBuffer := { nIndex } + ::sl_editBuffer := nIndex ENDIF RETURN Self @@ -296,7 +323,6 @@ METHOD XbpListBox:configure( oParent, oOwner, aPos, aSize, aPresParams, lVisible METHOD XbpListBox:destroy() - ::disconnect() ::clear() ::xbpWindow:destroy() @@ -318,12 +344,16 @@ METHOD XbpListBox:addItem( cItem ) METHOD XbpListBox:clear() LOCAL qItm + ::disConnectAll() + FOR EACH qItm IN ::aItems qItm := NIL NEXT ::aItems := {} ::oWidget:clear() + ::connectAll() + RETURN .t. /*----------------------------------------------------------------------*/