blob: 9bd88ed2747103cee27923c6aeb563dcee741cce (
plain)
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
|
#ifndef VIEW_H
#define VIEW_H
#include <libxml++/nodes/element.h>
#include <boost/shared_ptr.hpp>
#include <map>
#include "sourceObject.h"
#include "xmlObjectLoader.h"
#include "perRowValues.h"
class ApplicationEngine;
class _View;
typedef boost::shared_ptr<_View> View;
typedef std::map<std::string, View> Views;
class _View : public virtual _SourceObject, public PerRowValues {
public:
_View(const xmlpp::Element * p);
virtual ~_View();
virtual void execute(xmlpp::Element *, const ApplicationEngine *, const _View * parent = NULL) const = 0;
virtual Glib::ustring getCurrentValue(const Glib::ustring & id) const = 0;
const Glib::ustring recordName;
static void AddLoaders(Loaders & l, Views & vs);
protected:
void executeChildren(xmlpp::Element *, const ApplicationEngine *, const _View * parent = NULL) const;
Views subViews;
};
#endif
|