[X2Go-Commits] [x2goclient] 01/02: Revert " - Split Sessions config widget into Input/output and Media widgets."
git-admin at x2go.org
git-admin at x2go.org
Wed Nov 26 17:28:25 CET 2014
This is an automated email from the git hooks/post-receive script.
x2go pushed a commit to branch master
in repository x2goclient.
commit 2bee7c55c3a2f15bd86ed7a93fafd90224ee2e62
Author: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
Date: Wed Nov 26 17:26:08 2014 +0100
Revert " - Split Sessions config widget into Input/output and Media widgets."
This reverts commit 10478baa16054832791996831c98748e87c53337.
---
configdialog.cpp | 16 +--
configdialog.h | 2 -
debian/changelog | 5 -
editconnectiondialog.cpp | 12 +-
editconnectiondialog.h | 2 -
mediawidget.cpp | 338 ----------------------------------------------
mediawidget.h | 70 ----------
settingswidget.cpp | 264 +++++++++++++++++++++++++++++++++++-
settingswidget.h | 17 +++
x2goclient.pro | 4 +-
10 files changed, 281 insertions(+), 449 deletions(-)
diff --git a/configdialog.cpp b/configdialog.cpp
index 434a148..f85d8da 100644
--- a/configdialog.cpp
+++ b/configdialog.cpp
@@ -36,7 +36,6 @@
#include "x2goclientconfig.h"
#include "connectionwidget.h"
#include "settingswidget.h"
-#include "mediawidget.h"
#if defined ( Q_OS_WIN) && defined (CFGCLIENT )
@@ -280,11 +279,8 @@ ConfigDialog::ConfigDialog ( QWidget * parent, Qt::WFlags f )
( ONMainWindow* ) parent,this );
setWidg=new SettingsWidget ( QString::null,
( ONMainWindow* ) parent,this );
- mediaWidget=new MediaWidget ( QString::null,
- ( ONMainWindow* ) parent,this );
conWidg->hide();
setWidg->hide();
- mediaWidget->hide();
X2goSettings st ( "sessions" );
cbStartEmbed->setChecked (
@@ -408,7 +404,6 @@ void ConfigDialog::slot_accepted()
( QVariant ) cbStartEmbed->isChecked() );
st.setting()->sync();
setWidg->saveSettings();
- mediaWidget->saveSettings();
conWidg->saveSettings();
}
#if defined ( Q_OS_WIN) && defined (CFGCLIENT )
@@ -578,19 +573,15 @@ void ConfigDialog::slotAdvClicked()
advancedOptions->setText ( tr ( "Advanced options" ) +" >>" );
conWidg->hide();
setWidg->hide();
- mediaWidget->hide();
conWidg->setParent ( this );
setWidg->setParent ( this );
- mediaWidget->setParent (this);
- tabWidg->removeTab ( 4 );
tabWidg->removeTab ( 3 );
tabWidg->removeTab ( 2 );
}
else
{
tabWidg->addTab ( conWidg,tr ( "&Connection" ) );
- tabWidg->addTab ( setWidg, tr ( "&Input/Output" ) );
- tabWidg->addTab ( mediaWidget, tr ( "&Media" ) );
+ tabWidg->addTab ( setWidg, tr ( "&Settings" ) );
advancedOptions->setText ( tr ( "Advanced options" ) +" <<" );
}
advOptionsShown=!advOptionsShown;
@@ -634,11 +625,6 @@ void ConfigDialog::slotDefaults()
setWidg->setDefaults();
}
break;
- case 4:
- {
- mediaWidget->setDefaults();
- }
- break;
#endif
}
diff --git a/configdialog.h b/configdialog.h
index 8156f2a..148462e 100644
--- a/configdialog.h
+++ b/configdialog.h
@@ -30,7 +30,6 @@ class QButtonGroup;
class PrintWidget;
class ConnectionWidget;
class SettingsWidget;
-class MediaWidget;
class QTabWidget;
class QGroupBox;
#if defined (Q_OS_WIN) && defined (CFGCLIENT )
@@ -87,7 +86,6 @@ private:
QButtonGroup* bgRadio;
ConnectionWidget* conWidg;
SettingsWidget* setWidg;
- MediaWidget* mediaWidget;
#if defined ( Q_OS_WIN) && defined (CFGCLIENT )
XSettingsWidget* xsetWidg;
diff --git a/debian/changelog b/debian/changelog
index 4f33758..d5beff8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -12,11 +12,6 @@ x2goclient (4.0.3.1-0x2go1) UNRELEASED; urgency=medium
* New upstream release (4.0.3.1):
- Update Danish translation file.
- [ Oleksandr Shneyder ]
- * New upstream release (4.0.3.1):
- - Split Sessions config widget into Input/output and Media widgets.
- (Fixes: #770962).
-
-- Mike Gabriel <mike.gabriel at das-netzwerkteam.de> Tue, 21 Oct 2014 13:22:39 +0200
x2goclient (4.0.3.0-0x2go1) unstable; urgency=low
diff --git a/editconnectiondialog.cpp b/editconnectiondialog.cpp
index 741a90a..5cd0d3d 100644
--- a/editconnectiondialog.cpp
+++ b/editconnectiondialog.cpp
@@ -27,7 +27,6 @@
#include "sharewidget.h"
#include "connectionwidget.h"
#include "settingswidget.h"
-#include "mediawidget.h"
EditConnectionDialog::EditConnectionDialog ( bool newSession, QString id, QWidget * par,
int ind,Qt::WFlags f )
@@ -53,13 +52,11 @@ EditConnectionDialog::EditConnectionDialog ( bool newSession, QString id, QWidge
sessSet=new SessionWidget ( newSession, id,parent );
conSet=new ConnectionWidget ( id,parent );
otherSet=new SettingsWidget ( id,parent );
- mediaSet=new MediaWidget ( id,parent );
exportDir=new ShareWidget ( id,parent );
fr->addTab ( sessSet,tr ( "&Session" ) );
fr->addTab ( conSet,tr ( "&Connection" ) );
- fr->addTab ( otherSet,tr ( "&Input/Output" ) );
- fr->addTab ( mediaSet,tr ( "&Media" ) );
+ fr->addTab ( otherSet,tr ( "&Settings" ) );
if (! parent->getHideFolderSharing())
fr->addTab ( exportDir,tr ( "&Shared folders" ) );
@@ -132,7 +129,6 @@ void EditConnectionDialog::slot_accepted()
conSet->saveSettings();
exportDir->saveSettings();
otherSet->saveSettings();
- mediaSet->saveSettings();
sessSet->saveSettings();
}
@@ -158,11 +154,6 @@ void EditConnectionDialog::slot_default()
break;
case 3:
{
- mediaSet->setDefaults();
- }
- break;
- case 4:
- {
exportDir->setDefaults();
}
break;
@@ -174,7 +165,6 @@ void EditConnectionDialog::slot_directRDP(bool direct)
{
fr->setTabEnabled(1,!direct);
fr->setTabEnabled(3,!direct);
- fr->setTabEnabled(4,!direct);
otherSet->setDirectRdp(direct);
}
#endif
diff --git a/editconnectiondialog.h b/editconnectiondialog.h
index 4012826..32b36dd 100644
--- a/editconnectiondialog.h
+++ b/editconnectiondialog.h
@@ -41,7 +41,6 @@ class QTreeView;
class SessionWidget;
class ConnectionWidget;
class SettingsWidget;
-class MediaWidget;
class ShareWidget;
class EditConnectionDialog : public QDialog
@@ -56,7 +55,6 @@ private:
SessionWidget* sessSet;
ConnectionWidget* conSet;
SettingsWidget* otherSet;
- MediaWidget* mediaSet;
ShareWidget* exportDir;
diff --git a/mediawidget.cpp b/mediawidget.cpp
deleted file mode 100644
index b1e7df3..0000000
--- a/mediawidget.cpp
+++ /dev/null
@@ -1,338 +0,0 @@
-/**************************************************************************
-* Copyright (C) 2005-2014 by Oleksandr Shneyder *
-* o.shneyder at phoca-gmbh.de *
-* *
-* This program is free software; you can redistribute it and/or modify *
-* it under the terms of the GNU General Public License as published by *
-* the Free Software Foundation; either version 2 of the License, or *
-* (at your option) any later version. *
-* This program is distributed in the hope that it will be useful, *
-* but WITHOUT ANY WARRANTY; without even the implied warranty of *
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
-* GNU General Public License for more details. *
-* *
-* You should have received a copy of the GNU General Public License *
-* along with this program. If not, see <http://www.gnu.org/licenses/>. *
-***************************************************************************/
-
-#include "mediawidget.h"
-#include "onmainwindow.h"
-#include <QBoxLayout>
-#include <QRadioButton>
-#include <QLineEdit>
-#include <QCheckBox>
-#include <QSpinBox>
-#include <QGroupBox>
-#include <QButtonGroup>
-#include <QLabel>
-#include "x2gosettings.h"
-#include <QDir>
-#include <QApplication>
-#include <QDesktopWidget>
-#include <QTimer>
-#include <QSplashScreen>
-#include "x2gologdebug.h"
-#include <QGridLayout>
-
-MediaWidget::MediaWidget ( QString id, ONMainWindow * mw,
- QWidget * parent, Qt::WindowFlags f )
- : ConfigWidget ( id,mw,parent,f )
-{
-#ifdef Q_WS_HILDON
- QTabWidget* tabSettings=new QTabWidget ( this );
- QFrame* sbgr=new QFrame();
- tabSettings->addTab ( sbgr,tr ( "Sound" ) );
-#else
- sbgr=new QGroupBox ( tr ( "Sound" ),this );
-#endif
- QVBoxLayout *sndLay=new QVBoxLayout ( sbgr );
- QHBoxLayout* sLay=new QHBoxLayout ( );
- QVBoxLayout* sLay_sys=new QVBoxLayout ( );
- QVBoxLayout* sLay_opt=new QVBoxLayout ( );
- sLay->addLayout ( sLay_sys );
- sLay->addLayout ( sLay_opt );
- QVBoxLayout* setLay=new QVBoxLayout ( this );
-
- sound=new QCheckBox ( tr ( "Enable sound support" ),sbgr );
- QButtonGroup* sndsys=new QButtonGroup;
- pulse=new QRadioButton ( "PulseAudio",sbgr );
- arts=new QRadioButton ( "arts",sbgr );
- esd=new QRadioButton ( "esd",sbgr );
- sndsys->addButton ( pulse,PULSE );
- sndsys->addButton ( arts,ARTS );
- sndsys->addButton ( esd,ESD );
- sndsys->setExclusive ( true );
- rbStartSnd=new QRadioButton ( tr ( "Start sound daemon" ),sbgr );
- rbNotStartSnd=new QRadioButton (
- tr ( "Use running sound daemon" ),sbgr );
- cbSndSshTun=new QCheckBox (
- tr ( "Use SSH port forwarding to tunnel\n"
- "sound system connections through firewalls" ),sbgr );
- cbDefSndPort=new QCheckBox ( tr ( "Use default sound port" ),sbgr );
- sbSndPort=new QSpinBox ( sbgr );
- sbSndPort->setMinimum ( 1 );
- sbSndPort->setMaximum ( 99999999 );
-
-
- QHBoxLayout *sndPortLay = new QHBoxLayout();
- lSndPort=new QLabel ( tr ( "Sound port:" ),sbgr );
- sndPortLay->addWidget ( lSndPort );
- sndPortLay->addWidget ( sbSndPort );
-
- sLay_sys->addWidget ( pulse );
- sLay_sys->addWidget ( arts );
- sLay_sys->addWidget ( esd );
-
- sLay_opt->addWidget ( rbStartSnd );
- sLay_opt->addWidget ( rbNotStartSnd );
- sLay_opt->addWidget ( cbSndSshTun );
- QFrame* hl=new QFrame ( sbgr );
- hl->setFrameStyle ( QFrame::HLine | QFrame::Sunken );
- sLay_opt->addWidget ( hl );
- sLay_opt->addWidget ( cbDefSndPort );
- sLay_opt->addLayout ( sndPortLay );
- sndLay->addWidget ( sound );
- sndLay->addLayout ( sLay );
-#ifdef Q_OS_WIN
- arts->hide();
- hl->hide();
- cbDefSndPort->hide();
- lSndPort->hide();
- sbSndPort->hide();
-#endif
-
-
- cbClientPrint=new QCheckBox ( tr ( "Client side printing support" ),
- this );
-#ifdef Q_OS_DARWIN
- arts->hide();
- pulse->hide();
- esd->setChecked ( true );
-#endif
- setLay->addWidget(sbgr);
- setLay->addWidget ( cbClientPrint );
- setLay->addStretch();
-
- connect ( sound,SIGNAL ( toggled ( bool ) ),this,
- SLOT ( slot_sndToggled ( bool ) ) );
- connect ( sndsys,SIGNAL ( buttonClicked ( int ) ),this,
- SLOT ( slot_sndSysSelected ( int ) ) );
- connect ( rbStartSnd,SIGNAL ( clicked ( ) ),this,
- SLOT ( slot_sndStartClicked() ) );
- connect ( rbNotStartSnd,SIGNAL ( clicked ( ) ),this,
- SLOT ( slot_sndStartClicked() ) );
- connect ( cbDefSndPort,SIGNAL ( toggled ( bool ) ),this,
- SLOT ( slot_sndDefPortChecked ( bool ) ) );
-
- setDefaults();
- readConfig();
-}
-
-
-MediaWidget::~MediaWidget()
-{
-}
-
-void MediaWidget::slot_sndSysSelected ( int system )
-{
- rbStartSnd->show();
- rbNotStartSnd->show();
- cbSndSshTun->hide();
- cbDefSndPort->setChecked ( true );
- cbDefSndPort->setEnabled ( true );
-
- switch ( system )
- {
- case PULSE:
- {
- rbStartSnd->hide();
- rbNotStartSnd->hide();
- cbSndSshTun->show();
- cbSndSshTun->setEnabled ( true );
- break;
- }
- case ARTS:
- {
- cbDefSndPort->setChecked ( false );
- cbDefSndPort->setEnabled ( false );
- sbSndPort->setValue ( 20221 );
- break;
- }
- case ESD:
- {
-#ifdef Q_OS_WIN
- rbStartSnd->hide();
- rbNotStartSnd->hide();
- cbSndSshTun->show();
- cbSndSshTun->setEnabled ( false );
- cbSndSshTun->setChecked ( true );
-#endif
- sbSndPort->setValue ( 16001 );
- break;
- }
- }
- slot_sndStartClicked();
-}
-
-void MediaWidget::slot_sndToggled ( bool val )
-{
- arts->setEnabled ( val );
- pulse->setEnabled ( val );
- esd->setEnabled ( val );
-
- rbStartSnd->setEnabled ( val );
- rbNotStartSnd->setEnabled ( val );
-
- cbSndSshTun->setEnabled ( false );
- if ( pulse->isChecked() )
- cbSndSshTun->setEnabled ( val );
- lSndPort->setEnabled ( val );
- if ( !arts->isChecked() )
- cbDefSndPort->setEnabled ( val );
- sbSndPort->setEnabled ( val );
- if ( val )
- slot_sndStartClicked();
-
-}
-
-void MediaWidget::slot_sndStartClicked()
-{
- bool start=rbStartSnd->isChecked();
-#ifdef Q_OS_WIN
- start=false;
-#endif
- if ( pulse->isChecked() )
- {
- lSndPort->setEnabled ( true );
- sbSndPort->setEnabled ( true );
- cbDefSndPort->setEnabled ( true &&sound->isChecked());
- }
- else
- {
- lSndPort->setEnabled ( !start );
- sbSndPort->setEnabled ( !start );
- cbDefSndPort->setEnabled ( !start );
- }
- if ( arts->isChecked() )
- cbDefSndPort->setEnabled ( false );
- if ( ( !start && esd->isChecked() ) ||pulse->isChecked() )
- slot_sndDefPortChecked ( cbDefSndPort->isChecked() );
-
-}
-
-void MediaWidget::slot_sndDefPortChecked ( bool val )
-{
- sbSndPort->setEnabled ( !val );
- lSndPort->setEnabled ( !val );
- if ( val )
- {
- if ( pulse->isChecked() )
- sbSndPort->setValue ( 4713 );
- if ( arts->isChecked() )
- sbSndPort->setValue ( 20221 );
- if ( esd->isChecked() )
- sbSndPort->setValue ( 16001 );
- }
-
-}
-
-void MediaWidget::readConfig()
-{
-
- X2goSettings st ( "sessions" );
-
- bool snd=st.setting()->value (
- sessionId+"/sound",
- ( QVariant ) mainWindow->getDefaultUseSound()
- ).toBool();
- QString sndsys=st.setting()->value ( sessionId+"/soundsystem",
- "pulse" ).toString();
- bool startServ=st.setting()->value ( sessionId+"/startsoundsystem",
- true ).toBool();
- bool sndInTun=st.setting()->value ( sessionId+"/soundtunnel",
- true ).toBool();
- bool defSndPort=st.setting()->value ( sessionId+"/defsndport",
- true ).toBool();
- int sndPort= st.setting()->value ( sessionId+"/sndport",4713 ).toInt();
- if ( startServ )
- rbStartSnd->setChecked ( true );
- else
- rbNotStartSnd->setChecked ( true );
-
- pulse->setChecked ( true );
- slot_sndSysSelected ( PULSE );
-#ifdef Q_OS_WIN
- if ( sndsys=="arts" )
- {
- sndsys="pulse";
- }
-#endif
- if ( sndsys=="arts" )
- {
- arts->setChecked ( true );
- slot_sndSysSelected ( ARTS );
- }
-#ifdef Q_OS_DARWIN
- sndsys="esd";
-#endif
- if ( sndsys=="esd" )
- {
- esd->setChecked ( true );
- slot_sndSysSelected ( ESD );
- }
- cbSndSshTun->setChecked ( sndInTun );
- sound->setChecked ( snd );
- if ( !defSndPort )
- sbSndPort->setValue ( sndPort );
- cbDefSndPort->setChecked ( defSndPort );
- if ( sndsys=="arts" )
- cbDefSndPort->setChecked ( false );
- slot_sndToggled ( snd );
- slot_sndStartClicked();
-
- if(!sound)
- cbDefSndPort->setEnabled(false);
-
- cbClientPrint->setChecked ( st.setting()->value ( sessionId+"/print",
- true ).toBool() );
-}
-
-void MediaWidget::setDefaults()
-{
- sound->setChecked ( true );
- pulse->setChecked ( true );
- slot_sndToggled ( true );
- slot_sndSysSelected ( PULSE );
- cbSndSshTun->setChecked ( true );
- rbStartSnd->setChecked ( true );
- cbClientPrint->setChecked ( true );
-}
-
-void MediaWidget::saveSettings()
-{
- X2goSettings st ( "sessions" );
-
- st.setting()->setValue ( sessionId+"/sound",
- ( QVariant ) sound->isChecked() );
- if ( arts->isChecked() )
- st.setting()->setValue ( sessionId+"/soundsystem",
- ( QVariant ) "arts" );
- if ( esd->isChecked() )
- st.setting()->setValue ( sessionId+"/soundsystem",
- ( QVariant ) "esd" );
- if ( pulse->isChecked() )
- st.setting()->setValue ( sessionId+"/soundsystem",
- ( QVariant ) "pulse" );
-
- st.setting()->setValue ( sessionId+"/startsoundsystem",
- ( QVariant ) rbStartSnd->isChecked() );
- st.setting()->setValue ( sessionId+"/soundtunnel",
- ( QVariant ) cbSndSshTun->isChecked() );
- st.setting()->setValue ( sessionId+"/defsndport",
- ( QVariant ) cbDefSndPort->isChecked() );
- st.setting()->setValue ( sessionId+"/sndport",
- ( QVariant ) sbSndPort->value() );
- st.setting()->setValue ( sessionId+"/print",
- ( QVariant ) cbClientPrint->isChecked() );
- st.setting()->sync();
-}
diff --git a/mediawidget.h b/mediawidget.h
deleted file mode 100644
index ceac786..0000000
--- a/mediawidget.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/**************************************************************************
-* Copyright (C) 2005-2014 by Oleksandr Shneyder *
-* o.shneyder at phoca-gmbh.de *
-* *
-* This program is free software; you can redistribute it and/or modify *
-* it under the terms of the GNU General Public License as published by *
-* the Free Software Foundation; either version 2 of the License, or *
-* (at your option) any later version. *
-* This program is distributed in the hope that it will be useful, *
-* but WITHOUT ANY WARRANTY; without even the implied warranty of *
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
-* GNU General Public License for more details. *
-* *
-* You should have received a copy of the GNU General Public License *
-* along with this program. If not, see <http://www.gnu.org/licenses/>. *
-***************************************************************************/
-
-#ifndef MEDIAWIDGET_H
-#define MEDIAWIDGET_H
-
-#include <configwidget.h>
-
-/**
- @author Oleksandr Shneyder <oleksandr.shneyder at obviously-nice.de>
-*/
-class QSpinBox;
-class QRadioButton;
-class QCheckBox;
-class QLineEdit;
-class QSpinBox;
-class QLabel;
-class QPushButton;
-class QMainWindow;
-class QGroupBox;
-
-
-class MediaWidget : public ConfigWidget
-{
- Q_OBJECT
-public:
- MediaWidget ( QString id, ONMainWindow * mw,
- QWidget * parent=0, Qt::WindowFlags f=0 );
- ~MediaWidget();
- void setDefaults();
- void saveSettings();
-
-private slots:
- void slot_sndSysSelected ( int system );
- void slot_sndToggled ( bool val );
- void slot_sndStartClicked();
- void slot_sndDefPortChecked ( bool val );
-private:
- enum {PULSE,ARTS,ESD};
- QRadioButton* arts;
- QRadioButton* pulse;
- QRadioButton* esd;
- QCheckBox* sound;
- QRadioButton* rbStartSnd;
- QRadioButton* rbNotStartSnd;
- QCheckBox* cbSndSshTun;
- QCheckBox* cbClientPrint;
- QCheckBox* cbDefSndPort;
- QLabel* lSndPort;
- QSpinBox* sbSndPort;
- QGroupBox *sbgr;
-private:
- void readConfig();
-};
-
-#endif
diff --git a/settingswidget.cpp b/settingswidget.cpp
index f16924e..5b634a1 100644
--- a/settingswidget.cpp
+++ b/settingswidget.cpp
@@ -43,14 +43,18 @@ SettingsWidget::SettingsWidget ( QString id, ONMainWindow * mw,
QTabWidget* tabSettings=new QTabWidget ( this );
QFrame* dgb=new QFrame();
QFrame* kgb=new QFrame();
+ QFrame* sbgr=new QFrame();
tabSettings->addTab ( dgb, tr ( "&Display" ) );
tabSettings->addTab ( kgb,tr ( "&Keyboard" ) );
+ tabSettings->addTab ( sbgr,tr ( "Sound" ) );
#else
QGroupBox *dgb=new QGroupBox ( tr ( "&Display" ),this );
clipGr=new QGroupBox ( tr ( "&Clipboard Mode" ),this );
kgb=new QGroupBox ( tr ( "&Keyboard" ),this );
+ sbgr=new QGroupBox ( tr ( "Sound" ),this );
#endif
QVBoxLayout *dbLay = new QVBoxLayout ( dgb );
+ QVBoxLayout *sndLay=new QVBoxLayout ( sbgr );
QVBoxLayout *cbLay=new QVBoxLayout ( clipGr );
QHBoxLayout* sLay=new QHBoxLayout ( );
QVBoxLayout* sLay_sys=new QVBoxLayout ( );
@@ -147,9 +151,7 @@ SettingsWidget::SettingsWidget ( QString id, ONMainWindow * mw,
heightLabel->hide();
#endif
-#ifdef Q_OS_DARWIN
- kgb->hide();
-#endif
+
rbClipBoth=new QRadioButton(tr("Bidirectional copy and paste"), clipGr);
rbClipClient=new QRadioButton(tr("Copy and paste from client to server"), clipGr);
rbClipServer=new QRadioButton(tr("Copy and paste from server to client"), clipGr);
@@ -195,10 +197,68 @@ SettingsWidget::SettingsWidget ( QString id, ONMainWindow * mw,
kbLay->addWidget ( rbKbdSet);
kbLay->addWidget( gbKbdString );
+ sound=new QCheckBox ( tr ( "Enable sound support" ),sbgr );
+ QButtonGroup* sndsys=new QButtonGroup;
+ pulse=new QRadioButton ( "PulseAudio",sbgr );
+ arts=new QRadioButton ( "arts",sbgr );
+ esd=new QRadioButton ( "esd",sbgr );
+ sndsys->addButton ( pulse,PULSE );
+ sndsys->addButton ( arts,ARTS );
+ sndsys->addButton ( esd,ESD );
+ sndsys->setExclusive ( true );
+ rbStartSnd=new QRadioButton ( tr ( "Start sound daemon" ),sbgr );
+ rbNotStartSnd=new QRadioButton (
+ tr ( "Use running sound daemon" ),sbgr );
+ cbSndSshTun=new QCheckBox (
+ tr ( "Use SSH port forwarding to tunnel\n"
+ "sound system connections through firewalls" ),sbgr );
+ cbDefSndPort=new QCheckBox ( tr ( "Use default sound port" ),sbgr );
+ sbSndPort=new QSpinBox ( sbgr );
+ sbSndPort->setMinimum ( 1 );
+ sbSndPort->setMaximum ( 99999999 );
+
+
+ QHBoxLayout *sndPortLay = new QHBoxLayout();
+ lSndPort=new QLabel ( tr ( "Sound port:" ),sbgr );
+ sndPortLay->addWidget ( lSndPort );
+ sndPortLay->addWidget ( sbSndPort );
+
+ sLay_sys->addWidget ( pulse );
+ sLay_sys->addWidget ( arts );
+ sLay_sys->addWidget ( esd );
+
+ sLay_opt->addWidget ( rbStartSnd );
+ sLay_opt->addWidget ( rbNotStartSnd );
+ sLay_opt->addWidget ( cbSndSshTun );
+ QFrame* hl=new QFrame ( sbgr );
+ hl->setFrameStyle ( QFrame::HLine | QFrame::Sunken );
+ sLay_opt->addWidget ( hl );
+ sLay_opt->addWidget ( cbDefSndPort );
+ sLay_opt->addLayout ( sndPortLay );
+ sndLay->addWidget ( sound );
+ sndLay->addLayout ( sLay );
+#ifdef Q_OS_WIN
+ arts->hide();
+ hl->hide();
+ cbDefSndPort->hide();
+ lSndPort->hide();
+ sbSndPort->hide();
+#endif
+
+
+ cbClientPrint=new QCheckBox ( tr ( "Client side printing support" ),
+ this );
+#ifdef Q_OS_DARWIN
+ arts->hide();
+ pulse->hide();
+ esd->setChecked ( true );
+ kgb->hide();
+#endif
#ifndef Q_WS_HILDON
setLay->addWidget ( dgb );
setLay->addWidget ( clipGr );
setLay->addWidget ( kgb );
+ setLay->addWidget ( sbgr );
#ifdef Q_OS_LINUX
#ifdef CFGCLIENT
rdpBox=new QGroupBox ( tr ( "RDP Client" ),this );
@@ -231,6 +291,7 @@ SettingsWidget::SettingsWidget ( QString id, ONMainWindow * mw,
setLay->addWidget ( tabSettings );
// cbClientPrint->hide();
#endif //Q_WS_HILDON
+ setLay->addWidget ( cbClientPrint );
setLay->addStretch();
connect ( custom,SIGNAL ( toggled ( bool ) ),width,
@@ -253,6 +314,16 @@ SettingsWidget::SettingsWidget ( QString id, ONMainWindow * mw,
connect ( kbRadio, SIGNAL (buttonClicked(QAbstractButton*)), this, SLOT(slot_kbdClicked()));
connect ( cbSetDPI,SIGNAL ( toggled ( bool ) ),DPI,
SLOT ( setEnabled ( bool ) ) );
+ connect ( sound,SIGNAL ( toggled ( bool ) ),this,
+ SLOT ( slot_sndToggled ( bool ) ) );
+ connect ( sndsys,SIGNAL ( buttonClicked ( int ) ),this,
+ SLOT ( slot_sndSysSelected ( int ) ) );
+ connect ( rbStartSnd,SIGNAL ( clicked ( ) ),this,
+ SLOT ( slot_sndStartClicked() ) );
+ connect ( rbNotStartSnd,SIGNAL ( clicked ( ) ),this,
+ SLOT ( slot_sndStartClicked() ) );
+ connect ( cbDefSndPort,SIGNAL ( toggled ( bool ) ),this,
+ SLOT ( slot_sndDefPortChecked ( bool ) ) );
setDefaults();
@@ -275,8 +346,10 @@ void SettingsWidget::slot_kbdClicked()
#ifdef Q_OS_LINUX
void SettingsWidget::setDirectRdp(bool direct)
{
+ cbClientPrint->setVisible(!direct);
clipGr->setVisible(!direct);
kgb->setVisible(!direct);
+ sbgr->setVisible(!direct);
cbSetDPI->setVisible(!direct);
cbXinerama->setVisible(!direct);
display->setVisible(!direct);
@@ -347,6 +420,108 @@ void SettingsWidget::slot_hideIdentWins()
}
+void SettingsWidget::slot_sndSysSelected ( int system )
+{
+ rbStartSnd->show();
+ rbNotStartSnd->show();
+ cbSndSshTun->hide();
+ cbDefSndPort->setChecked ( true );
+ cbDefSndPort->setEnabled ( true );
+
+ switch ( system )
+ {
+ case PULSE:
+ {
+ rbStartSnd->hide();
+ rbNotStartSnd->hide();
+ cbSndSshTun->show();
+ cbSndSshTun->setEnabled ( true );
+ break;
+ }
+ case ARTS:
+ {
+ cbDefSndPort->setChecked ( false );
+ cbDefSndPort->setEnabled ( false );
+ sbSndPort->setValue ( 20221 );
+ break;
+ }
+ case ESD:
+ {
+#ifdef Q_OS_WIN
+ rbStartSnd->hide();
+ rbNotStartSnd->hide();
+ cbSndSshTun->show();
+ cbSndSshTun->setEnabled ( false );
+ cbSndSshTun->setChecked ( true );
+#endif
+ sbSndPort->setValue ( 16001 );
+ break;
+ }
+ }
+ slot_sndStartClicked();
+}
+
+void SettingsWidget::slot_sndToggled ( bool val )
+{
+ arts->setEnabled ( val );
+ pulse->setEnabled ( val );
+ esd->setEnabled ( val );
+
+ rbStartSnd->setEnabled ( val );
+ rbNotStartSnd->setEnabled ( val );
+
+ cbSndSshTun->setEnabled ( false );
+ if ( pulse->isChecked() )
+ cbSndSshTun->setEnabled ( val );
+ lSndPort->setEnabled ( val );
+ if ( !arts->isChecked() )
+ cbDefSndPort->setEnabled ( val );
+ sbSndPort->setEnabled ( val );
+ if ( val )
+ slot_sndStartClicked();
+
+}
+
+void SettingsWidget::slot_sndStartClicked()
+{
+ bool start=rbStartSnd->isChecked();
+#ifdef Q_OS_WIN
+ start=false;
+#endif
+ if ( pulse->isChecked() )
+ {
+ lSndPort->setEnabled ( true );
+ sbSndPort->setEnabled ( true );
+ cbDefSndPort->setEnabled ( true &&sound->isChecked());
+ }
+ else
+ {
+ lSndPort->setEnabled ( !start );
+ sbSndPort->setEnabled ( !start );
+ cbDefSndPort->setEnabled ( !start );
+ }
+ if ( arts->isChecked() )
+ cbDefSndPort->setEnabled ( false );
+ if ( ( !start && esd->isChecked() ) ||pulse->isChecked() )
+ slot_sndDefPortChecked ( cbDefSndPort->isChecked() );
+
+}
+
+void SettingsWidget::slot_sndDefPortChecked ( bool val )
+{
+ sbSndPort->setEnabled ( !val );
+ lSndPort->setEnabled ( !val );
+ if ( val )
+ {
+ if ( pulse->isChecked() )
+ sbSndPort->setValue ( 4713 );
+ if ( arts->isChecked() )
+ sbSndPort->setValue ( 20221 );
+ if ( esd->isChecked() )
+ sbSndPort->setValue ( 16001 );
+ }
+
+}
void SettingsWidget::readConfig()
{
@@ -468,6 +643,60 @@ void SettingsWidget::readConfig()
).toBool() );
slot_kbdClicked();
+ bool snd=st.setting()->value (
+ sessionId+"/sound",
+ ( QVariant ) mainWindow->getDefaultUseSound()
+ ).toBool();
+ QString sndsys=st.setting()->value ( sessionId+"/soundsystem",
+ "pulse" ).toString();
+ bool startServ=st.setting()->value ( sessionId+"/startsoundsystem",
+ true ).toBool();
+ bool sndInTun=st.setting()->value ( sessionId+"/soundtunnel",
+ true ).toBool();
+ bool defSndPort=st.setting()->value ( sessionId+"/defsndport",
+ true ).toBool();
+ int sndPort= st.setting()->value ( sessionId+"/sndport",4713 ).toInt();
+ if ( startServ )
+ rbStartSnd->setChecked ( true );
+ else
+ rbNotStartSnd->setChecked ( true );
+
+ pulse->setChecked ( true );
+ slot_sndSysSelected ( PULSE );
+#ifdef Q_OS_WIN
+ if ( sndsys=="arts" )
+ {
+ sndsys="pulse";
+ }
+#endif
+ if ( sndsys=="arts" )
+ {
+ arts->setChecked ( true );
+ slot_sndSysSelected ( ARTS );
+ }
+#ifdef Q_OS_DARWIN
+ sndsys="esd";
+#endif
+ if ( sndsys=="esd" )
+ {
+ esd->setChecked ( true );
+ slot_sndSysSelected ( ESD );
+ }
+ cbSndSshTun->setChecked ( sndInTun );
+ sound->setChecked ( snd );
+ if ( !defSndPort )
+ sbSndPort->setValue ( sndPort );
+ cbDefSndPort->setChecked ( defSndPort );
+ if ( sndsys=="arts" )
+ cbDefSndPort->setChecked ( false );
+ slot_sndToggled ( snd );
+ slot_sndStartClicked();
+
+ if(!sound)
+ cbDefSndPort->setEnabled(false);
+
+ cbClientPrint->setChecked ( st.setting()->value ( sessionId+"/print",
+ true ).toBool() );
}
void SettingsWidget::setDefaults()
@@ -495,6 +724,13 @@ void SettingsWidget::setDefaults()
slot_kbdClicked();
+ sound->setChecked ( true );
+ pulse->setChecked ( true );
+ slot_sndToggled ( true );
+ slot_sndSysSelected ( PULSE );
+ cbSndSshTun->setChecked ( true );
+ rbStartSnd->setChecked ( true );
+ cbClientPrint->setChecked ( true );
cbXinerama->setChecked ( false );
}
@@ -588,6 +824,28 @@ void SettingsWidget::saveSettings()
st.setting()->setValue ( sessionId+"/type",
( QVariant ) ktype );
+ st.setting()->setValue ( sessionId+"/sound",
+ ( QVariant ) sound->isChecked() );
+ if ( arts->isChecked() )
+ st.setting()->setValue ( sessionId+"/soundsystem",
+ ( QVariant ) "arts" );
+ if ( esd->isChecked() )
+ st.setting()->setValue ( sessionId+"/soundsystem",
+ ( QVariant ) "esd" );
+ if ( pulse->isChecked() )
+ st.setting()->setValue ( sessionId+"/soundsystem",
+ ( QVariant ) "pulse" );
+
+ st.setting()->setValue ( sessionId+"/startsoundsystem",
+ ( QVariant ) rbStartSnd->isChecked() );
+ st.setting()->setValue ( sessionId+"/soundtunnel",
+ ( QVariant ) cbSndSshTun->isChecked() );
+ st.setting()->setValue ( sessionId+"/defsndport",
+ ( QVariant ) cbDefSndPort->isChecked() );
+ st.setting()->setValue ( sessionId+"/sndport",
+ ( QVariant ) sbSndPort->value() );
+ st.setting()->setValue ( sessionId+"/print",
+ ( QVariant ) cbClientPrint->isChecked() );
st.setting()->sync();
}
diff --git a/settingswidget.h b/settingswidget.h
index bff8b56..9036529 100644
--- a/settingswidget.h
+++ b/settingswidget.h
@@ -51,10 +51,15 @@ public slots:
#endif
private slots:
+ void slot_sndSysSelected ( int system );
+ void slot_sndToggled ( bool val );
+ void slot_sndStartClicked();
+ void slot_sndDefPortChecked ( bool val );
void slot_identDisplays();
void slot_hideIdentWins();
void slot_kbdClicked();
private:
+ enum {PULSE,ARTS,ESD};
QSpinBox* width;
QSpinBox* height;
QSpinBox* displayNumber;
@@ -62,6 +67,9 @@ private:
QRadioButton* custom;
QRadioButton* display;
QRadioButton* maxRes;
+ QRadioButton* arts;
+ QRadioButton* pulse;
+ QRadioButton* esd;
QRadioButton* rbKbdAuto;
QRadioButton* rbKbdNoSet;
QRadioButton* rbKbdSet;
@@ -69,8 +77,16 @@ private:
QLineEdit* leModel;
QLineEdit* leLayout;
QLineEdit* leVariant;
+ QCheckBox* sound;
+ QRadioButton* rbStartSnd;
+ QRadioButton* rbNotStartSnd;
+ QCheckBox* cbSndSshTun;
+ QCheckBox* cbClientPrint;
+ QCheckBox* cbDefSndPort;
QCheckBox* cbSetDPI;
QCheckBox* cbXinerama;
+ QLabel* lSndPort;
+ QSpinBox* sbSndPort;
QSpinBox* DPI;
QLabel* widthLabel;
QLabel* heightLabel;
@@ -81,6 +97,7 @@ private:
QPushButton* pbIdentDisp;
QList <QMainWindow*> identWins;
QGroupBox *kgb;
+ QGroupBox *sbgr;
QGroupBox *clipGr;
QRadioButton *rbClipBoth;
QRadioButton *rbClipServer;
diff --git a/x2goclient.pro b/x2goclient.pro
index 1c3ead1..e6eee01 100755
--- a/x2goclient.pro
+++ b/x2goclient.pro
@@ -62,7 +62,6 @@ HEADERS += configdialog.h \
configwidget.h \
connectionwidget.h \
settingswidget.h \
- mediawidget.h \
sharewidget.h \
clicklineedit.h \
httpbrokerclient.h \
@@ -80,8 +79,7 @@ HEADERS += configdialog.h \
folderexplorer.h
SOURCES += sharewidget.cpp \
- settingswidget.cpp \
- mediawidget.cpp \
+ settingswidget.cpp\
configwidget.cpp \
sessionwidget.cpp \
connectionwidget.cpp \
--
Alioth's /srv/git/_hooks_/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
More information about the x2go-commits
mailing list