Exemplo n.º 1
0
        public override bool Action(string action)
        {
            bool result = base.Action(action);

            if (result)
            {
                if (action == ACTION_OSMONLINE)
                {
                    if (frmOsmMapOnline == null)
                    {
                        MapControl.MapCanvas.MapControlFactoryToUse = new MapProviders.OSMOnline.MapControlFactoryOSMOnline(Core);
                        MapControl.MapCanvas.MapControlFactoryToUse.Init();
                        frmOsmMapOnline = new MapForm(Core, action);
                        Framework.Interfaces.IPluginUIMainWindow mainPlugin = (from Framework.Interfaces.IPlugin a in Core.GetPlugin(Framework.PluginType.UIMainWindow) select a).FirstOrDefault() as Framework.Interfaces.IPluginUIMainWindow;
                        if (mainPlugin != null)
                        {
                            if (PluginSettings.Instance.DecoupledChildWindows == null || !PluginSettings.Instance.DecoupledChildWindows.Contains(action))
                            {
                                frmOsmMapOnline.MdiParent = mainPlugin.MainForm;
                            }
                        }
                        if (PluginSettings.Instance.TopMostWindows != null && PluginSettings.Instance.TopMostWindows.Contains(action))
                        {
                            frmOsmMapOnline.TopMost = true;
                        }
                    }
                    if (!frmOsmMapOnline.Visible)
                    {
                        frmOsmMapOnline.Show();
                        frmOsmMapOnline.UpdateView();
                    }
                    if (frmOsmMapOnline.WindowState == System.Windows.Forms.FormWindowState.Minimized)
                    {
                        frmOsmMapOnline.WindowState = System.Windows.Forms.FormWindowState.Normal;
                    }
                    frmOsmMapOnline.BringToFront();
                }
                else if (action == ACTION_OSMOFFLINE)
                {
                    if (frmOsmMapOffline == null)
                    {
                        MapControl.MapCanvas.MapControlFactoryToUse = new MapProviders.OSMOffline.MapControlFactoryOSMOffline(Core);
                        MapControl.MapCanvas.MapControlFactoryToUse.Init();
                        frmOsmMapOffline = new MapForm(Core, action);
                        Framework.Interfaces.IPluginUIMainWindow mainPlugin = (from Framework.Interfaces.IPlugin a in Core.GetPlugin(Framework.PluginType.UIMainWindow) select a).FirstOrDefault() as Framework.Interfaces.IPluginUIMainWindow;
                        if (mainPlugin != null)
                        {
                            if (PluginSettings.Instance.DecoupledChildWindows == null || !PluginSettings.Instance.DecoupledChildWindows.Contains(action))
                            {
                                frmOsmMapOffline.MdiParent = mainPlugin.MainForm;
                            }
                        }
                        if (PluginSettings.Instance.TopMostWindows != null && PluginSettings.Instance.TopMostWindows.Contains(action))
                        {
                            frmOsmMapOffline.TopMost = true;
                        }
                    }
                    if (!frmOsmMapOffline.Visible)
                    {
                        frmOsmMapOffline.Show();
                        frmOsmMapOffline.UpdateView();
                    }
                    if (frmOsmMapOffline.WindowState == System.Windows.Forms.FormWindowState.Minimized)
                    {
                        frmOsmMapOffline.WindowState = System.Windows.Forms.FormWindowState.Normal;
                    }
                    frmOsmMapOffline.BringToFront();
                }
                else if (action == ACTION_GOOGLEONLINE)
                {
                    if (frmGoogleOnline == null)
                    {
                        MapControl.MapCanvas.MapControlFactoryToUse = new MapProviders.Google.MapControlFactoryGoogle(Core);
                        MapControl.MapCanvas.MapControlFactoryToUse.Init();
                        frmGoogleOnline = new MapForm(Core, action);
                        Framework.Interfaces.IPluginUIMainWindow mainPlugin = (from Framework.Interfaces.IPlugin a in Core.GetPlugin(Framework.PluginType.UIMainWindow) select a).FirstOrDefault() as Framework.Interfaces.IPluginUIMainWindow;
                        if (mainPlugin != null)
                        {
                            if (PluginSettings.Instance.DecoupledChildWindows == null || !PluginSettings.Instance.DecoupledChildWindows.Contains(action))
                            {
                                frmGoogleOnline.MdiParent = mainPlugin.MainForm;
                            }
                        }
                        if (PluginSettings.Instance.TopMostWindows != null && PluginSettings.Instance.TopMostWindows.Contains(action))
                        {
                            frmGoogleOnline.TopMost = true;
                        }
                    }
                    if (!frmGoogleOnline.Visible)
                    {
                        frmGoogleOnline.Show();
                        frmGoogleOnline.UpdateView();
                    }
                    if (frmGoogleOnline.WindowState == System.Windows.Forms.FormWindowState.Minimized)
                    {
                        frmGoogleOnline.WindowState = System.Windows.Forms.FormWindowState.Normal;
                    }
                    frmGoogleOnline.BringToFront();
                }
            }
            return(result);
        }
