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
A QWidget to explore connectors from a task.
A QMainWindow for Process Builder Application.
virtual ~ProcessBuilder()
Virtual destructor.
void createDock(QWidget *widget, QDockWidget *&dockWidget, Qt::DockWidgetArea area, const std::string &dockTitle)
Function used create a new dock widget in application.
ProcessInspector * m_processInspector
Qt component to inspect each process item.
Ui::ProcessBuilderForm * m_ui
void setupMenus()
Function used to setup the menus from main window.
void onWindowInspectorDockVisibilityChanged(bool state)
void onWindowConnectorDockVisibilityChanged(bool state)
ProcessExplorerTree * m_explorerTree
Qt Component to explore process items.
void onWindowRunnerDockVisibilityChanged(bool state)
void setupUI()
Function used to setup the process builder main window.
te::process::qt::ProcessExplorerTree * getExplorerTree()
Gets process explorer tree qt component.
TaskProperty * m_taskProperty
Qt component to represents a task property explorer.
void onWindowTaskDockVisibilityChanged(bool state)
void onWindowExplorerDockVisibilityChanged(bool state)
ProcessBuilder(QWidget *parent=0)
Default constructor.
ProcessManager * m_manager
Qt class used to handle with process management.
ProcessGraphicsScene * m_scene
Qt component use to represents the process items.
ProcessRunner * m_processRunner
Qt component to run process.
ConnectorsProperty * m_connectorsProperty
Qt component to represents a task connectors explorer.
A QTreeWidget to view Process Builder items in a tree.
A Abstract QTreeWidgetItem Group of Process Builder items.
A QWidget to inspect each process items added to process.
A QObject class to handle with process management.
A QWidget to run process.
Definition: ProcessRunner.h:55
A QWidget to explore task properties.
Definition: TaskProperty.h:57
TerraLib.
#define slots
#define TEPROCESSEXPORT
Definition: Config.h:47