OpenCOVER
coVrbMenu.h
Go to the documentation of this file.
1/* This file is part of COVISE.
2
3 You can use it under the terms of the GNU Lesser General Public License
4 version 2.1 or later, see lgpl-2.1.txt.
5
6 * License: LGPL 2+ */
7
8#ifndef COVRBMENU_H
9#define COVRBMENU_H
10
11
12#include "ui/Owner.h"
13
14#include <vrb/SessionID.h>
15
16#include <string>
17#include <vector>
18namespace vrb
19{
20class SessionID;
21}
22namespace opencover {
23namespace ui
24{
25class Action;
26class EditField;
27class Menu;
28class Group;
29class SelectionList;
30class Slider;
31class FileBrowser;
32}
33class VrbMenu;
34
35class VrbMenu : public ui::Owner
36{
37private:
38 const std::string noSavedSession = "nothing";
39 ui::Group *m_sessionGroup;
40 ui::Group *m_ioGroup;
41 ui::EditField *m_newSessionEf;
42 ui::Action *m_newSessionBtn;
43 ui::SelectionList *m_sessionsSl, *m_remoteLauncher;
44 ui::FileBrowser *m_saveSession, *m_loadSession;
45 std::vector<std::string> m_savedRegistries;
46 std::vector<vrb::SessionID> m_availiableSessions;
47
48 void saveSession(const std::string &file);
49 void loadSession(const std::string &filename);
50 void requestNewSession(const std::string & name);
51 void selectSession(int id);
52
53public:
56 void updateState(bool state);
57 void updateSessions(const std::vector<vrb::SessionID> &sessions);
59 void setCurrentSession(const vrb::SessionID &session);
60 ~VrbMenu() = default;
61};
63
64
65}
66#endif
Definition: ARToolKit.h:33
int getRemoteLauncherClientID(int index)
Definition: coTabletUI.h:59
Definition: coVrbMenu.h:36
void updateRemoteLauncher()
void updateState(bool state)
void updateSessions(const std::vector< vrb::SessionID > &sessions)
void setCurrentSession(const vrb::SessionID &session)