pidgin/quail/quail-redux

Fix merge

2013-09-21, Phil Hannent
4d501b99d544
Parents a985a548a72f
Children 2a23fb10576a
Fix merge
--- a/TODO.txt Fri Sep 20 13:46:58 2013 +0100
+++ b/TODO.txt Sat Sep 21 09:07:28 2013 +0100
@@ -32,8 +32,8 @@
* Add "User is typing" notification
* Status selector working from tray icon
* Improve enter key usage so that Shift-Enter does not send, by inserts a line feed
-* Rewrite the event loop for Windows
-* Add a cool logging system: http://jpnaude.github.io/Qtilities/page_widget_set.html
+* Rewrite the event loop for Window
+* Remember the window layout and position
DONE
===========================================================
--- a/src/QuailBuddyList.cpp Fri Sep 20 13:46:58 2013 +0100
+++ b/src/QuailBuddyList.cpp Sat Sep 21 09:07:28 2013 +0100
@@ -543,7 +543,9 @@
setColumnWidth(0, BUDDY_ICON_SIZE);
setColumnWidth(1, this->width() - (BUDDY_ICON_SIZE *4));
setColumnWidth(2, BUDDY_ICON_SIZE);
- qDebug() << "QQuailBuddyList::resizeEvent.end";
+ /* Trigger a geometry and state save */
+ if (!saveTimer->isActive())
+ saveTimer->start(2000);
}
void
@@ -560,8 +562,6 @@
qDebug() << "QQuailBuddyList::nodeExpandedSlot.setNodeCollapsed:FALSE";
purple_blist_node_set_bool(node, "collapsed", FALSE);
-// if (!saveTimer->isActive())
-// saveTimer->start(2000, true);
}
else if (PURPLE_BLIST_NODE_IS_CONTACT(node))
{
@@ -582,9 +582,6 @@
{
qDebug() << "QQuailBuddyList::nodeCollapsedSlot:collapsed::true";
purple_blist_node_set_bool(node, "collapsed", TRUE);
-
-// if (!saveTimer->isActive())
-// saveTimer->start(2000, true);
}
else if (PURPLE_BLIST_NODE_IS_CONTACT(node))
{
@@ -655,7 +652,9 @@
void
QQuailBuddyList::saveBlistSlot()
{
-// purple_blist_save();
+ QSetting appSettings(APP_NAME, APP_MAJOR_VERSION);
+ appSettings.setValue("geometry", saveGeometry());
+ appSettings.setValue("state", saveState());
}
//TODO: This needs moving to the items contextMenuEvent
--- a/src/QuailMainWindow.cpp Fri Sep 20 13:46:58 2013 +0100
+++ b/src/QuailMainWindow.cpp Sat Sep 21 09:07:28 2013 +0100
@@ -74,8 +74,10 @@
purple_prefs_add_bool("/quail/blist/show_large_icons",
(QApplication::desktop()->screenGeometry().width() >= 600));
purple_prefs_add_bool("/quail/blist/dim_idle_buddies", true);
+ purple_prefs_add_none("/quail/blist/geometary", 0);
+ purple_prefs_add_none("/quail/blist/state", 0);
+ qQuailNotifyInit();
- qQuailNotifyInit();
}
static void
@@ -150,6 +152,7 @@
retranslateUi(this);
purple_accounts_restore_current_statuses();
+ slotReadSettings();
}
QQuailMainWindow::~QQuailMainWindow()
@@ -455,6 +458,25 @@
showBlistWindow();
}
+/* Ideally I want to save these with using the purple pref functions
+ * However they only cover basic types. Need to look at how to put
+ * these settings into a purple string */
+void
+QQuailMainWindow::slotSaveSettings()
+{
+ QSetting appSettings(APP_NAME, APP_MAJOR_VERSION);
+ appSettings.setValue("geometry", saveGeometry());
+ appSettings.setValue("state", saveState());
+}
+
+void
+QQuailMainWindow::slotReadSettings()
+{
+ QSetting appSettings(APP_NAME, APP_MAJOR_VERSION);
+ restoreGeometry(appSettings.value("geometry", saveGeometry()));
+ restoreState(appSettings.value("state", saveState()));
+}
+
QQuailBListWindow *
QQuailMainWindow::getBlistWindow() const
{
@@ -547,6 +569,12 @@
qDebug() << "QQuailMainWindow::showPrefWindow().end";
}
+QQuailMainWindow::saveSettings()
+{
+ saveGeometry();
+ saveState();
+}
+
QQuailMainWindow *
qQuailGetMainWindow()
{
--- a/src/QuailMainWindow.h Fri Sep 20 13:46:58 2013 +0100
+++ b/src/QuailMainWindow.h Sat Sep 21 09:07:28 2013 +0100
@@ -81,6 +81,8 @@
private slots:
void slotStateChanges(QAction*);
+ void slotSaveSettings();
+ void slotReadSettings();
private:
void buildInterface();