+ protected Dictionary<string,string> Options;
+
+ public WebThingPlugin() {
+ string classname = this.GetType().FullName;
+
+ if (Config.PluginOptions.ContainsKey(classname)) {
+ Options = Config.PluginOptions[classname];
+ } else {
+ Options = new Dictionary<string,string>();
+ Config.PluginOptions[classname] = Options;
+ }
+ }
+
+ // Convenience function to easily save plugin configuration
+ protected void SaveConfig() {
+ if (Config.ConfigPathOut == null) return;
+
+ string plugin_name = this.GetType().FullName;
+ Config.SaveFile(plugin_name, String.Format("{0}/{1}.conf", Config.ConfigPathOut, plugin_name));
+ }
+
+ // Plugin life cycle
+ public virtual void Init(WebThing wt) {}
+ public virtual void Deinit(WebThing wt) {}
+
+ // WebView life cycle