Beispiel #1
0
        public void Register()
        {
            try
            {
                _plugin = this;
                RegisterTypes();
            }
            catch
            {
                Core.ActionManager.DisableXmlActionConfiguration(Assembly.GetExecutingAssembly());
                return;
            }

            Core.TabManager.RegisterResourceTypeTab("Notes", "Notes", new string[] { _Note, "Fragment" }, 8);

            IPluginLoader pluginLoader = Core.PluginLoader;

            pluginLoader.RegisterResourceTextProvider(_Note, this);
            pluginLoader.RegisterResourceDisplayer(_Note, this);
            pluginLoader.RegisterViewsConstructor(new NotesViewsConstructor());

            //-----------------------------------------------------------------
            //  Register Search Extensions to narrow the list of results using
            //  simple phrases in search queries: for restricting the resource
            //  type to Notes (two synonyms).
            //-----------------------------------------------------------------
            Core.SearchQueryExtensions.RegisterResourceTypeRestriction("in", "notes", "Note");
            Core.SearchQueryExtensions.RegisterResourceTypeRestriction("in", "note", "Note");

            NotesIconProvider iconProvider = new NotesIconProvider();

            Core.ResourceIconManager.RegisterResourceIconProvider(_Note, iconProvider);

            pluginLoader.RegisterResourceDeleter(_Note, new NoteDeleter());
            Core.ResourceBrowser.SetDefaultViewSettings("Notes", AutoPreviewMode.AllItems, true);
        }