public ContactMenu(CoreWindow window, RadialMenuItem radialMenu) { _radialMenu = radialMenu; _menu = new ContextMenu(window); _call = new MenuItem("Call"); _remove = new MenuItem("Remove"); _menu.SetStyle(StyleFactory.GetMenuStyle()); _menu.AddItems(_call, _remove); StyleFactory.GetMenuItemStyle().SetStyle(_call, _remove); InitEvents(); }
void InitContactMenu(CoreWindow handler) { cm = new ContextMenu(GetHandler()); cm.SetBorderRadius(5); cm.SetBorderThickness(1); cm.SetBorderFill(32, 32, 32); cm.SetBackground(60, 60, 60); cm.ItemList.SetSelectionVisible(false); cm.ActiveButton = MouseButton.ButtonRight; cm.ReturnFocus = _input; Call.SetForeground(Color.LightGray); Call.EventMouseClick += (sender, args) => { PopUpMessage pop = new PopUpMessage("Calling " + contact.GetText() + "..."); pop.AddItemState(ItemStateType.Hovered, new ItemState(Color.FromArgb(42, 44, 49))); pop.SetBorderRadius(new CornerRadius(6, 6, 6, 6)); pop.SetFont(DefaultsService.GetDefaultFont(18)); pop.SetShadow(5, 3, 3, Color.FromArgb(200, 0, 0, 0)); pop.Show(handler); }; SendMessage.SetForeground(Color.LightGray); RemoveFriend.SetForeground(Color.LightGray); RemoveFriend.EventMouseClick += (sender, args) => { DisposeSelf(); }; //add menuitems cm.AddItems( Call, SendMessage, RemoveFriend ); }
void Update() { bool AnyButtonUp = false; for (int i = 0; i < 3; i++) { if (Input.GetMouseButtonUp(i)) { mouseButtonUpStates[i] = true; AnyButtonUp = true; } else { mouseButtonUpStates[i] = false; } } if (Input.mouseScrollDelta.y != 0) { List <RaycastResult> Hits = Raycast(Input.mousePosition); if (Hits.Count <= 0 || (Hits.Count > 0 && Hits[0].gameObject.transform.root.tag != "Screen UI")) { if (Input.mouseScrollDelta.y > 0) { DragOrigin = Camera.main.ScreenToWorldPoint(Input.mousePosition); Camera.main.orthographicSize *= 0.9f; Vector3 DragDelta = Camera.main.ScreenToWorldPoint(Input.mousePosition) - Camera.main.transform.position; Camera.main.transform.position = DragOrigin - DragDelta; } else if (Input.mouseScrollDelta.y < 0) { DragOrigin = Camera.main.ScreenToWorldPoint(Input.mousePosition); Camera.main.orthographicSize *= 1.1f; Vector3 DragDelta = Camera.main.ScreenToWorldPoint(Input.mousePosition) - Camera.main.transform.position; Camera.main.transform.position = DragOrigin - DragDelta; } } } if (Input.GetMouseButtonDown(2)) { DragOrigin = Camera.main.ScreenToWorldPoint(Input.mousePosition); MiddleDrag = true; } if (MiddleDrag) { Vector3 DragDelta = Camera.main.ScreenToWorldPoint(Input.mousePosition) - Camera.main.transform.position; Camera.main.transform.position = DragOrigin - DragDelta; } if (AnyButtonUp) { List <RaycastResult> Hits = Raycast(Input.mousePosition); ContextMenu.Close(); if (Hits.Count > 0) { GameObject firstHit = Hits[0].gameObject; IRightClickable rightClickableObject = firstHit.GetComponent <IRightClickable>(); if (rightClickableObject != null && mouseButtonUpStates[1]) { GameObject[] menuItems = rightClickableObject.CreateMenuItems(); if (menuItems != null) { ContextMenu.AddItems(menuItems); ContextMenu.OpenAtPoint(Camera.main.ScreenToWorldPoint(Input.mousePosition)); } } } if (mouseButtonUpStates[2]) { MiddleDrag = false; } } }
public override void InitElements() { _palette.SetPassEvents(false); _palette.SetItemName("Palette"); _palette.SetAlignment(ItemAlignment.Right | ItemAlignment.Top); _palette.SetMargin(0, 40, 0, 0); _palette.SetSize(16, 15); _palette.SetBackground(255, 128, 128); _palette.SetBorderRadius(new CornerRadius(3)); CustomShape arrow = new CustomShape(); arrow.SetTriangles(GraphicsMathService.GetTriangle(angle: 180)); arrow.SetBackground(50, 50, 50); arrow.SetSize(14, 6); arrow.SetMargin(0, 1, 0, 0); arrow.SetSizePolicy(SizePolicy.Fixed, SizePolicy.Fixed); arrow.SetAlignment(ItemAlignment.HCenter | ItemAlignment.VCenter); _lock.SetAlignment(ItemAlignment.Left | ItemAlignment.Top); _lock.SetSize(16, 16); _lock.SetBorderRadius(new CornerRadius(8)); _lock.EventToggle += (sender, args) => { IsLocked = !IsLocked; _text.SetEditable(!_text.IsEditable()); _btn_close.SetDisabled(!_btn_close.IsDisabled()); }; VerticalScrollBar vs = _text.VScrollBar; vs.Slider.Handler.RemoveAllItemStates(); vs.SetArrowsVisible(false); vs.SetBackground(Color.Transparent); vs.SetPadding(0, 2, 0, 2); vs.Slider.Track.SetBackground(Color.Transparent); vs.Slider.Handler.SetBorderRadius(new CornerRadius(3)); vs.Slider.Handler.SetBackground(80, 80, 80, 255); vs.Slider.Handler.SetMargin(new Indents(5, 0, 5, 0)); _text.SetBorderRadius(new CornerRadius(3)); _text.SetHScrollBarPolicy(VisibilityPolicy.Never); _text.SetHeight(25); _text.SetAlignment(ItemAlignment.Left | ItemAlignment.Bottom); _text.SetBackground(151, 203, 255); _text.SetMargin(0, 60, 0, 0); _note.SetForeground(180, 180, 180); _note.SetHeight(25); _note.SetAlignment(ItemAlignment.Left | ItemAlignment.Top); _note.SetTextAlignment(ItemAlignment.VCenter | ItemAlignment.Left); _note.SetSizePolicy(SizePolicy.Expand, SizePolicy.Fixed); _note.SetText("Add a Note:"); _note.SetMargin(0, 30, 0, 0); _btn_close = new ButtonCore(); _btn_close.SetBackground(Color.FromArgb(255, 100, 100, 100)); _btn_close.SetItemName("Close_" + GetItemName()); _btn_close.SetSize(10, 10); _btn_close.SetMargin(0, 0, 0, 0); _btn_close.SetSizePolicy(SizePolicy.Fixed, SizePolicy.Fixed); _btn_close.SetAlignment(ItemAlignment.Top | ItemAlignment.Right); _btn_close.AddItemState(ItemStateType.Hovered, new ItemState() { Background = Color.FromArgb(125, 255, 255, 255) }); _btn_close.SetCustomFigure(new Figure(false, GraphicsMathService.GetCross(10, 10, 3, 45))); _btn_close.EventMouseClick += (sender, args) => { Dispose(); }; AddItems(_lock, _note, _text, _palette, _btn_close); _palette.AddItem(arrow); _palette_menu = new ContextMenu(GetHandler()); _palette_menu.SetBorderRadius(5); _palette_menu.SetBorderThickness(1); _palette_menu.SetBorderFill(32, 32, 32); _palette_menu.SetBackground(60, 60, 60); _palette_menu.SetWidth(100); _palette_menu.ItemList.SetSelectionVisible(false); _palette_menu.ActiveButton = MouseButton.ButtonLeft; MenuItem red = InfinityItemsBox.GetMenuItem("Red"); red.EventMouseClick += (sender, args) => { _text.SetBackground(255, 196, 196); }; MenuItem green = InfinityItemsBox.GetMenuItem("Green"); green.EventMouseClick += (sender, args) => { _text.SetBackground(138, 255, 180); }; MenuItem blue = InfinityItemsBox.GetMenuItem("Blue"); blue.EventMouseClick += (sender, args) => { _text.SetBackground(151, 203, 255); }; MenuItem yellow = InfinityItemsBox.GetMenuItem("Yellow"); yellow.EventMouseClick += (sender, args) => { _text.SetBackground(234, 232, 162); }; _palette_menu.AddItems(red, green, blue, yellow); //mouse click to show palette _palette.EventMouseClick += (_, x) => _palette_menu.Show(_, x); }
public override void InitElements() { _image.KeepAspectRatio(true); _image.IsHover = false; _toolbar.SetHeightPolicy(SizePolicy.Fixed); _toolbar.SetHeight(30); _toolbar.SetBackground(32, 32, 32); _toolbar.SetSpacing(10, 0); _toolbar.SetPadding(30, 0, 10, 0); _pictureSize.SetWidthPolicy(SizePolicy.Fixed); _pictureSize.SetWidth(100); _pictureSize.SetTextAlignment(ItemAlignment.VCenter, ItemAlignment.Right); Area.SetMargin(0, 30, 0, 0); ButtonCore _expand = new ButtonCore(); _expand.SetSize(30, 30); _expand.SetAlignment(ItemAlignment.Right, ItemAlignment.Bottom); _expand.SetMargin(0, 0, 10, 10); _expand.SetBackground(Color.Transparent); _expand.SetBorderRadius(15); _expand.SetPadding(5, 5, 5, 5); _expand.AddItemState(ItemStateType.Hovered, new ItemState(Color.FromArgb(20, 255, 255, 255))); _expand.AddItemState(ItemStateType.Pressed, new ItemState(Color.Transparent)); ButtonCore _menu = new ButtonCore(); _menu.SetSize(30, 30); _menu.SetAlignment(ItemAlignment.Right, ItemAlignment.Top); _menu.SetMargin(0, 40, 10, 0); _menu.SetBackground(Color.Transparent); _menu.SetBorderRadius(15); _menu.SetPadding(5, 5, 5, 5); _menu.AddItemState(ItemStateType.Hovered, new ItemState(Color.FromArgb(20, 255, 255, 255))); _menu.AddItemState(ItemStateType.Pressed, new ItemState(Color.Transparent)); base.AddItem(_toolbar); base.AddItem(Area); base.AddItem(_expand); base.AddItem(_menu); Area.AddItem(_image); ImageItem eye = new ImageItem(DefaultsService.GetDefaultImage(EmbeddedImage.Eye, EmbeddedImageSize.Size32x32), false); eye.KeepAspectRatio(true); ImageItem gear = new ImageItem(DefaultsService.GetDefaultImage(EmbeddedImage.Gear, EmbeddedImageSize.Size32x32), false); gear.KeepAspectRatio(true); _expand.AddItem(eye); _menu.AddItem(gear); ContextMenu _rotationMenu = new ContextMenu(GetHandler()); _rotationMenu.ActiveButton = MouseButton.ButtonLeft; MenuItem _rot0 = new MenuItem("Rotate 0\u00b0"); _rot0.EventMouseClick += (sender, args) => { _image.SetRotationAngle(0); }; MenuItem _rot90 = new MenuItem("Rotate 90\u00b0"); _rot90.EventMouseClick += (sender, args) => { _image.SetRotationAngle(90); }; MenuItem _rot180 = new MenuItem("Rotate 180\u00b0"); _rot180.EventMouseClick += (sender, args) => { _image.SetRotationAngle(180); }; MenuItem _rot270 = new MenuItem("Rotate -90\u00b0"); _rot270.EventMouseClick += (sender, args) => { _image.SetRotationAngle(270); }; _rotationMenu.AddItems(_rot0, _rot90, _rot180, _rot270); _menu.EventMouseClick += (sender, args) => { _rotationMenu.Show(sender, args); }; _toolbar.AddItems(_pictureName, _pictureSize); _expand.EventMouseClick += (sender, args) => { String picture = Model.GetPicturePath(_wrapLink, _pictureName.GetText()); if (picture != String.Empty) { using (Bitmap img = new Bitmap(picture)) { ImageItem image = new ImageItem(Model.DownScaleBitmap(img, 1920, 1080), false); FullImageViewer viewer = new FullImageViewer(image); viewer.Show(GetHandler()); } } }; eye.SetColorOverlay(Color.FromArgb(0, 91, 225, 152), false); gear.SetColorOverlay(Color.FromArgb(0, 110, 170, 255), false); _expand.EventMouseHover += (sender, args) => { eye.SetColorOverlay(true); }; _expand.EventMouseLeave += (sender, args) => { eye.SetColorOverlay(false); }; _menu.EventMouseHover += (sender, args) => { gear.SetColorOverlay(true); }; _menu.EventMouseLeave += (sender, args) => { gear.SetColorOverlay(false); }; }