You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
2.4 KiB
67 lines
2.4 KiB
15 years ago
|
/***************************************************************************
|
||
|
KEMessage.h - description
|
||
|
-------------------
|
||
|
begin : Tue May 2 2000
|
||
|
copyright : (C) 2000 by Martin Heni
|
||
|
email : martin@heni-online.de
|
||
|
***************************************************************************/
|
||
|
|
||
|
/***************************************************************************
|
||
|
* *
|
||
|
* This program is free software; you can redistribute it and/or modify *
|
||
|
* it under the terms of the GNU General Public License as published by *
|
||
|
* the Free Software Foundation; either version 2 of the License, or *
|
||
|
* (at your option) any later version. *
|
||
|
* *
|
||
|
***************************************************************************/
|
||
|
#ifndef _KEMESSAGE_H_
|
||
|
#define _KEMESSAGE_H_
|
||
|
|
||
|
#include <string.h>
|
||
|
#include <qstring.h>
|
||
|
#include <qstrlist.h>
|
||
|
#include <qdict.h>
|
||
|
#include "KMessageEntry.h"
|
||
|
|
||
|
#define KEMESSAGE_HEAD QString(QCString("BEGIN_V1000"))
|
||
|
#define KEMESSAGE_TAIL QString(QCString("END_V1000"))
|
||
|
#define KEMESSAGE_CR QString(QCString("\n"))
|
||
|
#define KEMESSAGE_SEP QString(QCString(":::"))
|
||
|
|
||
|
class KEMessage
|
||
|
{
|
||
|
private:
|
||
|
QStrList keys;
|
||
|
QDict<KMessageEntry> dict;
|
||
|
|
||
|
protected:
|
||
|
void AddEntry(QString key,KMessageEntry *entry);
|
||
|
public:
|
||
|
QStrList *QueryKeys();
|
||
|
uint QueryNumberOfKeys();
|
||
|
void AddDataType(QString key,int size,const char *data,KGM_TYPE type);
|
||
|
void AddData(QString key,short data);
|
||
|
void AddData(QString key,long data);
|
||
|
void AddData(QString key,float data);
|
||
|
void AddData(QString key,const char *data,int size=-1);
|
||
|
bool GetData(QString key,short &s);
|
||
|
bool GetData(QString key,long &l);
|
||
|
bool GetData(QString key,float &f);
|
||
|
bool GetData(QString key,char * &c,int &size);
|
||
|
bool HasKey(QString key);
|
||
|
void Remove(QString key);
|
||
|
KGM_TYPE QueryType(QString key);
|
||
|
QString ToString();
|
||
|
QString EntryToString(char *key,KMessageEntry *entry);
|
||
|
QString StringToEntry(QString str,KMessageEntry *entry);
|
||
|
bool AddString(QString s);
|
||
|
bool AddStringMsg(QString str);
|
||
|
void RemoveAll();
|
||
|
~KEMessage();
|
||
|
KEMessage();
|
||
|
KEMessage(KEMessage &msg);
|
||
|
KEMessage &operator=(KEMessage &msg);
|
||
|
};
|
||
|
|
||
|
#endif
|