Пример #1
0
        //Unity GUI loop
        void OnGUI()
        {
            if (drawTooltip && HighLogic.CurrentGame.Parameters.CustomParams <JanitorsClosetSettings>().buttonTooltip&& tooltip != null && tooltip.Trim().Length > 0)
            {
                SetupTooltip();
                GUI.Window(1234, tooltipRect, TooltipWindow, "");
            }

            //DrawTooltip();
            //Log.Info("Scene: " + HighLogic.LoadedScene.ToString());
            if ((_showPruneMenu == ShowMenuState.starting) || (_showPruneMenu == ShowMenuState.visible && _pruneMenuRect.Contains(Event.current.mousePosition)))
            {
                _pruneMenuRect = KSPUtil.ClampRectToScreen(ClickThruBlocker.GUILayoutWindow(pruneMenuID, _pruneMenuRect, _windowFunction, "Blocker Menu"));
            }
            else
            if (_showPruneMenu != ShowMenuState.hidden)
            {
                HidePruneMenu();
            }

            OnGUIToolbar();

            if (HighLogic.LoadedSceneIsEditor && (_showMenu || _menuRect.Contains(Event.current.mousePosition) || (Time.fixedTime - lastTimeShown < 0.5f)))
            {
                _menuRect = ClickThruBlocker.GUILayoutWindow(menuContentID, _menuRect, MenuContent, "Janitor's Closet");
            }
            else
            {
                _menuRect = new Rect();
            }
        }
Пример #2
0
 protected void OnGUI()
 {
     GUI.skin   = Skin;
     windowRect = ClickThruBlocker.GUILayoutWindow(winId, windowRect, _InternalDraw, Title);
     if (ClampToScreen)
     {
         windowRect = KSPUtil.ClampRectToScreen(windowRect);
     }
 }
Пример #3
0
        public void OnGUI()
        {
            //Debug.Log ("display: " + display.ToString ());

            if (app.DEBUG)
            {
                app.Log("GUI.OnGUI()", false);
            }

            app.strutwin = KSPUtil.ClampRectToScreen(GUILayout.Window(app.GetInstanceID() + 1, app.strutwin, new UnityEngine.GUI.WindowFunction(draw), "Struts & Fuel Ducts", new GUILayoutOption[0]));
        }
Пример #4
0
        protected virtual void OnGUI()
        {
            // Draw the GUI window.
            windowRect = KSPUtil.ClampRectToScreen(GUILayout.Window(GetInstanceID(), windowRect, Window, "KSP-AVC - Issue Monitor", HighLogic.Skin.window));

            // Check if the window has been initially centred or should be centred.
            if (hasCentred == false)
            {
                hasCentred = CentreWindow();
            }
        }
        Vector2 CalculateDrawablePosition(Vector2 size)
        {
            // Rect.xy == top left
            Rect rect = new Rect(0, 0, size.x, size.y);

            rect.x = Screen.width - size.x;
            rect.y = Screen.height - button.sprite.RenderCamera.WorldToScreenPoint(button.transform.position).y + 38f * 1.25f;
            rect   = KSPUtil.ClampRectToScreen(rect);

            var transformedY = button.sprite.RenderCamera.ScreenToWorldPoint(new Vector3(rect.x, Screen.height - rect.y /* inverted remember */)).y;
            var transformedX = button.sprite.RenderCamera.ScreenToWorldPoint(new Vector3(rect.x, 0f, 0f)).x;

            return(new Vector2(rect.x, rect.y));
        }
Пример #6
0
 private void Begin()
 {
     if (IsActive)
     {
         windowPosition = GUI.Window(WindowId, KSPUtil.ClampRectToScreen(windowPosition), new GUI.WindowFunction(DrawWindow), WindowLabel);
         int    id = PartResourceLibrary.Instance.GetDefinition("ElectricCharge").id;
         double num;
         double num2;
         part.GetConnectedResourceTotals(id, out num, out num2, true);
         if (HighLogic.LoadedSceneIsFlight && !FlightDriver.Pause)
         {
             part.RequestResource(id, 0.02 * (double)TimeWarp.fixedDeltaTime);
         }
     }
 }
