My favorites | Sign in
Project Logo
                
Search
for
Updated Sep 29, 2008 by simpledotnet
Labels: Phase-Implementation
PluginIHost  
IHost interface of SAE Plugin

SimpleAssemblyExplorer.Plugin.IHost

 using System;
using System.Collections.Generic;
using System.Collections;
using System.Text;

namespace SimpleAssemblyExplorer.Plugin
{
    public interface IHost
    {
        /// <summary>
        /// Plugin directory
        /// </summary>
        string PluginDir { get; }

        /// <summary>
        /// Set information shown on status bar
        /// </summary>
        /// <param name="info">Information to be shown on status bar</param>
        void SetStatusText(string info);
        
        /// <summary>
        /// Set information shown on status bar
        /// </summary>
        /// <param name="info">Information to be shown on status bar</param>
        /// <param name="doEvents">whether to call Application.DoEvents</param>
        void SetStatusText(string info, bool doEvents);

        /// <summary>
        /// Initialize progress bar
        /// </summary>
        /// <param name="min">minimum value, default is 0</param>
        /// <param name="max">maximum value, default is 100</param>
        void InitProgress(int min, int max);

        /// <summary>
        /// Set current progress 
        /// </summary>
        /// <param name="val">progress value</param>
        /// <remarks>
        /// Val will be changed to minimum value if it's less than minimum value,
        /// and to maximum value if it's greater than maximum value.
        /// If val equals to minimum value, progress bar is shown, 
        /// if val equals to maximum value, progress bar is hidden.
        /// </remarks>
        void SetProgress(int val);

        /// <summary>
        /// Set current progress 
        /// </summary>
        /// <param name="val">progress value</param>
        /// <param name="doEvents">whether to call Application.DoEvents</param>
        /// <remarks>
        /// Val will be changed to minimum value if it's less than minimum value,
        /// and to maximum value if it's greater than maximum value.
        /// If val equals to minimum value, progress bar is shown, 
        /// if val equals to maximum value, progress bar is hidden.
        /// </remarks>
        void SetProgress(int val, bool doEvents);

        /// <summary>
        /// Reset progress bar to default state
        /// </summary>
        /// <remarks>
        /// Minimum value will be set to 0 and maximum value will be set to 100.
        /// And Visible will be set to false.
        /// </remarks>
        void ResetProgress();

        /// <summary>
        /// Add property to Settings
        /// </summary>
        /// <param name="propertyName"></param>
        /// <param name="defaultValue"></param>
        /// <param name="propertyType"></param>
        /// <returns></returns>
        bool AddProperty(string propertyName, object defaultValue, Type propertyType);

        /// <summary>
        /// Remove property from Settings
        /// </summary>
        /// <param name="propertyName"></param>
        void RemoveProperty(string propertyName);

        /// <summary>
        /// Set property value
        /// </summary>
        /// <param name="propertyName"></param>
        /// <param name="value"></param>
        void SetPropertyValue(string propertyName, object value);

        /// <summary>
        /// Get property value
        /// </summary>
        /// <param name="propertyName"></param>
        /// <returns></returns>
        object GetPropertyValue(string propertyName);

        /// <summary>
        /// Add a directory to assembly lookup directory list
        /// </summary>
        /// <param name="dir">full path</param>
        void AddAssemblyResolveDir(string dir);

        /// <summary>
        /// Remove a directory from assembly lookup directory list
        /// </summary>
        /// <param name="dir">full path</param>
        void RemoveAssemblyResolveDir(string dir);
    }
}

Sign in to add a comment
Hosted by Google Code