summaryrefslogtreecommitdiff
path: root/spider.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'spider.cpp')
-rw-r--r--spider.cpp72
1 files changed, 72 insertions, 0 deletions
diff --git a/spider.cpp b/spider.cpp
new file mode 100644
index 0000000..0c8be2b
--- /dev/null
+++ b/spider.cpp
@@ -0,0 +1,72 @@
+/*
+ * Spider-Arachnid: A plugin for the Video Disk Recorder
+ *
+ * Copyright (C) 2005-2007, Thomas Günther <tom@toms-cafe.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
+ * (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: spider.cpp 94 2007-09-20 23:43:48Z tom $
+ */
+
+#include "spider.h"
+#include "game.h"
+#include "setup.h"
+#include "i18n.h"
+#include <vdr/plugin.h>
+
+
+static const char* VERSION = "0.1.4";
+static const char* DESCRIPTION = "Spider Arachnid - the best patience game";
+static const char* MAINMENUENTRY = "Spider Arachnid";
+
+
+/** --- class SpiderPlugin ------------------------------------------------- **/
+
+class SpiderPlugin : public cPlugin
+{
+private:
+ SpiderSetup setup;
+public:
+ virtual const char* Version() { return VERSION; }
+ virtual const char* Description() { return tr(DESCRIPTION); }
+ virtual bool Start();
+ virtual const char* MainMenuEntry() { return tr(MAINMENUENTRY); }
+ virtual cOsdObject* MainMenuAction();
+ virtual cMenuSetupPage* SetupMenu();
+ virtual bool SetupParse(const char* name, const char* value);
+};
+
+bool SpiderPlugin::Start()
+{
+ RegisterI18n(Phrases);
+ return true;
+}
+
+cOsdObject* SpiderPlugin::MainMenuAction()
+{
+ return new SpiderGame(setup, ConfigDirectory(Name()));
+}
+
+cMenuSetupPage* SpiderPlugin::SetupMenu()
+{
+ return new SpiderSetupMenu(setup);
+}
+
+bool SpiderPlugin::SetupParse(const char* name, const char* value)
+{
+ return setup.parse(name, value);
+}
+
+VDRPLUGINCREATOR(SpiderPlugin); // Don't touch this!