------------------------------------------------------------ revno: 242 committer: Alan Alvarez <aalva...@aliensoft.net> branch nick: login-system timestamp: Thu 2010-08-05 19:48:25 -0400 message: - Add workplaces to local cache when creating a new workplace, or joining an existing one - Make Sync option available only when working offline modified: mira-client/include/network/messages/MsgGroupAccepted.h mira-client/include/network/messages/MsgGroupJoined.h mira-client/src/gui/qt/GuiApp.cpp mira-client/src/gui/qt/MainWindow.cpp
-- lp:~mira-dev/mira/login-system https://code.launchpad.net/~mira-dev/mira/login-system You are subscribed to branch lp:~mira-dev/mira/login-system. To unsubscribe from this branch go to https://code.launchpad.net/~mira-dev/mira/login-system/+edit-subscription
=== modified file 'mira-client/include/network/messages/MsgGroupAccepted.h' --- mira-client/include/network/messages/MsgGroupAccepted.h 2010-03-10 19:11:02 +0000 +++ mira-client/include/network/messages/MsgGroupAccepted.h 2010-08-05 23:48:25 +0000 @@ -68,6 +68,16 @@ Workplace* workplace_object = new miraclient::gui::Workplace(workplace); QMetaObject::invokeMethod(Application::get_gui_application(), "AddWorkplace", Qt::QueuedConnection, MIRA_QT_GENERIC_ARG(Workplace*, workplace_object)); + + QSettings& settings = Application::get_settings(); + settings.beginGroup("servers"); + Server server = settings.value(QString::fromStdString(Application::user_info.server_key)).value<Server>(); + settings.endGroup(); + + WorkplaceCache workplace_cache = { QString::fromStdString(workplace) }; + server.workplaces.append(workplace_cache); + settings.sync(); + Application::get_client()->send("LU \"" + workplace + '\"'); } }; === modified file 'mira-client/include/network/messages/MsgGroupJoined.h' --- mira-client/include/network/messages/MsgGroupJoined.h 2010-03-11 15:39:46 +0000 +++ mira-client/include/network/messages/MsgGroupJoined.h 2010-08-05 23:48:25 +0000 @@ -54,6 +54,15 @@ QMetaObject::invokeMethod(Application::get_gui_application(), "AddWorkplace", Qt::QueuedConnection, MIRA_QT_GENERIC_ARG(Workplace*, workplace)); + QSettings& settings = Application::get_settings(); + settings.beginGroup("servers"); + Server server = settings.value(QString::fromStdString(Application::user_info.server_key)).value<Server>(); + settings.endGroup(); + + WorkplaceCache workplace_cache = { QString::fromStdString(workplace->getName()) }; + server.workplaces.append(workplace_cache); + settings.sync(); + // Request Utility List std::string server_request = "LU \""; server_request += workplace->getName() + '\"'; === modified file 'mira-client/src/gui/qt/GuiApp.cpp' --- mira-client/src/gui/qt/GuiApp.cpp 2010-07-29 22:18:27 +0000 +++ mira-client/src/gui/qt/GuiApp.cpp 2010-08-05 23:48:25 +0000 @@ -1,7 +1,9 @@ #include <QtCore/QTranslator> #include <QtCore/QLocale> #include <QMessageBox> +#include <QAction> #include <QList> + #include "GuiApp.h" #include "MiraDefs.h" #include "Workplace.h" @@ -9,6 +11,7 @@ #include "Application.h" #include "WorkplaceMember.h" #include "Server.h" +#include "Version.h" #include <iostream> using std::cout; @@ -295,4 +298,6 @@ } m_mainWindow->setCentralWidgetIndex(WORKPLACE_WIDGET); + m_mainWindow->m_syncAction->setEnabled(true); + m_mainWindow->setWindowTitle(QString("%1 %2 %3: %4").arg(MiraNameStr).arg(MiraVersionStr).arg(tr("Working Offline")).arg(QString::fromStdString(Application::user_info.server_key))); } === modified file 'mira-client/src/gui/qt/MainWindow.cpp' --- mira-client/src/gui/qt/MainWindow.cpp 2010-08-04 00:10:46 +0000 +++ mira-client/src/gui/qt/MainWindow.cpp 2010-08-05 23:48:25 +0000 @@ -141,7 +141,9 @@ //Sync Action m_syncAction = new QAction("&Sync", this); + m_syncAction->setShortcut(tr("Ctrl+S")); m_syncAction->setStatusTip(tr("Syncrhonize with Server")); + m_syncAction->setDisabled(true); } void MainWindow::closeEvent(QCloseEvent * event) @@ -248,15 +250,18 @@ void MainWindow::loginSuccessful() { m_centralWidget->setCurrentIndex(WORKPLACE_WIDGET); - setWindowTitle(tr(MiraNameStr) + " " + MiraVersionStr + " Connected to: " + Application::get_client()->get_remote_server_address().c_str()); + setWindowTitle(QString("%1 %2 %3: %4(%5)").arg(MiraNameStr).arg(MiraVersionStr).arg(tr("Connected")).arg(QString::fromStdString(Application::user_info.server_key)).arg(QString::fromStdString(Application::get_client()->get_remote_server_address()))); m_createWorkplaceAction->setEnabled(true); m_joinWorkplaceAction->setEnabled(true); + m_syncAction->setEnabled(false); } void MainWindow::loginFailed(const QString& error_message) { m_connectionManagementWidget->loginFailed(); statusBar()->showMessage(QString("%1: %2").arg(tr("Failed to login")).arg(error_message), 5000); + + Application::mode = Application::OFFLINE; } void MainWindow::serverConnectionLost() @@ -265,6 +270,9 @@ m_centralWidget->setCurrentIndex(CONNECTION_MANAGEMENT_WIDGET); m_joinWorkplaceAction->setDisabled(true); m_newUserAction->setDisabled(true); + m_syncAction->setDisabled(false); + + Application::mode == Application::OFFLINE; emit serverConnectionTerminated(); }
------------------------------------------------------------------------------ This SF.net email is sponsored by Make an app they can't live without Enter the BlackBerry Developer Challenge http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________ Mira-development mailing list Mira-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mira-development