ProcessBuilder.h
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Lesser General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file terralib/process/qt/ProcessBuilder.h
22 
23  \brief A QMainWindow for Process Builder Application.
24 */
25 
26 #ifndef __TERRALIB_PROCESS_QT_INTERNAL_PROCESSBUILDER_H
27 #define __TERRALIB_PROCESS_QT_INTERNAL_PROCESSBUILDER_H
28 
29 #include "../Config.h"
30 
31 // Qt Includes
32 #include <QDockWidget>
33 #include <QMainWindow>
34 
35 namespace Ui {
36  class ProcessBuilderForm;
37 }
38 
39 namespace te
40 {
41  namespace process
42  {
43  namespace qt
44  {
45  class ConnectorsProperty;
46  class ProcessExplorerTree;
47  class ProcessGraphicsScene;
48  class ProcessInspector;
49  class ProcessManager;
50  class ProcessRunner;
51  class TaskProperty;
52 
53  /*!
54  \class ProcessBuilder
55 
56  \brief A QMainWindow for Process Builder Application.
57 
58  */
59  class TEPROCESSEXPORT ProcessBuilder : public QMainWindow
60  {
61  Q_OBJECT
62 
63  public:
64 
65  /*! \brief Default constructor. */
66  ProcessBuilder(QWidget* parent = 0);
67 
68  /*! \brief Virtual destructor. */
69  virtual ~ProcessBuilder();
70 
71  public:
72 
73  /*! \brief Gets process explorer tree qt component. */
75 
76  protected:
77 
78  /*!
79  \brief Function used to setup the process builder main window.
80  */
81  void setupUI();
82 
83  /*!
84  \brief Function used to setup the menus from main window.
85  */
86  void setupMenus();
87 
88  /*!
89  \brief Function used create a new dock widget in application
90  */
91  void createDock(QWidget* widget, QDockWidget*& dockWidget, Qt::DockWidgetArea area, const std::string& dockTitle);
92 
93  protected slots:
94 
96 
97 
99 
101 
103 
105 
107 
109 
111 
113 
115 
117 
119 
121 
123 
125 
127 
128  protected:
129 
130  ConnectorsProperty* m_connectorsProperty; //!< Qt component to represents a task connectors explorer.
131  ProcessGraphicsScene* m_scene; //!< Qt component use to represents the process items.
132  ProcessExplorerTree* m_explorerTree; //!< Qt Component to explore process items.
133  ProcessInspector* m_processInspector; //!< Qt component to inspect each process item.
134  ProcessManager* m_manager; //!< Qt class used to handle with process management.
135  ProcessRunner* m_processRunner; //!< Qt component to run process.
136  TaskProperty* m_taskProperty; //!< Qt component to represents a task property explorer.
137 
138  QDockWidget* m_explorerDock;
139  QDockWidget* m_inspectorDock;
140  QDockWidget* m_taskPropertyDock;
142  QDockWidget* m_processRunnerDock;
143 
149 
150  private:
151  Ui::ProcessBuilderForm* m_ui;
152  };
153  }
154  }
155 }
156 
157 #endif // __TERRALIB_PROCESS_QT_INTERNAL_PROCESSBUILDER_H
te::process::qt::ProcessRunner
A QWidget to run process.
Definition: ProcessRunner.h:55
te::process::qt::ProcessManager
A QObject class to handle with process management.
Definition: ProcessManager.h:57
te
TerraLib.
Definition: AddressGeocodingOp.h:52
te::process::qt::ProcessBuilder::m_windowInspectorDock
QAction * m_windowInspectorDock
Definition: ProcessBuilder.h:145
te::process::qt::ProcessBuilder::createDock
void createDock(QWidget *widget, QDockWidget *&dockWidget, Qt::DockWidgetArea area, const std::string &dockTitle)
Function used create a new dock widget in application.
te::process::qt::ProcessBuilder::sceneitemSelectionChanged
void sceneitemSelectionChanged()
te::process::qt::ProcessBuilder::onWindowExplorerDockVisibilityChanged
void onWindowExplorerDockVisibilityChanged(bool state)
te::process::qt::ProcessBuilder::onProjectResetTriggered
void onProjectResetTriggered()
te::process::qt::ProcessBuilder::m_connectorsProperty
ConnectorsProperty * m_connectorsProperty
Qt component to represents a task connectors explorer.
Definition: ProcessBuilder.h:130
te::process::qt::ProcessBuilder::~ProcessBuilder
virtual ~ProcessBuilder()
Virtual destructor.
te::process::qt::ProcessBuilder::m_processInspector
ProcessInspector * m_processInspector
Qt component to inspect each process item.
Definition: ProcessBuilder.h:133
te::process::qt::ProcessExplorerTree
A QTreeWidget to view Process Builder items in a tree.
Definition: ProcessExplorerTree.h:47
te::process::qt::ConnectorsProperty
A QWidget to explore connectors from a task.
Definition: ConnectorsProperty.h:55
te::process::qt::ProcessBuilder::m_processRunnerDock
QDockWidget * m_processRunnerDock
Definition: ProcessBuilder.h:142
te::process::qt::ProcessBuilder::m_windowConnectorDock
QAction * m_windowConnectorDock
Definition: ProcessBuilder.h:147
te::process::qt::ProcessGraphicsScene
A Abstract QTreeWidgetItem Group of Process Builder items.
Definition: ProcessGraphicsScene.h:58
te::process::qt::ProcessBuilder::m_inspectorDock
QDockWidget * m_inspectorDock
Definition: ProcessBuilder.h:139
te::process::qt::ProcessBuilder::m_explorerTree
ProcessExplorerTree * m_explorerTree
Qt Component to explore process items.
Definition: ProcessBuilder.h:132
te::process::qt::ProcessBuilder::m_processRunner
ProcessRunner * m_processRunner
Qt component to run process.
Definition: ProcessBuilder.h:135
te::process::qt::ProcessBuilder::onProjectValidateTriggered
void onProjectValidateTriggered()
te::process::qt::ProcessBuilder::m_taskProperty
TaskProperty * m_taskProperty
Qt component to represents a task property explorer.
Definition: ProcessBuilder.h:136
te::process::qt::ProcessBuilder::setupMenus
void setupMenus()
Function used to setup the menus from main window.
te::process::qt::ProcessBuilder
A QMainWindow for Process Builder Application.
Definition: ProcessBuilder.h:60
te::process::qt::ProcessBuilder::setupUI
void setupUI()
Function used to setup the process builder main window.
te::process::qt::ProcessBuilder::getExplorerTree
te::process::qt::ProcessExplorerTree * getExplorerTree()
Gets process explorer tree qt component.
Ui
Definition: ConfigInputAddressDialog.h:44
te::process::qt::ProcessBuilder::onProjectRunTriggered
void onProjectRunTriggered()
te::process::qt::ProcessBuilder::onWindowRunnerDockVisibilityChanged
void onWindowRunnerDockVisibilityChanged(bool state)
te::process::qt::ProcessBuilder::onWindowInspectorDockVisibilityChanged
void onWindowInspectorDockVisibilityChanged(bool state)
te::process::qt::ProcessBuilder::m_windowRunnerDock
QAction * m_windowRunnerDock
Definition: ProcessBuilder.h:148
te::process::qt::ProcessBuilder::onFormatLeftAlignTriggered
void onFormatLeftAlignTriggered()
te::process::qt::ProcessBuilder::m_ui
Ui::ProcessBuilderForm * m_ui
Definition: ProcessBuilder.h:151
te::process::qt::ProcessBuilder::m_scene
ProcessGraphicsScene * m_scene
Qt component use to represents the process items.
Definition: ProcessBuilder.h:131
slots
#define slots
Definition: VirtualMachine.h:48
te::process::qt::ProcessBuilder::m_taskPropertyDock
QDockWidget * m_taskPropertyDock
Definition: ProcessBuilder.h:140
te::process::qt::ProcessBuilder::onFormatHCenterAlignTriggered
void onFormatHCenterAlignTriggered()
te::process::qt::ProcessBuilder::onFormatTopAlignTriggered
void onFormatTopAlignTriggered()
te::process::qt::ProcessInspector
A QWidget to inspect each process items added to process.
Definition: ProcessInspector.h:58
te::process::qt::ProcessBuilder::ProcessBuilder
ProcessBuilder(QWidget *parent=0)
Default constructor.
te::process::qt::ProcessBuilder::m_windowTaskDock
QAction * m_windowTaskDock
Definition: ProcessBuilder.h:146
te::process::qt::ProcessBuilder::m_explorerDock
QDockWidget * m_explorerDock
Definition: ProcessBuilder.h:138
TEPROCESSEXPORT
#define TEPROCESSEXPORT
Definition: Config.h:47
te::process::qt::ProcessBuilder::onFormatBottomAlignTriggered
void onFormatBottomAlignTriggered()
te::process::qt::ProcessBuilder::onWindowConnectorDockVisibilityChanged
void onWindowConnectorDockVisibilityChanged(bool state)
te::process::qt::ProcessBuilder::m_windowExplorerDock
QAction * m_windowExplorerDock
Definition: ProcessBuilder.h:144
te::process::qt::ProcessBuilder::onFormatRightAlignTriggered
void onFormatRightAlignTriggered()
te::process::qt::ProcessBuilder::m_connectorPropertyDock
QDockWidget * m_connectorPropertyDock
Definition: ProcessBuilder.h:141
te::process::qt::TaskProperty
A QWidget to explore task properties.
Definition: TaskProperty.h:57
te::process::qt::ProcessBuilder::onHelpAboutTriggered
void onHelpAboutTriggered()
te::process::qt::ProcessBuilder::onFormatVCenterAlignTriggered
void onFormatVCenterAlignTriggered()
te::process::qt::ProcessBuilder::onWindowTaskDockVisibilityChanged
void onWindowTaskDockVisibilityChanged(bool state)
te::process::qt::ProcessBuilder::m_manager
ProcessManager * m_manager
Qt class used to handle with process management.
Definition: ProcessBuilder.h:134