source: molecuilder/src/UIElements/CommandLineWindow.cpp@ e62daa

Last change on this file since e62daa was e62daa, checked in by Frederik Heber <heber@…>, 16 years ago

Added VersionAction.

Signed-off-by: Frederik Heber <heber@…>

  • Property mode set to 100644
File size: 1.9 KB
Line 
1/*
2 * CommandLineWindow.cpp
3 *
4 * Created on: May 8, 2010
5 * Author: heber
6 */
7
8#include <boost/bind.hpp>
9
10#include "UIElements/CommandLineWindow.hpp"
11#include "UIElements/CommandLineStatusIndicator.hpp"
12
13#include "Actions/ActionRegistry.hpp"
14#include "Actions/CmdAction/HelpAction.hpp"
15#include "Actions/CmdAction/VersionAction.hpp"
16#include "Actions/ParserAction/LoadXyzAction.hpp"
17#include "Actions/ParserAction/SaveXyzAction.hpp"
18#include "CommandLineParser.hpp"
19
20#include <iostream>
21
22using namespace std;
23
24// TODO: see what code can be moved to a base class for Graphic and CommandLine Windows
25CommandLineWindow::CommandLineWindow()
26{
27 // create and register all command line callable actions
28 populateAtomActions();
29 populateCmdActions();
30 populateFragmentationActions();
31 populateMoleculeActions();
32 populateParserActions();
33 populateTesselationActions();
34
35 // Add status indicators etc...
36 statusIndicator = new CommandLineStatusIndicator();
37}
38
39CommandLineWindow::~CommandLineWindow()
40{
41 delete statusIndicator;
42}
43
44void CommandLineWindow::display() {
45 // go through all possible actions
46 for(std::map<const std::string,Action*>::iterator ActionRunner = ActionRegistry::getInstance().getBeginIter(); ActionRunner != ActionRegistry::getInstance().getEndIter(); ActionRunner++) {
47 // check whether action is present in command line
48 if (CommandLineParser::getInstance().vm.count(ActionRunner->first)) {
49 ActionRunner->second->call();
50 }
51 }
52}
53
54void CommandLineWindow::populateAtomActions()
55{
56}
57
58void CommandLineWindow::populateCmdActions()
59{
60 new CommandLineHelpAction();
61 new CommandLineVersionAction();
62}
63
64void CommandLineWindow::populateFragmentationActions()
65{
66}
67
68void CommandLineWindow::populateMoleculeActions()
69{
70}
71
72void CommandLineWindow::populateParserActions()
73{
74 new ParserLoadXyzAction();
75 new ParserSaveXyzAction();
76}
77
78void CommandLineWindow::populateTesselationActions()
79{
80}
81
Note: See TracBrowser for help on using the repository browser.