File: confighandler.cpp

package info (click to toggle)
kdegraphics 2%3A980312-3
  • links: PTS
  • area: contrib
  • in suites: hamm
  • size: 6,168 kB
  • ctags: 5,778
  • sloc: ansic: 26,607; cpp: 21,205; sh: 5,224; makefile: 1,651; perl: 108
file content (128 lines) | stat: -rw-r--r-- 3,015 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
/////////////////////////////////
//
// confighandler.cpp -- handles entries to read/write in kviewrc
//
// Martin Hartig

#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include <stdio.h>

#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif

#include <kapp.h>
#include <kconfig.h>
#include <qstring.h>

#include "confighandler.h"


extern KApplication *theApp;

int KVConfigHandler::cacheSize=1024;
int KVConfigHandler::delay=1000;
int KVConfigHandler::frameSizeX=250;
int KVConfigHandler::frameSizeY=300;
KToolBar::BarPosition KVConfigHandler::toolbar1pos=KToolBar::Top;
KToolBar::BarPosition KVConfigHandler::toolbar2pos=KToolBar::Top;



void KVConfigHandler::readConfigEntries()
{
  KConfig *config;
  QString str;
  config = theApp->getConfig();
 
  config->setGroup("General");

  str = config->readEntry("CacheSize");
  if ( !str.isNull() ) cacheSize=atoi(str.data());
      
  config->setGroup("Display Manager");
  
  str = config->readEntry("Delay");
  if ( !str.isNull() ) delay=atoi(str.data());

  str = config->readEntry("FrameSizeX");
  if ( !str.isNull() ) frameSizeX=atoi(str.data());
 
  str = config->readEntry("FrameSizeY");
  if ( !str.isNull() ) frameSizeY=atoi(str.data());

  str = config->readEntry("Toolbar1Position");
  if ( !str.isNull() ) toolbar1pos=QString2BarPos(str);

  str = config->readEntry("Toolbar2Position");
  if ( !str.isNull() ) toolbar2pos=QString2BarPos(str); 

}

void KVConfigHandler::writeConfigEntries()
{
  KConfig *config;
  QString str;
  config = theApp->getConfig();
  KVConfigHandler handler;

  config->setGroup("General");
  str.sprintf("%d",cacheSize);
  config->writeEntry("CacheSize",str);

  config->setGroup("Display Manager");
  str.sprintf("%d",delay);
  config->writeEntry("Delay",str);
  str.sprintf("%d",frameSizeX);
  config->writeEntry("FrameSizeX",str);
  str.sprintf("%d",frameSizeY);
  config->writeEntry("FrameSizeY",str);
  
  config->writeEntry("Toolbar1Position",BarPos2QString(toolbar1pos));
  config->writeEntry("Toolbar2Position",BarPos2QString(toolbar2pos));

  config->sync();
}


QString KVConfigHandler::BarPos2QString(KToolBar::BarPosition aKTBPos)
{
  QString aQString;
  switch (aKTBPos)
    {
    case KToolBar::Top: aQString = "Top"; 
      break;
    case KToolBar::Bottom: aQString = "Bottom";
      break;
    case KToolBar::Left: aQString = "Left";
      break;
    case KToolBar::Right: aQString = "Right";
      break;
    default: aQString = "Floating";
    }
  return aQString;
}

KToolBar::BarPosition KVConfigHandler::QString2BarPos(QString aQString)
{
  KToolBar::BarPosition tbpos;
  tbpos = KToolBar::Right;

  if (aQString=="Top")      tbpos = KToolBar::Top;
  if (aQString=="Bottom")   tbpos = KToolBar::Bottom;
  if (aQString=="Left")     tbpos = KToolBar::Left;
  if (aQString=="Right")    tbpos = KToolBar::Right;
  if (aQString=="Floating") tbpos = KToolBar::Floating;
  
  return tbpos;
}



void KVConfigHandler::printConfigEntries()
{
  printf("%d %d %d %d\n", cacheSize, delay, frameSizeX, frameSizeY);
}