From 130458f77a7a3fb2be6fc67a604491ebe912ec5e Mon Sep 17 00:00:00 2001 From: Xinyu Hou Date: Thu, 15 Sep 2016 12:42:58 -0400 Subject: [PATCH] #123 Added enable clipboard option in GUI --- src/gui/res/ServerConfigDialogBase.ui | 114 ++++++++++++++------------ src/gui/src/ServerConfig.cpp | 2 + src/gui/src/ServerConfig.h | 3 + src/gui/src/ServerConfigDialog.cpp | 3 + 4 files changed, 71 insertions(+), 51 deletions(-) diff --git a/src/gui/res/ServerConfigDialogBase.ui b/src/gui/res/ServerConfigDialogBase.ui index cc44f66e..1cc4d2b5 100644 --- a/src/gui/res/ServerConfigDialogBase.ui +++ b/src/gui/res/ServerConfigDialogBase.ui @@ -6,8 +6,8 @@ 0 0 - 740 - 514 + 795 + 534 @@ -17,7 +17,7 @@ - 0 + 2 @@ -44,7 +44,7 @@ - :/res/icons/64x64/user-trash.png + :/res/icons/64x64/user-trash.png @@ -82,7 +82,7 @@ - :/res/icons/64x64/video-display.png + :/res/icons/64x64/video-display.png @@ -408,6 +408,36 @@ Double click on a screen to edit its settings. &Options + + + + true + + + Don't take &foreground window on Windows servers + + + + + + + true + + + Use &relative mouse moves + + + + + + + true + + + S&ynchronize screen savers + + + @@ -461,51 +491,7 @@ Double click on a screen to edit its settings. - - - - true - - - Use &relative mouse moves - - - - - - - true - - - S&ynchronize screen savers - - - - - - - true - - - Don't take &foreground window on Windows servers - - - - - - - Ignore auto config clients - - - - - - - Enable drag and drop file transfers - - - - + Qt::Vertical @@ -518,6 +504,30 @@ Double click on a screen to edit its settings. + + + + Enable drag and drop file transfers + + + + + + + Ignore auto config clients + + + + + + + Enable clipboard sharing + + + true + + + @@ -651,7 +661,9 @@ Double click on a screen to edit its settings.
TrashScreenWidget.h
- + + + m_pButtonBox diff --git a/src/gui/src/ServerConfig.cpp b/src/gui/src/ServerConfig.cpp index b7c866f7..73c73dd8 100644 --- a/src/gui/src/ServerConfig.cpp +++ b/src/gui/src/ServerConfig.cpp @@ -51,6 +51,7 @@ ServerConfig::ServerConfig(QSettings* settings, int numColumns, int numRows , m_ServerName(serverName), m_IgnoreAutoConfigClient(false), m_EnableDragAndDrop(false), + m_EnableClipboard(true), m_pMainWindow(mainWindow) { Q_ASSERT(m_pSettings); @@ -246,6 +247,7 @@ QTextStream& operator<<(QTextStream& outStream, const ServerConfig& config) outStream << "\t" << "relativeMouseMoves = " << (config.relativeMouseMoves() ? "true" : "false") << endl; outStream << "\t" << "screenSaverSync = " << (config.screenSaverSync() ? "true" : "false") << endl; outStream << "\t" << "win32KeepForeground = " << (config.win32KeepForeground() ? "true" : "false") << endl; + outStream << "\t" << "enableClipboard = " << (config.enableClipboard() ? "true" : "false") << endl; if (config.hasSwitchDelay()) outStream << "\t" << "switchDelay = " << config.switchDelay() << endl; diff --git a/src/gui/src/ServerConfig.h b/src/gui/src/ServerConfig.h index 29b40fab..8132b8e8 100644 --- a/src/gui/src/ServerConfig.h +++ b/src/gui/src/ServerConfig.h @@ -62,6 +62,7 @@ class ServerConfig : public BaseConfig const HotkeyList& hotkeys() const { return m_Hotkeys; } bool ignoreAutoConfigClient() const { return m_IgnoreAutoConfigClient; } bool enableDragAndDrop() const { return m_EnableDragAndDrop; } + bool enableClipboard() const { return m_EnableClipboard; } void saveSettings(); void loadSettings(); @@ -90,6 +91,7 @@ class ServerConfig : public BaseConfig void setSwitchCornerSize(int val) { m_SwitchCornerSize = val; } void setIgnoreAutoConfigClient(bool on) { m_IgnoreAutoConfigClient = on; } void setEnableDragAndDrop(bool on) { m_EnableDragAndDrop = on; } + void setEnableClipboard(bool on) { m_EnableClipboard = on; } QList& switchCorners() { return m_SwitchCorners; } HotkeyList& hotkeys() { return m_Hotkeys; } @@ -122,6 +124,7 @@ class ServerConfig : public BaseConfig QString m_ServerName; bool m_IgnoreAutoConfigClient; bool m_EnableDragAndDrop; + bool m_EnableClipboard; MainWindow* m_pMainWindow; }; diff --git a/src/gui/src/ServerConfigDialog.cpp b/src/gui/src/ServerConfigDialog.cpp index 06923a7f..07d6796f 100644 --- a/src/gui/src/ServerConfigDialog.cpp +++ b/src/gui/src/ServerConfigDialog.cpp @@ -58,6 +58,8 @@ ServerConfigDialog::ServerConfigDialog(QWidget* parent, ServerConfig& config, co m_pCheckBoxEnableDragAndDrop->setChecked(serverConfig().enableDragAndDrop()); + m_pCheckBoxEnableClipboard->setChecked(serverConfig().enableClipboard()); + foreach(const Hotkey& hotkey, serverConfig().hotkeys()) m_pListHotkeys->addItem(hotkey.text()); @@ -100,6 +102,7 @@ void ServerConfigDialog::accept() serverConfig().setSwitchCornerSize(m_pSpinBoxSwitchCornerSize->value()); serverConfig().setIgnoreAutoConfigClient(m_pCheckBoxIgnoreAutoConfigClient->isChecked()); serverConfig().setEnableDragAndDrop(m_pCheckBoxEnableDragAndDrop->isChecked()); + serverConfig().setEnableClipboard(m_pCheckBoxEnableClipboard->isChecked()); // now that the dialog has been accepted, copy the new server config to the original one, // which is a reference to the one in MainWindow.