KVIrc  4.9.2
DeveloperAPIs
KviParameterList.h
Go to the documentation of this file.
1 #ifndef _KVI_PARAMETERLIST_H_
2 #define _KVI_PARAMETERLIST_H_
3 //=============================================================================
4 //
5 // File : KviParameterList.h
6 // Creation date : Tue Sep 12 2000 18:00:01 by Szymon Stefanek
7 //
8 // This file is part of the KVIrc IRC client distribution
9 // Copyright (C) 2000-2010 Szymon Stefanek (pragma at kvirc dot net)
10 //
11 // This program is FREE software. You can redistribute it and/or
12 // modify it under the terms of the GNU General Public License
13 // as published by the Free Software Foundation; either version 2
14 // of the License, or (at your option) any later version.
15 //
16 // This program is distributed in the HOPE that it will be USEFUL,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19 // See the GNU General Public License for more details.
20 //
21 // You should have received a copy of the GNU General Public License
22 // along with this program. If not, write to the Free Software Foundation,
23 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
24 //
25 //=============================================================================
26 
27 #include "kvi_settings.h"
28 #include "KviHeapObject.h"
29 #include "KviCString.h"
30 #include "KviPointerList.h"
31 
32 #include <QRect>
33 #include <QPoint>
34 #include <QSize>
35 
36 class KVILIB_API KviParameterList : public KviPointerList<KviCString>, public KviHeapObject
37 {
38 public:
47  KviParameterList(const char * paramBuffer);
48  virtual ~KviParameterList();
49 
50 private:
52 
53 public:
54  void init() { (void)first(); };
55  // These functions have to be called when the
56  // current() points to the FIRST item that has
57  // to be interpreted as Bool,Int,UInt,Rect etc...
58  // At the call exit the current() points
59  // to the first item that was NOT used by the call
60  bool getBool();
61  int getInt(bool * bOk = 0);
62  unsigned int getUInt(bool * bOk = 0);
63  QRect getRect(bool * bOk = 0);
64  QPoint getPoint(bool * bOk = 0);
65  QSize getSize(bool * bOk = 0);
66  KviCString * safeFirst();
67  KviCString * safeNext();
68  const char * safeFirstParam() { return safeFirst()->ptr(); };
69  const char * safeNextParam() { return safeNext()->ptr(); };
70 };
71 
72 #endif //_KVI_PARAMETERLIST_H_
Definition: KviHeapObject.h:124
const char * safeFirstParam()
Definition: KviParameterList.h:68
Definition: KviCString.h:105
m_pDataList first()
Definition: KviParameterList.h:36
void init()
Definition: KviParameterList.h:54
const char * safeNextParam()
Definition: KviParameterList.h:69
KviCString m_szEmpty
Definition: KviParameterList.h:51
C++ Template based double linked pointer list class.
A template double linked list of pointers.
Definition: KviPointerList.h:55
Heap Object.
This file contains compile time settings.
#define KVILIB_API
Definition: kvi_settings.h:125