From: <vac...@us...> - 2008-09-02 22:02:55
|
Revision: 6077 http://krusader.svn.sourceforge.net/krusader/?rev=6077&view=rev Author: vaclavjuza Date: 2008-09-02 22:02:41 +0000 (Tue, 02 Sep 2008) Log Message: ----------- ADDED: Konfigurator mouse selection mode: Possibility to select a predefined mode and change a detail. Modified Paths: -------------- trunk/krusader_kde4/ChangeLog trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.cpp trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.h trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.cpp trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.h trunk/krusader_kde4/krusader/Panel/krselectionmode.cpp trunk/krusader_kde4/krusader/Panel/krselectionmode.h Modified: trunk/krusader_kde4/ChangeLog =================================================================== --- trunk/krusader_kde4/ChangeLog 2008-09-01 22:51:25 UTC (rev 6076) +++ trunk/krusader_kde4/ChangeLog 2008-09-02 22:02:41 UTC (rev 6077) @@ -1,3 +1,5 @@ + ADDED: Konfigurator mouse selection mode: Possibility to select a predefined + mode and change a detail. ADDED: [ 1704953 ] highlight quick search match ADDED: Useractions: added checkbox "enabled" and run mode option "Run in embedded terminal emulator" Modified: trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.cpp =================================================================== --- trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.cpp 2008-09-01 22:51:25 UTC (rev 6076) +++ trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.cpp 2008-09-02 22:02:41 UTC (rev 6077) @@ -373,6 +373,9 @@ mouseCheckboxes = createCheckBoxGroup(1, 0, mouseCheckboxesParam, 11 /*count*/, mouseDetailGroup, PAGE_MOUSE); mouseDetailGrid->addWidget( mouseCheckboxes, 1, 0 ); + for ( int i = 0; i < mouseCheckboxes->count(); i++ ) + connect( mouseCheckboxes->find( i ), SIGNAL( clicked() ), SLOT( slotMouseCheckBoxChanged() ) ); + mouseLayout->addWidget( mouseDetailGroup, 1,0 ); // Disable the details-button if not in custom-mode @@ -407,20 +410,29 @@ } void KgLookFeel::slotSelectionModeChanged() { - bool enable = mouseRadio->find( i18n("Custom Selection Mode") )->isChecked(); - mouseCheckboxes->find( "QT Selection" )->setEnabled( enable ); - mouseCheckboxes->find( "Left Selects" )->setEnabled( enable ); - mouseCheckboxes->find( "Left Preserves" )->setEnabled( enable ); - mouseCheckboxes->find( "ShiftCtrl Left Selects" )->setEnabled( enable ); - mouseCheckboxes->find( "Right Selects" )->setEnabled( enable ); - mouseCheckboxes->find( "Right Preserves" )->setEnabled( enable ); - mouseCheckboxes->find( "ShiftCtrl Right Selects" )->setEnabled( enable ); - mouseCheckboxes->find( "Space Moves Down" )->setEnabled( enable ); - mouseCheckboxes->find( "Space Calc Space" )->setEnabled( enable ); - mouseCheckboxes->find( "Insert Moves Down" )->setEnabled( enable ); - mouseCheckboxes->find( "Immediate Context Menu" )->setEnabled( enable ); + KrSelectionMode *selectionMode = + KrSelectionMode::getSelectionHandlerForMode( mouseRadio->selectedIndex() ); + if ( selectionMode == NULL ) //User mode + return; + selectionMode->init(); + mouseCheckboxes->find( "QT Selection" )->setChecked( selectionMode->useQTSelection() ); + mouseCheckboxes->find( "Left Selects" )->setChecked( selectionMode->leftButtonSelects() ); + mouseCheckboxes->find( "Left Preserves" )->setChecked( selectionMode->leftButtonPreservesSelection() ); + mouseCheckboxes->find( "ShiftCtrl Left Selects" )->setChecked( selectionMode->shiftCtrlLeftButtonSelects() ); + mouseCheckboxes->find( "Right Selects" )->setChecked( selectionMode->rightButtonSelects() ); + mouseCheckboxes->find( "Right Preserves" )->setChecked( selectionMode->rightButtonPreservesSelection() ); + mouseCheckboxes->find( "ShiftCtrl Right Selects" )->setChecked( selectionMode->shiftCtrlRightButtonSelects() ); + mouseCheckboxes->find( "Space Moves Down" )->setChecked( selectionMode->spaceMovesDown() ); + mouseCheckboxes->find( "Space Calc Space" )->setChecked( selectionMode->spaceCalculatesDiskSpace() ); + mouseCheckboxes->find( "Insert Moves Down" )->setChecked( selectionMode->insertMovesDown() ); + mouseCheckboxes->find( "Immediate Context Menu" )->setChecked( selectionMode->showContextMenu() == -1 ); } +void KgLookFeel::slotMouseCheckBoxChanged() +{ + mouseRadio->selectButton( "3" ); //custom selection mode +} + int KgLookFeel::activeSubPage() { return tabWidget->currentIndex(); } Modified: trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.h =================================================================== --- trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.h 2008-09-01 22:51:25 UTC (rev 6076) +++ trunk/krusader_kde4/krusader/Konfigurator/kglookfeel.h 2008-09-02 22:02:41 UTC (rev 6077) @@ -57,6 +57,7 @@ void slotDisable(); void slotEnablePanelToolbar(); void slotSelectionModeChanged(); + void slotMouseCheckBoxChanged(); private: void setupOperationTab(); Modified: trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.cpp =================================================================== --- trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.cpp 2008-09-01 22:51:25 UTC (rev 6076) +++ trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.cpp 2008-09-02 22:02:41 UTC (rev 6077) @@ -277,7 +277,7 @@ ext->setChanged( false ); } -void KonfiguratorRadioButtons::slotApply(QObject *,QString cls, QString name) +int KonfiguratorRadioButtons::selectedIndex() { int cnt = 0; @@ -288,14 +288,22 @@ if( btn->isChecked() ) { - KConfigGroup( krConfig, cls ).writeEntry( name, radioValues[ cnt ] ); - break; + return cnt; } cnt++; } + return -1; } +void KonfiguratorRadioButtons::slotApply(QObject *,QString cls, QString name) +{ + int cnt = selectedIndex(); + + if (cnt >= 0) + KConfigGroup( krConfig, cls ).writeEntry( name, radioValues[ cnt ] ); +} + void KonfiguratorRadioButtons::slotSetDefaults(QObject *) { selectButton( defaultValue ); Modified: trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.h =================================================================== --- trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.h 2008-09-01 22:51:25 UTC (rev 6076) +++ trunk/krusader_kde4/krusader/Konfigurator/konfiguratoritems.h 2008-09-02 22:02:41 UTC (rev 6077) @@ -156,6 +156,7 @@ QWidget( parent ) {}; void add( KonfiguratorCheckBox * ); + int count() { return checkBoxList.count(); }; KonfiguratorCheckBox * find( int index ); KonfiguratorCheckBox * find( QString name ); @@ -182,6 +183,7 @@ void selectButton( QString value ); int count() { return radioButtons.count(); } + int selectedIndex(); QRadioButton* find( int index ); QRadioButton* find( QString name ); Modified: trunk/krusader_kde4/krusader/Panel/krselectionmode.cpp =================================================================== --- trunk/krusader_kde4/krusader/Panel/krselectionmode.cpp 2008-09-01 22:51:25 UTC (rev 6076) +++ trunk/krusader_kde4/krusader/Panel/krselectionmode.cpp 2008-09-02 22:02:41 UTC (rev 6077) @@ -10,29 +10,36 @@ TCSelectionMode tcSelectionMode; UserSelectionMode userSelectionMode; +KrSelectionMode* KrSelectionMode::getSelectionHandlerForMode(int mode) +{ + KrSelectionMode *res = NULL; + switch (mode) { + case 0: + res = &originalSelectionMode; + break; + case 1: + res = &konqSelectionMode; + break; + case 2: + res = &tcSelectionMode; + break; + default: + break; + } + return res; +} + KrSelectionMode* KrSelectionMode::getSelectionHandler() { if (__currentSelectionMode) { // don't check krConfig every time return __currentSelectionMode; } else { // nothing yet, set the correct one - KConfigGroup group( krConfig, "Look&Feel" ); - QString mode = group.readEntry("Mouse Selection", QString("") ); - switch (mode.toInt()) { - case 0: - __currentSelectionMode = &originalSelectionMode; - break; - case 1: - __currentSelectionMode = &konqSelectionMode; - break; - case 2: - __currentSelectionMode = &tcSelectionMode; - break; - case 3: - __currentSelectionMode = &userSelectionMode; - userSelectionMode.init(); - break; - default: - break; + KConfigGroup group( krConfig, "Look&Feel" ); + QString mode = group.readEntry("Mouse Selection", QString("") ); + __currentSelectionMode = getSelectionHandlerForMode( mode.toInt() ); + if ( __currentSelectionMode == NULL ) + { + __currentSelectionMode = &userSelectionMode; } // init and return __currentSelectionMode->init(); Modified: trunk/krusader_kde4/krusader/Panel/krselectionmode.h =================================================================== --- trunk/krusader_kde4/krusader/Panel/krselectionmode.h 2008-09-01 22:51:25 UTC (rev 6076) +++ trunk/krusader_kde4/krusader/Panel/krselectionmode.h 2008-09-02 22:02:41 UTC (rev 6077) @@ -13,6 +13,7 @@ */ class KrSelectionMode { public: + static KrSelectionMode * getSelectionHandlerForMode(int mode); static KrSelectionMode * getSelectionHandler(); static void resetSelectionHandler(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |