[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: koffice/kexi/formeditor
From: Jarosław Staniek <staniek () kde ! org>
Date: 2010-09-09 21:15:39
Message-ID: 20100909211539.B3B83AC884 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1173621 by staniek:
Forms
*Widgets Tree: do not clear selection when switching between forms
M +5 -2 WidgetTreeWidget.cpp
M +3 -0 WidgetTreeWidget.h
--- trunk/koffice/kexi/formeditor/WidgetTreeWidget.cpp #1173620:1173621
@@ -169,6 +169,7 @@
: QTreeWidget(parent)
, m_form(0)
, m_options(options)
+ , m_slotSelectionChanged_enabled(true)
{
setRootIsDecorated(false);
setHeaderLabels(QStringList() << i18n("Widget name") << i18nc("Widget's type", "Type"));
@@ -284,10 +285,10 @@
void WidgetTreeWidget::slotSelectionChanged()
{
- if (!m_form)
+ if (!m_form || !m_slotSelectionChanged_enabled)
return;
const bool hadFocus = hasFocus();
- QList<QTreeWidgetItem*> list = selectedItems();
+ const QList<QTreeWidgetItem*> list( selectedItems() );
m_form->selectFormWidget();
foreach(QTreeWidgetItem *item, list) {
WidgetTreeWidgetItem *it = static_cast<WidgetTreeWidgetItem*>(item);
@@ -333,6 +334,7 @@
void WidgetTreeWidget::setForm(Form *form)
{
+ m_slotSelectionChanged_enabled = false;
if (m_form)
disconnect(m_form, SIGNAL(destroying()), this, SLOT(slotBeforeFormDestroyed()));
m_form = form;
@@ -358,6 +360,7 @@
selectWidget(form->selectedWidgets()->first());
else
selectWidget(form->widget());
+ m_slotSelectionChanged_enabled = true;
}
void WidgetTreeWidget::slotBeforeFormDestroyed()
--- trunk/koffice/kexi/formeditor/WidgetTreeWidget.h #1173620:1173621
@@ -148,6 +148,9 @@
//2.0 WidgetTreeWidgetItem *m_topItem;
Options m_options;
+ //! Used to temporarily disable slotSelectionChanged() when reloading contents in setForm().
+ bool m_slotSelectionChanged_enabled;
+
friend class TabStopDialog;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic