Subversion Repositories Projects

Rev

Rev 306 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
159 KeyOz 1
/***************************************************************************
2
 *   Copyright (C) 2008 by Manuel Schrape                                  *
3
 *   manuel.schrape@gmx.de                                                 *
4
 *                                                                         *
5
 *   This program is free software; you can redistribute it and/or modify  *
6
 *   it under the terms of the GNU General Public License as published by  *
7
 *   the Free Software Foundation; either version 2 of the License.        *
8
 *                                                                         *
9
 *   This program is distributed in the hope that it will be useful,       *
10
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
11
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
12
 *   GNU General Public License for more details.                          *
13
 *                                                                         *
14
 *   You should have received a copy of the GNU General Public License     *
15
 *   along with this program; if not, write to the                         *
16
 *   Free Software Foundation, Inc.,                                       *
17
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
18
 ***************************************************************************/
19
#include "dlg_Preferences.h"
20
 
21
dlg_Preferences::dlg_Preferences(QWidget *parent) : QDialog(parent)
22
{
23
    setupUi(this);
306 KeyOz 24
    connect(pb_DIR_CVS,      SIGNAL(clicked()), this, SLOT(slot_DIR_CVS()));
25
    connect(pb_DIR_SET,      SIGNAL(clicked()), this, SLOT(slot_DIR_SET()));
26
    connect(pb_DIR_CACHE,    SIGNAL(clicked()), this, SLOT(slot_DIR_CACHE()));
27
    connect(pb_PATH_AVRDUDE, SIGNAL(clicked()), this, SLOT(slot_PATH_AVRDUDE()));
159 KeyOz 28
}
29
 
163 KeyOz 30
void dlg_Preferences::set_Settings(cSettings *Set)
31
{
32
    Settings = Set;
159 KeyOz 33
 
163 KeyOz 34
    le_DIR_CVS->setText(Settings->DIR.Logging);
35
    le_DIR_SET->setText(Settings->DIR.Parameter);
306 KeyOz 36
    le_DIR_CACHE->setText(Settings->DIR.Cache);
37
    le_PATH_AVRDUDE->setText(Settings->DIR.AVRDUDE);
166 KeyOz 38
    le_TTY->setText(Settings->TTY.Port);
39
    sp_Plotter_Count->setValue(Settings->Data.Plotter_Count);
40
    sp_Debug_Fast->setValue(Settings->Data.Debug_Fast);
41
    sp_Debug_Slow->setValue(Settings->Data.Debug_Slow);
199 KeyOz 42
    sp_Debug_Off->setValue(Settings->Data.Debug_Off);
43
    sp_Navi_Fast->setValue(Settings->Data.Navi_Fast);
44
    sp_Navi_Slow->setValue(Settings->Data.Navi_Slow);
45
    sp_Navi_Off->setValue(Settings->Data.Navi_Off);
46
    le_ServerPort->setText(Settings->Server.Port);
47
    cb_StartServer->setChecked(Settings->Server.StartServer);
48
    cb_ToGround->setChecked(Settings->Server.ToGround);
227 KeyOz 49
    le_Login->setText(Settings->Server.QMKS_Login);
50
    le_Password->setText(Settings->Server.QMKS_Password);
272 KeyOz 51
    le_QMKS_Host->setText(Settings->Server.QMKS_Host);
52
    le_QMKS_Port->setText(Settings->Server.QMKS_Port);
163 KeyOz 53
}
54
 
55
cSettings *dlg_Preferences::get_Settings()
56
{
227 KeyOz 57
    Settings->TTY.Port             = le_TTY->text();
58
    Settings->Data.Plotter_Count   = sp_Plotter_Count->value();
59
    Settings->Data.Debug_Fast      = sp_Debug_Fast->value();
60
    Settings->Data.Debug_Slow      = sp_Debug_Slow->value();
61
    Settings->Data.Debug_Off       = sp_Debug_Off->value();
62
    Settings->Data.Navi_Fast       = sp_Navi_Fast->value();
63
    Settings->Data.Navi_Slow       = sp_Navi_Slow->value();
64
    Settings->Data.Navi_Off        = sp_Navi_Off->value();
65
    Settings->Server.Port          = le_ServerPort->text();
66
    Settings->Server.StartServer   = cb_StartServer->isChecked();
67
    Settings->Server.ToGround      = cb_ToGround->isChecked();
68
    Settings->Server.QMKS_Login    = le_Login->text();
69
    Settings->Server.QMKS_Password = le_Password->text();
272 KeyOz 70
    Settings->Server.QMKS_Host     = le_QMKS_Host->text();
71
    Settings->Server.QMKS_Port     = le_QMKS_Port->text();
166 KeyOz 72
 
163 KeyOz 73
    return Settings;
74
}
75
 
76
// Configuration -> Verzeichnisse
77
/////////////////////////////////
78
void dlg_Preferences::slot_DIR_CVS()
79
{
361 KeyOz 80
    QString directory = QFileDialog::getExistingDirectory(this, trUtf8("Verzeichniss für Daten"), Settings->DIR.Logging, QFileDialog::DontResolveSymlinks | QFileDialog::ShowDirsOnly);
163 KeyOz 81
 
82
    if ((!directory.isEmpty()) && (Settings->DIR.Logging != directory))
83
    {
84
        Settings->DIR.Logging = directory;
85
        le_DIR_CVS->setText(Settings->DIR.Logging);
86
    }
87
}
88
 
89
void dlg_Preferences::slot_DIR_SET()
90
{
166 KeyOz 91
    QString directory = QFileDialog::getExistingDirectory(this, trUtf8("Verzeichniss für Settings-Dateien"), Settings->DIR.Parameter, QFileDialog::DontResolveSymlinks | QFileDialog::ShowDirsOnly);
163 KeyOz 92
 
93
    if ((!directory.isEmpty()) && (Settings->DIR.Parameter != directory))
94
    {
95
        Settings->DIR.Parameter = directory;
96
        le_DIR_SET->setText(Settings->DIR.Parameter);
97
    }
98
 
99
}
306 KeyOz 100
void dlg_Preferences::slot_DIR_CACHE()
101
{
102
    QString directory = QFileDialog::getExistingDirectory(this, trUtf8("Verzeichniss für Karten-Cache"), Settings->DIR.Cache, QFileDialog::DontResolveSymlinks | QFileDialog::ShowDirsOnly);
166 KeyOz 103
 
306 KeyOz 104
    if ((!directory.isEmpty()) && (Settings->DIR.Cache != directory))
105
    {
106
        Settings->DIR.Cache = directory;
107
        le_DIR_CACHE->setText(Settings->DIR.Cache);
108
    }
109
}
110
 
111
void dlg_Preferences::slot_PATH_AVRDUDE()
112
{
113
    QString directory = QFileDialog::getOpenFileName(this, trUtf8("Pfad zu AVRDUDE"), Settings->DIR.AVRDUDE, tr("AVRDUDE (*)"));
114
 
115
 
116
    if ((!directory.isEmpty()) && (Settings->DIR.AVRDUDE != directory))
117
    {
118
        Settings->DIR.AVRDUDE = directory;
119
        le_PATH_AVRDUDE->setText(Settings->DIR.AVRDUDE);
120
    }
121
}
122
 
159 KeyOz 123
dlg_Preferences::~dlg_Preferences()
124
{
125
}
126
 
127