1 /** \file TocGeneralSettingsWidget.cpp
2 * \brief Implementation of TocGeneralSettingsWidget class
4 * Tieto Open Communicator - Client for the Telepathy communications framework.
5 * Copyright (c) 2010, Tieto Corporation
8 * Redistribution and use in source and binary forms, with or without modification,
9 * are permitted provided that the following conditions are met:
11 * Redistributions of source code must retain the above copyright notice,
12 * this list of conditions and the following disclaimer.
13 * Redistributions in binary form must reproduce the above copyright notice,
14 * this list of conditions and the following disclaimer in the documentation
15 * and/or other materials provided with the distribution.
16 * Neither the name of the Tieto Corporation nor the names of its contributors
17 * may be used to endorse or promote products derived from this software without
18 * specific prior written permission.
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
23 * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
24 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
28 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 #include "TocGeneralSettingsWidget"
33 #include "ui_TocGeneralSettingsWidget.h"
35 #include "TocSettings"
39 #include <QCommonStyle>
41 TocGeneralSettingsWidget::TocGeneralSettingsWidget(QWidget * parent, Qt::WindowFlags flags)
42 : QWidget(parent, flags) {
45 setStyle(new QCommonStyle());
46 ui = new Ui_TocGeneralSettingsWidgetClass();
48 setContentsMargins( -10, -10, -10, -10 );
50 TocSettings* pSettings = TocSettings::getInstance();
52 /*ui->alphaRadioButton->setAttribute(Qt::WA_TranslucentBackground, true);
53 ui->presenceRadioButton->setAttribute(Qt::WA_TranslucentBackground, false);
54 ui->dragDropRadioButton->setAttribute(Qt::WA_TranslucentBackground, false);
55 ui->acceptRadioButton->setAttribute(Qt::WA_TranslucentBackground, false);
56 ui->askRadioButton->setAttribute(Qt::WA_TranslucentBackground, false);
57 ui->denyRadioButton->setAttribute(Qt::WA_TranslucentBackground, false);*/
59 switch( pSettings->sortOrder() ) {
61 ui->alphaRadioButton->setChecked( true );
63 //TODO: To be implemented.
65 ui->presenceRadioButton->setChecked( true );
68 ui->dragDropRadioButton->setChecked( true );
71 ui->alphaRadioButton->setChecked( true );
74 switch( pSettings->authorizationRule() ) {
76 ui->acceptRadioButton->setChecked( true );
78 //TODO: To be implemented.
80 ui->askRadioButton->setChecked( true );
83 ui->denyRadioButton->setChecked( true );
86 //TODO: Change to the commented one when implementation will be done.
87 //ui->askRadioButton->setChecked( true );
88 ui->acceptRadioButton->setChecked( true );
91 CONNECT(ui->okButton, SIGNAL(clicked()), this, SLOT(saveGeneralSettings()));
92 CONNECT(ui->backButton, SIGNAL(clicked()), this, SIGNAL(backClicked()));
96 TocGeneralSettingsWidget::~TocGeneralSettingsWidget() {
100 void TocGeneralSettingsWidget::saveGeneralSettings() {
102 TocSettings* pSettings = TocSettings::getInstance();
104 if( ui->alphaRadioButton->isChecked() )
105 pSettings->setSortOrder( Alphabetical );
106 else if( ui->presenceRadioButton->isChecked() )
107 pSettings->setSortOrder( ByStatus );
108 else if( ui->dragDropRadioButton->isChecked() )
109 pSettings->setSortOrder( None );
111 if( ui->askRadioButton->isChecked() )
112 pSettings->setAuthorizationRule( Ask );
113 else if( ui->acceptRadioButton->isChecked() )
114 pSettings->setAuthorizationRule( AlwaysAccept );
115 else if( ui->denyRadioButton->isChecked() )
116 pSettings->setAuthorizationRule( AlwaysDeny );