[Kwintv] kdeextragear-3/kdetv/libkdetv

Dirk Ziegelmeier dziegel at gmx.de
Thu Oct 28 00:55:50 CEST 2004


CVS commit by dziegel: 

Set channel numbering start default value dependant on country
(US and CA: 2, others: 1)
CCMAIL:kwintv at kde.org


  M +17 -8     cfgdata.cpp   1.54
  M +0 -5      cfgdata.h   1.43
  M +1 -1      viewmanager.cpp   1.55


--- kdeextragear-3/kdetv/libkdetv/viewmanager.cpp  #1.54:1.55
@@ -60,5 +60,5 @@ ViewManager::ViewManager( Kdetv *kdetv, 
       ktv( kdetv ),
       cfg( kdetv->config() ),
-      oldConfig(*ConfigData::createDefaultConfig())
+      oldConfig(ConfigData::getDefaultConfig())
 {
     connect( ktv->sourceManager(), SIGNAL( deviceChanged( const QString& ) ),

--- kdeextragear-3/kdetv/libkdetv/cfgdata.h  #1.42:1.43
@@ -57,9 +57,4 @@ public:
     static const ConfigData& getDefaultConfig();
 
-    /**
-     * CREATES an config object containing default settings
-     */
-    static ConfigData* createDefaultConfig();
-
     /** Destructor */
     ~ConfigData();

--- kdeextragear-3/kdetv/libkdetv/cfgdata.cpp  #1.53:1.54
@@ -22,4 +22,6 @@
 #include <kconfig.h>
 #include <kdebug.h>
+#include <klocale.h>
+#include <kglobal.h>
 
 #include <qdir.h>
@@ -38,14 +40,12 @@ struct grab_resolutions_s grab_resolutio
 };
 
-static ConfigData& defaultCfg = *ConfigData::createDefaultConfig();
+static const ConfigData* defaultCfg = NULL;
 
 const ConfigData& ConfigData::getDefaultConfig()
 {
-    return defaultCfg;
-}
-
-ConfigData* ConfigData::createDefaultConfig()
-{
-    return new ConfigData(0L, 0L);
+    if(defaultCfg == NULL) {
+        defaultCfg = new ConfigData(0L, 0L);
+    }
+    return *defaultCfg;
 }
 
@@ -109,7 +109,16 @@ void ConfigData::defaults()
 {
     // General
+
+    // In us and ca, channel numbering starts at 2. Set an appropriate default.
+    QString country = KGlobal::locale()->country();
+    if((country == "us")  ||
+       (country == "ca"))    {
+        channelNumberingStart = 2;
+    } else {
+        channelNumberingStart = 1;
+    }
+
     firstTime = true;
     // maxResolution = false;
-    channelNumberingStart = 2;
     showSelectedOnly = true;
     maxKeypressInterval = 2000;




More information about the kwintv mailing list