[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[paragui-cvs] CVS: paragui/include pgxmllayoutloader.h,NONE,1.1 Makefile
From: |
Alexander Pipelka <address@hidden> |
Subject: |
[paragui-cvs] CVS: paragui/include pgxmllayoutloader.h,NONE,1.1 Makefile.am,1.9,1.10 |
Date: |
Thu, 27 Jun 2002 10:37:14 -0400 |
Update of /cvsroot/paragui/paragui/include
In directory subversions:/tmp/cvs-serv16607/include
Modified Files:
Makefile.am
Added Files:
pgxmllayoutloader.h
Log Message:
added new xml layoutloader framework (not finished)
--- NEW FILE ---
#ifndef PG_LAYOUTLOADER_H
#define PG_LAYOUTLOADER_H
#include "pgsignals.h"
#include <string>
#include <map>
typedef enum {
DOC,
LAYOUT,
HEAD,
BODY
} PG_XML_SECTION;
class PG_XMLTagList : public std::map<std::string, std::string> {
public:
PG_XMLTagList(const char** atts);
};
class PG_XMLTag {
public:
PG_XMLTag(const char* n = NULL, const char** a = NULL, PG_XML_SECTION
sec = DOC);
void Log();
std::string name;
PG_XMLTagList taglist;
PG_XML_SECTION section;
};
class PG_XMLLayoutLoaderBase {
public:
bool Load(PG_Widget* parent, const char* filename);
PG_Signal1<PG_XMLTag&> sigStartTag;
PG_Signal1<PG_XMLTag&> sigEndTag;
private:
static void XMLStartDoc(void *userData, const char *name, const char
**atts);
static void XMLEndDoc(void *userData, const char *name);
};
template<class H>
class PG_XMLLayoutLoaderHolder : public PG_XMLLayoutLoaderBase {
private:
H executor;
public:
PG_XMLLayoutLoaderHolder() {
sigStartTag.connect(slot(executor, &H::handleStartTag));
sigEndTag.connect(slot(executor, &H::handleEndTag));
}
};
class PG_XMLBasicExecutor : public SigC::Object {
public:
bool handleStartTag(PG_XMLTag& tag);
bool handleEndTag(PG_XMLTag& tag);
};
class PG_XMLLayoutLoader : public PG_XMLLayoutLoaderHolder<PG_XMLBasicExecutor>
{
};
#endif // PG_LAYOUTLOADER_H
Index: Makefile.am
===================================================================
RCS file: /cvsroot/paragui/paragui/include/Makefile.am,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -r1.9 -r1.10
*** Makefile.am 26 Jun 2002 11:22:17 -0000 1.9
--- Makefile.am 27 Jun 2002 14:37:11 -0000 1.10
***************
*** 55,59 ****
pgfilelist.h \
pgsingleton.h \
! pgfactory.h
EXTRA_DIST = \
--- 55,60 ----
pgfilelist.h \
pgsingleton.h \
! pgfactory.h \
! pgxmllayoutloader.h
EXTRA_DIST = \
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [paragui-cvs] CVS: paragui/include pgxmllayoutloader.h,NONE,1.1 Makefile.am,1.9,1.10,
Alexander Pipelka <address@hidden> <=
- Prev by Date:
[paragui-cvs] CVS: paragui/test xmlloader.cpp,NONE,1.1 Makefile.am,1.8,1.9
- Next by Date:
[paragui-cvs] CVS: paragui/src/layout pgxmllayoutloader.cpp,NONE,1.1
- Previous by thread:
[paragui-cvs] CVS: paragui/test xmlloader.cpp,NONE,1.1 Makefile.am,1.8,1.9
- Next by thread:
[paragui-cvs] CVS: paragui/src/layout pgxmllayoutloader.cpp,NONE,1.1
- Index(es):