The branch, master has been updated via eafb95dd5e274e0d74c2c2a47126cdd7c300b2ae (commit) from fc019c57e118c79e8406dbe613f55f11e4c9beac (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit eafb95dd5e274e0d74c2c2a47126cdd7c300b2ae Author: Oleksandr Shneyder <o.shneyder@phoca-gmbh.de> Date: Thu Nov 1 13:22:54 2012 +0100 disable session editing if config option disallowSessionEdit is "true" ----------------------------------------------------------------------- Summary of changes: profile.cpp | 27 ++++++--- workarea.cpp | 17 ++++-- x2goapplication.cpp | 11 +++- x2goapplication.h | 4 ++ x2goclientconfig.h | 148 +++++++++++++++++++++++----------------------- x2goclientconfigdetail.h | 3 +- 6 files changed, 118 insertions(+), 92 deletions(-) The diff of changes is: diff --git a/profile.cpp b/profile.cpp index 8d2c8cd..199bb29 100644 --- a/profile.cpp +++ b/profile.cpp @@ -157,17 +157,25 @@ void Profile::slotUpdateProfileWidget() } else { - setFixedWidth(scrollAreaWidget->width()-20); - if(!f2SettingsConnector) + if(! X2GoApplication::instance()->get_clientConfig()->get_disallowSessionEdit().get_value().toBool()) { - f2SettingsConnector=new QFrame(this); - f2SettingsConnector->setFixedSize(30,PROFILE_HEIGHT); - f2SettingsConnector->setAutoFillBackground(true); - f2SettingsConnector->setStyleSheet("border-image: url(:svg/profile2settingsconnector.svg)"); - f2SettingsConnector->setMouseTracking(false); + setFixedWidth(scrollAreaWidget->width()-20); + if(!f2SettingsConnector) + { + f2SettingsConnector=new QFrame(this); + f2SettingsConnector->setFixedSize(30,PROFILE_HEIGHT); + f2SettingsConnector->setAutoFillBackground(true); + f2SettingsConnector->setStyleSheet("border-image: url(:svg/profile2settingsconnector.svg)"); + f2SettingsConnector->setMouseTracking(false); + } + f2SettingsConnector->move(width()-30,0); + f2SettingsConnector->show(); } - f2SettingsConnector->move(width()-30,0); - f2SettingsConnector->show(); + else + { + setFixedWidth(scrollAreaWidget->width()-25); + } + } show(); if(X2GoApplication::instance()->get_workArea()->getScrollArea()->horizontalScrollBar()->value() > @@ -204,6 +212,7 @@ void Profile::initWidget() border-right: 0px transparent; border-left: 0px transparent"); connect(pbSettings, SIGNAL(clicked(bool)), this, SLOT(slotSelectProfile())); connect(pbSettings, SIGNAL(clicked(bool)), X2GoApplication::instance()->get_workArea(), SLOT(slotScrollToProfileSettingsForm())); + pbSettings->setDisabled(X2GoApplication::instance()->get_clientConfig()->get_disallowSessionEdit().get_value().toBool()); updateProfileDetails(); } diff --git a/workarea.cpp b/workarea.cpp index baf4317..eb23c8b 100644 --- a/workarea.cpp +++ b/workarea.cpp @@ -28,6 +28,7 @@ #include "profilesettingsform.h" #include "profiledetailconfiguratorform.h" #include "searchbar.h" +#include "x2goclientconfig.h" #include <QDebug> #include <QPushButton> #include "x2goapplication.h" @@ -49,11 +50,10 @@ WorkArea::WorkArea(QWidget* parent, Qt::WindowFlags f): QWidget( parent, f) lay->addWidget(profileForm= new ProfileForm(scrollWidget)); lay->addWidget(profileSettingsForm= new ProfileSettingsForm(scrollWidget)); lay->addWidget(profileDetailConfiguratorForm= new ProfileDetailConfiguratorForm(scrollWidget)); - + scrollArea->setFocusPolicy(Qt::NoFocus); scrollWidget->setFocusPolicy(Qt::NoFocus); - sessionForm->hide(); X2GoApplication::instance()->set_sessionForm(sessionForm); X2GoApplication::instance()->set_profileForm(profileForm); X2GoApplication::instance()->set_profileSettingsForm(profileSettingsForm); @@ -72,10 +72,15 @@ void WorkArea::slotResizeChildForms() { if(profileForm && sessionForm && profileSettingsForm) { - profileForm->setFixedSize(scrollArea->viewport()->width()-10, scrollArea->viewport()->height()); - profileSettingsForm->setFixedSize(scrollArea->viewport()->size().width()-35, scrollArea->viewport()->size().height()); + if(X2GoApplication::instance()->get_clientConfig()->get_disallowSessionEdit().get_value().toBool()) + profileForm->setFixedSize(scrollArea->viewport()->size()); + else + { + profileForm->setFixedSize(scrollArea->viewport()->width()-10, scrollArea->viewport()->height()); + profileSettingsForm->setFixedSize(scrollArea->viewport()->size().width()-35, scrollArea->viewport()->size().height()); + profileDetailConfiguratorForm->setFixedSize(scrollArea->viewport()->size()); + } sessionForm->setFixedSize(scrollArea->viewport()->size().width()-90, scrollArea->viewport()->size().height()); - profileDetailConfiguratorForm->setFixedSize(scrollArea->viewport()->size()); animateNextScroll=false; QTimer::singleShot(100, this, SLOT(slotScrollChildForms())); } @@ -124,7 +129,7 @@ void WorkArea::slotScrollChildForms() { scrollArea->horizontalScrollBar()->setValue(formToScroll->x()); X2GoApplication::instance()->updateProfiles(); - animateNextScroll=true; + animateNextScroll=true; } else { diff --git a/x2goapplication.cpp b/x2goapplication.cpp index 8abe77f..eaa249a 100644 --- a/x2goapplication.cpp +++ b/x2goapplication.cpp @@ -33,6 +33,7 @@ #include "helpdialog.h" #include "mainwindow.h" #include "x2gobroker.h" +#include "profilesettingsform.h" X2GoApplication::X2GoApplication(int& argc, char** argv, int flags): QApplication(argc, argv, flags) { @@ -98,10 +99,16 @@ void X2GoApplication::slotInitApplication() else { mainWindow->show(); + clientConfig->get_disallowSessionEdit().set_value((QVariant)true); broker=new X2GoBroker(); - connect(broker, SIGNAL(signalSessionsLoaded()), this, SLOT(slotBrokerSessionsConfig())); + connect(broker, SIGNAL(signalSessionsLoaded()), this, SLOT(slotBrokerSessionsConfig())); broker->getUserSessions(); } + if(clientConfig->get_disallowSessionEdit().get_value().toBool()) + { + profileSettingsForm->hide(); + qDebug()<<"hide sttings"; + } } void X2GoApplication::slotBrokerSessionsConfig() @@ -172,6 +179,8 @@ void X2GoApplication::initProfiles() profiles<<(Profile*)psrt.ptr; } emit signalUpdateProfiles(); + if(profiles.size()>0) + profiles[0]->slotSelectProfile(); } void X2GoApplication::updateProfiles() diff --git a/x2goapplication.h b/x2goapplication.h index 0f0b543..2cddbd9 100644 --- a/x2goapplication.h +++ b/x2goapplication.h @@ -29,8 +29,12 @@ public: TYPE get_##NAME(){return NAME;} #define X2GO_RO_PROPERTY(TYPE,NAME) private: TYPE NAME; \ public: TYPE get_##NAME(){return NAME;} +#define X2GO_RO_PROPERTY_REF(TYPE,NAME) private: TYPE NAME; \ +public: TYPE& get_##NAME(){return NAME;} + #define X2GO_PROPERTY_GETTER(TYPE,NAME) public: TYPE get_##NAME(){return NAME;} + class SessionForm; class WorkArea; class ProfileForm; diff --git a/x2goclientconfig.h b/x2goclientconfig.h index 3b750c9..bd2d1ec 100644 --- a/x2goclientconfig.h +++ b/x2goclientconfig.h @@ -29,80 +29,80 @@ class X2GoClientConfig: public QObject { - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printShowDialog) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printPDFView) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printCustomCommand) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printCommand) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printStdin) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printPS) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printViewOpen) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printViewCommand) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, printCUPSDefaultPrinter) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, showStatusBar) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, clientSSHPort) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, trayEnabled) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, trayMinimize) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, trayHideOnClose) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, trayHideOnConnect) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, trayShowOnDisconnect) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, windowSize) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, windowPosition) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, windowShowMaximized) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, showHelp) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, showHelpPack) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, portableMode) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, cleanFilesOnExit) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, hideMenu) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultXinerama) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, thinClientMode) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, showHaltButton) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, startHidden) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, usePGPCard) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, autoAddToKnownHosts) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, disallowSessionEdit) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultAutoLogin) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultBrockerAutoLogin) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultNoBrockerAuth) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultDpi) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultLink) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSpeed) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultPack) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultPackMethod) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultPackQuality) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSound) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSessionGeometry) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSessionGeometryFullScreen) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSessionGeometryWidth) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSessionGeometryHeight) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultKbdLayout) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultKbdType) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultChangeKbd) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, sessionConfigFile) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSessionName) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSessionId) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultUserName) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSessionCommand) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSSHPort) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, defaultSSHKey) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, brokerUrl) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, brokerSSHKey) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, brokerName) - X2GO_RO_PROPERTY(X2GoClientConfigDetail, authId) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, autoStartApp) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, homeDirectory) - - X2GO_RO_PROPERTY(X2GoClientConfigDetail, readExportsFrom) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printShowDialog) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printPDFView) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printCustomCommand) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printCommand) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printStdin) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printPS) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printViewOpen) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printViewCommand) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, printCUPSDefaultPrinter) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, showStatusBar) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, clientSSHPort) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, trayEnabled) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, trayMinimize) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, trayHideOnClose) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, trayHideOnConnect) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, trayShowOnDisconnect) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, windowSize) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, windowPosition) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, windowShowMaximized) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, showHelp) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, showHelpPack) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, portableMode) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, cleanFilesOnExit) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, hideMenu) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultXinerama) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, thinClientMode) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, showHaltButton) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, startHidden) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, usePGPCard) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, autoAddToKnownHosts) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, disallowSessionEdit) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultAutoLogin) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultBrockerAutoLogin) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultNoBrockerAuth) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultDpi) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultLink) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSpeed) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultPack) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultPackMethod) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultPackQuality) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSound) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSessionGeometry) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSessionGeometryFullScreen) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSessionGeometryWidth) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSessionGeometryHeight) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultKbdLayout) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultKbdType) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultChangeKbd) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, sessionConfigFile) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSessionName) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSessionId) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultUserName) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSessionCommand) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSSHPort) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, defaultSSHKey) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, brokerUrl) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, brokerSSHKey) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, brokerName) + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, authId) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, autoStartApp) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, homeDirectory) + + X2GO_RO_PROPERTY_REF(X2GoClientConfigDetail, readExportsFrom) X2GO_PROPERTY_GETTER(QList<X2GoClientConfigDetail*>, configDetails) public: diff --git a/x2goclientconfigdetail.h b/x2goclientconfigdetail.h index 9cf7708..5bfa6ac 100644 --- a/x2goclientconfigdetail.h +++ b/x2goclientconfigdetail.h @@ -28,14 +28,13 @@ class X2GoClientConfigDetail { friend class X2GoClientConfig; typedef bool (X2GoClientConfig::*CheckSanityFunction)(QVariant value); - X2GO_PROPERTY_GETTER( QVariant, value) + X2GO_PROPERTY( QVariant, value) X2GO_PROPERTY_GETTER( QString, commandLineParameter) X2GO_PROPERTY_GETTER( QString, configFileParameter) X2GO_PROPERTY_GETTER( QString, description) private: CheckSanityFunction checkSanityFunction; X2GoClientConfig* parent; - QVariant value; QString commandLineParameter; QString configFileParameter; QString description; hooks/post-receive -- x2goclient2.git (X2Go Client 2 (rewrite of x2goclient.git)) This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "x2goclient2.git" (X2Go Client 2 (rewrite of x2goclient.git)).