/* * vdr-menuorg - A plugin for the Linux Video Disk Recorder * Copyright (c) 2007 - 2008 Tobias Grimm * Copyright (c) 2007 Thomas Creutz * * 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. * * 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$ * */ #include "SystemMenuNode.h" #include "ChildLock.h" #include "IMenuNodeProcessor.h" #include using namespace std; SystemMenuNode::SystemMenuNode(VdrState state, string customTitle) :_state(state) { _customTitle = customTitle; } SystemMenuNode* SystemMenuNode::Clone() { return new SystemMenuNode(*this); } bool SystemMenuNode::IsHidden() { return ChildLock::IsMenuHidden(_state.Name().c_str()); } void SystemMenuNode::Process(IMenuNodeProcessor* menuNodeProcessor) { menuNodeProcessor->ProcessSystemMenuNode(this); } VdrState SystemMenuNode::State() { return _state; } void SystemMenuNode::State(VdrState newState) { _state = newState; } string SystemMenuNode::CustomTitle() { return _customTitle; } void SystemMenuNode::CustomTitle(string newCustomTitle) { _customTitle = newCustomTitle; } string SystemMenuNode::DisplayText() { if (_customTitle.empty()) { return trVDR(_state.Name().c_str()); } else { return _customTitle; } }