}
}
+ // 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) {}
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);
+ }
}