///------------------------------------------------------------------------------------------------- /// <summary> /// Drops down menu EXtension. /// </summary> /// /// <param name="htmlHelper"> /// The HTML helper. /// </param> /// <param name="orientation"> /// The orientation. /// </param> /// <param name="cssClass"> /// The CSS class. /// </param> /// <param name="selectedCssClass"> /// (optional) the selected CSS class. /// </param> /// <param name="selectionMode"> /// (optional) the selection mode. /// </param> /// /// <returns> /// An instance of DropDownMenu. /// </returns> ///------------------------------------------------------------------------------------------------- public static DropDownMenu DropDownMenu(this HtmlHelper htmlHelper, MenuOrientation orientation = MenuOrientation.Horizontal, string cssClass = null, string selectedCssClass = null, SelectionMode?selectionMode = null) { return(new DropDownMenu(htmlHelper, orientation) { CssClass = cssClass, SelectedCssClass = selectedCssClass, SelectionMode = selectionMode }); }
/// <summary> /// Initializes a new instance of the <see cref="DropDownMenu"/> class. /// </summary> /// <param name="htmlHelper">The HTML helper.</param> /// <param name="orientation">The orientation.</param> public DropDownMenu(HtmlHelper htmlHelper, MenuOrientation orientation) : base(htmlHelper) { this.Orientation = orientation; this.Items = new MenuItemCollection <DropDownMenuItem> { CssClass = "menu " + (this.Orientation == MenuOrientation.Horizontal ? "horizontal-menu" : "vertical-menu"), Level = 0 }; }
private bool SetAspectRatio() { float currentAspectRatio = 0f; if (Screen.orientation == ScreenOrientation.LandscapeRight || Screen.orientation == ScreenOrientation.LandscapeLeft) { currentAspectRatio = (float)Screen.width / Screen.height; } else { if (Screen.height > Screen.width && KickStarter.settingsManager.landscapeModeOnly) { currentAspectRatio = (float)Screen.height / Screen.width; } else { currentAspectRatio = (float)Screen.width / Screen.height; } } // If the current aspect ratio is already approximately equal to the desired aspect ratio, use a full-screen Rect (in case it was set to something else previously) if (!KickStarter.settingsManager.forceAspectRatio || (int)(currentAspectRatio * 100) / 100f == (int)(KickStarter.settingsManager.wantedAspectRatio * 100) / 100f) { borderWidth = 0f; borderOrientation = MenuOrientation.Horizontal; if (borderCam) { Destroy(borderCam.gameObject); } return(false); } // Pillarbox if (currentAspectRatio > KickStarter.settingsManager.wantedAspectRatio) { borderWidth = 1f - KickStarter.settingsManager.wantedAspectRatio / currentAspectRatio; borderWidth /= 2f; borderOrientation = MenuOrientation.Vertical; borderRect1 = new Rect(0, 0, borderWidth * Screen.width, Screen.height); borderRect2 = new Rect(Screen.width * (1f - borderWidth), 0f, Screen.width * borderWidth, Screen.height); } // Letterbox else { borderWidth = 1f - currentAspectRatio / KickStarter.settingsManager.wantedAspectRatio; borderWidth /= 2f; borderOrientation = MenuOrientation.Horizontal; borderRect1 = new Rect(0, 0, Screen.width, borderWidth * Screen.height); borderRect2 = new Rect(0, Screen.height * (1f - borderWidth), Screen.width, Screen.width * borderWidth); } return(true); }
public ActionResult Orientation(string orientation) { MenuOrientation value = MenuOrientation.Horizontal; if (orientation == "vertical") { value = MenuOrientation.Vertical; } return View(value); }
override public void ShowGUI(List <ActionParameter> parameters) { turnOff = EditorGUILayout.Toggle("Disable previous split?", turnOff); if (!turnOff) { string label1 = "Top"; string label2 = "Bottom"; orientation = (MenuOrientation)EditorGUILayout.EnumPopup("Divider:", orientation); if (orientation == MenuOrientation.Vertical) { label1 = "Left"; label2 = "Right"; } parameterID1 = Action.ChooseParameterGUI(label1 + " camera:", parameters, parameterID1, ParameterType.GameObject); if (parameterID1 >= 0) { constantID1 = 0; cam1 = null; } else { cam1 = (_Camera)EditorGUILayout.ObjectField(label1 + " camera:", cam1, typeof(_Camera), true); constantID1 = FieldToID <_Camera> (cam1, constantID1); cam1 = IDToField <_Camera> (cam1, constantID1, false); } splitAmount1 = EditorGUILayout.Slider(label1 + " camera space:", splitAmount1, 0f, 1f); parameterID2 = Action.ChooseParameterGUI(label2 + " camera:", parameters, parameterID2, ParameterType.GameObject); if (parameterID2 >= 0) { constantID2 = 0; cam2 = null; } else { cam2 = (_Camera)EditorGUILayout.ObjectField(label2 + " camera:", cam2, typeof(_Camera), true); constantID2 = FieldToID <_Camera> (cam2, constantID2); cam2 = IDToField <_Camera> (cam2, constantID2, false); } splitAmount2 = Mathf.Min(splitAmount2, 1f - splitAmount1); splitAmount2 = EditorGUILayout.Slider(label2 + " camera space:", splitAmount2, 0f, 1f); splitAmount1 = Mathf.Min(splitAmount1, 1f - splitAmount2); mainIsTopLeft = EditorGUILayout.Toggle("Main Camera is " + label1.ToLower() + "?", mainIsTopLeft); } AfterRunningOption(); }
public void SetSplitScreen(_Camera _camera1, _Camera _camera2, MenuOrientation _splitOrientation, bool _isTopLeft, float splitAmountMain, float splitAmountOther) { splitCamera = _camera2; isSplitScreen = true; splitOrientation = _splitOrientation; isTopLeftSplit = _isTopLeft; SetGameCamera(_camera1); SnapToAttached(); StartSplitScreen(splitAmountMain, splitAmountOther); }
public MenuView(MenuOrientation orientation) : this() { this.MenuOrientations = orientation; // Vertical Menu if (this.MenuOrientations == MenuOrientation.TopToBottom) { // Vertical menu only need leftMargin // Full size Menu this.LeftMargin = 0; this.IsFullScreen = true; this.DraggerButtonHeight = 0; } if (this.MenuOrientations == MenuOrientation.BottomToTop) { // Not Full size this.LeftMargin = 0; this.IsFullScreen = true; //this.MainLayout.Children.Insert (0, this.DragImage); this.DraggerButtonHeight = 0; } // Horizontal Menu if (this.MenuOrientations == MenuOrientation.LeftToRight) { // Horizaontal menu only need topMargin // Full size Menu this.TopMargin = 0; this.IsFullScreen = true; this.DraggerButtonWidth = 0; } if (this.MenuOrientations == MenuOrientation.RightToLeft) { // Not Full size this.TopMargin = 0; this.IsFullScreen = true; //this.MainLayout.Children.RemoveAt (1); //this.MainLayout.Children.Insert (0, this.DragImage); this.DraggerButtonWidth = 30; } }
public QuickInnerPage(MenuOrientation orientation) { InitializeComponent(); this.IsFullScreen = false; this.BackgroundViewColor = Color.Transparent; this.BackgroundColor = Color.FromHex("#C82630"); this.MenuOrientations = orientation; if (orientation == MenuOrientation.BottomToTop) { this.WidthRequest = 50; this.HeightRequest = 200; this.DraggerButtonHeight = 30; this.LeftMargin = 100; } if (orientation == MenuOrientation.TopToBottom) { this.WidthRequest = 50; this.HeightRequest = 200; this.DraggerButtonHeight = 40; this.LeftMargin = 100; } if (orientation == MenuOrientation.LeftToRight) { this.WidthRequest = 200; this.HeightRequest = 50; this.DraggerButtonWidth = 40; this.TopMargin = 30; } if (orientation == MenuOrientation.RightToLeft) { this.WidthRequest = 200; this.HeightRequest = 50; this.DraggerButtonWidth = 30; this.TopMargin = 30; } }
public QuickInnerMenuView(MenuOrientation orientation) { var mainLayout = new StackLayout { Spacing = 15, Children = { new Image { Source = "Happy.png", WidthRequest = 25, HeightRequest = 25, }, new Image { Source = "Home.png", WidthRequest = 25, HeightRequest = 25, }, new Image { Source = "MessageFilled.png", WidthRequest = 25, HeightRequest = 25, }, new Image { Source = "Settings.png", WidthRequest = 25, HeightRequest = 25, }, } }; // In this case the IsFullScreen must set false this.IsFullScreen = false; this.BackgroundViewColor = Color.Transparent; // You must set BackgroundColor, // and you cannot put another layout with background color cover the whole View // otherwise, it cannot be dragged on Android this.BackgroundColor = Color.FromHex("#C82630"); this.MenuOrientations = orientation; if (orientation == MenuOrientation.BottomToTop) { mainLayout.Orientation = StackOrientation.Vertical; mainLayout.Children.Insert(0, new Image { Source = "DoubleUp.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness(0, 5); // In this case, you must set both WidthRequest and HeightRequest. this.WidthRequest = 50; this.HeightRequest = 200; // A little bigger then DoubleUp.png image size, used for user drag it. this.DraggerButtonHeight = 30; // In this menu direction you must set LeftMargin. this.LeftMargin = 100; } if (orientation == MenuOrientation.TopToBottom) { mainLayout.Orientation = StackOrientation.Vertical; mainLayout.Children.Insert(4, new Image { Source = "DoubleDown_White.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness(0, 5); this.WidthRequest = 50; this.HeightRequest = 200; this.DraggerButtonHeight = 40; this.LeftMargin = 100; } if (orientation == MenuOrientation.LeftToRight) { mainLayout.Orientation = StackOrientation.Horizontal; mainLayout.Children.Insert(4, new Image { Source = "DoubleRight.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness(5, 0); this.WidthRequest = 200; this.HeightRequest = 50; // In this case, it should be DraggerButtonWidth not DraggerButtonHeight this.DraggerButtonWidth = 40; // In this menu direction you must set TopMargin. this.TopMargin = 30; } if (orientation == MenuOrientation.RightToLeft) { mainLayout.Orientation = StackOrientation.Horizontal; mainLayout.Children.Insert(0, new Image { Source = "DoubleLeft.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness(5, 0); this.WidthRequest = 200; this.HeightRequest = 50; this.DraggerButtonWidth = 30; this.TopMargin = 30; } Content = mainLayout; }
/** * <summary>Creates a new split-screen effect.</summary> * <param name = "_camera1">The first _Camera to use in the effect</param> * <param name = "_camera2">The second _Camera to use in the effect</param> * <param name = "_splitOrientation">How the two _Cameras are arranged (Horizontal, Vertical)</param> * <param name = "_isTopLeft">If True, the MainCamera will take the position of _camera1</param> * <param name = "_splitAmountMain">The proportion of the screen taken up by this Camera</param> * <param name = "_splitAmountOther">The proportion of the screen take up by the other _Camera</param> */ public void SetSplitScreen(_Camera _camera1, _Camera _camera2, MenuOrientation _splitOrientation, bool _isTopLeft, float _splitAmountMain, float _splitAmountOther) { splitCamera = _camera2; isSplitScreen = true; splitOrientation = _splitOrientation; isTopLeftSplit = _isTopLeft; SetGameCamera (_camera1); StartSplitScreen (_splitAmountMain, _splitAmountOther); }
private bool SetAspectRatio() { float currentAspectRatio = 0f; if (Screen.orientation == ScreenOrientation.LandscapeRight || Screen.orientation == ScreenOrientation.LandscapeLeft) { currentAspectRatio = (float) Screen.width / Screen.height; } else { if (Screen.height > Screen.width && KickStarter.settingsManager.landscapeModeOnly) { currentAspectRatio = (float) Screen.height / Screen.width; } else { currentAspectRatio = (float) Screen.width / Screen.height; } } // If the current aspect ratio is already approximately equal to the desired aspect ratio, use a full-screen Rect (in case it was set to something else previously) if (!KickStarter.settingsManager.forceAspectRatio || (int) (currentAspectRatio * 100) / 100f == (int) (KickStarter.settingsManager.wantedAspectRatio * 100) / 100f) { borderWidth = 0f; borderOrientation = MenuOrientation.Horizontal; if (borderCam) { Destroy (borderCam.gameObject); } return false; } // Pillarbox if (currentAspectRatio > KickStarter.settingsManager.wantedAspectRatio) { borderWidth = 1f - KickStarter.settingsManager.wantedAspectRatio / currentAspectRatio; borderWidth /= 2f; borderOrientation = MenuOrientation.Vertical; borderRect1 = new Rect (0, 0, borderWidth * Screen.width, Screen.height); borderRect2 = new Rect (Screen.width * (1f - borderWidth), 0f, Screen.width * borderWidth, Screen.height); } // Letterbox else { borderWidth = 1f - currentAspectRatio / KickStarter.settingsManager.wantedAspectRatio; borderWidth /= 2f; borderOrientation = MenuOrientation.Horizontal; borderRect1 = new Rect (0, 0, Screen.width, borderWidth * Screen.height); borderRect2 = new Rect (0, Screen.height * (1f - borderWidth), Screen.width, Screen.width * borderWidth); } return true; }
public QuickInnerMenuView(MenuOrientation orientation) { var mainLayout = new StackLayout { Spacing = 15, Children = { new Image { Source = "Happy.png", WidthRequest = 25, HeightRequest = 25, }, new Image { Source = "Home.png", WidthRequest = 25, HeightRequest = 25, }, new Image { Source = "MessageFilled.png", WidthRequest = 25, HeightRequest = 25, }, new Image { Source = "Settings.png", WidthRequest = 25, HeightRequest = 25, }, } }; // In this case the IsFullScreen must set false this.IsFullScreen = false; this.BackgroundViewColor = Color.Transparent; // You must set BackgroundColor, // and you cannot put another layout with background color cover the whole View // otherwise, it cannot be dragged on Android this.BackgroundColor = Color.FromHex ("#C82630"); this.MenuOrientations = orientation; if (orientation == MenuOrientation.BottomToTop) { mainLayout.Orientation = StackOrientation.Vertical; mainLayout.Children.Insert (0, new Image { Source = "DoubleUp.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness (0, 5); // In this case, you must set both WidthRequest and HeightRequest. this.WidthRequest = 50; this.HeightRequest = 200; // A little bigger then DoubleUp.png image size, used for user drag it. this.DraggerButtonHeight = 30; // In this menu direction you must set LeftMargin. this.LeftMargin = 100; } if (orientation == MenuOrientation.TopToBottom) { mainLayout.Orientation = StackOrientation.Vertical; mainLayout.Children.Insert (4, new Image { Source = "DoubleDown_White.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness (0, 5); this.WidthRequest = 50; this.HeightRequest = 200; this.DraggerButtonHeight = 40; this.LeftMargin = 100; } if (orientation == MenuOrientation.LeftToRight) { mainLayout.Orientation = StackOrientation.Horizontal; mainLayout.Children.Insert (4, new Image { Source = "DoubleRight.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness (5, 0); this.WidthRequest = 200; this.HeightRequest = 50; // In this case, it should be DraggerButtonWidth not DraggerButtonHeight this.DraggerButtonWidth = 40; // In this menu direction you must set TopMargin. this.TopMargin = 30; } if (orientation == MenuOrientation.RightToLeft) { mainLayout.Orientation = StackOrientation.Horizontal; mainLayout.Children.Insert (0, new Image { Source = "DoubleLeft.png", WidthRequest = 25, HeightRequest = 25, }); mainLayout.Padding = new Thickness (5, 0); this.WidthRequest = 200; this.HeightRequest = 50; this.DraggerButtonWidth = 30; this.TopMargin = 30; } Content = mainLayout; }
/// <summary> /// Sets the menu orientation. /// </summary> /// <param name="value">The desired orientation.</param> /// <example> /// <code lang="CS"> /// <%= Html.Kendo().Menu() /// .Name("Menu") /// .Orientation(MenuOrientation.Vertical) /// %> /// </code> /// </example> public MenuBuilder Orientation(MenuOrientation value) { Component.Orientation = value; return(this); }
override public void ShowGUI (List<ActionParameter> parameters) { turnOff = EditorGUILayout.Toggle ("Disable previous split?", turnOff); if (!turnOff) { string label1 = "Top"; string label2 = "Bottom"; orientation = (MenuOrientation) EditorGUILayout.EnumPopup ("Divider:", orientation); if (orientation == MenuOrientation.Vertical) { label1 = "Left"; label2 = "Right"; } parameterID1 = Action.ChooseParameterGUI (label1 + " camera:", parameters, parameterID1, ParameterType.GameObject); if (parameterID1 >= 0) { constantID1 = 0; cam1 = null; } else { cam1 = (_Camera) EditorGUILayout.ObjectField (label1 + " camera:", cam1, typeof (_Camera), true); constantID1 = FieldToID <_Camera> (cam1, constantID1); cam1 = IDToField <_Camera> (cam1, constantID1, false); } splitAmount1 = EditorGUILayout.Slider (label1 + " camera space:", splitAmount1, 0f, 1f); parameterID2 = Action.ChooseParameterGUI (label2 + " camera:", parameters, parameterID2, ParameterType.GameObject); if (parameterID2 >= 0) { constantID2 = 0; cam2 = null; } else { cam2 = (_Camera) EditorGUILayout.ObjectField (label2 + " camera:", cam2, typeof (_Camera), true); constantID2 = FieldToID <_Camera> (cam2, constantID2); cam2 = IDToField <_Camera> (cam2, constantID2, false); } splitAmount2 = Mathf.Min (splitAmount2, 1f-splitAmount1); splitAmount2 = EditorGUILayout.Slider (label2 + " camera space:", splitAmount2, 0f, 1f); splitAmount1 = Mathf.Min (splitAmount1, 1f-splitAmount2); mainIsTopLeft = EditorGUILayout.Toggle ("Main Camera is " + label1.ToLower () + "?", mainIsTopLeft); } AfterRunningOption (); }
public UIMenu SetOrientation(MenuOrientation orientation) { this.orientation = orientation; return(this); }
/// <summary> /// Creates the LevelMenu2D from scratch. /// </summary> public void createMenu() { // If autoOffset is true, then set itemOffset to zero. if (autoOffset) { itemOffset = Vector3.zero; } // If autoSet is false, then set orientation to Custom. else { orientation = MenuOrientation.Custom; } // If showNextBeckButtons is false, then use items as buttons //if (showNextBackButtons == false) { for (int i = 0; i < itemsList.Count; i++) { if (nextButtonObject != null) { nextButtonObject.SetActive(false); } if (backButtonObject != null) { backButtonObject.SetActive(false); } itemsList[i].AddComponent <ClickTouchScript>(); itemsList[i].AddComponent <BoxCollider>(); } } // If showNextBackButtons is true, then place the hidden buttons for carousel if (showNextBackButtons == true) { if (nextButtonObject != null && backButtonObject != null) { nextButtonObject.SetActive(true); backButtonObject.SetActive(true); nextButtonObject.AddComponent <ClickTouchScript>(); backButtonObject.AddComponent <ClickTouchScript>(); nextButtonObject.AddComponent <BoxCollider>(); backButtonObject.AddComponent <BoxCollider>(); nextButtonObject.GetComponent <Renderer>().sortingOrder = itemsList.Count; backButtonObject.GetComponent <Renderer>().sortingOrder = itemsList.Count; } } if (itemsList.Count > 0) { Camera cam = (Camera)GameObject.FindObjectOfType <Camera>(); Vector3 camPos = cam.transform.position; camPos.z = 0f; camPos.y = 0f; //itemsList[0].transform.position = camPos; //itemsList[0].transform.position = this.transform.position; itemsList[0].transform.position = firstItem.transform.position; for (int i = 1; i < itemsList.Count; i++) { Vector3 changePos = itemsList[i - 1].transform.position; if (autoOffset) { if (orientation == MenuOrientation.Custom || orientation == MenuOrientation.Horizontal) { itemOffset.x = itemsList[i - 1].GetComponent <Renderer>().bounds.size.x + spacingBetweenItems; } else if (orientation == MenuOrientation.Vertical) { itemOffset.y = itemsList[i - 1].GetComponent <Renderer>().bounds.size.y + spacingBetweenItems; } } changePos.x += itemOffset.x; changePos.y += itemOffset.y; itemsList[i].transform.position = changePos; if (shouldIncreaseOrder) { itemsList[i].GetComponent <Renderer>().sortingOrder = itemsList[i - 1].GetComponent <Renderer>().sortingOrder + 1; } else { itemsList[i].GetComponent <Renderer>().sortingOrder = itemsList[i - 1].GetComponent <Renderer>().sortingOrder - 1; } } } }