コード例 #1
0
        // -------------------------------------------
        //  STOP
        // -------------------------------------------

        public void Dispose()
        {
            ready = false;
            AddOnManager.GetInstance().Dispose();
            Log("S.A.R.A.H.", "Dispose all resources");
            Log("==========================================");
            System.Diagnostics.Debug.Flush();
        }
コード例 #2
0
        // -------------------------------------------
        //  LOG MANAGER
        // ------------------------------------------

        public void Log(string msg)
        {
            if (!ready)
            {
                System.Diagnostics.Debug.WriteLine(msg);
            }
            AddOnManager.GetInstance().Log(msg);
        }
コード例 #3
0
 public void Error(string ctxt, Exception ex)
 {
     if (!ready)
     {
         System.Diagnostics.Debug.WriteLine("[" + ctxt + "] " + ex.Message);
     }
     AddOnManager.GetInstance().Error(ctxt, ex);
 }
コード例 #4
0
 public void Error(string ctxt, string msg)
 {
     if (!ready)
     {
         System.Diagnostics.Debug.WriteLine("[" + ctxt + "] " + msg);
     }
     AddOnManager.GetInstance().Error(ctxt, msg);
 }
コード例 #5
0
 public static AddOnManager GetInstance()
 {
     if (manager == null)
     {
         manager = new AddOnManager();
     }
     return(manager);
 }
コード例 #6
0
        // -------------------------------------------
        //  SETUP
        // -------------------------------------------

        public void Setup()
        {
            Log("SARAH", "Setup...");

            // Setup addons
            AddOnManager.GetInstance().Setup();

            ready = true;
        }
コード例 #7
0
        // -------------------------------------------
        //  START
        // -------------------------------------------

        public void Start()
        {
            Log("SARAH", "Starting...");
            var path = Environment.CurrentDirectory;

            // Load addon configuration
            ConfigManager.GetInstance().LoadAddOns("AddOns");

            // Load custom configuration
            ConfigManager.GetInstance().Load("custom.ini", true);
            // ConfigManager.GetInstance().Save("custom.ini.test");

            // Load libraries
            AddOnManager.GetInstance().Load("Libraries");

            // Load addons
            AddOnManager.GetInstance().LoadAddOns("AddOns");

            // Start addons
            Environment.CurrentDirectory = path;
            AddOnManager.GetInstance().Start();
        }
コード例 #8
0
        // Create menu
        public ContextMenuStrip Create()
        {
            // Add the default menu options.
            ContextMenuStrip  menu = new ContextMenuStrip();
            ToolStripMenuItem item;

            // Add custom items to menu
            AddOnManager.GetInstance().HandleMenuItem(menu);

            // Separator.
            ToolStripSeparator sep;

            sep = new ToolStripSeparator();
            menu.Items.Add(sep);

            // Exit.
            item        = new ToolStripMenuItem();
            item.Text   = "Exit";
            item.Click += new System.EventHandler(Exit_Click);
            item.Image  = Resources.Exit;
            menu.Items.Add(item);

            return(menu);
        }
コード例 #9
0
 public bool Ready()
 {
     return(ready && AddOnManager.GetInstance().Ready());
 }
コード例 #10
0
 public static AddOnManager GetInstance() {
   if (manager == null) {
     manager = new AddOnManager();
   }
   return manager;
 }