From 2c9bb06516418b99c1eac957cfae9d84c9bef954 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Mon, 12 Mar 2012 21:27:29 +0200 Subject: Make finish quicktune and leave it unused (as intended) --- src/quicktune_shortcutter.h | 84 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 src/quicktune_shortcutter.h (limited to 'src/quicktune_shortcutter.h') diff --git a/src/quicktune_shortcutter.h b/src/quicktune_shortcutter.h new file mode 100644 index 000000000..a6cb71ed6 --- /dev/null +++ b/src/quicktune_shortcutter.h @@ -0,0 +1,84 @@ +/* +Minetest-c55 +Copyright (C) 2012 celeron55, Perttu Ahola + +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. +*/ + +#ifndef QVT_SHORTCUTTER_HEADER +#define QVT_SHORTCUTTER_HEADER + +#include "quicktune.h" +#include "utility.h" + +class QuicktuneShortcutter +{ +private: + std::vector m_names; + u32 m_selected_i; + std::string m_message; +public: + std::string getMessage() + { + std::string s = m_message; + m_message = ""; + if(s != "") + return std::string("[quicktune] ") + s; + return ""; + } + std::string getSelectedName() + { + if(m_selected_i < m_names.size()) + return m_names[m_selected_i]; + return "(nothing)"; + } + void next() + { + m_names = getQuicktuneNames(); + if(m_selected_i < m_names.size()-1) + m_selected_i++; + else + m_selected_i = 0; + m_message = std::string("Selected \"")+getSelectedName()+"\""; + } + void prev() + { + m_names = getQuicktuneNames(); + if(m_selected_i > 0) + m_selected_i--; + else + m_selected_i = m_names.size()-1; + m_message = std::string("Selected \"")+getSelectedName()+"\""; + } + void inc() + { + QuicktuneValue val = getQuicktuneValue(getSelectedName()); + val.relativeAdd(0.05); + m_message = std::string("\"")+getSelectedName() + +"\" = "+val.getString(); + setQuicktuneValue(getSelectedName(), val); + } + void dec() + { + QuicktuneValue val = getQuicktuneValue(getSelectedName()); + val.relativeAdd(-0.05); + m_message = std::string("\"")+getSelectedName() + +"\" = "+val.getString(); + setQuicktuneValue(getSelectedName(), val); + } +}; + +#endif + -- cgit v1.2.3