Exemplo n.º 2
0
        public override bool Action(string action)
        {
            bool result = base.Action(action);
            if (result)
            {
                if (action == ACTION_OSMONLINE)
                {
                    if (frmOsmMapOnline == null)
                    {
                        MapControl.MapCanvas.MapControlFactoryToUse = new MapProviders.OSMOnline.MapControlFactoryOSMOnline(Core);
                        MapControl.MapCanvas.MapControlFactoryToUse.Init();
                        frmOsmMapOnline = new MapForm(Core, action);
                        Framework.Interfaces.IPluginUIMainWindow mainPlugin = (from Framework.Interfaces.IPlugin a in Core.GetPlugin(Framework.PluginType.UIMainWindow) select a).FirstOrDefault() as Framework.Interfaces.IPluginUIMainWindow;
                        if (mainPlugin != null)
                        {
                            if (PluginSettings.Instance.DecoupledChildWindows == null || !PluginSettings.Instance.DecoupledChildWindows.Contains(action))
                            {
                                frmOsmMapOnline.MdiParent = mainPlugin.MainForm;
                            }
                        }
                        if (PluginSettings.Instance.TopMostWindows != null && PluginSettings.Instance.TopMostWindows.Contains(action))
                        {
                            frmOsmMapOnline.TopMost = true;
                        }
                    }
                    if (!frmOsmMapOnline.Visible)
                    {
                        frmOsmMapOnline.Show();
                        frmOsmMapOnline.UpdateView();
                    }
                    if (frmOsmMapOnline.WindowState == System.Windows.Forms.FormWindowState.Minimized)
                    {
                        frmOsmMapOnline.WindowState = System.Windows.Forms.FormWindowState.Normal;
                    }
                    frmOsmMapOnline.BringToFront();
                }
                else if (action == ACTION_OSMOFFLINE)
                {
                    if (frmOsmMapOffline == null)
                    {
                        MapControl.MapCanvas.MapControlFactoryToUse = new MapProviders.OSMOffline.MapControlFactoryOSMOffline(Core);
                        MapControl.MapCanvas.MapControlFactoryToUse.Init();
                        frmOsmMapOffline = new MapForm(Core, action);
                        Framework.Interfaces.IPluginUIMainWindow mainPlugin = (from Framework.Interfaces.IPlugin a in Core.GetPlugin(Framework.PluginType.UIMainWindow) select a).FirstOrDefault() as Framework.Interfaces.IPluginUIMainWindow;
                        if (mainPlugin != null)
                        {
                            if (PluginSettings.Instance.DecoupledChildWindows == null || !PluginSettings.Instance.DecoupledChildWindows.Contains(action))
                            {
                                frmOsmMapOffline.MdiParent = mainPlugin.MainForm;
                            }
                        }
                        if (PluginSettings.Instance.TopMostWindows != null && PluginSettings.Instance.TopMostWindows.Contains(action))
                        {
                            frmOsmMapOffline.TopMost = true;
                        }
                    }
                    if (!frmOsmMapOffline.Visible)
                    {
                        frmOsmMapOffline.Show();
                        frmOsmMapOffline.UpdateView();
                    }
                    if (frmOsmMapOffline.WindowState == System.Windows.Forms.FormWindowState.Minimized)
                    {
                        frmOsmMapOffline.WindowState = System.Windows.Forms.FormWindowState.Normal;
                    }
                    frmOsmMapOffline.BringToFront();
                }
                else if (action == ACTION_GOOGLEONLINE)
                {
                    if (frmGoogleOnline == null)
                    {
                        MapControl.MapCanvas.MapControlFactoryToUse = new MapProviders.Google.MapControlFactoryGoogle(Core);
                        MapControl.MapCanvas.MapControlFactoryToUse.Init();
                        frmGoogleOnline = new MapForm(Core, action);
                        Framework.Interfaces.IPluginUIMainWindow mainPlugin = (from Framework.Interfaces.IPlugin a in Core.GetPlugin(Framework.PluginType.UIMainWindow) select a).FirstOrDefault() as Framework.Interfaces.IPluginUIMainWindow;
                        if (mainPlugin != null)
                        {
                            if (PluginSettings.Instance.DecoupledChildWindows == null || !PluginSettings.Instance.DecoupledChildWindows.Contains(action))
                            {
                                frmGoogleOnline.MdiParent = mainPlugin.MainForm;
                            }
                        }
                        if (PluginSettings.Instance.TopMostWindows != null && PluginSettings.Instance.TopMostWindows.Contains(action))
                        {
                            frmGoogleOnline.TopMost = true;
                        }
                    }
                    if (!frmGoogleOnline.Visible)
                    {
                        frmGoogleOnline.Show();
                        frmGoogleOnline.UpdateView();
                    }
                    if (frmGoogleOnline.WindowState == System.Windows.Forms.FormWindowState.Minimized)
                    {
                        frmGoogleOnline.WindowState = System.Windows.Forms.FormWindowState.Normal;
                    }
                    frmGoogleOnline.BringToFront();
                }

            }
            return result;
        }