VR-Exchange 2.2 API Documentation
appBrokerManager.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2013 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include "portalAppInitializer.h"
13 #include "xmlBrokerLauncher.h"
14 #include "ui_brokerList.h"
15 #include "brokerEditor.h"
16 
17 #include <portal/pControlMessage.h>
18 
19 #include <QtCore/QObject>
20 #include <map>
21 
22 class QMenu;
23 class QPoint;
24 class QTreeWidget;
25 class QPushButton;
26 class QTreeWidgetItem;
27 
28 namespace MAKVrExchange
29 {
30 
31  class DtPortalAppGui;
32 
38  class DT_DLL_LIBPORTALAPP DtAppBrokerManager : public QWidget
39  { Q_OBJECT;
40  public:
41 
42  enum
43  {
45  Shutdown
46  };
47 
48  public:
49 
51  DtPortalConnection* pconn );
52 
54  virtual ~DtAppBrokerManager();
55 
57  virtual void setBrokerInitLists( std::vector<DtXMLBrokerLauncher> vector );
58 
60  virtual DtString lookupBrokerName( const DtU16& brokerId ) const;
61 
63  virtual DtU16 lookupBrokerId( const DtString& brokerName ) const;
64 
67  virtual void setOneToOne( bool val );
68 
71  virtual const QTreeWidget* treeWidget() const;
72 
75  virtual QTreeWidget* treeWidget();
76 
77  signals:
78 
79  void brokerSelectedRunning( bool );
80 
81  public slots:
82 
84  virtual void brokerItemEdited( DtXMLBrokerLauncher& );
85 
87  virtual void brokerItemAdded( DtXMLBrokerLauncher& );
88 
90  virtual void brokerItemRemoved( DtXMLBrokerLauncher& );
91 
93  virtual void showBrokerInfoDialogAction();
94 
96  virtual void brokerShutdownBrokerAction();
97 
99  virtual void brokerRestartBrokerAction();
100 
102  virtual void brokerRemoveBrokerAction();
103 
105  virtual void brokerEditBrokerAction();
106 
108  virtual void brokerAddNewBrokerAction();
109 
110  protected slots:
111 
113  virtual void brokerItemDoubleClicked( QTreeWidgetItem* item );
114 
116  virtual void brokerItemRightButtonPressed( QTreeWidgetItem* item, const QPoint& point );
117 
119  virtual void brokerSelectionChanged();
120 
121  protected:
122 
125  virtual void processAddBrokerMessage( const DtBrokerStartedMessage& msg );
126 
129  virtual void processRemoveBrokerMessage( const DtBrokerExitingMessage& msg );
130 
133  virtual void processAbnormalRemoval( const DtAbnormalBrokerExitMessage& msg );
134 
136  virtual void launchBrokerForItem( QTreeWidgetItem* item );
137 
139  virtual void shutdownBrokerForItem( QTreeWidgetItem* item );
140 
142  virtual DtString createBrokerStartupCommand( const DtXMLBrokerLauncher& brokerLauncher );
143 
146  static void discoverBrokerCb( const DtBrokerStartedMessage& msg, void* usrData );
147 
150  static void removeBrokerCb( const DtBrokerExitingMessage& msg, void* usrData );
151 
154  static void abnormalRemovalCb( const DtAbnormalBrokerExitMessage& msg, void* usrData );
155 
156  virtual bool eventFilter( QObject* obj, QEvent* event );
157 
158  private:
159 
161  DtAppBrokerManager( const DtAppBrokerManager& orig );
162 
164  DtAppBrokerManager& operator = ( const DtAppBrokerManager& orig );
165 
166  protected:
167 
168  enum
169  {
170  ShutdownBroker = 1
171  } BrokerPopupMenuPosition;
172 
173  typedef std::map<DtU16, DtString> BrokerIdToNameMap;
174 
175  Ui::DtBrokerList myUi;
176 
177  std::vector<DtXMLBrokerLauncher> myBrokerLaunchers;
185 
186  };
187 
188 }

Document ID: Generated on Mon Apr 15 17:15:50 EDT 2013 from SVN revision 126154
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)