Пример #7
0
        void Begin()
        {
            if (IsActivate)
            {
                windowPosition = GUI.Window(windowId, KSPUtil.ClampRectToScreen(windowPosition), DrawWindow, windowLabel); //draw main window

                //ElectricChargeAmount = part.vessel.GetConnectedResourceTotals.GetActiveResources().First(x => x.info.name == "ElectricCharge").amount;
                //if (ElectricChargeAmount <= 0)
                //{
                //    ScreenMessages.PostScreenMessage("NOT ENOUGH ENERGY", 3f, ScreenMessageStyle.UPPER_CENTER);
                //    IsButtonOff = true;
                //}
                //if (HighLogic.LoadedSceneIsFlight && !FlightDriver.Pause)
                //    part.RequestResource("ElectricCharge", 0.002 * TimeWarp.fixedDeltaTime);
            }
        }
Пример #8
0
            /// <summary>
            /// Standard Unity method
            /// </summary>
            protected void OnGUI()
            {
                GUI.skin = Skin;


                windowRect = GUILayout.Window(winId, windowRect, _InternalDraw, Title);

                if (ClampToScreen)
                {
                    windowRect = KSPUtil.ClampRectToScreen(windowRect);
                }

                backstop.Move(windowRect);

                //lastRect = new Rect(windowRect);
            }
Пример #9
0
        private void Begin() //draw main window
        {
            if (!IsActive)
            {
                return;
            }
            WindowPosition = GUI.Window(WindowId, KSPUtil.ClampRectToScreen(WindowPosition), DrawWindow, WindowLabel);
            int    electricityId = PartResourceLibrary.Instance.GetDefinition("ElectricCharge").id;
            double electricChargeAmount;
            double electricChargeMaxAmount;

            ThisPart.GetConnectedResourceTotals(electricityId, out electricChargeAmount, out electricChargeMaxAmount);
            if (HighLogic.LoadedSceneIsFlight && !FlightDriver.Pause)
            {
                ThisPart.RequestResource(electricityId, 0.02 * TimeWarp.fixedDeltaTime);
            }
        }
Пример #10
0
        public override void Draw()
        {
            if (_dummy == null && !GravityTurnAPI.GravityTurnActive)
            {
                Log.Info("InitialState, dummy is null");
                return;
            }

            _windowRect = KSPUtil.ClampRectToScreen(ClickThruBlocker.GUIWindow(99, _windowRect, DrawMainWindow, "", StyleFactory.MainWindowStyle));

            ConfigInfo.Instance.WindowPosition = _windowRect;
            if (!HighLogic.CurrentGame.Parameters.CustomParams <NC>().keepButtonsVisible)
            {
                if (Event.current.type == EventType.Repaint && _dummy != null)
                {
                    if (_buttonOpened)
                    {
                        var openedRect = new Rect(_windowRect.xMin, _windowRect.yMin,
                                                  _windowRect.width, _windowRect.height + 29);

                        _dummy.StartCoroutine(
                            openedRect.Contains(new Vector2(Input.mousePosition.x,
                                                            Screen.height - Input.mousePosition.y))
                                ? ShowBottomButton()
                                : HideBottomButton());
                    }
                    else
                    {
                        _dummy.StartCoroutine(
                            _windowRect.Contains(new Vector2(Input.mousePosition.x,
                                                             Screen.height - Input.mousePosition.y))
                                ? ShowBottomButton()
                                : HideBottomButton());
                    }
                }
            }
            else
            {
                _buttonOpened = true;
                _delta        = 0;
            }

            DrawButtons();

            GUI.BringWindowToFront(99);
        }
Пример #11
0
 public override void Draw()
 {
     _windowRect = KSPUtil.ClampRectToScreen(ClickThruBlocker.GUIWindow(InitialState.baseWindowID + 1, _windowRect, DrawSequenceWindow, "", StyleFactory.LaunchSequenceStyle));
     GUI.BringWindowToFront(InitialState.baseWindowID + 1);
 }
Пример #12
0
 public override void Draw()
 {
     _windowRect = KSPUtil.ClampRectToScreen(ClickThruBlocker.GUIWindow(InitialState.baseWindowID + 2, _windowRect, DrawSettingsWindow, "", StyleFactory.SettingsStyle));
     GUI.BringWindowToFront(InitialState.baseWindowID + 2);
 }
Пример #13
0
 void OnGUI()
 {
     _windowRect =
         KSPUtil.ClampRectToScreen(GUILayout.Window(GetInstanceID(), _windowRect, DrawWindow, "IFMS"));
 }
Пример #14
0
 public override void Draw()
 {
     _windowRect = KSPUtil.ClampRectToScreen(GUILayout.Window(99, _windowRect, DrawSettingsWindow, "", StyleFactory.SettingsStyle));
     GUI.BringWindowToFront(99);
 }