6
#include "menuitemsmanager.h"
9
WX_DECLARE_LIST(cbTool, ToolsList);
16
class CodeBlocksEvent;
18
class ToolsManager : public Mgr<ToolsManager>, public wxEvtHandler
21
friend class Mgr<ToolsManager>;
22
friend class Manager; // give Manager access to our private members
23
void CreateMenu(wxMenuBar* menuBar);
24
void ReleaseMenu(wxMenuBar* menuBar);
25
void AddTool(const cbTool* tool, bool save = true);
26
void InsertTool(int position, const cbTool* tool, bool save = true);
27
void RemoveToolByIndex(int index);
28
cbTool* GetToolByMenuId(int id);
29
cbTool* GetToolByIndex(int index);
30
int GetToolsCount() const { return m_Tools.GetCount(); }
31
void BuildToolsMenu(wxMenu* menu);
32
void OnToolClick(wxCommandEvent& event);
33
void OnIdle(wxIdleEvent& event);
34
void OnToolStdOutput(CodeBlocksEvent& event);
35
void OnToolErrOutput(CodeBlocksEvent& event);
36
void OnToolTerminated(CodeBlocksEvent& event);
37
void OnConfigure(wxCommandEvent& event);
41
void DoRemoveTool(ToolsList::Node* node);
43
bool Execute(const cbTool* tool);
48
MenuItemsManager m_ItemsManager;
50
PipedProcess* m_pProcess;
56
#endif // TOOLSMANAGER_H