Wtx ~ Wt Extension Library
WtxLib
Template.h
1 
2 #ifndef __WTX_SYS_LOOKUP_TEMPLATE_H___
3 #define __WTX_SYS_LOOKUP_TEMPLATE_H___
4 
5 #include <Wtx/Dbo/LookupItemTpl.h>
6 #include "Definition.h"
7 
8 
9 namespace Wtx {
10  namespace Sys {
11  namespace Lookup {
12 
13 template <class C> class Template
14 : public Wtx::Dbo::LookupItemTpl<C>
15 {
16  void init()
17  {
18  m_system.setValue( false );
19  }
20 
21  public:
22 
23  Template( const std::string & key )
25  {
26  init();
27  }
28 
29  Template( const std::string & key, const std::string & cfy )
31  {
32  init();
33  }
34 
35  Template( const Template<C> & other )
36  : Wtx::Dbo::LookupItemTpl<C>( other.keyField().value() )
37  {
38  }
39 
40  static Definition & TableDef()
41  {
42  return C::TableDef();
43  }
44 
45 
46  static void MapClass( Wt::Dbo::Session & session )
47  {
49  Wt::registerType<Template<C>>();
50  Wt::registerType< Wt::Dbo::ptr<Template<C>> > ();
51  }
52 
53  Wtx::Dbo::Field< std::string > & sort () { return m_sort ; }
54  Wtx::Dbo::Field< bool > & system () { return m_system ; }
55 
56  const Wtx::Dbo::Field< std::string > & sort () const { return m_sort ; }
57  const Wtx::Dbo::Field< bool > & system () const { return m_system ; }
58 
59  template<class Action> void persist( Action &a )
60  {
62 
63  m_sort .persist( a, &TableDef().SortFieldDef );
64  m_system .persist( a, &TableDef().SystemFieldDef );
65 
66  }
67 
68  private:
69 
71  Wtx::Dbo::Field< bool > m_system ;
72 
73 }; // endtemplate <class C> class Template
74 
75  } // endnamespace Lookup
76  } // endnamespace Sys
77 } // endnamespace Wtx
78 
79 
80 #endif // __WTX_SYS_LOOKUP_TEMPLATE_H___
81 
82 
witty extension library
Definition: Activity.h:51