X-Git-Url: http://git.bytex64.net/?a=blobdiff_plain;f=WebThingPlugin.cs;h=a201b86744060eb9f33a5040ca576c819d189d50;hb=HEAD;hp=6ad3e9db8f11bbcfc15e3087bb86ca1cb9616bd0;hpb=1b1f91b709e01680efda771cd905e460c08fb19a;p=WebThing.git diff --git a/WebThingPlugin.cs b/WebThingPlugin.cs index 6ad3e9d..a201b86 100644 --- a/WebThingPlugin.cs +++ b/WebThingPlugin.cs @@ -17,6 +17,14 @@ namespace bytex64.WebThing { } } + // 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) {} @@ -25,4 +33,12 @@ namespace bytex64.WebThing { public virtual void InitWebView(WebView wv) {} public virtual void DeinitWebView(WebView wv) {} } + + // An interface implemented by plugins that handle search queries + // (a search query is anything that doesn't look like a URI) + public interface ISearchPlugin { + // Convert a search query into a URI. If this plugin cannot + // handle the search, it should return null. + string SearchTransform(string search); + } }