1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//
// copyright : (C) 2008 by Eran Ifrah
// file name : debuggersettings.h
//
// -------------------------------------------------------------------------
// A
// _____ _ _ _ _
// / __ \ | | | | (_) |
// | / \/ ___ __| | ___| | _| |_ ___
// | | / _ \ / _ |/ _ \ | | | __/ _ )
// | \__/\ (_) | (_| | __/ |___| | || __/
// \____/\___/ \__,_|\___\_____/_|\__\___|
//
// F i l e
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
#ifndef DEBUGGER_SETTINGS_H
#define DEBUGGER_SETTINGS_H
#include "serialized_object.h"
#include "vector"
#include "codelite_exports.h"
class WXDLLIMPEXP_SDK DebuggerCmdData : public SerializedObject
{
wxString m_name;
wxString m_command;
wxString m_dbgCommand;
public:
DebuggerCmdData();
virtual ~DebuggerCmdData();
void Serialize(Archive &arhc);
void DeSerialize(Archive &arhc);
//Setters
void SetCommand(const wxString& command) {
this->m_command = command;
}
void SetName(const wxString& name) {
this->m_name = name;
}
//Getters
const wxString& GetCommand() const {
return m_command;
}
const wxString& GetName() const {
return m_name;
}
void SetDbgCommand(const wxString& dbgCommand) {
this->m_dbgCommand = dbgCommand;
}
const wxString& GetDbgCommand() const {
return m_dbgCommand;
}
};
typedef std::vector<DebuggerCmdData> DebuggerCmdDataVec;
class WXDLLIMPEXP_SDK DebuggerPreDefinedTypes : public SerializedObject
{
DebuggerCmdDataVec m_cmds;
wxString m_name;
bool m_active;
public:
DebuggerPreDefinedTypes();
virtual ~DebuggerPreDefinedTypes();
void Serialize(Archive &arch);
void DeSerialize(Archive &arch);
void SetCmds(const DebuggerCmdDataVec& cmds) {
this->m_cmds = cmds;
}
const DebuggerCmdDataVec& GetCmds() const {
return m_cmds;
}
void SetName(const wxString& name) {
this->m_name = name;
}
const wxString& GetName() const {
return m_name;
}
void SetActive(bool active) {
this->m_active = active;
}
bool IsActive() const {
return m_active;
}
wxString GetPreDefinedTypeForTypename(const wxString& expr, const wxString& name);
};
class WXDLLIMPEXP_SDK DebuggerSettingsPreDefMap : public SerializedObject
{
std::map<wxString, DebuggerPreDefinedTypes> m_cmds;
public:
DebuggerSettingsPreDefMap();
virtual ~DebuggerSettingsPreDefMap();
void Serialize(Archive &arch);
void DeSerialize(Archive &arch);
void SePreDefinedTypesMap(const std::map<wxString, DebuggerPreDefinedTypes>& cmds) {
this->m_cmds = cmds;
}
const std::map<wxString, DebuggerPreDefinedTypes>& GePreDefinedTypesMap() const {
return m_cmds;
}
/**
* @brief return the active set, in this context it means return the one with the name 'Default'
*/
DebuggerPreDefinedTypes GetActiveSet() const;
bool IsSetExist(const wxString &name);
void SetActive(const wxString &name);
};
#endif //DEBUGGER_SETTINGS_H
|