diff options
| author | Peter Penz <[email protected]> | 2009-02-03 18:40:59 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2009-02-03 18:40:59 +0000 |
| commit | 6c75649664547b7f0ead9658af224524632d5c56 (patch) | |
| tree | 52777f14167dd103b86929445fea9068e99fa169 /src | |
| parent | 0217168998bb6b9c327cd1a803dfe19a10543db7 (diff) | |
Check whether the global single-click/double-click setting has been changed during runtime and assure that the behavior of the view is adjusted.
CCMAIL: [email protected]
BUG: 175635
BUG: 175280
svn path=/trunk/KDE/kdebase/apps/; revision=920754
Diffstat (limited to 'src')
| -rw-r--r-- | src/dolphindetailsview.cpp | 17 | ||||
| -rw-r--r-- | src/dolphindetailsview.h | 4 | ||||
| -rw-r--r-- | src/dolphiniconsview.cpp | 17 | ||||
| -rw-r--r-- | src/dolphiniconsview.h | 2 |
4 files changed, 29 insertions, 11 deletions
diff --git a/src/dolphindetailsview.cpp b/src/dolphindetailsview.cpp index 2b8583e13..b9e499635 100644 --- a/src/dolphindetailsview.cpp +++ b/src/dolphindetailsview.cpp @@ -149,8 +149,8 @@ DolphinDetailsView::DolphinDetailsView(QWidget* parent, DolphinController* contr setFocus(); viewport()->installEventFilter(this); - connect(KGlobalSettings::self(), SIGNAL(kdisplayFontChanged()), - this, SLOT(updateFont())); + connect(KGlobalSettings::self(), SIGNAL(settingsChanged(int)), + this, SLOT(slotGlobalSettingsChanged(int))); m_useDefaultIndexAt = false; } @@ -657,14 +657,23 @@ void DolphinDetailsView::requestActivation() m_controller->requestActivation(); } -void DolphinDetailsView::updateFont() +void DolphinDetailsView::slotGlobalSettingsChanged(int category) { + Q_UNUSED(category); + const DetailsModeSettings* settings = DolphinSettings::instance().detailsModeSettings(); Q_ASSERT(settings != 0); - if (settings->useSystemFont()) { m_font = KGlobalSettings::generalFont(); } + + disconnect(this, SIGNAL(clicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + disconnect(this, SIGNAL(doubleClicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + if (KGlobalSettings::singleClick()) { + connect(this, SIGNAL(clicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + } else { + connect(this, SIGNAL(doubleClicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + } } void DolphinDetailsView::updateElasticBandSelection() diff --git a/src/dolphindetailsview.h b/src/dolphindetailsview.h index c81884ae9..0cef83741 100644 --- a/src/dolphindetailsview.h +++ b/src/dolphindetailsview.h @@ -66,7 +66,7 @@ protected: virtual bool eventFilter(QObject* watched, QEvent* event); virtual QModelIndex indexAt (const QPoint& point) const; virtual void setSelection(const QRect& rect, QItemSelectionModel::SelectionFlags command); - virtual void scrollTo (const QModelIndex & index, ScrollHint hint = EnsureVisible); + virtual void scrollTo(const QModelIndex& index, ScrollHint hint = EnsureVisible); private slots: /** @@ -144,7 +144,7 @@ private slots: void requestActivation(); - void updateFont(); + void slotGlobalSettingsChanged(int category); /** * If the elastic band is currently shown, update the elastic band based on diff --git a/src/dolphiniconsview.cpp b/src/dolphiniconsview.cpp index 885a49101..180caae22 100644 --- a/src/dolphiniconsview.cpp +++ b/src/dolphiniconsview.cpp @@ -126,8 +126,8 @@ DolphinIconsView::DolphinIconsView(QWidget* parent, DolphinController* controlle setFocus(); - connect(KGlobalSettings::self(), SIGNAL(kdisplayFontChanged()), - this, SLOT(updateFont())); + connect(KGlobalSettings::self(), SIGNAL(settingsChanged(int)), + this, SLOT(slotGlobalSettingsChanged(int))); } DolphinIconsView::~DolphinIconsView() @@ -371,14 +371,23 @@ void DolphinIconsView::requestActivation() m_controller->requestActivation(); } -void DolphinIconsView::updateFont() +void DolphinIconsView::slotGlobalSettingsChanged(int category) { + Q_UNUSED(category); + const IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings(); Q_ASSERT(settings != 0); - if (settings->useSystemFont()) { m_font = KGlobalSettings::generalFont(); } + + disconnect(this, SIGNAL(clicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + disconnect(this, SIGNAL(doubleClicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + if (KGlobalSettings::singleClick()) { + connect(this, SIGNAL(clicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + } else { + connect(this, SIGNAL(doubleClicked(QModelIndex)), m_controller, SLOT(triggerItem(QModelIndex))); + } } void DolphinIconsView::updateGridSize(bool showPreview, int additionalInfoCount) diff --git a/src/dolphiniconsview.h b/src/dolphiniconsview.h index cc21e9aad..76a369db9 100644 --- a/src/dolphiniconsview.h +++ b/src/dolphiniconsview.h @@ -75,7 +75,7 @@ private slots: void slotAdditionalInfoChanged(); void setZoomLevel(int level); void requestActivation(); - void updateFont(); + void slotGlobalSettingsChanged(int category); private: /** |
