neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
i_ide.hpp
Go to the documentation of this file.
1// i_ide.hpp
2/*
3 neoGFX Design Studio
4 Copyright(C) 2021 Leigh Johnston
5
6 This program is free software: you can redistribute it and / or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#pragma once
21
25
27{
28 namespace id
29 {
30 uuid constexpr MenuBar{ 0x8e46be79, 0x7a87, 0x403b, 0x9c5f, { 0xb5, 0xc0, 0x3e, 0x2b, 0xb8, 0x99 } };
31 uuid constexpr ToolsMenu{ 0x486a96f9, 0x397e, 0x4005, 0x80c9, { 0xa7, 0xb8, 0xeb, 0x29, 0xf5, 0x9a } };
32 }
33
35 {
36 public:
38 public:
39 virtual void add_action(uuid const& aMenuId, i_action& aAction) = 0;
40 virtual void add_sub_menu(uuid const& aMenuId, i_menu& aSubMenu) = 0;
41 public:
42 static uuid const& iid() { static uuid const sIid{ 0x7ca9ec87, 0xda34, 0x4c28, 0xb843, { 0xc1, 0x3e, 0x93, 0x81, 0xe0, 0xcf } }; return sIid; }
43 };
44}
virtual void add_action(uuid const &aMenuId, i_action &aAction)=0
virtual void add_sub_menu(uuid const &aMenuId, i_menu &aSubMenu)=0
static uuid const & iid()
Definition i_ide.hpp:42
uuid constexpr MenuBar
Definition i_ide.hpp:30
uuid constexpr ToolsMenu
Definition i_ide.hpp:31
uint32_t id