stifui/qt/src/uisetting.cpp
branchGCC_SURGE
changeset 37 c20154ccf3c0
parent 35 98924d2efce9
equal deleted inserted replaced
20:ba8a586c45f1 37:c20154ccf3c0
    38     QString value = "";
    38     QString value = "";
    39     if(settingList.contains(item))
    39     if(settingList.contains(item))
    40         {
    40         {
    41         value = settingList.value(item);
    41         value = settingList.value(item);
    42         }
    42         }
       
    43     else
       
    44         {
       
    45         value = getDefaultValue(item);
       
    46         settingList.insert(item, value);
       
    47         }
    43     return value;
    48     return value;
    44     }
    49     }
    45 
    50 
    46 
    51 
    47 void UiSetting::SetSetting(const QString& item, const QString& value)
    52 void UiSetting::SetSetting(const QString& item, const QString& value)
    56 
    61 
    57 
    62 
    58 void UiSetting::loadDefault()
    63 void UiSetting::loadDefault()
    59     {
    64     {
    60     settingList.clear();
    65     settingList.clear();
    61     settingList.insert("showoutput", "true");
    66     settingList.insert(KShowOutput, getDefaultValue(KShowOutput));
       
    67     settingList.insert(KStyleSheet, getDefaultValue(KStyleSheet));
       
    68     settingList.insert(KFilter, getDefaultValue(KFilter));
       
    69     settingList.insert(KFilterCaseSens, getDefaultValue(KFilterCaseSens));
    62     //add mor default setting here.
    70     //add mor default setting here.
    63     }
    71     }
    64 
    72 
       
    73 QString UiSetting::getDefaultValue(const QString& item)
       
    74     {
       
    75     QString result = "";
       
    76     if(item == KShowOutput)
       
    77         {
       
    78         result = "true";
       
    79         }
       
    80     else if(item == KStyleSheet)
       
    81         {
       
    82         result = ":/qss/coffee.qss";
       
    83         }
       
    84     else if(item == KFilter)
       
    85         {
       
    86         result = "";
       
    87         }
       
    88     else if(item == KFilterCaseSens)
       
    89         {
       
    90         result = "false";
       
    91         }
       
    92     return result;
       
    93     }
    65 
    94 
    66 bool UiSetting::load()
    95 bool UiSetting::load()
    67     {
    96     {
    68     QFile file(SETTINGFILE);
    97     QFile file(SETTINGFILE);
    69     if(!file.open(QIODevice::ReadOnly))
    98     if(!file.open(QIODevice::ReadOnly))
    73     QTextStream in(&file);
   102     QTextStream in(&file);
    74     QString line, item, value;
   103     QString line, item, value;
    75     int index;
   104     int index;
    76     while(!in.atEnd())
   105     while(!in.atEnd())
    77         {
   106         {
    78         line = in.readLine().trimmed().toLower();
   107         line = in.readLine().trimmed();
    79         if(!line.startsWith("//"))
   108         if(!line.startsWith("//"))
    80             {
   109             {
    81             index = line.indexOf("=");
   110             index = line.indexOf("=");
    82             if(index > 0 && index < line.length() - 1)
   111             if(index > 0 && index < line.length() - 1)
    83                 {
   112                 {
    84                 item = line.left(index).trimmed();
   113                 item = line.left(index).trimmed();
    85                 value = line.right(line.length() - index  -1);
   114                 value = line.right(line.length() - index  -1);
       
   115                 if(item == KFilter) //For filter do not care about stored value
       
   116                     value = "";
    86                 settingList.insert(item, value);
   117                 settingList.insert(item, value);
    87                 }
   118                 }
    88             }
   119             }
    89         //end while.
   120         //end while.
    90         }
   121         }
   110         in << "\r\n";
   141         in << "\r\n";
   111         }
   142         }
   112     return true;    
   143     return true;    
   113     }
   144     }
   114 
   145 
       
   146 // End of File