Bladeren bron

Use QSettings instead of hack to set Qt Assistant page.

git-svn-id: file:///var/svn/tigccpp/trunk@1002 9552661e-59e3-4036-b4f2-dbe53926924f
kevinkofler 17 jaren geleden
bovenliggende
commit
5c7107d305
1 gewijzigde bestanden met toevoegingen van 7 en 19 verwijderingen
  1. 7 19
      ktigcc/ktigcc.cpp

+ 7 - 19
ktigcc/ktigcc.cpp

@@ -25,6 +25,7 @@
 #include <qstring.h>
 #include <qimage.h>
 #include <qdir.h>
+#include <QSettings>
 #include <kapplication.h>
 #include <kcmdlineargs.h>
 #include <kaboutdata.h>
@@ -219,25 +220,12 @@ void clear_temp_dir(void)
 
 void force_qt_assistant_page(int n)
 {
-  QString fname=QDir::homePath()+"/.qt/qt_assistantrc";
-  FILE *f=fopen(fname,"r+b");
-  if (!f) f=fopen(fname,"w+b");
-  if (!f) exit(1);
-  fseek(f,0,SEEK_END);
-  size_t flen=ftell(f);
-  fseek(f,0,SEEK_SET);
-  char buffer[flen+1];
-  memset(buffer,0,flen+1);
-  if (fread(buffer,1,flen,f)<flen) exit(1);
-  char *p=strstr(buffer,"SideBarPage=");
-  if (p) {
-    fseek(f,p-buffer+12,SEEK_SET);
-    fputc('0'+n,f);
-  } else {
-    fseek(f,0,SEEK_END);
-    fprintf(f,"\n\n[3.3]\nSideBarPage=%d\n",n);
-  }
-  fclose(f);
+  QSettings assistantSettings("Trolltech","Assistant");
+  const char *qtVersion=qVersion();
+  int qtMajor, qtMinor;
+  sscanf(qtVersion, "%d.%d", &qtMajor, &qtMinor);
+  assistantSettings.beginGroup(QString("%1.%2").arg(qtMajor).arg(qtMinor));
+  assistantSettings.setValue("SideBarPage",n);
 }
 
 const char *lookup_doc_keyword(const char *keyword)