summaryrefslogtreecommitdiffstats
path: root/abs/core/mythinstall/misc_settings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/mythinstall/misc_settings.cpp')
-rwxr-xr-xabs/core/mythinstall/misc_settings.cpp621
1 files changed, 621 insertions, 0 deletions
diff --git a/abs/core/mythinstall/misc_settings.cpp b/abs/core/mythinstall/misc_settings.cpp
new file mode 100755
index 0000000..7c3eb67
--- /dev/null
+++ b/abs/core/mythinstall/misc_settings.cpp
@@ -0,0 +1,621 @@
+#include <mythcontext.h>
+#include <unistd.h>
+#include <iostream>
+#include <fstream>
+#include <stdio.h>
+#include <stdlib.h>
+#include <cstdlib>
+#include "misc_settings.h"
+#include "mv_common.h"
+#include "uitypes.h"
+
+extern HostParms hostparm;
+
+static HostCheckBox *HostShowToolTips()
+{
+ HostCheckBox *gc = new HostCheckBox("HostShowToolTips");
+ gc->setLabel(QObject::tr("Show shortcuts"));
+ gc->setValue(true);
+ gc->setHelpText(QObject::tr("Shows a popup window describing how to open a console and various other items."));
+ return gc;
+};
+
+static HostComboBox *Hostupdateplan()
+{
+ HostComboBox *gc = new HostComboBox("Hostupdateplan");
+ gc->setLabel(QObject::tr("Automatic updates"));
+ gc->addSelection("None");
+ gc->addSelection("Myth_only");
+ gc->addSelection("All");
+ gc->setHelpText("Download and apply updates. None: Will not download any updates , Myth_only: automatic updates for MythTV, All: Automatic updates for the entire system.");
+ return gc;
+
+}
+static HostLineEdit *HostZipcode()
+{
+ HostLineEdit *gc = new HostLineEdit("HostZipcode");
+ gc->setLabel(QObject::tr("Zip Code"));
+ gc->setHelpText(QObject::tr("The zipcode will be used to configure MythMovieTimes. Leave it blank to use the existing value. People located outside the U.S.A should probably leave this blank"));
+ //gc->setRW();
+ //gc->setRO();
+ return gc;
+};
+
+//_______________Misc main frame
+MiscMainFrame::MiscMainFrame():
+ VerticalConfigurationGroup(false,false,false,false)
+
+{
+ bool MVAPP;
+ #ifdef __MVAPP__
+ MVAPP = true ;
+ #else
+ MVAPP = false ;
+ #endif
+ bool showLabels;
+ hostparm.ThisSystemType = gContext->GetSetting("HostSystemType");
+ if ( hostparm.ThisSystemType == "Standalone" || hostparm.ThisSystemType=="Master_backend")
+ {
+ showLabels = false;
+ }
+ else
+ {
+ showLabels = true;
+ }
+ TransLabelSetting *temptimezone = new TransLabelSetting();
+ temptimezone->setValue("Timezone: " + hostparm.ThisTimeZone );
+ TransLabelSetting *tempzipcode = new TransLabelSetting();
+ tempzipcode->setValue("Zipcode: " + hostparm.ThisHostZipcode );
+ GridConfigurationGroup* miscsettings_2 =
+ new GridConfigurationGroup(1,true, true,false,false);
+
+ if ( showLabels && ( hostparm.ThisHostZipcode != "" ))
+ if (MVAPP)
+ miscsettings_2->addChild(tempzipcode);
+ else
+ miscsettings_2->addChild(HostZipcode());
+ else
+ miscsettings_2->addChild(HostZipcode());
+
+ TimezoneRegion *timezoneregion = new TimezoneRegion();
+ TimezoneButton *timezonebutton = new TimezoneButton();
+
+ VerticalConfigurationGroup* miscsettings =
+ new VerticalConfigurationGroup(false, true,false,false);
+ if ( showLabels && ( hostparm.ThisTimeZone != "" ))
+ {
+ if (MVAPP)
+ {
+ miscsettings->addChild(temptimezone);
+ timezonebutton->disableButton();
+ }
+ else
+ miscsettings->addChild(timezoneregion);
+ }
+ else
+ miscsettings->addChild(timezoneregion);
+
+ miscsettings->addChild(timezonebutton);
+ miscsettings->addChild(miscsettings_2);
+ addChild(miscsettings);
+
+ connect(timezonebutton, SIGNAL(mf_launch_tzgui()),timezoneregion ,SLOT(timezone_gathersettings()));
+ connect(timezoneregion,SIGNAL(mf_show_tz(QString)),this,SLOT(mf_show_tz(QString)));
+ connect(this,SIGNAL(update_timezone(QString)),timezoneregion,SLOT(update_timezone_values(QString)));
+
+ autoLaunchTimer = new QTimer(this);
+ connect(autoLaunchTimer, SIGNAL(timeout()), timezonebutton, SLOT(launch_tzgui()));
+ autoLaunchTimer->start(0);
+ }
+
+QString MiscMainFrame::mf_show_tz(QString tz)
+{
+ QString GTimezone;
+ int rc;
+
+ if (autoLaunchTimer->isActive())
+ {
+ autoLaunchTimer->stop();
+
+ // This was triggered by the timer. Only launch the timezone gui if the timezone is unknown.
+ if (!timezone_unknown)
+ return NULL;
+ }
+
+ cout << "MiscMainFrame::mf_show_tz " << tz << "\n";
+
+ if ((tz == "") || timezone_unknown)
+ tz = "guess";
+
+ //launch tzgui and load output into Gtimezone
+ int screenheight = 0, screenwidth = 0;
+ float wmult = 0, hmult = 0;
+ QString m_height , m_width , cmd;
+ gContext->GetScreenSettings(screenwidth, wmult, screenheight, hmult);
+ m_height.setNum(screenheight);
+ m_width.setNum(screenwidth);
+ QString tzpath;
+ tzpath=MV_ROOT;
+ tzpath.append("bin/timezone.bin");
+ //cmd="ACCEL=500 " + tzpath + " -z " + tz + " -h " + m_height + " -w " + m_width + " > /tmp/.selected_tz" ;
+ cmd=tzpath + " -z " + tz + " -h " + m_height + " -w " + m_width + " > /tmp/.selected_tz" ;
+ rc=myth_system(cmd);
+ if ( rc == 0 )
+ {
+ //read in value
+ QString line;
+ QFile file("/tmp/.selected_tz");
+ if ( file.open(IO_ReadOnly | IO_Translate) )
+ {
+ QTextStream t( &file ); // use a text stream
+ while ( !t.eof() )
+ {
+ line = t.readLine();
+ if ( line.contains("/"))
+ {
+ GTimezone = line.simplifyWhiteSpace();
+ break;
+ }
+ }
+ file.close();
+ }
+ timezone_unknown = FALSE;
+ emit update_timezone(GTimezone);
+ }
+
+}
+
+
+//_______________Misc main frame
+MiscMainFrame2::MiscMainFrame2():
+ VerticalConfigurationGroup(false,false,false,false)
+ {
+ VerticalConfigurationGroup* miscsettings =
+ new VerticalConfigurationGroup(false, true,false,false);
+
+ GridConfigurationGroup* miscsettings_2 =
+ new GridConfigurationGroup(1,false, false,false,false);
+ miscsettings_2->addChild(HostShowToolTips());
+ miscsettings_2->addChild(Hostupdateplan());
+
+ NFSSettings *nfssettings = new NFSSettings();
+
+ miscsettings->addChild(nfssettings);
+ miscsettings->addChild(miscsettings_2);
+
+ addChild(miscsettings);
+
+ }
+
+
+//_______________Misc time timezone
+
+TimezoneButton::TimezoneButton():
+ VerticalConfigurationGroup(false,false,false,false)
+ {
+ TZButton = new TransButtonSetting;
+ TZButton->setLabel("Hitchhikers guide to timezones");
+ addChild(TZButton);
+ connect(TZButton, SIGNAL(pressed()),this,SLOT(launch_tzgui()));
+
+ };
+
+void TimezoneButton::launch_tzgui()
+{
+ emit mf_launch_tzgui();
+}
+
+void TimezoneButton::disableButton()
+{
+ TZButton->setEnabled(false);
+}
+
+
+
+//This is used for the timezone
+QStringList findFilesRecursively ( QStringList paths, QString fileTypes ) {
+ if ( fileTypes.isEmpty() ) fileTypes = "*";
+ QStringList result, more;
+ QStringList::Iterator it;
+ for ( uint i = 0 ; i < paths.size() ; i++ )
+ { // inefficient...whatever
+ QDir dir( paths[i] );
+ dir.setSorting( QDir::Reversed );
+ more = dir.entryList( fileTypes, QDir::Files );
+ for ( it = more.begin() ; it != more.end() ; ++it )
+ result.append( paths[i] + "/" + *it );
+ // reg exp in next line excludes . and .. dirs (and .* actually)
+ more = dir.entryList( QDir::Dirs ).grep( QRegExp( "[^.]" ) );
+ for ( it = more.begin() ; it != more.end() ; ++it )
+ *it = paths[i] + "/" + *it;
+ more = findFilesRecursively( more, fileTypes );
+ for ( it = more.begin() ; it != more.end() ; ++it )
+ result.append( *it );
+ }
+ return result; // yields absolute paths
+}
+
+
+void TimezoneRegion::timezoneregion_fillselection_zone()
+{
+ HostTimeZoneRegion->setLabel(QObject::tr("TimeZone"));
+ HostTimeZoneRegion->addSelection("US");
+ HostTimeZoneRegion->addSelection("Pacific");
+ HostTimeZoneRegion->addSelection("Mideast");
+ HostTimeZoneRegion->addSelection("Mexico");
+ HostTimeZoneRegion->addSelection("Indian");
+ HostTimeZoneRegion->addSelection("Europe");
+ HostTimeZoneRegion->addSelection("Etc");
+ HostTimeZoneRegion->addSelection("Chile");
+ HostTimeZoneRegion->addSelection("Canada");
+ HostTimeZoneRegion->addSelection("Brazil");
+ HostTimeZoneRegion->addSelection("Australia");
+ HostTimeZoneRegion->addSelection("Atlantic");
+ HostTimeZoneRegion->addSelection("Asia");
+ HostTimeZoneRegion->addSelection("Arctic");
+ HostTimeZoneRegion->addSelection("Antarctica");
+ HostTimeZoneRegion->addSelection("America");
+ HostTimeZoneRegion->addSelection("Africa");
+ //--single region
+ HostTimeZoneRegion->addSelection("Zulu");
+ HostTimeZoneRegion->addSelection("WET");
+ HostTimeZoneRegion->addSelection("W-SU");
+ HostTimeZoneRegion->addSelection("Universal");
+ HostTimeZoneRegion->addSelection("UTC");
+ HostTimeZoneRegion->addSelection("UCT");
+ HostTimeZoneRegion->addSelection("Turkey");
+ HostTimeZoneRegion->addSelection("Singapore");
+ HostTimeZoneRegion->addSelection("ROK");
+ HostTimeZoneRegion->addSelection("ROC");
+ HostTimeZoneRegion->addSelection("Portugal");
+ HostTimeZoneRegion->addSelection("Poland");
+ HostTimeZoneRegion->addSelection("PST8PDT");
+ HostTimeZoneRegion->addSelection("PRC");
+ HostTimeZoneRegion->addSelection("Navajo");
+ HostTimeZoneRegion->addSelection("NZ-CHAT");
+ HostTimeZoneRegion->addSelection("NZ");
+ HostTimeZoneRegion->addSelection("MST7MDT");
+ HostTimeZoneRegion->addSelection("MST");
+ HostTimeZoneRegion->addSelection("MET");
+ HostTimeZoneRegion->addSelection("Libya");
+ HostTimeZoneRegion->addSelection("Kwajalein");
+ HostTimeZoneRegion->addSelection("Japan");
+ HostTimeZoneRegion->addSelection("Jamaica");
+ HostTimeZoneRegion->addSelection("Israel");
+ HostTimeZoneRegion->addSelection("Iran");
+ HostTimeZoneRegion->addSelection("Iceland");
+ HostTimeZoneRegion->addSelection("Hongkong");
+ HostTimeZoneRegion->addSelection("HST");
+ HostTimeZoneRegion->addSelection("Greenwich");
+ HostTimeZoneRegion->addSelection("GMT0");
+ HostTimeZoneRegion->addSelection("GMT-0");
+ HostTimeZoneRegion->addSelection("GMT+0");
+ HostTimeZoneRegion->addSelection("GMT");
+ HostTimeZoneRegion->addSelection("GB-Eire");
+ HostTimeZoneRegion->addSelection("GB");
+ HostTimeZoneRegion->addSelection("Factory");
+ HostTimeZoneRegion->addSelection("Eire");
+ HostTimeZoneRegion->addSelection("Egypt");
+ HostTimeZoneRegion->addSelection("EST5EDT");
+ HostTimeZoneRegion->addSelection("EST");
+ HostTimeZoneRegion->addSelection("EET");
+ HostTimeZoneRegion->addSelection("Cuba");
+ HostTimeZoneRegion->addSelection("CST6CDT");
+ HostTimeZoneRegion->addSelection("CET");
+ HostTimeZoneRegion->setHelpText(QObject::tr("Timezone Region"));
+}
+
+void TimezoneRegion::timezoneregion_fillselection(QString tzonefile )
+{
+ QString currentitem;
+ int foundtab;
+ int foundslashes;
+ QString timezonefile="/usr/share/zoneinfo/posix/";
+ timezonefile.append(tzonefile);
+ QStringList answer = findFilesRecursively( timezonefile, "*" );
+ QStringList onlyfiles = "";
+ QStringList::Iterator it;
+ for ( it = answer.begin(); it != answer.end(); ++it )
+ {
+ currentitem = *it;
+ foundtab=currentitem.contains(".tab");
+ if ( foundtab == 0 )
+ {
+ foundslashes=currentitem.contains("/");
+ currentitem = currentitem.section( '/', 6, foundslashes );
+
+ if ( tzonefile == "US")
+ HostTimezoneRegion_US->addSelection(currentitem);
+ else if ( tzonefile == "Pacific")
+ HostTimezoneRegion_Pacific->addSelection(currentitem);
+ else if ( tzonefile == "Mideast")
+ HostTimezoneRegion_Mideast->addSelection(currentitem);
+ else if ( tzonefile == "Mexico")
+ HostTimezoneRegion_Mexico->addSelection(currentitem);
+ else if ( tzonefile == "Indian")
+ HostTimezoneRegion_Indian->addSelection(currentitem);
+ else if ( tzonefile == "Europe")
+ HostTimezoneRegion_Europe->addSelection(currentitem);
+ else if ( tzonefile == "Etc")
+ HostTimezoneRegion_Etc->addSelection(currentitem);
+ else if ( tzonefile == "Chile")
+ HostTimezoneRegion_Chile->addSelection(currentitem);
+ else if ( tzonefile == "Canada")
+ HostTimezoneRegion_Canada->addSelection(currentitem);
+ else if ( tzonefile == "Brazil")
+ HostTimezoneRegion_Brazil->addSelection(currentitem);
+ else if ( tzonefile == "Australia")
+ HostTimezoneRegion_Australia->addSelection(currentitem);
+ else if ( tzonefile == "Atlantic")
+ HostTimezoneRegion_Atlantic->addSelection(currentitem);
+ else if ( tzonefile == "Asia")
+ HostTimezoneRegion_Asia->addSelection(currentitem);
+ else if ( tzonefile == "Arctic")
+ HostTimezoneRegion_Arctic->addSelection(currentitem);
+ else if ( tzonefile == "Antarctica")
+ HostTimezoneRegion_Antarctica->addSelection(currentitem);
+ else if ( tzonefile == "America")
+ HostTimezoneRegion_America->addSelection(currentitem);
+ else if ( tzonefile == "Africa")
+ HostTimezoneRegion_Africa->addSelection(currentitem);
+ }
+ }
+};
+
+void TimezoneRegion::timezone_gathersettings()
+{
+ QString tz;
+ QString subregion;
+ QString region=HostTimeZoneRegion->getValue();
+ if ( region == "US")
+ subregion=HostTimezoneRegion_US->getValue();
+ else if ( region == "Pacific")
+ subregion=HostTimezoneRegion_Pacific->getValue();
+ else if ( region == "Mideast")
+ subregion=HostTimezoneRegion_Mideast->getValue();
+ else if ( region == "Mexico")
+ subregion=HostTimezoneRegion_Mexico->getValue();
+ else if ( region == "Indian")
+ subregion=HostTimezoneRegion_Indian->getValue();
+ else if ( region == "Europe")
+ subregion=HostTimezoneRegion_Europe->getValue();
+ else if ( region == "Etc")
+ subregion=HostTimezoneRegion_Etc->getValue();
+ else if ( region == "Chile")
+ subregion=HostTimezoneRegion_Chile->getValue();
+ else if ( region == "Canada")
+ subregion=HostTimezoneRegion_Canada->getValue();
+ else if ( region == "Brazil")
+ subregion=HostTimezoneRegion_Brazil->getValue();
+ else if ( region == "Australia")
+ subregion=HostTimezoneRegion_Australia->getValue();
+ else if ( region == "Atlantic")
+ subregion=HostTimezoneRegion_Atlantic->getValue();
+ else if ( region == "Asia")
+ subregion=HostTimezoneRegion_Asia->getValue();
+ else if ( region == "Arctic")
+ subregion=HostTimezoneRegion_Arctic->getValue();
+ else if ( region == "Antarctica")
+ subregion=HostTimezoneRegion_Antarctica->getValue();
+ else if ( region == "America")
+ subregion=HostTimezoneRegion_America->getValue();
+ else if ( region == "Africa")
+ subregion=HostTimezoneRegion_Africa->getValue();
+
+ tz=region+"/"+subregion;
+
+ emit mf_show_tz(tz);
+}
+
+TimezoneRegion::TimezoneRegion():
+ TriggeredConfigurationGroup(true,false,true,true,true,true,true,true)
+{
+ SetVertical(false);
+ HostTimeZoneRegion= new HostComboBox("HostTimeZoneRegion");
+ timezoneregion_fillselection_zone();
+ Setting* trigger = HostTimeZoneRegion;
+ addChild(trigger);
+ setTrigger(trigger);
+ //define all the new comboboxes
+ HostTimezoneRegion_US = new HostComboBox("HostTimezoneRegion_US");
+ HostTimezoneRegion_Pacific = new HostComboBox("HostTimezoneRegion_Pacific");
+ HostTimezoneRegion_Mideast = new HostComboBox("HostTimezoneRegion_Mideast");
+ HostTimezoneRegion_Mexico = new HostComboBox("HostTimezoneRegion_Mexico");
+ HostTimezoneRegion_Indian = new HostComboBox("HostTimezoneRegion_Indian");
+ HostTimezoneRegion_Europe = new HostComboBox("HostTimezoneRegion_Europe");
+ HostTimezoneRegion_Etc = new HostComboBox("HostTimezoneRegion_Etc");
+ HostTimezoneRegion_Chile = new HostComboBox("HostTimezoneRegion_Chile");
+ HostTimezoneRegion_Canada = new HostComboBox("HostTimezoneRegion_Canada");
+ HostTimezoneRegion_Brazil = new HostComboBox("HostTimezoneRegion_Brazil");
+ HostTimezoneRegion_Australia = new HostComboBox("HostTimezoneRegion_Australia");
+ HostTimezoneRegion_Atlantic = new HostComboBox("HostTimezoneRegion_Atlantic");
+ HostTimezoneRegion_Asia = new HostComboBox("HostTimezoneRegion_Asia");
+ HostTimezoneRegion_Arctic = new HostComboBox("HostTimezoneRegion_Arctic");
+ HostTimezoneRegion_Antarctica = new HostComboBox("HostTimezoneRegion_Antarctica");
+ HostTimezoneRegion_America = new HostComboBox("HostTimezoneRegion_America");
+ HostTimezoneRegion_Africa = new HostComboBox("HostTimezoneRegion_Africa");
+ //fill the new comboboxes
+ timezoneregion_fillselection("US");
+ timezoneregion_fillselection("Pacific");
+ timezoneregion_fillselection("Mideast");
+ timezoneregion_fillselection("Mexico");
+ timezoneregion_fillselection("Indian");
+ timezoneregion_fillselection("Europe");
+ timezoneregion_fillselection("Etc");
+ timezoneregion_fillselection("Chile");
+ timezoneregion_fillselection("Canada");
+ timezoneregion_fillselection("Brazil");
+ timezoneregion_fillselection("Australia");
+ timezoneregion_fillselection("Atlantic");
+ timezoneregion_fillselection("Asia");
+ timezoneregion_fillselection("Arctic");
+ timezoneregion_fillselection("Antarctica");
+ timezoneregion_fillselection("America");
+ timezoneregion_fillselection("Africa");
+
+ // Add subregions to regions
+ addTarget("US", HostTimezoneRegion_US );
+ addTarget("Pacific", HostTimezoneRegion_Pacific );
+ addTarget("Mideast", HostTimezoneRegion_Mideast );
+ addTarget("Mexico", HostTimezoneRegion_Mexico );
+ addTarget("Indian", HostTimezoneRegion_Indian );
+ addTarget("Europe", HostTimezoneRegion_Europe );
+ addTarget("Etc", HostTimezoneRegion_Etc );
+ addTarget("Chile", HostTimezoneRegion_Chile );
+ addTarget("Canada", HostTimezoneRegion_Canada );
+ addTarget("Brazil", HostTimezoneRegion_Brazil );
+ addTarget("Australia", HostTimezoneRegion_Australia );
+ addTarget("Atlantic", HostTimezoneRegion_Atlantic );
+ addTarget("Asia", HostTimezoneRegion_Asia );
+ addTarget("Arctic", HostTimezoneRegion_Arctic );
+ addTarget("Antarctica", HostTimezoneRegion_Antarctica );
+ addTarget("America", HostTimezoneRegion_America );
+ addTarget("Africa", HostTimezoneRegion_Africa );
+ //--single region
+ addTarget("Zulu", new VerticalConfigurationGroup(false, false));
+ addTarget("WET", new VerticalConfigurationGroup(false, false));
+ addTarget("W-SU", new VerticalConfigurationGroup(false, false));
+ addTarget("Universal", new VerticalConfigurationGroup(false, false));
+ addTarget("UTC", new VerticalConfigurationGroup(false, false));
+ addTarget("UCT", new VerticalConfigurationGroup(false, false));
+ addTarget("Turkey", new VerticalConfigurationGroup(false, false));
+ addTarget("Singapore", new VerticalConfigurationGroup(false, false));
+ addTarget("ROK", new VerticalConfigurationGroup(false, false));
+ addTarget("ROC", new VerticalConfigurationGroup(false, false));
+ addTarget("Portugal", new VerticalConfigurationGroup(false, false));
+ addTarget("Poland", new VerticalConfigurationGroup(false, false));
+ addTarget("PST8PDT", new VerticalConfigurationGroup(false, false));
+ addTarget("PRC", new VerticalConfigurationGroup(false, false));
+ addTarget("Navajo", new VerticalConfigurationGroup(false, false));
+ addTarget("NZ-CHAT", new VerticalConfigurationGroup(false, false));
+ addTarget("NZ", new VerticalConfigurationGroup(false, false));
+ addTarget("MST7MDT", new VerticalConfigurationGroup(false, false));
+ addTarget("MST", new VerticalConfigurationGroup(false, false));
+ addTarget("MET", new VerticalConfigurationGroup(false, false));
+ addTarget("Libya", new VerticalConfigurationGroup(false, false));
+ addTarget("Kwajalein", new VerticalConfigurationGroup(false, false));
+ addTarget("Japan", new VerticalConfigurationGroup(false, false));
+ addTarget("Jamaica", new VerticalConfigurationGroup(false, false));
+ addTarget("Israel", new VerticalConfigurationGroup(false, false));
+ addTarget("Iran", new VerticalConfigurationGroup(false, false));
+ addTarget("Iceland", new VerticalConfigurationGroup(false, false));
+ addTarget("Hongkong", new VerticalConfigurationGroup(false, false));
+ addTarget("HST", new VerticalConfigurationGroup(false, false));
+ addTarget("Greenwich", new VerticalConfigurationGroup(false, false));
+ addTarget("GMT0", new VerticalConfigurationGroup(false, false));
+ addTarget("GMT-0", new VerticalConfigurationGroup(false, false));
+ addTarget("GMT+0", new VerticalConfigurationGroup(false, false));
+ addTarget("GMT", new VerticalConfigurationGroup(false, false));
+ addTarget("GB-Eire", new VerticalConfigurationGroup(false, false));
+ addTarget("GB", new VerticalConfigurationGroup(false, false));
+ addTarget("Factory", new VerticalConfigurationGroup(false, false));
+ addTarget("Eire", new VerticalConfigurationGroup(false, false));
+ addTarget("Egypt", new VerticalConfigurationGroup(false, false));
+ addTarget("EST5EDT", new VerticalConfigurationGroup(false, false));
+ addTarget("EST", new VerticalConfigurationGroup(false, false));
+ addTarget("EET", new VerticalConfigurationGroup(false, false));
+ addTarget("Cuba", new VerticalConfigurationGroup(false, false));
+ addTarget("CST6CDT", new VerticalConfigurationGroup(false, false));
+ addTarget("CET", new VerticalConfigurationGroup(false, false));
+};
+
+void TimezoneRegion::update_timezone_values(QString Gtimezone)
+{
+ QString region;
+ QString subregion;
+ region=Gtimezone.section('/',0,0);
+ subregion=Gtimezone.section('/',1,1);
+ HostTimeZoneRegion->setValue(region);
+
+ if ( region == "US")
+ HostTimezoneRegion_US->setValue(subregion);
+ else if ( region == "Pacific")
+ HostTimezoneRegion_Pacific->setValue(subregion);
+ else if ( region == "Mideast")
+ HostTimezoneRegion_Mideast->setValue(subregion);
+ else if ( region == "Mexico")
+ HostTimezoneRegion_Mexico->setValue(subregion);
+ else if ( region == "Indian")
+ HostTimezoneRegion_Indian->setValue(subregion);
+ else if ( region == "Europe")
+ HostTimezoneRegion_Europe->setValue(subregion);
+ else if ( region == "Etc")
+ HostTimezoneRegion_Etc->setValue(subregion);
+ else if ( region == "Chile")
+ HostTimezoneRegion_Chile->setValue(subregion);
+ else if ( region == "Canada")
+ HostTimezoneRegion_Canada->setValue(subregion);
+ else if ( region == "Brazil")
+ HostTimezoneRegion_Brazil->setValue(subregion);
+ else if ( region == "Australia")
+ HostTimezoneRegion_Australia->setValue(subregion);
+ else if ( region == "Atlantic")
+ HostTimezoneRegion_Atlantic->setValue(subregion);
+ else if ( region == "Asia")
+ HostTimezoneRegion_Asia->setValue(subregion);
+ else if ( region == "Arctic")
+ HostTimezoneRegion_Arctic->setValue(subregion);
+ else if ( region == "Antarctica")
+ HostTimezoneRegion_Antarctica->setValue(subregion);
+ else if ( region == "America")
+ HostTimezoneRegion_America->setValue(subregion);
+ else if ( region == "Africa")
+ HostTimezoneRegion_Africa->setValue(subregion);
+}
+
+
+//________________Misc (NFS) Screen SETTINGS_________________________
+static HostComboBox *HostHaveCentralNFS()
+{
+ HostComboBox *gc = new HostComboBox("HostHaveCentralNFS");
+ gc->setLabel(QObject::tr("Central NFS server"));
+ gc->addSelection("no");
+ gc->addSelection("yes") ;
+ gc->setHelpText(QObject::tr("Select yes, if your media is stored on an NFS server different than the masterbackend. Say no if you are confused."));
+
+ return gc;
+}
+
+static HostComboBox *HostCentralNFSIP()
+{
+ HostComboBox *gc = new HostComboBox("HostCentralNFSIP",true);
+ gc->setLabel(QObject::tr("NFS server and sharename "));
+ gc->setHelpText(QObject::tr("Format should be IP:/SHARENAME, for example 192.168.1.6:/media. file:nfsmap will load shares from the nfsmap file"));
+ gc->addSelection("file:nfsmap") ;
+ gc->addSelection("") ;
+ return gc;
+};
+
+static HostComboBox *HostNFSmountpoint()
+{
+ #ifdef __MVAPP__
+ HostComboBox *gc = new HostComboBox("HostNFSmountpoint");
+ gc->addSelection("/data/media");
+ #else
+ HostComboBox *gc = new HostComboBox("HostNFSmountpoint",true);
+ gc->addSelection("/myth");
+ #endif
+ gc->setLabel(QObject::tr("Local mount point of NFS share"));
+ gc->addSelection("/mnt") ;
+ gc->setHelpText(QObject::tr(""));
+ return gc;
+}
+
+
+NFSSettings::NFSSettings():
+ TriggeredConfigurationGroup(false,false,false,true,true,false,false,true)
+ {
+ setLabel(QObject::tr("Misc Settings"));
+
+ Setting* havenfs = HostHaveCentralNFS();
+ addChild(havenfs);
+ setTrigger(havenfs);
+
+ ConfigurationGroup* settings = new VerticalConfigurationGroup();
+ settings->addChild(HostCentralNFSIP());
+ settings->addChild(HostNFSmountpoint());
+
+ addTarget("no", new VerticalConfigurationGroup());
+ addTarget("yes", settings);
+ };
+