Beispiel #1
0
 private void UpdateDocumentTabs()
 {
     if (DocumentTabs.TabPages.Count != DocumentManager.Documents.Count)
     {
         DocumentTabs.TabPages.Clear();
         foreach (var doc in DocumentManager.Documents)
         {
             DocumentTabs.TabPages.Add(doc.MapFileName);
         }
     }
     else
     {
         for (var i = 0; i < DocumentManager.Documents.Count; i++)
         {
             var doc = DocumentManager.Documents[i];
             DocumentTabs.TabPages[i].Text = doc.MapFileName + (doc.History.TotalActionsSinceLastSave > 0 ? " *" : "");
         }
     }
     if (DocumentManager.CurrentDocument != null)
     {
         var si = DocumentManager.Documents.IndexOf(DocumentManager.CurrentDocument);
         if (si >= 0 && si != DocumentTabs.SelectedIndex)
         {
             DocumentTabs.SelectedIndex = si;
         }
     }
     ViewportManager.RefreshClearColour(DocumentTabs.TabPages.Count == 0);
 }
Beispiel #2
0
 private static void SettingsChanged()
 {
     foreach (var vp in ViewportManager.Viewports.OfType <CBRE.UI.Viewport3D>())
     {
         vp.Camera.FOV          = CBRE.Settings.View.CameraFOV;
         vp.Camera.ClipDistance = CBRE.Settings.View.BackClippingPane;
     }
     ViewportManager.RefreshClearColour(Instance.DocumentTabs.TabPages.Count == 0);
     TextureHelper.EnableTransparency       = !CBRE.Settings.View.GloballyDisableTransparency;
     TextureHelper.DisableTextureFiltering  = CBRE.Settings.View.DisableTextureFiltering;
     TextureHelper.ForceNonPowerOfTwoResize = CBRE.Settings.View.ForcePowerOfTwoTextureResizing;
 }
Beispiel #3
0
 private static void SettingsChanged()
 {
     foreach (var vp in ViewportManager.Viewports.OfType <Sledge.UI.Viewport3D>())
     {
         vp.Camera.FOV          = Sledge.Settings.View.CameraFOV;
         vp.Camera.ClipDistance = Sledge.Settings.View.BackClippingPane;
     }
     ViewportManager.RefreshClearColour();
     WadProvider.ReplaceTransparentPixels   = !Sledge.Settings.View.DisableWadTransparency && !Sledge.Settings.View.GloballyDisableTransparency;
     TextureHelper.EnableTransparency       = !Sledge.Settings.View.GloballyDisableTransparency;
     TextureHelper.DisableTextureFiltering  = Sledge.Settings.View.DisableTextureFiltering;
     TextureHelper.ForceNonPowerOfTwoResize = Sledge.Settings.View.ForcePowerOfTwoTextureResizing;
 }
Beispiel #4
0
        private void EditorLoad(object sender, EventArgs e)
        {
            FileTypeRegistration.RegisterFileTypes();

            SettingsManager.Read();

            if (TaskbarManager.IsPlatformSupported)
            {
                TaskbarManager.Instance.ApplicationId = FileTypeRegistration.ProgramId;

                _jumpList = JumpList.CreateJumpList();
                _jumpList.KnownCategoryToDisplay = JumpListKnownCategoryType.Recent;
                _jumpList.Refresh();
            }

            UpdateDocumentTabs();
            UpdateRecentFiles();

            DockBottom.Hidden = DockLeft.Hidden = DockRight.Hidden = true;

            MenuManager.Init(mnuMain, tscToolStrip);
            MenuManager.Rebuild();

            BrushManager.Init();
            SidebarManager.Init(RightSidebar);

            ViewportManager.Init(TableSplitView);
            ToolManager.Init();

            foreach (var tool in ToolManager.Tools)
            {
                var tl     = tool;
                var hotkey = CBRE.Settings.Hotkeys.GetHotkeyForMessage(HotkeysMediator.SwitchTool, tool.GetHotkeyToolType());
                tspTools.Items.Add(new ToolStripButton(
                                       "",
                                       tl.GetIcon(),
                                       (s, ea) => Mediator.Publish(HotkeysMediator.SwitchTool, tl.GetHotkeyToolType()),
                                       tl.GetName())
                {
                    Checked      = (tl == ToolManager.ActiveTool),
                    ToolTipText  = tl.GetName() + (hotkey != null ? " (" + hotkey.Hotkey + ")" : ""),
                    DisplayStyle = ToolStripItemDisplayStyle.Image,
                    ImageScaling = ToolStripItemImageScaling.None,
                    AutoSize     = false,
                    Width        = 36,
                    Height       = 36
                }
                                   );
            }

            TextureProvider.SetCachePath(SettingsManager.GetTextureCachePath());
            MapProvider.Register(new RmfProvider());
            MapProvider.Register(new MapFormatProvider());
            MapProvider.Register(new VmfProvider());
            MapProvider.Register(new L3DWProvider());
            GameDataProvider.Register(new FgdProvider());
            TextureProvider.Register(new SprProvider());
            TextureProvider.Register(new MiscTexProvider());
            ModelProvider.Register(new AssimpProvider());

            TextureHelper.EnableTransparency       = !CBRE.Settings.View.GloballyDisableTransparency;
            TextureHelper.DisableTextureFiltering  = CBRE.Settings.View.DisableTextureFiltering;
            TextureHelper.ForceNonPowerOfTwoResize = CBRE.Settings.View.ForcePowerOfTwoTextureResizing;

            Subscribe();

            Mediator.MediatorException += (mthd, ex) => Logging.Logger.ShowException(ex.Exception, "Mediator Error: " + ex.Message);

            if (string.IsNullOrEmpty(Directories.TextureDir))
            {
                OpenSettings(4);
            }

            if (CBRE.Settings.View.LoadSession)
            {
                foreach (var session in SettingsManager.LoadSession())
                {
                    LoadFileGame(session, SettingsManager.Game);
                }
            }

            ProcessArguments(System.Environment.GetCommandLineArgs());

            ViewportManager.RefreshClearColour(DocumentTabs.TabPages.Count == 0);
        }