private void NewControl() { if (m_root != null) { if (!EditorUtility.DisplayDialog("Confirm New Control", "Are you sure you would like to create a new control? Current layout will be discarded!", "Ok", "Cancel")) { return; } foreach (Control child in m_root.Children) { RemoveChildControl(child); } m_workarea.RemoveChild(m_root); RemoveHierarchyEntry(m_root); } m_root = new Control(); m_root.SetSize(100.0f, 100.0f); m_root.SetPosition(m_workarea.Size.x / 2.0f - 50.0f, m_workarea.Size.y / 2.0f - 50.0f); m_root.AddDecorator(new BackgroundColor(Color.gray)); m_workarea.AddChild(m_root); SetSelectedControl(m_root); SetInspectorTarget(m_root); CreateHierarchyEntry(m_root, 0); }
public override void DragAndDrop_Hover(Package p, int x, int y) { Vector2i localPos = CanvasPosToLocal(new Vector2i(x, y)); Control droppedOn = GetControlAt(localPos.X, localPos.Y); if (droppedOn != null && droppedOn != this) { Vector2i dropPos = droppedOn.CanvasPosToLocal(new Vector2i(x, y)); m_TabDragControl.SetBounds(new Rectangle(0, 0, 3, Height)); m_TabDragControl.BringToFront(); m_TabDragControl.SetPosition(droppedOn.X - 1, 0); if (dropPos.X > droppedOn.Width / 2) { m_TabDragControl.MoveBy(droppedOn.Width - 1, 0); } m_TabDragControl.Dock = Pos.None; } else { m_TabDragControl.Dock = Pos.Left; m_TabDragControl.BringToFront(); } }
private void OnLeftButtonDown() { if (easyModeMovement.GetPosition().x > 420) { easyModeMovement.SetPosition(new Vector2(easyModeMovement.GetPosition().x - 225, easyModeMovement.GetPosition().y)); } }
/// <summary> /// Initializes a new instance of the <see cref="ScrollControl"/> class. /// </summary> /// <param name="parent">Parent control.</param> public ScrollControl(Control parent) : base(parent) { MouseInputEnabled = false; m_VerticalScrollBar = new VerticalScrollBar(this); m_VerticalScrollBar.Dock = Pos.Right; m_VerticalScrollBar.BarMoved += VBarMoved; m_CanScrollV = true; m_VerticalScrollBar.NudgeAmount = 30; m_HorizontalScrollBar = new HorizontalScrollBar(this); m_HorizontalScrollBar.Dock = Pos.Bottom; m_HorizontalScrollBar.BarMoved += HBarMoved; m_CanScrollH = true; m_HorizontalScrollBar.NudgeAmount = 30; m_InnerPanel = new Control(this); m_InnerPanel.SetPosition(0, 0); m_InnerPanel.Margin = Margin.Five; m_InnerPanel.SendToBack(); m_InnerPanel.MouseInputEnabled = false; m_AutoHideBars = false; }
private void OnRightButtonDown() { if (easyModeMovement.GetPosition().x < 870) { easyModeMovement.SetPosition(new Vector2(easyModeMovement.GetPosition().x + 225, easyModeMovement.GetPosition().y)); } }
public static void ScaleControl(Control control, float width, float height, float x, float y) { if (control == null) { return; } control.SetSize(new Vector2(width, height)); control.SetPosition(new Vector2(x, y)); }
/// <summary> /// Centers the control vertically inside its parent. /// </summary> /// <param name="control"></param> public static void CenterVertically(Control control) { Control parent = control.Parent; if (null == parent) { return; } control.SetPosition(control.X, (parent.Height - control.Height) / 2); }
/// <summary> /// Moves the control to the bottom of its parent. /// </summary> /// <param name="control"></param> public static void AlignBottom(Control control) { Control parent = control.Parent; if (null == parent) { return; } control.SetPosition(control.X, parent.Height - control.Height); }
/// <summary> /// Moves the control to the left of its parent. /// </summary> /// <param name="control"></param> public static void AlignLeft(Control control) { Control parent = control.Parent; if (null == parent) { return; } control.SetPosition(parent.Padding.Left, control.Y); }
/// <summary> /// Centers the control inside its parent. /// </summary> /// <param name="control">Control to center.</param> public static void Center(Control control) { Control parent = control.Parent; if (parent == null) { return; } control.SetPosition( parent.Padding.Left + (((parent.Width - parent.Padding.Left - parent.Padding.Right) - control.Width) / 2), (parent.Height - control.Height) / 2); }
/// <summary> /// Centers the control horizontally inside its parent. /// </summary> /// <param name="control"></param> public static void CenterHorizontally(Control control) { Control parent = control.Parent; if (null == parent) { return; } control.SetPosition(parent.Padding.Left + (((parent.Width - parent.Padding.Left - parent.Padding.Right) - control.Width) / 2), control.Y); }
/// <summary> /// Moves the control to the right of its parent. /// </summary> /// <param name="control"></param> public static void AlignRight(Control control) { Control parent = control.Parent; if (null == parent) { return; } control.SetPosition(parent.Width - control.Width - parent.Padding.Right, control.Y); }
public void _on_button_pressed() { if (instanced_scene.Visible == false) { Vector2 pos = new Vector2(150, 150); instanced_scene.SetPosition(pos); instanced_scene.Show(); } else { instanced_scene.Hide(); } }
protected override void OnInitialize() { m_generator = new UFormsCodeGenerator(); title = "Control Designer"; m_menu = new DesignerTopMenu(); m_menu.SetSize(100.0f, CONTROL_DISPLAY_HEIGHT, Control.MetricsUnits.Percentage, Control.MetricsUnits.Pixel); m_menu.MenuOptionSelected += HandleMenuOptionSelected; AddChild(m_menu); m_inspectorFields = new Dictionary <object, PropertyInfo>(); m_hierarchyItems = new Dictionary <Control, HierarchyItem>(); m_inspector = new Control(); m_inspector.SetPosition(position.width - INSPECTOR_WIDTH, CONTROL_DISPLAY_HEIGHT + TOP_MENU_SPACING); m_inspector.SetWidth(INSPECTOR_WIDTH); m_inspector.SetMargin(0.0f, 0.0f, SIDE_MARGIN, 0.0f); m_inspector.AddDecorator(new StackContent(StackContent.StackMode.Vertical, StackContent.OverflowMode.Flow)); AddChild(m_inspector); m_hierarchy = new Control(); m_hierarchy.SetPosition(0.0f, CONTROL_DISPLAY_HEIGHT + TOP_MENU_SPACING); m_hierarchy.SetWidth(HIERARCHY_WIDTH); m_hierarchy.SetMargin(SIDE_MARGIN, 0.0f, 0.0f, 0.0f); m_hierarchy.AddDecorator(new StackContent(StackContent.StackMode.Vertical, StackContent.OverflowMode.Flow)); AddChild(m_hierarchy); m_workarea = new Control(); m_workarea.SetPosition(m_viewportOffset); m_workarea.AddDecorator(new ClipContent()); AddChild(m_workarea); m_resizeHandle = new Control(); m_resizeHandle.SetSize(RESIZE_HANDLE_SIZE, RESIZE_HANDLE_SIZE); m_resizeHandle.AddDecorator(new BackgroundColor(Color.blue)); m_resizeHandle.Visibility = Control.VisibilityMode.Hidden; AddChild(m_resizeHandle); SetSelectedControl(null); SetInspectorTarget(null); ShowToolbox(); }
protected override void Update() { if (m_workarea != null) { m_workarea.SetSize(position.width - INSPECTOR_WIDTH - HIERARCHY_WIDTH, position.height - CONTROL_DISPLAY_HEIGHT); } if (m_inspector != null) { m_inspector.SetPosition(position.width - INSPECTOR_WIDTH, CONTROL_DISPLAY_HEIGHT + TOP_MENU_SPACING); m_inspector.SetHeight(position.height - CONTROL_DISPLAY_HEIGHT - TOP_MENU_SPACING); } if (m_hierarchy != null) { m_hierarchy.SetHeight(position.height - CONTROL_DISPLAY_HEIGHT - TOP_MENU_SPACING); } if (m_resizeHandle != null && m_selectedControl != null) { float x = m_selectedControl.ScreenRect.x + m_selectedControl.Size.x - m_resizeHandle.Size.x / 2.0f + m_viewportOffset.x; float y = m_selectedControl.ScreenRect.y + m_selectedControl.Size.y - m_resizeHandle.Size.y / 2.0f + m_viewportOffset.y; m_resizeHandle.SetPosition(x, y); } // Ugliest hack possible, used to update the position field continiously as it is modifiable in the designer if (m_inspectorFields != null) { if (m_inspectorFields.Count > 0 && m_selectedControl != null) { foreach (KeyValuePair <object, PropertyInfo> kvp in m_inspectorFields) { if (kvp.Value.Name == "Position" || kvp.Value.Name == "Size") { (kvp.Key as Vector2Field).Value = ( Vector2 )kvp.Value.GetValue(m_selectedControl, null); } } } } base.Update(); Repaint(); }
private void inicia_cosas() { try { Vector2 tamscreen = GetViewport().GetVisibleRect().Size; Vector2 posicionHUD = new Vector2(tamscreen.x / 2 - 10, tamscreen.y / 2 - 10); Control HUD = (Control)GetNode("HUD"); HUD.SetPosition(posicionHUD); // pruebas hud_debug = (HUD_Debug)GetNode("HUD_Debug"); /* * for (int i=0;i<1000;i++) * anyadeEnemigo(); */ } catch (Exception ex) { } }
internal void UpdateViewRect(Rect2 mapViewPortRect) { viewRect.RectSize = mapViewPortRect.Size * map.tileMap.Scale; viewRect.SetPosition((mapViewPortRect.Position + mapViewPortRect.Size / 2) * map.tileMap.Scale - viewRect.RectSize / 2); }
/// <summary> /// Places the control below other control (left aligned), taking margins into account. /// </summary> /// <param name="control">Control to place.</param> /// <param name="anchor">Anchor control.</param> /// <param name="spacing">Optional spacing.</param> public static void PlaceDownLeft(Control control, Control anchor, int spacing = 0) { control.SetPosition(anchor.X, anchor.Bottom + spacing); }
/// <summary> /// Places the control to the right of other control (bottom aligned), taking margins into account. /// </summary> /// <param name="control">Control to place.</param> /// <param name="anchor">Anchor control.</param> /// <param name="spacing">Optional spacing.</param> public static void PlaceRightBottom(Control control, Control anchor, int spacing = 0) { control.SetPosition(anchor.Right + spacing, anchor.Y - control.Height + anchor.Height); }
/// <summary> /// Moves the control to the top of its parent. /// </summary> /// <param name="control"></param> public static void AlignTop(Control control) { control.SetPosition(control.X, 0); }
private void NewControl() { if ( m_root != null ) { if ( !EditorUtility.DisplayDialog( "Confirm New Control", "Are you sure you would like to create a new control? Current layout will be discarded!", "Ok", "Cancel" ) ) { return; } foreach( Control child in m_root.Children ) { RemoveChildControl( child ); } m_workarea.RemoveChild( m_root ); RemoveHierarchyEntry( m_root ); } m_root = new Control(); m_root.SetSize( 100.0f, 100.0f ); m_root.SetPosition( m_workarea.Size.x / 2.0f - 50.0f, m_workarea.Size.y / 2.0f - 50.0f ); m_root.AddDecorator( new BackgroundColor( Color.gray ) ); m_workarea.AddChild( m_root ); SetSelectedControl( m_root ); SetInspectorTarget( m_root ); CreateHierarchyEntry( m_root, 0 ); }
public BehaviorNodeControl(EditorCachedNode node) { m_fieldControls = new Dictionary <string, Control>(); m_node = node; int lines = 0; foreach (EditorCachedNodeField field in node.fields) { Control fieldControl = null; int l = 0; // Create fields per type if (field.type == typeof(int)) { fieldControl = AddChild(new IntField(default(int), field.name)); l = 1; } else if (field.type == typeof(float)) { fieldControl = AddChild(new FloatField(default(float), field.name)); l = 1; } else if (field.type == typeof(Vector2)) { fieldControl = AddChild(new Vector2Field(default(Vector2), field.name)); l = 2; } else if (field.type == typeof(Vector3)) { fieldControl = AddChild(new Vector3Field(default(Vector3), field.name)); l = 2; } else if (field.type == typeof(Vector4)) { fieldControl = AddChild(new Vector4Field(default(Vector4), field.name)); l = 2; } else if (field.type == typeof(string)) { fieldControl = AddChild(new TextField("", field.name)); l = 1; } else if (field.type == typeof(Rect)) { fieldControl = AddChild(new RectField(default(Rect), field.name)); l = 3; } else if (field.type == typeof(Color)) { fieldControl = AddChild(new ColorField(default(Color), field.name)); l = 1; } else if (field.type == typeof(Bounds)) { fieldControl = AddChild(new BoundsField(default(Bounds), field.name)); l = 3; } else if (field.type.IsEnum) { fieldControl = AddChild(new EnumDropdown((System.Enum)Activator.CreateInstance(field.type), field.name)); l = 1; } else if (field.type == typeof(bool)) { fieldControl = AddChild(new Toggle(field.name, false, false)); l = 1; } else if (field.type == typeof(GameObject)) { // fieldControl = AddChild(new ObjectField(typeof(GameObject), true, null, "Object Target")); fieldControl = AddChild(new ObjectField(new Vector2(50, 50), new Vector2(50, 10), typeof(GameObject), true, null, "Object Target")); l = 1; } else { Debug.LogWarning(string.Format("Unsupported field type `{0}({1})` encountered in node `{2}`", field.name, field.type, node.displayName)); } if (fieldControl != null) { m_fieldControls.Add(field.name, fieldControl); fieldControl .SetPosition(INNER_PADDING, HEADER_SIZE + LINE_SIZE * lines) .SetSize(BOX_WIDTH - INNER_PADDING - INNER_PADDING, LINE_SIZE); lines += l; } } if (m_node.nodeType != BehaviorTrees.BehaviorNodeAttribute.NodeType.Leaf) { lines++; // Add extra line of padding at the bottom } m_canvas = (GraphicsCanvas)AddDecorator(new GraphicsCanvas()); SetHeight(HEADER_SIZE + FOOTER_PADDING + LINE_SIZE * lines); // Create outputs m_outputs = new List <BehaviorNodeControl>(); m_outputButtons = new List <Button>(); m_outputLines = new List <BezierCurve>(); UpdateOutputs(); }
protected override void OnInitialize() { m_generator = new UFormsCodeGenerator(); title = "Control Designer"; m_menu = new DesignerTopMenu(); m_menu.SetSize( 100.0f, CONTROL_DISPLAY_HEIGHT, Control.MetricsUnits.Percentage, Control.MetricsUnits.Pixel ); m_menu.MenuOptionSelected += HandleMenuOptionSelected; AddChild( m_menu ); m_inspectorFields = new Dictionary<object, PropertyInfo>(); m_hierarchyItems = new Dictionary<Control, HierarchyItem>(); m_inspector = new Control(); m_inspector.SetPosition( position.width - INSPECTOR_WIDTH , CONTROL_DISPLAY_HEIGHT + TOP_MENU_SPACING ); m_inspector.SetWidth( INSPECTOR_WIDTH ); m_inspector.SetMargin( 0.0f, 0.0f, SIDE_MARGIN, 0.0f ); m_inspector.AddDecorator( new StackContent( StackContent.StackMode.Vertical, StackContent.OverflowMode.Flow ) ); AddChild( m_inspector ); m_hierarchy = new Control(); m_hierarchy.SetPosition( 0.0f, CONTROL_DISPLAY_HEIGHT + TOP_MENU_SPACING ); m_hierarchy.SetWidth( HIERARCHY_WIDTH ); m_hierarchy.SetMargin( SIDE_MARGIN, 0.0f, 0.0f, 0.0f ); m_hierarchy.AddDecorator( new StackContent( StackContent.StackMode.Vertical, StackContent.OverflowMode.Flow ) ); AddChild( m_hierarchy ); m_workarea = new Control(); m_workarea.SetPosition( m_viewportOffset ); m_workarea.AddDecorator( new ClipContent() ); AddChild( m_workarea ); m_resizeHandle = new Control(); m_resizeHandle.SetSize( RESIZE_HANDLE_SIZE, RESIZE_HANDLE_SIZE ); m_resizeHandle.AddDecorator( new BackgroundColor( Color.blue ) ); m_resizeHandle.Visibility = Control.VisibilityMode.Hidden; AddChild( m_resizeHandle ); SetSelectedControl( null ); SetInspectorTarget( null ); ShowToolbox(); }