summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--menuorg.dtd2
-rw-r--r--src/CommandItemSetup.cpp11
-rw-r--r--src/CommandItemSetup.h2
-rw-r--r--src/PluginItemSetup.cpp6
-rw-r--r--src/SeparatorItemSetup.cpp3
-rw-r--r--src/SubMenuItemSetup.cpp3
-rw-r--r--src/SystemItemSetup.cpp6
7 files changed, 20 insertions, 13 deletions
diff --git a/menuorg.dtd b/menuorg.dtd
index 2f1c431..085c458 100644
--- a/menuorg.dtd
+++ b/menuorg.dtd
@@ -34,7 +34,7 @@
title CDATA #IMPLIED
>
<!ELEMENT command EMPTY>
-<!ATTLIST plugin
+<!ATTLIST command
name CDATA #REQUIRED
execute CDATA #REQUIRED
confirm (yes|no) #IMPLIED
diff --git a/src/CommandItemSetup.cpp b/src/CommandItemSetup.cpp
index ed35660..125e7b2 100644
--- a/src/CommandItemSetup.cpp
+++ b/src/CommandItemSetup.cpp
@@ -25,9 +25,11 @@
cCommandItemSetup::cCommandItemSetup(CommandMenuNode* node)
:cOsdMenu(tr("Edit Command Menu Item"))
{
- _newName = node->Text();
- _newCommand = node->Command();
- _newConfirm = node->ShouldConfirm();
+ asprintf(&_newName, "%s", node->Text().c_str());
+ asprintf(&_newCommand, "%s", node->Command().c_str());
+// _newName = node->Text();
+// _newCommand = node->Command();
+ _newConfirm = (int) node->ShouldConfirm();
CreateMenuItems();
}
@@ -36,7 +38,6 @@ cCommandItemSetup::~cCommandItemSetup()
// TODO: write back the changes
free(_newName);
free(_newCommand);
- free(_newConfirm);
}
void cCommandItemSetup::CreateMenuItems()
@@ -48,7 +49,7 @@ void cCommandItemSetup::CreateMenuItems()
Add(new cMenuEditStrItem(tr("command"), _newCommand, 200, NULL));
// Add boolItem for confirm attribute
- Add(new cMenuEditBoolItem(tr("confirm"), _newConfirm));
+ Add(new cMenuEditBoolItem(tr("confirm"), &_newConfirm));
}
eOSState cCommandItemSetup::ProcessKey(eKeys Key)
diff --git a/src/CommandItemSetup.h b/src/CommandItemSetup.h
index e821349..96b4baa 100644
--- a/src/CommandItemSetup.h
+++ b/src/CommandItemSetup.h
@@ -31,7 +31,7 @@ class cCommandItemSetup : public cOsdMenu
private:
char* _newName;
char* _newCommand;
- int* _newConfirm;
+ int _newConfirm;
public:
cCommandItemSetup(CommandMenuNode* node);
diff --git a/src/PluginItemSetup.cpp b/src/PluginItemSetup.cpp
index ce91791..dbec865 100644
--- a/src/PluginItemSetup.cpp
+++ b/src/PluginItemSetup.cpp
@@ -25,8 +25,10 @@
cPluginItemSetup::cPluginItemSetup(PluginMenuNode* node)
:cOsdMenu(tr("Edit Plugin Menu Item"))
{
- _newName = node->PluginName();
- _newTitle = node->CustomTitle();
+ asprintf(&_newName, "%s", node->PluginName().c_str());
+ asprintf(&_newTitle, "%s", node->CustomTitle().c_str());
+// _newName = node->PluginName();
+// _newTitle = node->CustomTitle();
CreateMenuItems();
}
diff --git a/src/SeparatorItemSetup.cpp b/src/SeparatorItemSetup.cpp
index ff0d0ec..ce20e25 100644
--- a/src/SeparatorItemSetup.cpp
+++ b/src/SeparatorItemSetup.cpp
@@ -25,7 +25,8 @@
cSeparatorItemSetup::cSeparatorItemSetup(SeparatorMenuNode* node)
:cOsdMenu(tr("Edit Separator Menu Item"))
{
- _newTitle = node->CustomTitle();
+ asprintf(&_newTitle, "%s", node->CustomTitle().c_str());
+// _newTitle = node->CustomTitle();
CreateMenuItems();
}
diff --git a/src/SubMenuItemSetup.cpp b/src/SubMenuItemSetup.cpp
index afd7c91..804d262 100644
--- a/src/SubMenuItemSetup.cpp
+++ b/src/SubMenuItemSetup.cpp
@@ -25,7 +25,8 @@
cSubMenuItemSetup::cSubMenuItemSetup(SubMenuNode* node)
:cOsdMenu(tr("Edit Sub Menu Item"))
{
- _newName=node->Text();
+ asprintf(&_newName, "%s", node->Text().c_str());
+// _newName=node->Text();
CreateMenuItems();
}
diff --git a/src/SystemItemSetup.cpp b/src/SystemItemSetup.cpp
index d6f8ba4..6feb172 100644
--- a/src/SystemItemSetup.cpp
+++ b/src/SystemItemSetup.cpp
@@ -25,8 +25,10 @@
cSystemItemSetup::cSystemItemSetup(SystemMenuNode* node)
:cOsdMenu(tr("Edit System Menu Item"))
{
- _newName = node->Text();
- _newTitle = node->CustomTitle();
+ asprintf(&_newName, "%s", node->State().Name().c_str());
+ asprintf(&_newTitle, "%s", node->CustomTitle().c_str());
+// _newName = node->State().Name();
+// _newTitle = node->CustomTitle();
CreateMenuItems();
}