DEADSOFTWARE

Reduce boilerplate for BlackBox Types and add some javadoc.
[odcread.git] / fold.h
1 #ifndef _FOLD_H_
2 #define _FOLD_H_
4 #include <oberon.h>
5 #include <typeregister.h>
6 #include <store.h>
8 namespace odc {
10 class View : public Store {
11 private:
12 static const TypeProxy<View, Store> PROXY;
14 public:
15 static const std::string TYPENAME;
16 virtual const std::string &getTypeName() const;
18 View(INTEGER id);
19 virtual void internalize(Reader &reader);
20 };
22 class Fold : public View {
23 private:
24 static const TypeProxy<Fold, View> PROXY;
26 Store *d_hidden;
27 SHORTCHAR *d_label;
28 bool d_collapsed;
30 public:
31 static const std::string TYPENAME;
32 virtual const std::string &getTypeName() const;
34 Fold(INTEGER id);
35 virtual void internalize(Reader &reader);
37 virtual std::string toString();
38 virtual void accept(Visitor &visitor) const;
39 };
41 }
43 #endif // _FOLD_H_