OSDN Git Service

*Implemented server interface.
[greensite/jasmine.git] / ui / settingdialog.cxx
1 #include "settingdialog.h"
2 #include "../validator/ipaddressvalidator.h"
3
4 SettingDialog::SettingDialog(QWidget *parent):QDialog(parent){
5         this->setupUi(this);
6         this->setMaximumSize(this->size());
7         this->setMinimumSize(this->size());
8         this->address->setValidator(new IPAddressValidator(false,this->address));;
9         this->setWindowFlags(Qt::Dialog|Qt::WindowMinimizeButtonHint|Qt::WindowCloseButtonHint);
10 }
11
12 QHostAddress SettingDialog::IPAddress()const{return QHostAddress(this->address->text());}
13 quint16 SettingDialog::port()const{return this->port_control->value();}
14 AddressAndPort SettingDialog::addressPort()const{return AddressAndPort(QHostAddress(this->address->text()),this->port_control->value());}
15 QString SettingDialog::nickName()const{return this->nickName_control->text();}
16 bool SettingDialog::noloadMemberlist()const{return this->no_load_memberlist->isChecked();}
17
18 void SettingDialog::setPort(const quint16 port){this->port_control->setValue(port);}
19 void SettingDialog::setNickName(const QString &name){this->nickName_control->setText(name);}
20 void SettingDialog::setIPAddress(const QHostAddress &address){this->address->setText(address.toString());}
21 void SettingDialog::setNoloadMemberlist(const bool yesno){this->no_load_memberlist->setChecked(yesno);}
22 void SettingDialog::setTab(const tab id){
23         switch(id){
24         case SettingDialog::server:
25                 server:
26                 this->settingTab->setCurrentIndex(0);
27                 break;
28         case SettingDialog::client:
29                 this->settingTab->setCurrentIndex(1);
30                 break;
31         case SettingDialog::misc:
32                 this->settingTab->setCurrentIndex(2);
33                 break;
34         default:
35                 goto server;
36         }
37 }
38 void SettingDialog::setTabEnabled(const tab id,bool enable){
39         switch(id){
40         case SettingDialog::server:
41                 server:
42                 this->settingTab->setTabEnabled(0,enable);
43                 break;
44         case SettingDialog::client:
45                 this->settingTab->setTabEnabled(1,enable);
46                 break;
47         case SettingDialog::misc:
48                 this->settingTab->setTabEnabled(2,enable);
49                 break;
50         default:
51                 goto server;
52         }
53 }
54
55 void SettingDialog::setAddressAndPort(AddressAndPort pair){
56         this->setIPAddress(pair.first);
57         this->setPort(pair.second);
58 }