diff --git a/resources/img/calculate-icon.png b/resources/img/calculate-icon.png new file mode 100644 index 0000000..0742e64 Binary files /dev/null and b/resources/img/calculate-icon.png differ diff --git a/resources/img/calculate-logo.png b/resources/img/calculate-logo.png index 6b40bb7..0dcea5f 100644 Binary files a/resources/img/calculate-logo.png and b/resources/img/calculate-logo.png differ diff --git a/resources/licenses/en.txt b/resources/licenses/en.txt deleted file mode 100644 index 3156759..0000000 --- a/resources/licenses/en.txt +++ /dev/null @@ -1 +0,0 @@ -License EN \ No newline at end of file diff --git a/resources/licenses/ru.txt b/resources/licenses/ru.txt deleted file mode 100644 index e575717..0000000 --- a/resources/licenses/ru.txt +++ /dev/null @@ -1 +0,0 @@ -Лицензия Русский \ No newline at end of file diff --git a/resources/systeminstaller.qrc b/resources/systeminstaller.qrc index 1f9a919..59f9419 100644 --- a/resources/systeminstaller.qrc +++ b/resources/systeminstaller.qrc @@ -1,5 +1,6 @@ img/calculate-logo.png + img/calculate-icon.png diff --git a/resources/texts/complete_en.txt b/resources/texts/complete_en.txt deleted file mode 100644 index 8e2a86b..0000000 --- a/resources/texts/complete_en.txt +++ /dev/null @@ -1,4 +0,0 @@ -Congratulations, the instalation is complete! - -Press "Next" to exit. - diff --git a/resources/texts/welcome_en.txt b/resources/texts/welcome_en.txt deleted file mode 100644 index 2a79521..0000000 --- a/resources/texts/welcome_en.txt +++ /dev/null @@ -1,6 +0,0 @@ - -Welcome to Calculate Linux.
-http://calculate-linux.org -
-
- \ No newline at end of file diff --git a/src/installerpage.h b/src/installerpage.h index 60907b5..84ce12c 100644 --- a/src/installerpage.h +++ b/src/installerpage.h @@ -17,7 +17,7 @@ public: QString getTitle() const { return m_Title; } void setTitle(const QString& title ) { m_Title = title; } - virtual bool validate() const { return true; } + virtual bool validate() { return true; } virtual void retranslateUi() = 0; signals: diff --git a/src/libparted.cpp b/src/libparted.cpp index f214bf0..4788951 100644 --- a/src/libparted.cpp +++ b/src/libparted.cpp @@ -6,13 +6,11 @@ LibParted::LibParted(QObject *parent) : QObject(parent) { -// ped_exception_set_handler( ) Init(); } LibParted::~LibParted() { - } QString LibParted::getVersion() @@ -25,11 +23,8 @@ void LibParted::Init() ped_device_probe_all(); PedDevice* dsk = NULL; - while ( (dsk = ped_device_get_next(dsk)) != NULL ) - { m_DeviceList[ QString(dsk->path) ] = dsk; - } } QStringList LibParted::getDevices() @@ -90,13 +85,12 @@ QList LibParted::getPartitionList(const QString& path) throw(LibP part_inf.end = (part->geom.end + 1) * dev->sector_size - 1; part_inf.size = sizeHuman( part->geom.length * dev->sector_size ); - if (!(part->type & PED_PARTITION_FREESPACE)) + if ( !(part->type & PED_PARTITION_FREESPACE) ) { if (has_extended) { char* type = const_cast( ped_partition_type_get_name(part->type) ); part_inf.type = QString(type); - //free(type); } part_inf.fs = part->fs_type ? QString(part->fs_type->name) : ""; @@ -105,7 +99,6 @@ QList LibParted::getPartitionList(const QString& path) throw(LibP { char* name = const_cast( ped_partition_get_name(part) ); part_inf.name = QString(name); - //free(name); } } else { @@ -143,7 +136,7 @@ QString LibParted::sizeHuman(const long long size) float conv_size; float coef = 1; - for (int i = 0; i < sizeof(unit); ++i) + for (quint32 i = 0; i < sizeof(unit); ++i) { conv_size = size/coef; QString res = QString::number(conv_size, 'f', 2); @@ -152,5 +145,7 @@ QString LibParted::sizeHuman(const long long size) coef *= 1000; } + + return ""; } diff --git a/src/pagecfdisk.cpp b/src/pagecfdisk.cpp index 8ffe181..924c775 100644 --- a/src/pagecfdisk.cpp +++ b/src/pagecfdisk.cpp @@ -11,7 +11,8 @@ PageCfdisk::PageCfdisk( const QString& command, const QString& disk) : InstallerPage(), m_Cmd(command), - m_Disk(disk) + m_Disk(disk), + m_Lang("C") { setupUi(); @@ -52,20 +53,13 @@ void PageCfdisk::setupUi() void PageCfdisk::retranslateUi() { - qDebug() << "PageCfdisk::retranslateUi()"; - setTitle( tr("Partitioning") ); - m_labelHelp->setText( tr("Do manual partitioning. To finish, exit from %1") ); -} - -bool PageCfdisk::validate() -{ - return true; + m_labelHelp->setText( tr("Do manual partitioning. To finish, exit from %1").arg(m_Cmd) ); } void PageCfdisk::show() { - QString cmd = m_Cmd + " " + m_Disk + "; exit \r\n"; + QString cmd = QString("LANGUAGE=""%1"" %2 %3").arg(m_Lang).arg(m_Cmd).arg(m_Disk) + "; exit \r\n"; m_Term->sendText( cmd ); m_Term->setFocus(); } diff --git a/src/pagecfdisk.h b/src/pagecfdisk.h index 5dc2eb1..23023ed 100644 --- a/src/pagecfdisk.h +++ b/src/pagecfdisk.h @@ -12,7 +12,6 @@ class PageCfdisk : public InstallerPage public: explicit PageCfdisk(const QString& command, const QString& disk); - bool validate(); void retranslateUi(); protected: @@ -29,6 +28,7 @@ signals: private: const QString m_Cmd; const QString m_Disk; + const QString m_Lang; QWidget* m_widgetTerm; QLabel* m_labelHelp; diff --git a/src/pageconfiguration.cpp b/src/pageconfiguration.cpp index 7dc9c7e..19604eb 100644 --- a/src/pageconfiguration.cpp +++ b/src/pageconfiguration.cpp @@ -4,74 +4,115 @@ #include #include #include +#include #include -PageConfiguration::PageConfiguration() : - InstallerPage( ) +PageConfiguration::PageConfiguration(const QString* language) : + InstallerPage( ), + m_Lang(language) { setupUi(); } void PageConfiguration::setupUi() { - m_labelText = new QLabel; + // + m_labelHelp = new QLabel; - QHBoxLayout* hbox_1 = new QHBoxLayout; + // mode + m_chkboxBuilder = new QCheckBox; + m_chkboxForce = new QCheckBox; + // hostname + QHBoxLayout* hbox_hostname = new QHBoxLayout; m_labelHostName = new QLabel; - m_Hostname = new QLineEdit( "calculate" ); - - hbox_1->addWidget(m_labelHostName); - hbox_1->addWidget(m_Hostname); - - QHBoxLayout* hbox_2 = new QHBoxLayout; - - m_langText = new QLabel; - m_Language = new QComboBox; - - //"en_US", "de_DE", "es_ES", "fr_FR", "it_IT", "pl_PL", "pt_BR", "ru_RU", "uk_UA" - m_Language->addItem("en_US"); - m_Language->addItem("ru_RU"); - - hbox_2->addWidget(m_langText); - hbox_2->addWidget(m_Language); - - QHBoxLayout* hbox_3 = new QHBoxLayout; - - m_labelFormat = new QLabel; - m_Format = new QComboBox; - - m_Format->addItem( "reiserfs" ); - m_Format->addItem( "ext2" ); - m_Format->addItem( "ext3" ); - m_Format->addItem( "ext4" ); - m_Format->addItem( "jfs" ); - m_Format->addItem( "xfs" ); - - hbox_3->addWidget(m_labelFormat); - hbox_3->addWidget(m_Format); - - QHBoxLayout* hbox_4 = new QHBoxLayout; - + m_editHostname = new QLineEdit; + hbox_hostname->addWidget(m_labelHostName); + hbox_hostname->addWidget(m_editHostname); + + // language + QHBoxLayout* hbox_language = new QHBoxLayout; + m_labelLanguage = new QLabel; + m_cmbboxLanguage = new QComboBox; + hbox_language->addWidget(m_labelLanguage); + hbox_language->addWidget(m_cmbboxLanguage); + + // timezone + QHBoxLayout* hbox_timezone = new QHBoxLayout; m_labelTimezone = new QLabel; - m_Timezone = new QComboBox; + m_cmbboxTimezone = new QComboBox; + hbox_timezone->addWidget(m_labelTimezone); + hbox_timezone->addWidget(m_cmbboxTimezone); - // TODO: load list timezones - m_Timezone->addItem( "Europe/Moscow" ); - m_Timezone->addItem( "Europe/Minsk" ); - m_Timezone->addItem( "Europe/Kiev" ); - - hbox_4->addWidget(m_labelTimezone); - hbox_4->addWidget(m_Timezone); + // erase + m_chkboxErase = new QCheckBox; + m_chkboxErase->setChecked(true); + // fs format + QHBoxLayout* hbox_fsformat = new QHBoxLayout; + m_labelFormat = new QLabel; + m_cmbboxFormat = new QComboBox; + hbox_fsformat->addWidget(m_labelFormat); + hbox_fsformat->addWidget(m_cmbboxFormat); + + // #-mbr-# [w] "on" + m_chkboxWriteMbr = new QCheckBox; + m_chkboxWriteMbr->setChecked(true); + + // #-uuid-# [w] "off" + m_chkboxUseUUID = new QCheckBox; + + // #-type-# [w] ["hdd", "flash", "usb-hdd"] + QHBoxLayout* hbox_disktype = new QHBoxLayout; + m_labelDiskType = new QLabel; + m_cmbboxDiskType = new QComboBox; + hbox_disktype->addWidget(m_labelDiskType); + hbox_disktype->addWidget(m_cmbboxDiskType); + + // #-video_drv-# [w] "radeon" [fglrx, intel, nv, nvidia, vesa, vmware] + QHBoxLayout* hbox_videodrv = new QHBoxLayout; + m_labelVideoDrv = new QLabel; + m_cmbboxVideoDrv = new QComboBox; + hbox_videodrv->addWidget(m_labelVideoDrv); + hbox_videodrv->addWidget(m_cmbboxVideoDrv); +/* + // #-video_resolution-# [w] "1366x768" + QHBoxLayout* hbox_videores = new QHBoxLayout; + m_labelVideoRes = new QLabel; + m_editVideoRes = new QLineEdit; + hbox_videores->addWidget(m_labelVideoRes); + hbox_videores->addWidget(m_editVideoRes); +*/ + // composite + m_chkboxComposite = new QCheckBox; + m_chkboxComposite->setChecked(true); +/* + // #-scheduler-# [w] "cfq" [noop, deadline] + QHBoxLayout* hbox_cpushed = new QHBoxLayout; + m_labelIOShed = new QLabel; + m_cmbboxIOShed = new QComboBox; + hbox_cpushed->addWidget(m_labelIOShed); + hbox_cpushed->addWidget(m_cmbboxIOShed); +*/ + // QVBoxLayout* vbox_1 = new QVBoxLayout; + vbox_1->addWidget( m_labelHelp ); + vbox_1->addWidget(m_chkboxBuilder); + vbox_1->addWidget(m_chkboxForce); + vbox_1->addLayout(hbox_hostname); + vbox_1->addLayout(hbox_language); + vbox_1->addLayout(hbox_timezone); + vbox_1->addWidget(m_chkboxErase); + vbox_1->addLayout(hbox_fsformat); + vbox_1->addWidget(m_chkboxWriteMbr); + vbox_1->addWidget(m_chkboxUseUUID); + vbox_1->addLayout(hbox_disktype); + vbox_1->addLayout(hbox_videodrv); + //vbox_1->addLayout(hbox_videores); + vbox_1->addWidget(m_chkboxComposite); + //vbox_1->addLayout(hbox_cpushed); - vbox_1->addWidget( m_labelText ); - vbox_1->addLayout(hbox_1); - vbox_1->addLayout(hbox_2); - vbox_1->addLayout(hbox_3); - vbox_1->addLayout(hbox_4); vbox_1->addStretch(); // @@ -82,28 +123,667 @@ void PageConfiguration::setupUi() void PageConfiguration::retranslateUi() { - qDebug() << "PageConfiguration::retranslateUi()"; - setTitle( tr("Configuring") ); - m_labelText->setText( tr("Select parameters: ") ); + m_labelHelp->setText( tr("Select parameters: ") ); + + m_chkboxBuilder->setText( tr("Installation for assembling") ); + m_chkboxForce->setText( tr("Do not prompt before overwriting") ); + m_labelHostName->setText( tr("Hostname: ") ); - m_langText->setText( tr("Language:") ); - m_labelFormat->setText( tr("Format") ); + m_editHostname->setText( "calculate" ); + + m_labelLanguage->setText( tr("Language:") ); + m_cmbboxLanguage->clear(); + m_cmbboxLanguage->addItem( tr("English"), QVariant("en_US") ); + m_cmbboxLanguage->addItem( tr("German"), QVariant("de_DE") ); + m_cmbboxLanguage->addItem( tr("Spanish"), QVariant("es_ES") ); + m_cmbboxLanguage->addItem( tr("French"), QVariant("fr_FR") ); + m_cmbboxLanguage->addItem( tr("Italian"), QVariant("it_IT") ); + m_cmbboxLanguage->addItem( tr("Polish"), QVariant("pl_PL") ); + m_cmbboxLanguage->addItem( tr("Brazilian Portugal"), QVariant("pt_BR") ); + m_cmbboxLanguage->addItem( tr("Russian"), QVariant("ru_RU") ); + m_cmbboxLanguage->addItem( tr("English"), QVariant("uk_UA") ); + + int lang_index = m_cmbboxLanguage->findData(QVariant(*m_Lang)); + if (lang_index >= 0) + m_cmbboxLanguage->setCurrentIndex( lang_index ); + + m_labelFormat->setText( tr("File system:") ); + m_cmbboxFormat->clear(); + m_cmbboxFormat->addItem( "reiserfs" ); + m_cmbboxFormat->addItem( "ext2" ); + m_cmbboxFormat->addItem( "ext3" ); + m_cmbboxFormat->addItem( "ext4" ); + m_cmbboxFormat->addItem( "jfs" ); + m_cmbboxFormat->addItem( "xfs" ); + m_labelTimezone->setText( tr("Timezone:") ); + m_cmbboxTimezone->clear(); + m_cmbboxTimezone->addItem( "Africa/Abidjan" ); + m_cmbboxTimezone->addItem( "Africa/Accra" ); + m_cmbboxTimezone->addItem( "Africa/Addis_Ababa" ); + m_cmbboxTimezone->addItem( "Africa/Algiers" ); + m_cmbboxTimezone->addItem( "Africa/Asmara" ); + m_cmbboxTimezone->addItem( "Africa/Asmera" ); + m_cmbboxTimezone->addItem( "Africa/Bamako" ); + m_cmbboxTimezone->addItem( "Africa/Bangui" ); + m_cmbboxTimezone->addItem( "Africa/Banjul" ); + m_cmbboxTimezone->addItem( "Africa/Bissau" ); + m_cmbboxTimezone->addItem( "Africa/Blantyre" ); + m_cmbboxTimezone->addItem( "Africa/Brazzaville" ); + m_cmbboxTimezone->addItem( "Africa/Bujumbura" ); + m_cmbboxTimezone->addItem( "Africa/Cairo" ); + m_cmbboxTimezone->addItem( "Africa/Casablanca" ); + m_cmbboxTimezone->addItem( "Africa/Ceuta" ); + m_cmbboxTimezone->addItem( "Africa/Conakry" ); + m_cmbboxTimezone->addItem( "Africa/Dakar" ); + m_cmbboxTimezone->addItem( "Africa/Dar_es_Salaam" ); + m_cmbboxTimezone->addItem( "Africa/Djibouti" ); + m_cmbboxTimezone->addItem( "Africa/Douala" ); + m_cmbboxTimezone->addItem( "Africa/El_Aaiun" ); + m_cmbboxTimezone->addItem( "Africa/Freetown" ); + m_cmbboxTimezone->addItem( "Africa/Gaborone" ); + m_cmbboxTimezone->addItem( "Africa/Harare" ); + m_cmbboxTimezone->addItem( "Africa/Johannesburg" ); + m_cmbboxTimezone->addItem( "Africa/Kampala" ); + m_cmbboxTimezone->addItem( "Africa/Khartoum" ); + m_cmbboxTimezone->addItem( "Africa/Kigali" ); + m_cmbboxTimezone->addItem( "Africa/Kinshasa" ); + m_cmbboxTimezone->addItem( "Africa/Lagos" ); + m_cmbboxTimezone->addItem( "Africa/Libreville" ); + m_cmbboxTimezone->addItem( "Africa/Lome" ); + m_cmbboxTimezone->addItem( "Africa/Luanda" ); + m_cmbboxTimezone->addItem( "Africa/Lubumbashi" ); + m_cmbboxTimezone->addItem( "Africa/Lusaka" ); + m_cmbboxTimezone->addItem( "Africa/Malabo" ); + m_cmbboxTimezone->addItem( "Africa/Maputo" ); + m_cmbboxTimezone->addItem( "Africa/Maseru" ); + m_cmbboxTimezone->addItem( "Africa/Mbabane" ); + m_cmbboxTimezone->addItem( "Africa/Mogadishu" ); + m_cmbboxTimezone->addItem( "Africa/Monrovia" ); + m_cmbboxTimezone->addItem( "Africa/Nairobi" ); + m_cmbboxTimezone->addItem( "Africa/Ndjamena" ); + m_cmbboxTimezone->addItem( "Africa/Niamey" ); + m_cmbboxTimezone->addItem( "Africa/Nouakchott" ); + m_cmbboxTimezone->addItem( "Africa/Ouagadougou" ); + m_cmbboxTimezone->addItem( "Africa/Porto-Novo" ); + m_cmbboxTimezone->addItem( "Africa/Sao_Tome" ); + m_cmbboxTimezone->addItem( "Africa/Timbuktu" ); + m_cmbboxTimezone->addItem( "Africa/Tripoli" ); + m_cmbboxTimezone->addItem( "Africa/Tunis" ); + m_cmbboxTimezone->addItem( "Africa/Windhoek" ); + m_cmbboxTimezone->addItem( "America/Adak" ); + m_cmbboxTimezone->addItem( "America/Anchorage" ); + m_cmbboxTimezone->addItem( "America/Anguilla" ); + m_cmbboxTimezone->addItem( "America/Antigua" ); + m_cmbboxTimezone->addItem( "America/Araguaina" ); + m_cmbboxTimezone->addItem( "America/Argentina/Buenos_Aires" ); + m_cmbboxTimezone->addItem( "America/Argentina/Catamarca" ); + m_cmbboxTimezone->addItem( "America/Argentina/ComodRivadavia" ); + m_cmbboxTimezone->addItem( "America/Argentina/Cordoba" ); + m_cmbboxTimezone->addItem( "America/Argentina/Jujuy" ); + m_cmbboxTimezone->addItem( "America/Argentina/La_Rioja" ); + m_cmbboxTimezone->addItem( "America/Argentina/Mendoza" ); + m_cmbboxTimezone->addItem( "America/Argentina/Rio_Gallegos" ); + m_cmbboxTimezone->addItem( "America/Argentina/Salta" ); + m_cmbboxTimezone->addItem( "America/Argentina/San_Juan" ); + m_cmbboxTimezone->addItem( "America/Argentina/San_Luis" ); + m_cmbboxTimezone->addItem( "America/Argentina/Tucuman" ); + m_cmbboxTimezone->addItem( "America/Argentina/Ushuaia" ); + m_cmbboxTimezone->addItem( "America/Aruba" ); + m_cmbboxTimezone->addItem( "America/Asuncion" ); + m_cmbboxTimezone->addItem( "America/Atikokan" ); + m_cmbboxTimezone->addItem( "America/Atka" ); + m_cmbboxTimezone->addItem( "America/Bahia" ); + m_cmbboxTimezone->addItem( "America/Barbados" ); + m_cmbboxTimezone->addItem( "America/Belem" ); + m_cmbboxTimezone->addItem( "America/Belize" ); + m_cmbboxTimezone->addItem( "America/Blanc-Sablon" ); + m_cmbboxTimezone->addItem( "America/Boa_Vista" ); + m_cmbboxTimezone->addItem( "America/Bogota" ); + m_cmbboxTimezone->addItem( "America/Boise" ); + m_cmbboxTimezone->addItem( "America/Buenos_Aires" ); + m_cmbboxTimezone->addItem( "America/Cambridge_Bay" ); + m_cmbboxTimezone->addItem( "America/Campo_Grande" ); + m_cmbboxTimezone->addItem( "America/Cancun" ); + m_cmbboxTimezone->addItem( "America/Caracas" ); + m_cmbboxTimezone->addItem( "America/Catamarca" ); + m_cmbboxTimezone->addItem( "America/Cayenne" ); + m_cmbboxTimezone->addItem( "America/Cayman" ); + m_cmbboxTimezone->addItem( "America/Chicago" ); + m_cmbboxTimezone->addItem( "America/Chihuahua " ); + m_cmbboxTimezone->addItem( "America/Coral_Harbour" ); + m_cmbboxTimezone->addItem( "America/Cordoba" ); + m_cmbboxTimezone->addItem( "America/Costa_Rica" ); + m_cmbboxTimezone->addItem( "America/Cuiaba" ); + m_cmbboxTimezone->addItem( "America/Curacao" ); + m_cmbboxTimezone->addItem( "America/Danmarkshavn" ); + m_cmbboxTimezone->addItem( "America/Dawson" ); + m_cmbboxTimezone->addItem( "America/Dawson_Creek" ); + m_cmbboxTimezone->addItem( "America/Denver" ); + m_cmbboxTimezone->addItem( "America/Detroit" ); + m_cmbboxTimezone->addItem( "America/Dominica" ); + m_cmbboxTimezone->addItem( "America/Edmonton" ); + m_cmbboxTimezone->addItem( "America/Eirunepe" ); + m_cmbboxTimezone->addItem( "America/El_Salvador" ); + m_cmbboxTimezone->addItem( "America/Ensenada" ); + m_cmbboxTimezone->addItem( "America/Fortaleza" ); + m_cmbboxTimezone->addItem( "America/Fort_Wayne" ); + m_cmbboxTimezone->addItem( "America/Glace_Bay" ); + m_cmbboxTimezone->addItem( "America/Godthab" ); + m_cmbboxTimezone->addItem( "America/Goose_Bay" ); + m_cmbboxTimezone->addItem( "America/Grand_Turk" ); + m_cmbboxTimezone->addItem( "America/Grenada" ); + m_cmbboxTimezone->addItem( "America/Guadeloupe" ); + m_cmbboxTimezone->addItem( "America/Guatemala" ); + m_cmbboxTimezone->addItem( "America/Guayaquil" ); + m_cmbboxTimezone->addItem( "America/Guyana" ); + m_cmbboxTimezone->addItem( "America/Halifax" ); + m_cmbboxTimezone->addItem( "America/Havana" ); + m_cmbboxTimezone->addItem( "America/Hermosillo" ); + m_cmbboxTimezone->addItem( "America/Indiana/Indianapolis" ); + m_cmbboxTimezone->addItem( "America/Indiana/Knox" ); + m_cmbboxTimezone->addItem( "America/Indiana/Marengo" ); + m_cmbboxTimezone->addItem( "America/Indiana/Petersburg" ); + m_cmbboxTimezone->addItem( "America/Indiana/Tell_City" ); + m_cmbboxTimezone->addItem( "America/Indiana/Vevay" ); + m_cmbboxTimezone->addItem( "America/Indiana/Vincennes" ); + m_cmbboxTimezone->addItem( "America/Indiana/Winamac" ); + m_cmbboxTimezone->addItem( "America/Indianapolis" ); + m_cmbboxTimezone->addItem( "America/Inuvik" ); + m_cmbboxTimezone->addItem( "America/Iqaluit" ); + m_cmbboxTimezone->addItem( "America/Jamaica" ); + m_cmbboxTimezone->addItem( "America/Jujuy" ); + m_cmbboxTimezone->addItem( "America/Juneau" ); + m_cmbboxTimezone->addItem( "America/Kentucky/Louisville" ); + m_cmbboxTimezone->addItem( "America/Kentucky/Monticello" ); + m_cmbboxTimezone->addItem( "America/Knox_IN" ); + m_cmbboxTimezone->addItem( "America/La_Paz" ); + m_cmbboxTimezone->addItem( "America/Lima" ); + m_cmbboxTimezone->addItem( "America/Los_Angeles" ); + m_cmbboxTimezone->addItem( "America/Louisville" ); + m_cmbboxTimezone->addItem( "America/Maceio" ); + m_cmbboxTimezone->addItem( "America/Managua" ); + m_cmbboxTimezone->addItem( "America/Manaus" ); + m_cmbboxTimezone->addItem( "America/Marigot" ); + m_cmbboxTimezone->addItem( "America/Martinique" ); + m_cmbboxTimezone->addItem( "America/Matamoros" ); + m_cmbboxTimezone->addItem( "America/Mazatlan" ); + m_cmbboxTimezone->addItem( "America/Mendoza" ); + m_cmbboxTimezone->addItem( "America/Menominee" ); + m_cmbboxTimezone->addItem( "America/Merida" ); + m_cmbboxTimezone->addItem( "America/Mexico_City" ); + m_cmbboxTimezone->addItem( "America/Miquelon" ); + m_cmbboxTimezone->addItem( "America/Moncton" ); + m_cmbboxTimezone->addItem( "America/Monterrey" ); + m_cmbboxTimezone->addItem( "America/Montevideo" ); + m_cmbboxTimezone->addItem( "America/Montreal" ); + m_cmbboxTimezone->addItem( "America/Montserrat" ); + m_cmbboxTimezone->addItem( "America/Nassau" ); + m_cmbboxTimezone->addItem( "America/New_York" ); + m_cmbboxTimezone->addItem( "America/Nipigon" ); + m_cmbboxTimezone->addItem( "America/Nome" ); + m_cmbboxTimezone->addItem( "America/Noronha" ); + m_cmbboxTimezone->addItem( "America/North_Dakota/Center" ); + m_cmbboxTimezone->addItem( "America/North_Dakota/New_Salem" ); + m_cmbboxTimezone->addItem( "America/Ojinaga" ); + m_cmbboxTimezone->addItem( "America/Panama" ); + m_cmbboxTimezone->addItem( "America/Pangnirtung" ); + m_cmbboxTimezone->addItem( "America/Paramaribo" ); + m_cmbboxTimezone->addItem( "America/Phoenix" ); + m_cmbboxTimezone->addItem( "America/Port-au-Prince" ); + m_cmbboxTimezone->addItem( "America/Porto_Acre" ); + m_cmbboxTimezone->addItem( "America/Port_of_Spain" ); + m_cmbboxTimezone->addItem( "America/Porto_Velho" ); + m_cmbboxTimezone->addItem( "America/Puerto_Rico" ); + m_cmbboxTimezone->addItem( "America/Rainy_River" ); + m_cmbboxTimezone->addItem( "America/Rankin_Inlet" ); + m_cmbboxTimezone->addItem( "America/Recife" ); + m_cmbboxTimezone->addItem( "America/Regina" ); + m_cmbboxTimezone->addItem( "America/Resolute" ); + m_cmbboxTimezone->addItem( "America/Rio_Branco" ); + m_cmbboxTimezone->addItem( "America/Rosario" ); + m_cmbboxTimezone->addItem( "America/Santa_Isabel" ); + m_cmbboxTimezone->addItem( "America/Santarem" ); + m_cmbboxTimezone->addItem( "America/Santiago" ); + m_cmbboxTimezone->addItem( "America/Santo_Domingo" ); + m_cmbboxTimezone->addItem( "America/Sao_Paulo" ); + m_cmbboxTimezone->addItem( "America/Scoresbysund" ); + m_cmbboxTimezone->addItem( "America/Shiprock" ); + m_cmbboxTimezone->addItem( "America/St_Barthelemy" ); + m_cmbboxTimezone->addItem( "America/St_Johns" ); + m_cmbboxTimezone->addItem( "America/St_Kitts" ); + m_cmbboxTimezone->addItem( "America/St_Lucia" ); + m_cmbboxTimezone->addItem( "America/St_Thomas" ); + m_cmbboxTimezone->addItem( "America/St_Vincent" ); + m_cmbboxTimezone->addItem( "America/Swift_Current" ); + m_cmbboxTimezone->addItem( "America/Tegucigalpa" ); + m_cmbboxTimezone->addItem( "America/Thule" ); + m_cmbboxTimezone->addItem( "America/Thunder_Bay" ); + m_cmbboxTimezone->addItem( "America/Tijuana" ); + m_cmbboxTimezone->addItem( "America/Toronto" ); + m_cmbboxTimezone->addItem( "America/Tortola" ); + m_cmbboxTimezone->addItem( "America/Vancouver" ); + m_cmbboxTimezone->addItem( "America/Virgin" ); + m_cmbboxTimezone->addItem( "America/Whitehorse" ); + m_cmbboxTimezone->addItem( "America/Winnipeg" ); + m_cmbboxTimezone->addItem( "America/Yakutat" ); + m_cmbboxTimezone->addItem( "America/Yellowknife" ); + m_cmbboxTimezone->addItem( "Antarctica/Casey" ); + m_cmbboxTimezone->addItem( "Antarctica/Davis" ); + m_cmbboxTimezone->addItem( "Antarctica/DumontDUrville" ); + m_cmbboxTimezone->addItem( "Antarctica/Macquarie" ); + m_cmbboxTimezone->addItem( "Antarctica/Mawson" ); + m_cmbboxTimezone->addItem( "Antarctica/McMurdo" ); + m_cmbboxTimezone->addItem( "Antarctica/Palmer" ); + m_cmbboxTimezone->addItem( "Antarctica/Rothera" ); + m_cmbboxTimezone->addItem( "Antarctica/South_Pole" ); + m_cmbboxTimezone->addItem( "Antarctica/Syowa" ); + m_cmbboxTimezone->addItem( "Antarctica/Vostok" ); + m_cmbboxTimezone->addItem( "Arctic/Longyearbyen" ); + m_cmbboxTimezone->addItem( "Asia/Aden" ); + m_cmbboxTimezone->addItem( "Asia/Almaty" ); + m_cmbboxTimezone->addItem( "Asia/Amman" ); + m_cmbboxTimezone->addItem( "Asia/Anadyr" ); + m_cmbboxTimezone->addItem( "Asia/Aqtau" ); + m_cmbboxTimezone->addItem( "Asia/Aqtobe" ); + m_cmbboxTimezone->addItem( "Asia/Ashgabat" ); + m_cmbboxTimezone->addItem( "Asia/Ashkhabad" ); + m_cmbboxTimezone->addItem( "Asia/Baghdad" ); + m_cmbboxTimezone->addItem( "Asia/Bahrain" ); + m_cmbboxTimezone->addItem( "Asia/Baku" ); + m_cmbboxTimezone->addItem( "Asia/Bangkok" ); + m_cmbboxTimezone->addItem( "Asia/Beirut" ); + m_cmbboxTimezone->addItem( "Asia/Bishkek" ); + m_cmbboxTimezone->addItem( "Asia/Brunei" ); + m_cmbboxTimezone->addItem( "Asia/Calcutta" ); + m_cmbboxTimezone->addItem( "Asia/Choibalsan" ); + m_cmbboxTimezone->addItem( "Asia/Chongqing" ); + m_cmbboxTimezone->addItem( "Asia/Chungking" ); + m_cmbboxTimezone->addItem( "Asia/Colombo" ); + m_cmbboxTimezone->addItem( "Asia/Dacca" ); + m_cmbboxTimezone->addItem( "Asia/Damascus" ); + m_cmbboxTimezone->addItem( "Asia/Dhaka" ); + m_cmbboxTimezone->addItem( "Asia/Dili" ); + m_cmbboxTimezone->addItem( "Asia/Dubai" ); + m_cmbboxTimezone->addItem( "Asia/Dushanbe" ); + m_cmbboxTimezone->addItem( "Asia/Gaza" ); + m_cmbboxTimezone->addItem( "Asia/Harbin" ); + m_cmbboxTimezone->addItem( "Asia/Ho_Chi_Minh" ); + m_cmbboxTimezone->addItem( "Asia/Hong_Kong" ); + m_cmbboxTimezone->addItem( "Asia/Hovd" ); + m_cmbboxTimezone->addItem( "Asia/Irkutsk" ); + m_cmbboxTimezone->addItem( "Asia/Istanbul" ); + m_cmbboxTimezone->addItem( "Asia/Jakarta" ); + m_cmbboxTimezone->addItem( "Asia/Jayapura" ); + m_cmbboxTimezone->addItem( "Asia/Jerusalem" ); + m_cmbboxTimezone->addItem( "Asia/Kabul" ); + m_cmbboxTimezone->addItem( "Asia/Kamchatka" ); + m_cmbboxTimezone->addItem( "Asia/Karachi" ); + m_cmbboxTimezone->addItem( "Asia/Kashgar" ); + m_cmbboxTimezone->addItem( "Asia/Kathmandu" ); + m_cmbboxTimezone->addItem( "Asia/Katmandu" ); + m_cmbboxTimezone->addItem( "Asia/Kolkata" ); + m_cmbboxTimezone->addItem( "Asia/Krasnoyarsk" ); + m_cmbboxTimezone->addItem( "Asia/Kuala_Lumpur" ); + m_cmbboxTimezone->addItem( "Asia/Kuching" ); + m_cmbboxTimezone->addItem( "Asia/Kuwait" ); + m_cmbboxTimezone->addItem( "Asia/Macao" ); + m_cmbboxTimezone->addItem( "Asia/Macau" ); + m_cmbboxTimezone->addItem( "Asia/Magadan" ); + m_cmbboxTimezone->addItem( "Asia/Makassar" ); + m_cmbboxTimezone->addItem( "Asia/Manila" ); + m_cmbboxTimezone->addItem( "Asia/Muscat" ); + m_cmbboxTimezone->addItem( "Asia/Nicosia" ); + m_cmbboxTimezone->addItem( "Asia/Novokuznetsk" ); + m_cmbboxTimezone->addItem( "Asia/Novosibirsk" ); + m_cmbboxTimezone->addItem( "Asia/Omsk" ); + m_cmbboxTimezone->addItem( "Asia/Oral" ); + m_cmbboxTimezone->addItem( "Asia/Phnom_Penh" ); + m_cmbboxTimezone->addItem( "Asia/Pontianak" ); + m_cmbboxTimezone->addItem( "Asia/Pyongyang" ); + m_cmbboxTimezone->addItem( "Asia/Qatar" ); + m_cmbboxTimezone->addItem( "Asia/Qyzylorda" ); + m_cmbboxTimezone->addItem( "Asia/Rangoon" ); + m_cmbboxTimezone->addItem( "Asia/Riyadh" ); + m_cmbboxTimezone->addItem( "Asia/Riyadh87" ); + m_cmbboxTimezone->addItem( "Asia/Riyadh88" ); + m_cmbboxTimezone->addItem( "Asia/Riyadh89" ); + m_cmbboxTimezone->addItem( "Asia/Saigon" ); + m_cmbboxTimezone->addItem( "Asia/Sakhalin" ); + m_cmbboxTimezone->addItem( "Asia/Samarkand" ); + m_cmbboxTimezone->addItem( "Asia/Seoul" ); + m_cmbboxTimezone->addItem( "Asia/Shanghai" ); + m_cmbboxTimezone->addItem( "Asia/Singapore" ); + m_cmbboxTimezone->addItem( "Asia/Taipei" ); + m_cmbboxTimezone->addItem( "Asia/Tashkent" ); + m_cmbboxTimezone->addItem( "Asia/Tbilisi" ); + m_cmbboxTimezone->addItem( "Asia/Tehran" ); + m_cmbboxTimezone->addItem( "Asia/Tel_Aviv" ); + m_cmbboxTimezone->addItem( "Asia/Thimbu" ); + m_cmbboxTimezone->addItem( "Asia/Thimphu" ); + m_cmbboxTimezone->addItem( "Asia/Tokyo" ); + m_cmbboxTimezone->addItem( "Asia/Ujung_Pandang" ); + m_cmbboxTimezone->addItem( "Asia/Ulaanbaatar" ); + m_cmbboxTimezone->addItem( "Asia/Ulan_Bator" ); + m_cmbboxTimezone->addItem( "Asia/Urumqi" ); + m_cmbboxTimezone->addItem( "Asia/Vientiane" ); + m_cmbboxTimezone->addItem( "Asia/Vladivostok" ); + m_cmbboxTimezone->addItem( "Asia/Yakutsk" ); + m_cmbboxTimezone->addItem( "Asia/Yekaterinburg" ); + m_cmbboxTimezone->addItem( "Asia/Yerevan" ); + m_cmbboxTimezone->addItem( "Atlantic/Azores" ); + m_cmbboxTimezone->addItem( "Atlantic/Bermuda" ); + m_cmbboxTimezone->addItem( "Atlantic/Canary" ); + m_cmbboxTimezone->addItem( "Atlantic/Cape_Verde" ); + m_cmbboxTimezone->addItem( "Atlantic/Faeroe" ); + m_cmbboxTimezone->addItem( "Atlantic/Faroe" ); + m_cmbboxTimezone->addItem( "Atlantic/Jan_Mayen" ); + m_cmbboxTimezone->addItem( "Atlantic/Madeira" ); + m_cmbboxTimezone->addItem( "Atlantic/Reykjavik" ); + m_cmbboxTimezone->addItem( "Atlantic/South_Georgia" ); + m_cmbboxTimezone->addItem( "Atlantic/Stanley" ); + m_cmbboxTimezone->addItem( "Atlantic/St_Helena" ); + m_cmbboxTimezone->addItem( "Australia/ACT" ); + m_cmbboxTimezone->addItem( "Australia/Adelaide" ); + m_cmbboxTimezone->addItem( "Australia/Brisbane" ); + m_cmbboxTimezone->addItem( "Australia/Broken_Hill" ); + m_cmbboxTimezone->addItem( "Australia/Canberra" ); + m_cmbboxTimezone->addItem( "Australia/Currie" ); + m_cmbboxTimezone->addItem( "Australia/Darwin" ); + m_cmbboxTimezone->addItem( "Australia/Eucla" ); + m_cmbboxTimezone->addItem( "Australia/Hobart" ); + m_cmbboxTimezone->addItem( "Australia/LHI" ); + m_cmbboxTimezone->addItem( "Australia/Lindeman" ); + m_cmbboxTimezone->addItem( "Australia/Lord_Howe" ); + m_cmbboxTimezone->addItem( "Australia/Melbourne" ); + m_cmbboxTimezone->addItem( "Australia/North" ); + m_cmbboxTimezone->addItem( "Australia/NSW" ); + m_cmbboxTimezone->addItem( "Australia/Perth" ); + m_cmbboxTimezone->addItem( "Australia/Queensland" ); + m_cmbboxTimezone->addItem( "Australia/South" ); + m_cmbboxTimezone->addItem( "Australia/Sydney" ); + m_cmbboxTimezone->addItem( "Australia/Tasmania" ); + m_cmbboxTimezone->addItem( "Australia/Victoria" ); + m_cmbboxTimezone->addItem( "Australia/West" ); + m_cmbboxTimezone->addItem( "Australia/Yancowinna" ); + m_cmbboxTimezone->addItem( "Brazil/Acre" ); + m_cmbboxTimezone->addItem( "Brazil/DeNoronha" ); + m_cmbboxTimezone->addItem( "Brazil/East" ); + m_cmbboxTimezone->addItem( "Brazil/West" ); + m_cmbboxTimezone->addItem( "Canada/Atlantic" ); + m_cmbboxTimezone->addItem( "Canada/Central" ); + m_cmbboxTimezone->addItem( "Canada/Eastern" ); + m_cmbboxTimezone->addItem( "Canada/East-Saskatchewan" ); + m_cmbboxTimezone->addItem( "Canada/Mountain" ); + m_cmbboxTimezone->addItem( "Canada/Newfoundland" ); + m_cmbboxTimezone->addItem( "Canada/Pacific" ); + m_cmbboxTimezone->addItem( "Canada/Saskatchewan" ); + m_cmbboxTimezone->addItem( "Canada/Yukon" ); + m_cmbboxTimezone->addItem( "Chile/Continental" ); + m_cmbboxTimezone->addItem( "Chile/EasterIsland" ); + m_cmbboxTimezone->addItem( "Etc/GMT" ); + m_cmbboxTimezone->addItem( "Etc/GMT0" ); + m_cmbboxTimezone->addItem( "Etc/GMT-0" ); + m_cmbboxTimezone->addItem( "Etc/GMT+0" ); + m_cmbboxTimezone->addItem( "Etc/GMT-1" ); + m_cmbboxTimezone->addItem( "Etc/GMT+1" ); + m_cmbboxTimezone->addItem( "Etc/GMT-10" ); + m_cmbboxTimezone->addItem( "Etc/GMT+10" ); + m_cmbboxTimezone->addItem( "Etc/GMT-11" ); + m_cmbboxTimezone->addItem( "Etc/GMT+11" ); + m_cmbboxTimezone->addItem( "Etc/GMT-12" ); + m_cmbboxTimezone->addItem( "Etc/GMT+12" ); + m_cmbboxTimezone->addItem( "Etc/GMT-13" ); + m_cmbboxTimezone->addItem( "Etc/GMT-14" ); + m_cmbboxTimezone->addItem( "Etc/GMT-2" ); + m_cmbboxTimezone->addItem( "Etc/GMT+2" ); + m_cmbboxTimezone->addItem( "Etc/GMT-3" ); + m_cmbboxTimezone->addItem( "Etc/GMT+3" ); + m_cmbboxTimezone->addItem( "Etc/GMT-4" ); + m_cmbboxTimezone->addItem( "Etc/GMT+4" ); + m_cmbboxTimezone->addItem( "Etc/GMT-5" ); + m_cmbboxTimezone->addItem( "Etc/GMT+5" ); + m_cmbboxTimezone->addItem( "Etc/GMT-6" ); + m_cmbboxTimezone->addItem( "Etc/GMT+6" ); + m_cmbboxTimezone->addItem( "Etc/GMT-7" ); + m_cmbboxTimezone->addItem( "Etc/GMT+7" ); + m_cmbboxTimezone->addItem( "Etc/GMT-8" ); + m_cmbboxTimezone->addItem( "Etc/GMT+8" ); + m_cmbboxTimezone->addItem( "Etc/GMT-9" ); + m_cmbboxTimezone->addItem( "Etc/GMT+9" ); + m_cmbboxTimezone->addItem( "Etc/Greenwich" ); + m_cmbboxTimezone->addItem( "Etc/UCT" ); + m_cmbboxTimezone->addItem( "Etc/Universal" ); + m_cmbboxTimezone->addItem( "Etc/UTC" ); + m_cmbboxTimezone->addItem( "Etc/Zulu" ); + m_cmbboxTimezone->addItem( "Europe/Amsterdam" ); + m_cmbboxTimezone->addItem( "Europe/Andorra" ); + m_cmbboxTimezone->addItem( "Europe/Athens" ); + m_cmbboxTimezone->addItem( "Europe/Belfast" ); + m_cmbboxTimezone->addItem( "Europe/Belgrade" ); + m_cmbboxTimezone->addItem( "Europe/Berlin" ); + m_cmbboxTimezone->addItem( "Europe/Bratislava" ); + m_cmbboxTimezone->addItem( "Europe/Brussels" ); + m_cmbboxTimezone->addItem( "Europe/Bucharest" ); + m_cmbboxTimezone->addItem( "Europe/Budapest" ); + m_cmbboxTimezone->addItem( "Europe/Chisinau" ); + m_cmbboxTimezone->addItem( "Europe/Copenhagen" ); + m_cmbboxTimezone->addItem( "Europe/Dublin" ); + m_cmbboxTimezone->addItem( "Europe/Gibraltar" ); + m_cmbboxTimezone->addItem( "Europe/Guernsey" ); + m_cmbboxTimezone->addItem( "Europe/Helsinki" ); + m_cmbboxTimezone->addItem( "Europe/Isle_of_Man" ); + m_cmbboxTimezone->addItem( "Europe/Istanbul" ); + m_cmbboxTimezone->addItem( "Europe/Jersey" ); + m_cmbboxTimezone->addItem( "Europe/Kaliningrad" ); + m_cmbboxTimezone->addItem( "Europe/Kiev" ); + m_cmbboxTimezone->addItem( "Europe/Lisbon" ); + m_cmbboxTimezone->addItem( "Europe/Ljubljana" ); + m_cmbboxTimezone->addItem( "Europe/London" ); + m_cmbboxTimezone->addItem( "Europe/Luxembourg" ); + m_cmbboxTimezone->addItem( "Europe/Madrid" ); + m_cmbboxTimezone->addItem( "Europe/Malta" ); + m_cmbboxTimezone->addItem( "Europe/Mariehamn" ); + m_cmbboxTimezone->addItem( "Europe/Minsk" ); + m_cmbboxTimezone->addItem( "Europe/Monaco" ); + m_cmbboxTimezone->addItem( "Europe/Moscow" ); + m_cmbboxTimezone->addItem( "Europe/Nicosia" ); + m_cmbboxTimezone->addItem( "Europe/Oslo" ); + m_cmbboxTimezone->addItem( "Europe/Paris" ); + m_cmbboxTimezone->addItem( "Europe/Podgorica" ); + m_cmbboxTimezone->addItem( "Europe/Prague" ); + m_cmbboxTimezone->addItem( "Europe/Riga" ); + m_cmbboxTimezone->addItem( "Europe/Rome" ); + m_cmbboxTimezone->addItem( "Europe/Samara" ); + m_cmbboxTimezone->addItem( "Europe/San_Marino" ); + m_cmbboxTimezone->addItem( "Europe/Sarajevo" ); + m_cmbboxTimezone->addItem( "Europe/Simferopol" ); + m_cmbboxTimezone->addItem( "Europe/Skopje" ); + m_cmbboxTimezone->addItem( "Europe/Sofia" ); + m_cmbboxTimezone->addItem( "Europe/Stockholm" ); + m_cmbboxTimezone->addItem( "Europe/Tallinn" ); + m_cmbboxTimezone->addItem( "Europe/Tirane" ); + m_cmbboxTimezone->addItem( "Europe/Tiraspol" ); + m_cmbboxTimezone->addItem( "Europe/Uzhgorod" ); + m_cmbboxTimezone->addItem( "Europe/Vaduz" ); + m_cmbboxTimezone->addItem( "Europe/Vatican" ); + m_cmbboxTimezone->addItem( "Europe/Vienna" ); + m_cmbboxTimezone->addItem( "Europe/Vilnius" ); + m_cmbboxTimezone->addItem( "Europe/Volgograd" ); + m_cmbboxTimezone->addItem( "Europe/Warsaw" ); + m_cmbboxTimezone->addItem( "Europe/Zagreb" ); + m_cmbboxTimezone->addItem( "Europe/Zaporozhye" ); + m_cmbboxTimezone->addItem( "Europe/Zurich" ); + m_cmbboxTimezone->addItem( "Indian/Antananarivo" ); + m_cmbboxTimezone->addItem( "Indian/Chagos" ); + m_cmbboxTimezone->addItem( "Indian/Christmas" ); + m_cmbboxTimezone->addItem( "Indian/Cocos" ); + m_cmbboxTimezone->addItem( "Indian/Comoro" ); + m_cmbboxTimezone->addItem( "Indian/Kerguelen" ); + m_cmbboxTimezone->addItem( "Indian/Mahe" ); + m_cmbboxTimezone->addItem( "Indian/Maldives" ); + m_cmbboxTimezone->addItem( "Indian/Mauritius" ); + m_cmbboxTimezone->addItem( "Indian/Mayotte" ); + m_cmbboxTimezone->addItem( "Indian/Reunion" ); + m_cmbboxTimezone->addItem( "Mexico/BajaNorte" ); + m_cmbboxTimezone->addItem( "Mexico/BajaSur" ); + m_cmbboxTimezone->addItem( "Mexico/General" ); + m_cmbboxTimezone->addItem( "Mideast/Riyadh87" ); + m_cmbboxTimezone->addItem( "Mideast/Riyadh88" ); + m_cmbboxTimezone->addItem( "Mideast/Riyadh89" ); + m_cmbboxTimezone->addItem( "Pacific/Apia" ); + m_cmbboxTimezone->addItem( "Pacific/Auckland" ); + m_cmbboxTimezone->addItem( "Pacific/Chatham" ); + m_cmbboxTimezone->addItem( "Pacific/Easter" ); + m_cmbboxTimezone->addItem( "Pacific/Efate" ); + m_cmbboxTimezone->addItem( "Pacific/Enderbury" ); + m_cmbboxTimezone->addItem( "Pacific/Fakaofo" ); + m_cmbboxTimezone->addItem( "Pacific/Fiji" ); + m_cmbboxTimezone->addItem( "Pacific/Funafuti" ); + m_cmbboxTimezone->addItem( "Pacific/Galapagos" ); + m_cmbboxTimezone->addItem( "Pacific/Gambier" ); + m_cmbboxTimezone->addItem( "Pacific/Guadalcanal" ); + m_cmbboxTimezone->addItem( "Pacific/Guam" ); + m_cmbboxTimezone->addItem( "Pacific/Honolulu" ); + m_cmbboxTimezone->addItem( "Pacific/Johnston" ); + m_cmbboxTimezone->addItem( "Pacific/Kiritimati" ); + m_cmbboxTimezone->addItem( "Pacific/Kosrae" ); + m_cmbboxTimezone->addItem( "Pacific/Kwajalein" ); + m_cmbboxTimezone->addItem( "Pacific/Majuro" ); + m_cmbboxTimezone->addItem( "Pacific/Marquesas" ); + m_cmbboxTimezone->addItem( "Pacific/Midway" ); + m_cmbboxTimezone->addItem( "Pacific/Nauru" ); + m_cmbboxTimezone->addItem( "Pacific/Niue" ); + m_cmbboxTimezone->addItem( "Pacific/Norfolk" ); + m_cmbboxTimezone->addItem( "Pacific/Noumea" ); + m_cmbboxTimezone->addItem( "Pacific/Pago_Pago" ); + m_cmbboxTimezone->addItem( "Pacific/Palau" ); + m_cmbboxTimezone->addItem( "Pacific/Pitcairn" ); + m_cmbboxTimezone->addItem( "Pacific/Ponape" ); + m_cmbboxTimezone->addItem( "Pacific/Port_Moresby" ); + m_cmbboxTimezone->addItem( "Pacific/Rarotonga" ); + m_cmbboxTimezone->addItem( "Pacific/Saipan" ); + m_cmbboxTimezone->addItem( "Pacific/Samoa" ); + m_cmbboxTimezone->addItem( "Pacific/Tahiti" ); + m_cmbboxTimezone->addItem( "Pacific/Tarawa" ); + m_cmbboxTimezone->addItem( "Pacific/Tongatapu" ); + m_cmbboxTimezone->addItem( "Pacific/Truk" ); + m_cmbboxTimezone->addItem( "Pacific/Wake" ); + m_cmbboxTimezone->addItem( "Pacific/Wallis" ); + m_cmbboxTimezone->addItem( "Pacific/Yap" ); + m_cmbboxTimezone->addItem( "US/Alaska" ); + m_cmbboxTimezone->addItem( "US/Aleutian" ); + m_cmbboxTimezone->addItem( "US/Arizona" ); + m_cmbboxTimezone->addItem( "US/Central" ); + m_cmbboxTimezone->addItem( "US/Eastern" ); + m_cmbboxTimezone->addItem( "US/East-Indiana" ); + m_cmbboxTimezone->addItem( "US/Hawaii" ); + m_cmbboxTimezone->addItem( "US/Indiana-Starke" ); + m_cmbboxTimezone->addItem( "US/Michigan" ); + m_cmbboxTimezone->addItem( "US/Mountain" ); + m_cmbboxTimezone->addItem( "US/Pacific" ); + m_cmbboxTimezone->addItem( "US/Pacific-New" ); + m_cmbboxTimezone->addItem( "US/Samoa" ); + m_cmbboxTimezone->addItem( "CET" ); + m_cmbboxTimezone->addItem( "CST6CDT" ); + m_cmbboxTimezone->addItem( "Cuba" ); + m_cmbboxTimezone->addItem( "EET" ); + m_cmbboxTimezone->addItem( "Egypt" ); + m_cmbboxTimezone->addItem( "Eire" ); + m_cmbboxTimezone->addItem( "EST" ); + m_cmbboxTimezone->addItem( "EST5EDT" ); + m_cmbboxTimezone->addItem( "Factory" ); + m_cmbboxTimezone->addItem( "GB" ); + m_cmbboxTimezone->addItem( "GB-Eire" ); + m_cmbboxTimezone->addItem( "GMT" ); + m_cmbboxTimezone->addItem( "GMT0" ); + m_cmbboxTimezone->addItem( "GMT-0" ); + m_cmbboxTimezone->addItem( "GMT+0" ); + m_cmbboxTimezone->addItem( "Greenwich" ); + m_cmbboxTimezone->addItem( "Hongkong" ); + m_cmbboxTimezone->addItem( "HST" ); + m_cmbboxTimezone->addItem( "Iceland" ); + m_cmbboxTimezone->addItem( "Iran" ); + m_cmbboxTimezone->addItem( "Israel" ); + m_cmbboxTimezone->addItem( "Jamaica" ); + m_cmbboxTimezone->addItem( "Japan" ); + m_cmbboxTimezone->addItem( "Kwajalein" ); + m_cmbboxTimezone->addItem( "Libya" ); + m_cmbboxTimezone->addItem( "MET" ); + m_cmbboxTimezone->addItem( "MST" ); + m_cmbboxTimezone->addItem( "MST7MDT" ); + m_cmbboxTimezone->addItem( "Navajo" ); + m_cmbboxTimezone->addItem( "NZ" ); + m_cmbboxTimezone->addItem( "NZ-CHAT" ); + m_cmbboxTimezone->addItem( "Pacific" ); + m_cmbboxTimezone->addItem( "Poland" ); + m_cmbboxTimezone->addItem( "Portugal" ); + m_cmbboxTimezone->addItem( "PRC" ); + m_cmbboxTimezone->addItem( "PST8PDT" ); + m_cmbboxTimezone->addItem( "ROC" ); + m_cmbboxTimezone->addItem( "ROK" ); + m_cmbboxTimezone->addItem( "Singapore" ); + m_cmbboxTimezone->addItem( "Turkey" ); + m_cmbboxTimezone->addItem( "UCT" ); + m_cmbboxTimezone->addItem( "Universal" ); + m_cmbboxTimezone->addItem( "UTC" ); + m_cmbboxTimezone->addItem( "WET" ); + m_cmbboxTimezone->addItem( "W-SU" ); + m_cmbboxTimezone->addItem( "Zulu" ); + + m_chkboxErase->setText( tr("Format root partition before installing") ); + m_chkboxWriteMbr->setText( tr("Install bootloader to MBR") ); + m_chkboxUseUUID->setText( tr("Use UUID for mounting partitions") ); + m_labelDiskType->setText( tr("Disk type:") ); + + m_cmbboxDiskType->clear(); + m_cmbboxDiskType->addItem("hdd"); + m_cmbboxDiskType->addItem("flash"); + m_cmbboxDiskType->addItem("usb-hdd"); + + m_labelVideoDrv->setText("Video driver:"); + m_cmbboxVideoDrv->clear(); + m_cmbboxVideoDrv->addItem("fglrx"); + m_cmbboxVideoDrv->addItem("intel"); + m_cmbboxVideoDrv->addItem("nv"); + m_cmbboxVideoDrv->addItem("nvidia"); + m_cmbboxVideoDrv->addItem("radeon"); + m_cmbboxVideoDrv->addItem("vesa"); + m_cmbboxVideoDrv->addItem("vmware"); +/* + m_labelVideoRes->setText( tr("Video resolution") ); + m_editVideoRes->setText( "800x600" ); +*/ + m_chkboxComposite->setText( tr("Use composite") ); +/* + m_labelIOShed->setText( tr("IO sheduler:") ); + m_cmbboxIOShed->clear(); + m_cmbboxIOShed->addItem("cfq"); + m_cmbboxIOShed->addItem("noop"); + m_cmbboxIOShed->addItem("deadline"); +*/ } bool PageConfiguration::validate() { - if ( !m_Hostname->text().isEmpty() ) + if ( !m_editHostname->text().isEmpty() ) { InstallerSettings settings; - settings.host = m_Hostname->text(); - settings.language = m_Language->currentText(); - settings.fs = m_Format->currentText(); - settings.timezone = m_Timezone->currentText(); + settings.builder = m_chkboxBuilder->isChecked(); + settings.force = m_chkboxForce->isChecked(); + settings.host = m_editHostname->text(); + settings.language = m_cmbboxLanguage->itemData( m_cmbboxLanguage->currentIndex() ).toString(); + settings.timezone = m_cmbboxTimezone->currentText(); + settings.erase = m_chkboxErase->isChecked(); + settings.fs = m_cmbboxFormat->currentText(); + settings.mbr = m_chkboxWriteMbr->isChecked(); + settings.uuid = m_chkboxUseUUID->isChecked(); + settings.disktype = m_cmbboxDiskType->currentText(); + settings.videodrv = m_cmbboxVideoDrv->currentText(); emit selectedSettings(settings); return true; diff --git a/src/pageconfiguration.h b/src/pageconfiguration.h index 2be1971..a76e879 100644 --- a/src/pageconfiguration.h +++ b/src/pageconfiguration.h @@ -6,12 +6,13 @@ class QComboBox; class QLineEdit; class QLabel; +class QCheckBox; class PageConfiguration : public InstallerPage { Q_OBJECT public: - explicit PageConfiguration(); + explicit PageConfiguration(const QString* language); bool validate(); void retranslateUi(); @@ -25,15 +26,37 @@ signals: void selectedSettings(InstallerSettings); private: - QLabel* m_labelText; + const QString* m_Lang; + + QLabel* m_labelHelp; + + QCheckBox* m_chkboxBuilder; + QCheckBox* m_chkboxForce; + QLabel* m_labelHostName; - QLabel* m_langText; - QLabel* m_labelFormat; + QLineEdit* m_editHostname; + + QLabel* m_labelLanguage; + QComboBox* m_cmbboxLanguage; + QLabel* m_labelTimezone; - QLineEdit* m_Hostname; - QComboBox* m_Language; - QComboBox* m_Format; - QComboBox* m_Timezone; - QComboBox* m_Composite; + QComboBox* m_cmbboxTimezone; + + QCheckBox* m_chkboxErase; + QLabel* m_labelFormat; + QComboBox* m_cmbboxFormat; + QCheckBox* m_chkboxWriteMbr; + QCheckBox* m_chkboxUseUUID; + QLabel* m_labelDiskType; + QComboBox* m_cmbboxDiskType; + + QLabel* m_labelVideoDrv; + QComboBox* m_cmbboxVideoDrv; + QLabel* m_labelVideoRes; + QLineEdit* m_editVideoRes; + QCheckBox* m_chkboxComposite; + + QLabel* m_labelIOShed; + QComboBox* m_cmbboxIOShed; }; diff --git a/src/pagefinish.cpp b/src/pagefinish.cpp index c7fed68..f9db76c 100644 --- a/src/pagefinish.cpp +++ b/src/pagefinish.cpp @@ -32,10 +32,9 @@ void PageFinish::setupUi() void PageFinish::retranslateUi() { - qDebug() << "PageFinish::retranslateUi()"; - setTitle( tr("Complete") ); - m_labelComplete->setText( "" + + m_labelComplete->setText( + "" + tr( "

Congratulation!

" "

Installation complete." @@ -45,16 +44,7 @@ void PageFinish::retranslateUi() ); } - -bool PageFinish::validate() -{ - // last page, need finish - emit finish(); - - return true; -} - void PageFinish::show() { - emit changePrev(false); + emit toggleButtons(false); } diff --git a/src/pagefinish.h b/src/pagefinish.h index 887802d..386a574 100644 --- a/src/pagefinish.h +++ b/src/pagefinish.h @@ -10,7 +10,6 @@ class PageFinish : public InstallerPage public: explicit PageFinish(); - bool validate(); void retranslateUi(); protected: @@ -20,7 +19,7 @@ public slots: void show(); signals: - void finish(); + void toggleButtons(bool); private: static const QString m_messageComplete; diff --git a/src/pageinstall.cpp b/src/pageinstall.cpp index 38a7899..9dcbb4c 100644 --- a/src/pageinstall.cpp +++ b/src/pageinstall.cpp @@ -1,6 +1,7 @@ #include "pageinstall.h" #include +#include #include #include @@ -39,8 +40,6 @@ void PageInstall::setupUi() void PageInstall::retranslateUi() { - qDebug() << "PageInstall::retranslateUi()"; - setTitle( tr("Installing") ); m_LabelEta->setText( tr("Eta: unknown") ); @@ -49,9 +48,6 @@ void PageInstall::retranslateUi() void PageInstall::show() { - emit changeNext(false); - emit changePrev(false); - qDebug() << "install show()"; emit changeNext(false); @@ -67,12 +63,26 @@ void PageInstall::show() connect( m_clProc, SIGNAL(finished(int,QProcess::ExitStatus)), this, SLOT(onFinish(int,QProcess::ExitStatus)) ); QStringList args; + + if (m_Settings->builder) + args << "--build"; + if (m_Settings->force) + args << "--force"; + args << QString("--disk=%1").arg(m_Settings->disk); args << QString("--set-hostname=%1").arg(m_Settings->host); args << QString("--set-format=%1").arg(m_Settings->fs); args << QString("--set-lang=%1").arg(m_Settings->language); args << QString("--set-timezone=%1").arg(m_Settings->timezone); + args << QString("--set-erase=%1").arg( m_Settings->erase ? "yes" : "no" ); + args << QString("--set-mbr=%1").arg( m_Settings->mbr ? "yes" : "no" ); + args << QString("--set-uuid=%1").arg( m_Settings->uuid ? "yes" : "no" ); + + args << QString("--set-type=%1").arg( m_Settings->disktype ); + args << QString("--set-video_drv=%1").arg( m_Settings->videodrv ); + + m_clProc->start("calculate", args); } } @@ -89,9 +99,13 @@ void PageInstall::showStdOut() { // debug QString str = m_clProc->readAllStandardOutput(); - - // TODO: parse out +/* + QFile debug("/tmp/cl-install-gui_stdout.txt"); + if ( debug.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Unbuffered) ) + debug.write(str.toLocal8Bit()); +*/ m_Output->insertPlainText( str ); + m_Output->moveCursor(QTextCursor::EndOfBlock); } } @@ -103,7 +117,11 @@ void PageInstall::showStdErr() if (m_clProc) { QString str = m_clProc->readAllStandardError(); - +/* + QFile debug("/tmp/cl-install-gui_stderr.txt"); + if ( debug.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Unbuffered) ) + debug.write(str.toLocal8Bit()); +*/ if ( str.contains("eta:") ) { QRegExp eta_regexp("\\b(\\d{1,2}:\\d{1,2}:\\d{1,2})\\b"); @@ -138,6 +156,7 @@ void PageInstall::onFinish(int exitCode, QProcess::ExitStatus exitStatus) emit changePrev(false); } + m_Progress->setValue(100); m_LabelEta->setText( tr("Eta: 0:00:00") ); delete m_clProc; diff --git a/src/pageinstall.h b/src/pageinstall.h index 4976ed8..b18480c 100644 --- a/src/pageinstall.h +++ b/src/pageinstall.h @@ -15,7 +15,6 @@ class PageInstall : public InstallerPage public: explicit PageInstall(InstallerSettings* settings); - bool validate(); void retranslateUi(); protected: diff --git a/src/pagelicense.cpp b/src/pagelicense.cpp index 954eb6a..ed8d813 100644 --- a/src/pagelicense.cpp +++ b/src/pagelicense.cpp @@ -40,11 +40,10 @@ void PageLicense::setupUi() void PageLicense::retranslateUi() { - qDebug() << "PageLicense::retranslateUi()"; - setTitle( tr("License") ); - m_textLicense->setText( "" + + m_textLicense->setText( + "" + tr( "

License

" "

License Agreement

" @@ -62,17 +61,12 @@ void PageLicense::retranslateUi() "

Most of the software included in this operating system, allows you to freely modify, copy and " "distribute it. Also included in the OS software is distributed in the different conditions." " For more information please refer to the documentation accompanying a particular software component.

" - ) + "" + ) + + "" ); m_checkAccept->setText( tr("Accept") ); } -bool PageLicense::validate() -{ - emit changeNext(true); - return true; -} - void PageLicense::show() { emit changeNext( m_checkAccept->isChecked() ); diff --git a/src/pagelicense.h b/src/pagelicense.h index 3d455a9..6f6bfaf 100644 --- a/src/pagelicense.h +++ b/src/pagelicense.h @@ -11,7 +11,6 @@ class PageLicense : public InstallerPage public: explicit PageLicense(); - bool validate(); void retranslateUi(); protected: diff --git a/src/pagemanager.cpp b/src/pagemanager.cpp index 6ccc4a1..751eeb7 100644 --- a/src/pagemanager.cpp +++ b/src/pagemanager.cpp @@ -57,7 +57,6 @@ void PageManager::showOnce(InstallerPage* page) m_StackWidget->setCurrentIndex(0); page->show(); } - //pageUpdate(); } void PageManager::showFirst() @@ -132,8 +131,6 @@ void PageManager::removeStackedPage() void PageManager::retranslatePages() { - qDebug() << "PageManager::retranslatePages()"; - foreach(InstallerPage* page, m_Pages) page->retranslateUi(); diff --git a/src/pagemanager.h b/src/pagemanager.h index b9a6f17..b558e41 100644 --- a/src/pagemanager.h +++ b/src/pagemanager.h @@ -39,7 +39,6 @@ private: QLabel* m_ListLabel; QList m_Pages; - PageIterator m_CurPage; bool m_isSinglePage; diff --git a/src/pagepartitioning.cpp b/src/pagepartitioning.cpp index d6fd49a..6305f20 100644 --- a/src/pagepartitioning.cpp +++ b/src/pagepartitioning.cpp @@ -68,8 +68,6 @@ void PagePartitioning::setupUi() void PagePartitioning::retranslateUi() { - qDebug() << "PagePartitioning::retranslateUi()"; - setTitle( tr("Partitioning") ); m_labelDisk->setText( tr("Disk for install: ") ); @@ -112,8 +110,6 @@ void PagePartitioning::show() // get disk & partitions QScopedPointer libParted( new LibParted ); - qDebug() << "parted version: " << libParted->getVersion(); - QStringList disks = libParted->getDevices(); if ( disks.isEmpty() ) @@ -143,10 +139,11 @@ void PagePartitioning::show() try { part_list = libParted->getPartitionList(dev); + qDebug() << part_list.size(); } catch(LibPartedError e) { - qDebug() << QString("Cannot read partition table from %1").arg(dev); + qDebug() << tr("Cannot read partition table from %1").arg(dev); continue; } @@ -188,11 +185,8 @@ void PagePartitioning::updatePartitions(int num) if ( m_PartitionsMap.find(dev) != m_PartitionsMap.end() ) { QList partitions = m_PartitionsMap[dev]; - foreach(PartitionDesc part_desc, partitions ) - { m_Partitions->addItem(part_desc.first, QVariant(part_desc.second) ); - } } } } @@ -201,8 +195,6 @@ void PagePartitioning::updatePartitions(int num) void PagePartitioning::partitioningCurrentDisk() { if (m_Disks->count() != 0) - { emit manualyPartitioning( m_Disks->itemData(m_Disks->currentIndex()).toString() ); - } } diff --git a/src/pagewelcome.cpp b/src/pagewelcome.cpp index b725bfd..5fcea1e 100644 --- a/src/pagewelcome.cpp +++ b/src/pagewelcome.cpp @@ -28,7 +28,6 @@ void PageWelcome::setupUi() m_labelWelcome->setOpenExternalLinks( true ); m_labelLanguage = new QLabel; - m_comboboxLanguages = new QComboBox; // @@ -50,11 +49,10 @@ void PageWelcome::setupUi() void PageWelcome::retranslateUi() { - qDebug() << "PageWelcome::retranslateUi()"; - setTitle( tr("Welcome") ); - m_labelWelcome->setText( "" + + m_labelWelcome->setText( + "" + tr( "

Welcome to Calculate Linux.

" "

http://calculate-linux.org

" @@ -70,18 +68,14 @@ void PageWelcome::retranslateUi() unsigned int selected = 0; QMapIterator it(m_Languages); - qDebug() << "Cur lang: " << *m_currentLanguage; - while(it.hasNext()) { it.next(); - qDebug() << "pos: " << pos << " added lang: " << it.key(); + m_comboboxLanguages->addItem( it.value(), QVariant(it.key()) ); if (it.key() == *m_currentLanguage) - { - qDebug() << "selected " << pos; selected = pos; - } + ++pos; } m_comboboxLanguages->setCurrentIndex(selected); @@ -100,6 +94,11 @@ void PageWelcome::changeLanguageIndex(int indx) } } +void PageWelcome::show() +{ + emit changeNext(true); +} + diff --git a/src/pagewelcome.h b/src/pagewelcome.h index 391f63c..f8adeca 100644 --- a/src/pagewelcome.h +++ b/src/pagewelcome.h @@ -22,6 +22,9 @@ private: private slots: void changeLanguageIndex(int indx); +public slots: + void show(); + signals: void changeLanguage(QString); diff --git a/src/systeminstaller.cpp b/src/systeminstaller.cpp index dd37550..68f96bd 100644 --- a/src/systeminstaller.cpp +++ b/src/systeminstaller.cpp @@ -3,6 +3,7 @@ #include #include +#include #include #include #include @@ -25,8 +26,7 @@ SystemInstaller::SystemInstaller(QWidget *parent) : { //m_CurrentLanguage = QLocale::system().name(); m_CurrentLanguage = QString(qgetenv("LANG")).split(".").first(); - - changedLanguage(m_CurrentLanguage); + changeLanguage(m_CurrentLanguage); setupUi(); @@ -46,10 +46,13 @@ void SystemInstaller::setupUi() m_butPrev = new QPushButton; m_butNext = new QPushButton; + m_butFinish = new QPushButton; + m_butFinish->setVisible(false); hbox_buttons->addStretch(); hbox_buttons->addWidget( m_butPrev ); hbox_buttons->addWidget( m_butNext ); + hbox_buttons->addWidget( m_butFinish ); // right pannel = widget for pages + buttons m_stackPages = new QStackedWidget; @@ -65,10 +68,18 @@ void SystemInstaller::setupUi() vbox_1->addLayout( hbox_buttons ); // left pannel + // logo + m_labelImage = new QLabel; + m_labelImage->setAlignment( Qt::AlignHCenter | Qt::AlignVCenter ); + m_labelImage->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Minimum ); + m_labelPages = new QLabel; + QGroupBox* group_box_list( new QGroupBox ); QVBoxLayout* group_box_list_l( new QVBoxLayout ); + group_box_list_l->addWidget( m_labelImage ); group_box_list_l->addWidget( m_labelPages ); + group_box_list_l->addStretch(); group_box_list->setLayout( group_box_list_l ); @@ -77,27 +88,22 @@ void SystemInstaller::setupUi() hbox_2->addWidget( group_box_list, 2 ); hbox_2->addLayout( vbox_1, 9); - // all window - QVBoxLayout* vbox_2( new QVBoxLayout(centralWidget) ); - - m_labelImage = new QLabel; - m_labelImage->setAlignment( Qt::AlignHCenter | Qt::AlignVCenter ); - - // logo - QImage logo( ":/img/calculate-logo.png" ); - m_labelImage->setPixmap( QPixmap::fromImage(logo) ); - - vbox_2->addWidget( m_labelImage ); - vbox_2->addLayout( hbox_2 ); - + centralWidget->setLayout(hbox_2); setCentralWidget( centralWidget ); - // minimum size for window TODO: remove magic numbers + // set windows icon + QIcon icon( ":/img/calculate-icon.png" ); + setWindowIcon(icon); + + // minimum size for window TODO: remove magic numbers, add other sizes? setMinimumSize(800, 600); setMaximumSize(800, 600); QRect scr = QApplication::desktop()->screenGeometry(); move( scr.width() - scr.width()/2 - 800/2, scr.height() - scr.height()/2 - 600/2 ); + QImage logo = QImage(":/img/calculate-logo.png").scaledToWidth( 120, Qt::SmoothTransformation); + m_labelImage->setPixmap( QPixmap::fromImage(logo) ); + retranslateUi(); } @@ -107,49 +113,47 @@ void SystemInstaller::setupInstallerPages() m_PageManager.reset( new PageManager(m_stackPages, m_labelPages, this) ); PageWelcome* pageLanguage( new PageWelcome(&m_CurrentLanguage) ); - connect( pageLanguage, SIGNAL(changeLanguage(QString)), this, SLOT(changedLanguage(QString)) ); - + connect( pageLanguage, SIGNAL(changeNext(bool)), this, SLOT(changeNext(bool)) ); + connect( pageLanguage, SIGNAL(changeLanguage(QString)), this, SLOT(changeLanguage(QString)) ); m_PageManager->addPage(pageLanguage); PageLicense* pageLicense( new PageLicense ); - connect( pageLicense, SIGNAL(changeNext(bool)), this, SLOT(changedNext(bool)) ); + connect( pageLicense, SIGNAL(changeNext(bool)), this, SLOT(changeNext(bool)) ); m_PageManager->addPage(pageLicense); PagePartitioning* pagePartitoning( new PagePartitioning ); - connect( pagePartitoning, SIGNAL(changeNext(bool)), this, SLOT(changedNext(bool)) ); + connect( pagePartitoning, SIGNAL(changeNext(bool)), this, SLOT(changeNext(bool)) ); connect( pagePartitoning, SIGNAL(manualyPartitioning(QString)), this, SLOT(doPartitioning(QString)) ); - connect( pagePartitoning, SIGNAL(selectedVolume(QString)), this, SLOT(volumeSelect(QString)) ); + connect( pagePartitoning, SIGNAL(selectedVolume(QString)), this, SLOT(selectVolume(QString)) ); m_PageManager->addPage(pagePartitoning); - PageConfiguration* pageConfiguration( new PageConfiguration ); + PageConfiguration* pageConfiguration( new PageConfiguration(&m_CurrentLanguage) ); connect( pageConfiguration, SIGNAL(selectedSettings(InstallerSettings)), - this, SLOT(configurationSelect(InstallerSettings)) + this, SLOT(selectConfiguration(InstallerSettings)) ); m_PageManager->addPage(pageConfiguration); PageInstall* pageInstall( new PageInstall( &m_InstallSettings ) ); - connect( pageInstall, SIGNAL(changeNext(bool)), this, SLOT(changedNext(bool)) ); - connect( pageInstall, SIGNAL(changePrev(bool)), this, SLOT(changedPrev(bool)) ); + connect( pageInstall, SIGNAL(changeNext(bool)), this, SLOT(changeNext(bool)) ); + connect( pageInstall, SIGNAL(changePrev(bool)), this, SLOT(changePrev(bool)) ); m_PageManager->addPage(pageInstall); PageFinish* pageFinish( new PageFinish ); - connect( pageFinish, SIGNAL(changeNext(bool)), this, SLOT(changedNext(bool)) ); - connect( pageFinish, SIGNAL(changePrev(bool)), this, SLOT(changedPrev(bool)) ); - connect( pageFinish, SIGNAL(finish()), this, SLOT(close())); + connect( pageFinish, SIGNAL(toggleButtons(bool)), this, SLOT(toggleButtons(bool)) ); m_PageManager->addPage(pageFinish); m_PageManager->showFirst(); connect( m_butNext, SIGNAL(clicked()), m_PageManager.data(), SLOT(showNext()) ); connect( m_butPrev, SIGNAL(clicked()), m_PageManager.data(), SLOT(showPrevious()) ); + connect( m_butFinish, SIGNAL(clicked()), this, SLOT(close())); } void SystemInstaller::retranslateUi() { - qDebug() << "SystemInstaller::retranslateUi()"; - m_butPrev->setText( tr("Prevoius") ); m_butNext->setText( tr("Next") ); + m_butFinish->setText( tr("Finish") ); if (m_PageManager) m_PageManager->retranslatePages(); @@ -171,12 +175,12 @@ void SystemInstaller::removeTranslator() } } -void SystemInstaller::changedLanguage(QString lang) +void SystemInstaller::changeLanguage(QString lang) { - qDebug() << "SystemInstaller::changedLanguage()"; qDebug() << "New language: " + lang; m_CurrentLanguage = lang; +// QLocale::setDefault( QLocale(lang) ); QTranslator* translator( new QTranslator ); @@ -199,17 +203,24 @@ void SystemInstaller::changeEvent(QEvent* event) } -void SystemInstaller::changedNext(bool state) +void SystemInstaller::changeNext(bool state) { m_butNext->setEnabled(state); } -void SystemInstaller::changedPrev(bool state) +void SystemInstaller::changePrev(bool state) { m_butPrev->setEnabled(state); } -void SystemInstaller::volumeSelect(QString volume) +void SystemInstaller::toggleButtons(bool state) +{ + m_butNext->setVisible(state); + m_butPrev->setVisible(state); + m_butFinish->setVisible(!state); +} + +void SystemInstaller::selectVolume(QString volume) { m_InstallSettings.disk = volume; } @@ -227,7 +238,7 @@ void SystemInstaller::completePartitioning() m_PageManager->showPrevious(); } -void SystemInstaller::configurationSelect(InstallerSettings settings) +void SystemInstaller::selectConfiguration(InstallerSettings settings) { // replace selected volume settings.disk = m_InstallSettings.disk; diff --git a/src/systeminstaller.h b/src/systeminstaller.h index 3c3d022..d7802db 100644 --- a/src/systeminstaller.h +++ b/src/systeminstaller.h @@ -35,23 +35,26 @@ private: void removeTranslator(); private slots: - void changedNext(bool); - void changedPrev(bool); - void changedLanguage(QString); + void changeNext(bool); + void changePrev(bool); + void toggleButtons(bool); - void doPartitioning(QString disk); + void changeLanguage(QString); + + void doPartitioning(QString); void completePartitioning(); - void volumeSelect(QString volume); - void configurationSelect(InstallerSettings settings); + void selectVolume(QString volume); + void selectConfiguration(InstallerSettings settings); signals: - void selecteConfiguration(InstallerSettings settings); + void selectedConfiguration(InstallerSettings settings); private: // ui QPushButton* m_butPrev; QPushButton* m_butNext; + QPushButton* m_butFinish; QLabel* m_labelImage; QLabel* m_labelPages; QStackedWidget* m_stackPages; diff --git a/src/tools.h b/src/tools.h index 13bbf63..3895ec9 100644 --- a/src/tools.h +++ b/src/tools.h @@ -4,11 +4,20 @@ struct InstallerSettings { + bool builder; + bool force; QString disk; QString host; QString language; - QString fs; QString timezone; + bool erase; + QString fs; + bool mbr; + bool uuid; + QString disktype; + QString videodrv; + //QString videores; + }; QString LoadTextFile(const QString& name); diff --git a/translations/cl-install-gui_ru.ts b/translations/cl-install-gui_ru.ts index 74261eb..cfd0719 100644 --- a/translations/cl-install-gui_ru.ts +++ b/translations/cl-install-gui_ru.ts @@ -51,12 +51,92 @@ Format - Файловая система: + Файловая система: Timezone: Часовой пояс: + + Installation for assembling + Установка для сборки + + + Do not prompt before overwriting + Переписывать существующие файлы не спрашивая + + + English + Английский + + + German + Немецкий + + + Spanish + Испанский + + + French + Французский + + + Italian + Итальянский + + + Polish + Польский + + + Brazilian Portugal + Бразильский (португальский) + + + Russian + Русский + + + Format root partition + Форматировать корневой раздел перед установкой + + + File system: + Файловая система: + + + Format root partition before installing + Форматировать корневой раздел перед установкой + + + Install bootloader to MBR + Установить загрузчик в MBR + + + Use UUID for mounting partitions + Использовать UUID для монтирования разделов + + + Disk type: + Тип диска: + + + Video resolution + Разрешение экрана: + + + Use composite + Использовать композит + + + CPU sheduler: + Планировщик ввода/вывода: + + + IO sheduler: + Планировщик ввода/вывода: + PageFinish @@ -192,6 +272,10 @@ Java 2 (SUN) Runtime Environment, Standard Edition<br> Disks not found Диск не найден + + Cannot read partition table from %1 + Ошибка чтения таблицы разделов с %1 + PageWelcome @@ -205,7 +289,7 @@ Java 2 (SUN) Runtime Environment, Standard Edition<br> <p>Welcome to Calculate Linux.</p><p><a href='http://calculate-linux.org'>http://calculate-linux.org</a></p> - <p>Добро пожаловать в Calculate Linux.</p><p><a href='http://calculate-linux.ru'>http://calculate-linux.ru</a></p> + <p>Добро пожаловать в Calculate Linux.</p><p><a href='http://calculate-linux.ru'>http://calculate-linux.ru</a></p> @@ -288,5 +372,9 @@ Java 2 (SUN) Runtime Environment, Standard Edition<br> Next Вперед + + Finish + Закончить +