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
RevLine 
[83afe0]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
[07d2cd]13#include "Actions/ActionRegistry.hpp"
[495a53]14#include "Actions/CmdAction/HelpAction.hpp"
[e62daa]15#include "Actions/CmdAction/VersionAction.hpp"
[495a53]16#include "Actions/ParserAction/LoadXyzAction.hpp"
17#include "Actions/ParserAction/SaveXyzAction.hpp"
[07d2cd]18#include "CommandLineParser.hpp"
[495a53]19
[83afe0]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
[495a53]25CommandLineWindow::CommandLineWindow()
[83afe0]26{
[495a53]27 // create and register all command line callable actions
[e62daa]28 populateAtomActions();
29 populateCmdActions();
30 populateFragmentationActions();
31 populateMoleculeActions();
[495a53]32 populateParserActions();
[e62daa]33 populateTesselationActions();
[83afe0]34
35 // Add status indicators etc...
36 statusIndicator = new CommandLineStatusIndicator();
37}
38
39CommandLineWindow::~CommandLineWindow()
40{
41 delete statusIndicator;
42}
43
44void CommandLineWindow::display() {
[07d2cd]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 }
[83afe0]52}
[495a53]53
[e62daa]54void CommandLineWindow::populateAtomActions()
55{
56}
57
58void CommandLineWindow::populateCmdActions()
[495a53]59{
[ae8b90]60 new CommandLineHelpAction();
[e62daa]61 new CommandLineVersionAction();
62}
63
64void CommandLineWindow::populateFragmentationActions()
65{
66}
67
68void CommandLineWindow::populateMoleculeActions()
69{
70}
71
72void CommandLineWindow::populateParserActions()
73{
[495a53]74 new ParserLoadXyzAction();
75 new ParserSaveXyzAction();
76}
77
[e62daa]78void CommandLineWindow::populateTesselationActions()
79{
80}
81
Note: See TracBrowser for help on using the repository browser.