summaryrefslogtreecommitdiff
path: root/commands.h
diff options
context:
space:
mode:
Diffstat (limited to 'commands.h')
-rw-r--r--commands.h41
1 files changed, 40 insertions, 1 deletions
diff --git a/commands.h b/commands.h
index 48f32f9..2c81c6b 100644
--- a/commands.h
+++ b/commands.h
@@ -17,7 +17,7 @@
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
- * $Id: commands.h 113 2008-03-16 20:12:52Z tom $
+ * $Id: commands.h 142 2008-07-06 15:50:02Z tom $
*/
#ifndef VDR_SUDOKU_COMMANDS_H
@@ -35,6 +35,45 @@ namespace SudokuPlugin
typedef eOSState (Menu::*CommandType)();
+ //--- class SudokuPlugin::CommandList ----------------------------------------
+
+ class CommandList
+ {
+ /** List of commands - sorted for the commands menu */
+ struct List { int id; const char* text; CommandType cmd; };
+ static const struct List list[];
+
+ public:
+
+ /** Command id of a command */
+ static int id(int index);
+
+ /** Translated text of a command */
+ static const char* text(int index);
+
+ /** Command type of a command */
+ static CommandType command(int index);
+
+ /** Count of commands */
+ static int count();
+
+ /** List with translated texts of all commands */
+ static const char* const* texts();
+
+ /** Search a command id. Return default index if not found. */
+ static int id_to_index(int id, int default_index = -1);
+
+ /** Default index for the red key */
+ static int key_red_default_index();
+
+ /** Default index for the green key */
+ static int key_green_default_index();
+
+ /** Default index for the yellow key */
+ static int key_yellow_default_index();
+ };
+
+
//--- class SudokuPlugin::CommandMenu ----------------------------------------
/** Commands menu of the plugin */