summaryrefslogtreecommitdiff
path: root/src/MenuItemDefinitionFactory.cpp
diff options
context:
space:
mode:
authorsvntobi <svntobi@cd0d6b48-d4f9-0310-940f-ab8c4eb44d3f>2008-03-22 19:52:34 +0000
committersvntobi <svntobi@cd0d6b48-d4f9-0310-940f-ab8c4eb44d3f>2008-03-22 19:52:34 +0000
commitc5dfe5834603465b7597f7828400f0d23b3bed73 (patch)
treeec821f426b2ea6cc097ba56b15dde300992fc32b /src/MenuItemDefinitionFactory.cpp
parent0ec2b0c38738bee536a4f94da5beb5638fc37f9d (diff)
downloadvdr-plugin-menuorg-c5dfe5834603465b7597f7828400f0d23b3bed73.tar.gz
vdr-plugin-menuorg-c5dfe5834603465b7597f7828400f0d23b3bed73.tar.bz2
- Using gettext / vdr 1.5.18 now
- remember cursor position when entering submenu - updated copyright header git-svn-id: file:///home/tobias/sandbox/vdr/--/vdr-pkg/vdr-pkg/menuorg/trunk@6965 cd0d6b48-d4f9-0310-940f-ab8c4eb44d3f
Diffstat (limited to 'src/MenuItemDefinitionFactory.cpp')
-rw-r--r--src/MenuItemDefinitionFactory.cpp40
1 files changed, 23 insertions, 17 deletions
diff --git a/src/MenuItemDefinitionFactory.cpp b/src/MenuItemDefinitionFactory.cpp
index f2ee3ab..d6c0744 100644
--- a/src/MenuItemDefinitionFactory.cpp
+++ b/src/MenuItemDefinitionFactory.cpp
@@ -1,20 +1,21 @@
/*
* vdr-menuorg - A plugin for the Linux Video Disk Recorder
- * Copyright (C) 2007 Thomas Creutz, Tobias Grimm
+ * Copyright (c) 2007 - 2008 Tobias Grimm <vdr@e-tobi.net>
+ * Copyright (c) 2007 Thomas Creutz <thomas.creutz@gmx.de>
*
- * 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
+ * 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.
*
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+ * details.
*
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * You should have received a copy of the GNU General Public License along with
+ * this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
* $Id$
*
@@ -33,16 +34,21 @@
using namespace std;
-IMenuItemDefinition* MenuItemDefinitionFactory::CreateFromMenuNode(MenuNode* menuNode)
+IMenuItemDefinition* MenuItemDefinitionFactory::CreateFromMenuNode(MenuNode* menuNode, bool isSelected)
{
- MenuItemDefinitionFactory* factory = new MenuItemDefinitionFactory();
+ MenuItemDefinitionFactory* factory = new MenuItemDefinitionFactory(isSelected);
menuNode->Process(factory);
return factory->_createdMenuItemDefinition;
}
+MenuItemDefinitionFactory::MenuItemDefinitionFactory(bool isSelected)
+{
+ _isSelected = isSelected;
+}
+
void MenuItemDefinitionFactory::ProcessSystemMenuNode(SystemMenuNode* node)
{
- _createdMenuItemDefinition = new OsdItemDefinition(new cOsdItem(node->DisplayText().c_str(), node->State().OSState()));
+ _createdMenuItemDefinition = new OsdItemDefinition(new cOsdItem(node->DisplayText().c_str(), node->State().OSState()), false);
}
void MenuItemDefinitionFactory::ProcessPluginMenuNode(PluginMenuNode* node)
@@ -52,15 +58,15 @@ void MenuItemDefinitionFactory::ProcessPluginMenuNode(PluginMenuNode* node)
void MenuItemDefinitionFactory::ProcessSubMenuNode(SubMenuNode* node)
{
- _createdMenuItemDefinition = new OsdItemDefinition(new cOsdItem(node->Text().c_str(), osUser1));
+ _createdMenuItemDefinition = new OsdItemDefinition(new cOsdItem(node->Text().c_str(), osUser1), _isSelected);
}
void MenuItemDefinitionFactory::ProcessCommandMenuNode(CommandMenuNode* node)
{
- _createdMenuItemDefinition = new OsdItemDefinition(new cOsdItem(node->Text().c_str(), osUser2));
+ _createdMenuItemDefinition = new OsdItemDefinition(new cOsdItem(node->Text().c_str(), osUser2), _isSelected);
}
void MenuItemDefinitionFactory::ProcessSeparatorMenuNode(SeparatorMenuNode* node)
{
- _createdMenuItemDefinition = new OsdItemDefinition(new cOsdSeparatorItem(node->DisplayText().c_str()));
+ _createdMenuItemDefinition = new OsdItemDefinition(new cOsdSeparatorItem(node->DisplayText().c_str()), false);
}