source: molecuilder/src/UIElements/UIFactory.hpp@ 3e8325

Last change on this file since 3e8325 was 3e8325, checked in by Tillmann Crueger <crueger@…>, 16 years ago

Added a central registry that allows access to actions by name.

  • Property mode set to 100644
File size: 596 bytes
Line 
1/*
2 * UIFactory.hpp
3 *
4 * Created on: Jan 5, 2010
5 * Author: crueger
6 */
7
8#ifndef UIFACTORY_HPP_
9#define UIFACTORY_HPP_
10
11class MainWindow;
12class Dialog;
13
14class UIFactory
15{
16
17public:
18 enum InterfaceTypes {Text};
19 virtual ~UIFactory();
20
21 // methods for creating UIElements
22 virtual MainWindow* makeMainWindow()=0;
23 virtual Dialog* makeDialog()=0;
24
25protected:
26 UIFactory();
27
28// singleton stuff
29private:
30 static UIFactory *theFactory;
31
32public:
33 static void makeUserInterface(InterfaceTypes type);
34 static UIFactory* get();
35 static void purgeInstance();
36};
37
38#endif /* UIFACTORY_HPP_ */
Note: See TracBrowser for help on using the repository browser.