public override void InitElements() { base.AddItem(HideButton); base.AddItem(AddButton); ImageItem icon = new ImageItem( DefaultsService.GetDefaultImage(EmbeddedImage.ArrowLeft, EmbeddedImageSize.Size64x64)); icon.SetRotationAngle(90); icon.KeepAspectRatio(true); icon.SetColorOverlay(Color.Black); HideButton.AddItem(icon); // Events HideButton.EventMouseClick += (sender, args) => { Hide(); }; EventScrollUp += (sender, args) => { _degreeDiff = -_scrollStep * _toRadianCoeff; RearrangeContacts(); }; EventScrollDown += (sender, args) => { _degreeDiff = _scrollStep * _toRadianCoeff; RearrangeContacts(); }; EventKeyPress += (sender, args) => { if (args.Key == KeyCode.Menu) { Hide(); } }; EventMousePress += OnMousePress; EventMouseDrag += OnMouseDrag; EventMouseDrop += OnMouseDrop; foreach (var item in _contacts) { base.AddItem(item); item.UpdateSize(ItemRadius); } _isInit = true; }
public override void InitWindow() { SetParameters(nameof(CharacterEditor), nameof(CharacterEditor), 1000, 600, false); IsCentered = true; //title TitleBar title = new TitleBar(nameof(CharacterEditor)); title.SetIcon( DefaultsService.GetDefaultImage(EmbeddedImage.User, EmbeddedImageSize.Size32x32), 20, 20); //layout VerticalStack layout = ItemFactory.GetStandardLayout(title.GetHeight()); ////////////////////////////////////////////////////////////////////////////// HorizontalStack toolbar = ItemFactory.GetToolbar(); VerticalSplitArea splitArea = ItemFactory.GetSplitArea(); BtnGenerate = ItemFactory.GetToolbarButton(); BtnSave = ItemFactory.GetToolbarButton(); NumberCount = ItemFactory.GetSpinItem(); ItemText.SetStyle(StyleFactory.GetTextAreaStyle()); ////////////////////////////////////////////////////////////////////////////// //adding AddItems(title, layout); layout.AddItems(toolbar, splitArea); splitArea.AssignLeftItem(ItemList); splitArea.AssignRightItem(ItemText); toolbar.AddItems(BtnGenerate, BtnSave, ItemFactory.GetVerticalDivider(), NumberCount); BtnGenerate.AddItem(ItemFactory.GetToolbarIcon( DefaultsService.GetDefaultImage(EmbeddedImage.Refresh, EmbeddedImageSize.Size32x32) )); BtnSave.AddItem(ItemFactory.GetToolbarIcon( DefaultsService.GetDefaultImage(EmbeddedImage.Diskette, EmbeddedImageSize.Size32x32) )); }
public override void InitElements() { //top _topLayout.SetHeightPolicy(SizePolicy.Fixed); _topLayout.SetHeight(30); _topLayout.SetSpacing(5, 0); _topLayout.SetBackground(Color.FromArgb(20, 255, 255, 255)); _expand.SetSize(20, 30); _expand.SetBackground(25, 25, 25); _expand.GetState(ItemStateType.Toggled).Background = Color.FromArgb(25, 25, 25); _expand.SetPadding(4, 9, 4, 9); _arrow.SetRotationAngle(180); _arrow.SetColorOverlay(Color.FromArgb(210, 210, 210)); _arrow.KeepAspectRatio(true); Name.SetHeightPolicy(SizePolicy.Fixed); Name.SetHeight(30); Name.SetMargin(5, 0, 0, 0); Name.SetFontSize(16); Name.SetFontStyle(FontStyle.Bold); _remove.SetSize(12, 12); _remove.SetCustomFigure(new Figure(false, GraphicsMathService.GetCross(12, 12, 3, 45))); _remove.SetBackground(100, 100, 100); _remove.SetAlignment(ItemAlignment.VCenter, ItemAlignment.Left); _remove.SetMargin(0, 0, 5, 0); //bottom _bottomLayout.SetHeightPolicy(SizePolicy.Fixed); _bottomLayout.SetHeight(30); _bottomLayout.SetSpacing(5, 0); _bottomLayout.SetAlignment(ItemAlignment.Left, ItemAlignment.Bottom); _pathLabel.SetWidthPolicy(SizePolicy.Fixed); _pathLabel.SetWidth(_pathLabel.GetTextWidth() + 5); // _pathLabel.SetMargin(5, 0, 0, 0); _pathLabel.SetFontSize(14); _pathBrowse.SetSize(30, 30); _pathBrowse.SetBackground(255, 255, 255, 20); _pathBrowse.SetPadding(7, 7, 7, 7); _pathBrowse.GetState(ItemStateType.Hovered).Background = Color.FromArgb(150, 255, 255, 255); AddItems( _topLayout, _bottomLayout ); _topLayout.AddItems( _expand, Name, _remove ); _bottomLayout.AddItems( _pathLabel, _pathEdit, _pathBrowse ); _expand.AddItem(_arrow); _pathBrowse.AddItem(new ImageItem(DefaultsService.GetDefaultImage(EmbeddedImage.Pencil, EmbeddedImageSize.Size32x32), false)); //events _expand.EventToggle += (sender, args) => { _bottomLayout.SetVisible(!_bottomLayout.IsVisible()); if (_bottomLayout.IsVisible()) { SetHeight(70); _arrow.SetRotationAngle(90); } else { SetHeight(30); _arrow.SetRotationAngle(180); } }; Name.EventMouseDoubleClick += (sender, args) => { OnDoubleClick.Invoke(this); }; _remove.EventMouseClick += (sender, args) => { Remove(); }; }
public override void InitWindow() { //window init SetParameters(nameof(MainWindow), nameof(MainWindow), 1300, 840, false); SetMinSize(500, 300); SetBackground(32, 34, 37); //title title = new TitleBar("Mimic"); title.SetStyle(Styles.GetTitleBarStyle()); HorizontalStack h_stack = new HorizontalStack(); h_stack.SetMargin(0, 22, 0, 0); h_stack.SetSpacing(0, 0); //left block VerticalStack left = new VerticalStack();//70 left.SetWidth(70); left.SetWidthPolicy(SizePolicy.Fixed); left.SetPadding(2, 0, 2, 2); left.SetSpacing(0, 10); SpaceVIL.Rectangle line = new SpaceVIL.Rectangle(); line.SetBackground(32, 34, 37); line.SetSizePolicy(SizePolicy.Expand, SizePolicy.Fixed); line.SetHeight(1); line.SetShadow(2, 0, 2, Color.FromArgb(150, 0, 0, 0)); line.SetMargin(8, 0, 8, 0); ButtonCore mimic_icon = new ButtonCore("M"); mimic_icon.SetFont(new Font(DefaultsService.GetDefaultFont().FontFamily, 30, FontStyle.Bold)); mimic_icon.SetSize(50, 50); mimic_icon.SetBackground(114, 137, 208); mimic_icon.SetAlignment(ItemAlignment.Top | ItemAlignment.HCenter); mimic_icon.SetBorderRadius(new CornerRadius(15)); SpaceVIL.Rectangle divider = new SpaceVIL.Rectangle(); divider.SetBackground(47, 49, 54); divider.SetSizePolicy(SizePolicy.Expand, SizePolicy.Fixed); divider.SetHeight(2); divider.SetMargin(15, 0, 15, 0); ButtonToggle notes_area_btn = new ButtonToggle("N"); notes_area_btn.SetFont(new Font(DefaultsService.GetDefaultFont().FontFamily, 30, FontStyle.Bold)); notes_area_btn.SetSize(50, 50); notes_area_btn.SetBackground(Color.Transparent); notes_area_btn.SetForeground(100, 101, 105); notes_area_btn.SetAlignment(ItemAlignment.Top | ItemAlignment.HCenter); notes_area_btn.SetBorderRadius(new CornerRadius(15)); notes_area_btn.SetBorderFill(100, 101, 105); notes_area_btn.SetBorderThickness(1); notes_area_btn.EventMouseClick += (sender, args) => { if (notes_area_btn.IsToggled()) { freeNotes.SetVisible(true); conversation.SetVisible(false); freeNotes.GetParent().Update(GeometryEventType.ResizeHeight); } else { freeNotes.SetVisible(false); conversation.SetVisible(true); freeNotes.GetParent().Update(GeometryEventType.ResizeHeight); } }; ButtonCore add_btn = new ButtonCore(); add_btn.SetSize(50, 50); add_btn.SetBackground(Color.Transparent); add_btn.SetAlignment(ItemAlignment.Top | ItemAlignment.HCenter); add_btn.SetBorderRadius(new CornerRadius(25)); add_btn.SetBorderFill(100, 101, 105); add_btn.SetBorderThickness(1); add_btn.SetToolTip("Add a new friend."); add_btn.EventMouseClick += (sender, args) => { AddMenuDialog dialog = new AddMenuDialog(); dialog.OnCloseDialog += () => { string result = dialog.InputResult; if (!result.Equals(String.Empty)) { contacts_bar.AddItem(InfinityItemsBox.GetVisualContact(result, input_message)); } }; dialog.Show(this); }; CustomShape plus = new CustomShape(); plus.SetBackground(100, 101, 105); plus.SetSize(20, 20); plus.SetAlignment(ItemAlignment.VCenter | ItemAlignment.HCenter); plus.SetTriangles(GraphicsMathService.GetCross(20, 20, 2, 0)); //middleblock VerticalStack middle = new VerticalStack();//240 middle.SetStyle(Styles.GetCommonContainerStyle()); middle.SetWidth(240); middle.SetWidthPolicy(SizePolicy.Fixed); middle.SetBackground(47, 49, 54); middle.SetBorderRadius(new CornerRadius(6, 0, 6, 0)); Frame search_bar = new Frame(); search_bar.SetBorderRadius(new CornerRadius(6, 0, 0, 0)); search_bar.SetBackground(47, 49, 54); search_bar.SetHeight(48); search_bar.SetPadding(15, 0, 15, 0); search_bar.SetHeightPolicy(SizePolicy.Fixed); search_bar.SetShadow(2, 0, 2, Color.FromArgb(150, 0, 0, 0)); contacts_bar = new ListBox(); contacts_bar.SetPadding(8, 8, 8, 8); contacts_bar.SetBackground(Color.Transparent); contacts_bar.SetHScrollBarVisible(ScrollBarVisibility.Never); contacts_bar.SetVScrollBarVisible(ScrollBarVisibility.Never); contacts_bar.SetSelectionVisible(false); Frame user_bar = new Frame(); user_bar.SetBorderRadius(new CornerRadius(0, 0, 6, 0)); user_bar.SetBackground(42, 44, 49); user_bar.SetHeight(48); user_bar.SetPadding(15, 0, 15, 0); user_bar.SetHeightPolicy(SizePolicy.Fixed); user_bar.SetAlignment(ItemAlignment.Bottom); TextEdit search = new TextEdit(); search.SetPadding(10, 0, 10, 0); search.SetFont(DefaultsService.GetDefaultFont(12)); search.SetForeground(150, 150, 150); search.SetSubstrateText("Find or start conversation"); search.SetSubstrateFontSize(12); search.SetSubstrateFontStyle(FontStyle.Regular); search.SetSubstrateForeground(100, 100, 100); search.SetHeight(32); search.SetBackground(37, 39, 43); search.SetAlignment(ItemAlignment.HCenter, ItemAlignment.VCenter); search.SetBorderRadius(4); search.SetBorderThickness(1); search.SetBorderFill(32, 34, 37); //right block VerticalStack right = new VerticalStack();//expand right.SetStyle(Styles.GetCommonContainerStyle()); right.SetSpacing(0, 2); HorizontalStack conversation_bar = new HorizontalStack(); conversation_bar.SetBackground(54, 57, 63); conversation_bar.SetHeight(48); conversation_bar.SetHeightPolicy(SizePolicy.Fixed); conversation_bar.SetPadding(10, 0, 0, 0); conversation_bar.SetSpacing(5, 0); conversation_bar.SetShadow(2, 0, 2, Color.FromArgb(150, 0, 0, 0)); freeNotes = new FreeArea(); freeNotes.SetVisible(false); freeNotes.SetBackground(Color.FromArgb(5, 255, 255, 255)); conversation = new ListBox(); conversation.SetPadding(4, 4, 4, 4); conversation.SetBackground(Color.Transparent); conversation.SetHScrollBarVisible(ScrollBarVisibility.Never); conversation.GetArea().SetPadding(16, 10, 2, 2); conversation.SetSelectionVisible(false); VerticalScrollBar vs = conversation.VScrollBar; vs.SetWidth(16); vs.SetBorderThickness(4); vs.SetBorderFill(54, 57, 63); vs.SetBorderRadius(new CornerRadius(9)); vs.SetArrowsVisible(false); vs.SetBackground(47, 49, 54); vs.SetPadding(0, 0, 0, 0); vs.Slider.Track.SetBackground(Color.Transparent); vs.Slider.SetBorderThickness(4); vs.Slider.SetBorderFill(54, 57, 63); vs.Slider.SetBorderRadius(new CornerRadius(9)); vs.Slider.SetBackground(32, 34, 37, 255); vs.Slider.SetMargin(new Indents(0, 0, 0, 0)); vs.Slider.RemoveAllItemStates(); HorizontalStack input_bar = new HorizontalStack(); input_bar.SetHeight(44); input_bar.SetHeightPolicy(SizePolicy.Fixed); input_bar.SetMargin(20, 10, 20, 30); input_bar.SetPadding(15, 0, 8, 0); input_bar.SetSpacing(10, 0); input_bar.SetBackground(72, 75, 81); input_bar.SetBorderRadius(new CornerRadius(6, 6, 6, 6)); ButtonCore emoji = new ButtonCore("+"); emoji.SetSize(24, 24); emoji.SetBackground(126, 128, 132); emoji.SetAlignment(ItemAlignment.VCenter | ItemAlignment.Left); emoji.SetBorderRadius(new CornerRadius(12)); SpaceVIL.Rectangle divider_v = new SpaceVIL.Rectangle(); divider_v.SetBackground(126, 128, 132); divider_v.SetWidth(2); divider_v.SetSizePolicy(SizePolicy.Fixed, SizePolicy.Expand); divider_v.SetMargin(0, 10, 0, 10); input_message = new TextEdit(); input_message.SetBackground(Color.Transparent); input_message.SetForeground(Color.White); input_message.SetAlignment(ItemAlignment.VCenter); input_message.SetBorderRadius(new CornerRadius(0, 3, 0, 3)); input_message.SetSubstrateText("Message @Jackson"); input_message.EventKeyPress += (sender, args) => { if (args.Key == KeyCode.Enter) { conversation.AddItem(InfinityItemsBox.GetMessage(input_message.GetText())); input_message.Clear(); } }; ButtonCore add_note = InfinityItemsBox.GetOrdinaryButton(); add_note.SetForeground(166, 167, 168); add_note.SetFont(new Font(DefaultsService.GetDefaultFont().FontFamily, 12, FontStyle.Bold)); add_note.SetText("Add new note"); add_note.SetWidth(100); add_note.SetShadow(4, 0, 2, Color.FromArgb(150, 0, 0, 0)); add_note.EventMouseClick += (sender, args) => { NoteBlock block = InfinityItemsBox.GetNoteBlock(); block.SetPosition(100, 100); freeNotes.AddItem(block); }; //adding items AddItems( title, h_stack ); h_stack.AddItems( left, middle, right ); left.AddItems( line, mimic_icon, divider, notes_area_btn, add_btn ); add_btn.AddItem( plus ); middle.AddItems( search_bar, contacts_bar, user_bar ); search_bar.AddItems( search ); user_bar.AddItems( new UserBar("Daniel") ); right.AddItems( conversation_bar, conversation, freeNotes, input_bar ); conversation_bar.AddItems( add_note, InfinityItemsBox.GetOrdinaryButton(), InfinityItemsBox.GetOrdinaryButton(), InfinityItemsBox.GetOrdinaryButton(), InfinityItemsBox.GetOrdinaryButton() ); input_bar.AddItems( emoji, divider_v, input_message ); contacts_bar.AddItems( InfinityItemsBox.GetVisualContact("Jackson", input_message), InfinityItemsBox.GetVisualContact("Evelyn", input_message), InfinityItemsBox.GetVisualContact("Alexander", input_message), InfinityItemsBox.GetVisualContact("Matthew", input_message) ); }
public override void InitWindow() { SetParameters(nameof(MainWindow), nameof(MainWindow), 1240, 750, false); IsCentered = true; var icon = new Bitmap(Assembly.GetExecutingAssembly().GetManifestResourceStream("SimpleImageViewer.Resources.icon.png")); TitleBar title = new TitleBar("Simple Image Viewer - C#"); title.SetIcon(icon, 24, 24); title.SetPadding(4, 0, 5, 0); Frame layout = new Frame(); layout.SetMargin(0, title.GetHeight(), 0, 0); layout.SetPadding(0, 0, 0, 0); layout.SetSpacing(6); layout.SetBackground(60, 60, 60); VerticalStack vToolbar = new VerticalStack(); vToolbar.SetWidthPolicy(SizePolicy.Fixed); vToolbar.SetWidth(30); vToolbar.SetBackground(32, 32, 32); vToolbar.SetPadding(0, 30, 0, 0); HorizontalSplitArea splitArea = new HorizontalSplitArea(); splitArea.SetMargin(vToolbar.GetWidth(), 0, 0, 0); splitArea.SetSplitThickness(5); imageArea = new WrapGrid(160, 120, Orientation.Horizontal); imageArea.SetBackground(Color.Transparent); imageArea.SetPadding(15, 6, 6, 6); imageArea.GetArea().SetSpacing(6, 6); imageArea.VScrollBar.SetStyle(Style.GetSimpleVerticalScrollBarStyle()); imageArea.SetStretch(true); previewArea = new PreviewArea(imageArea); side = new AlbumSideList(this, Side.Left, imageArea, previewArea); side.SetAreaSize(400); Album defaultAlbum = new Album("MyPictures", Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) + Path.DirectorySeparatorChar + "Pictures"); defaultAlbum.OnDoubleClick += (sender) => { side.Hide(); Model.FillImageArea(this, imageArea, previewArea, (sender as Album).GetPath()); }; side.AddAlbum(defaultAlbum); ButtonCore btnSideAreaShow = new ButtonCore(); btnSideAreaShow.SetStyle(CustomStyles.GetButtonStyle()); ButtonCore btnOpenFolder = new ButtonCore(); btnOpenFolder.SetStyle(CustomStyles.GetButtonStyle()); ButtonCore btnAddAlbum = new ButtonCore(); btnAddAlbum.SetStyle(CustomStyles.GetButtonStyle()); //adding AddItems( title, layout ); layout.AddItems( vToolbar, splitArea ); splitArea.AssignTopItem(previewArea); splitArea.AssignBottomItem(imageArea); splitArea.SetSplitPosition(300); vToolbar.AddItems( btnSideAreaShow, btnOpenFolder, btnAddAlbum ); btnSideAreaShow.AddItem(new ImageItem(DefaultsService.GetDefaultImage(EmbeddedImage.Lines, EmbeddedImageSize.Size32x32), false)); btnOpenFolder.AddItem(new ImageItem(DefaultsService.GetDefaultImage(EmbeddedImage.Folder, EmbeddedImageSize.Size32x32), false)); btnAddAlbum.AddItem(new ImageItem(DefaultsService.GetDefaultImage(EmbeddedImage.Import, EmbeddedImageSize.Size32x32), false)); //events EventDrop += (sender, args) => { if (side.IsHide) { if (File.GetAttributes(args.Paths[0]).HasFlag(FileAttributes.Directory)) { Model.FillImageArea(this, imageArea, previewArea, args.Paths[0]); } } else { foreach (String path in args.Paths) { if (File.GetAttributes(path).HasFlag(FileAttributes.Directory)) { Album album = new Album(new DirectoryInfo(path).Name, path); side.AddAlbum(album); album.OnDoubleClick += (s) => { side.Hide(); Model.FillImageArea(this, imageArea, previewArea, (s as Album).GetPath()); }; } } } }; btnSideAreaShow.EventMouseClick += (sender, args) => { side.Show(); }; btnOpenFolder.EventMouseClick += (sender, args) => { OpenEntryDialog browse = new OpenEntryDialog("Open Folder:", FileSystemEntryType.Directory, OpenDialogType.Open); browse.OnCloseDialog += () => { Model.FillImageArea(this, imageArea, previewArea, browse.GetResult()); }; browse.Show(this); }; imageArea.EventScrollUp += (sender, args) => { if (args.Mods.HasFlag(KeyMods.Control)) { int w = imageArea.GetCellWidth() + 8; int h = imageArea.GetCellHeight() + 6; if (w > 400) { return; } imageArea.SetCellSize(w, h); } }; imageArea.EventScrollDown += (sender, args) => { if (args.Mods.HasFlag(KeyMods.Control)) { int w = imageArea.GetCellWidth() - 8; int h = imageArea.GetCellHeight() - 6; if (w < 160) { return; } imageArea.SetCellSize(w, h); } }; btnAddAlbum.EventMouseClick += (sender, args) => { OpenEntryDialog browse = new OpenEntryDialog("Open Folder:", FileSystemEntryType.Directory, OpenDialogType.Open); browse.OnCloseDialog += () => { if (browse.GetResult() == null || browse.GetResult() == String.Empty) { return; } Album album = new Album(new DirectoryInfo(browse.GetResult()).Name, browse.GetResult()); side.AddAlbum(album); album.OnDoubleClick += (s) => { side.Hide(); Model.FillImageArea(this, imageArea, previewArea, (s as Album).GetPath()); }; }; browse.Show(this); }; EventOnStart += () => { Model.FillImageArea(this, imageArea, previewArea, Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) + Path.DirectorySeparatorChar + "Pictures"); } }
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() { base.InitElements(); if (_isInit) { return; } Window.SetBackground(60, 60, 60); Label _name = new Label(); _name.SetFont(DefaultsService.GetDefaultFont(FontStyle.Bold, 28)); _name.SetText("My Albums"); _name.SetMargin(0, 0, 0, 0); _name.SetMargin(0, 25, 0, 0); _name.SetPadding(10, 10, 10, 0); _name.SetHeightPolicy(SizePolicy.Fixed); _name.SetHeight(70); _albumList.SetSelectionVisible(false); _albumList.SetVScrollBarPolicy(VisibilityPolicy.AsNeeded); _albumList.SetHScrollBarPolicy(VisibilityPolicy.Never); _albumList.SetBackground(Color.Transparent); _albumList.SetMargin(10, 100, 10, 50); _albumList.VScrollBar.SetStyle(Style.GetSimpleVerticalScrollBarStyle()); Style style = new Style(); style.Background = Color.Transparent; style.Foreground = Color.Black; style.Font = DefaultsService.GetDefaultFont(); style.SetSizePolicy(SizePolicy.Fixed, SizePolicy.Fixed); style.SetSize(40, 40); style.SetAlignment(ItemAlignment.Right, ItemAlignment.Bottom); style.SetTextAlignment(ItemAlignment.Right, ItemAlignment.Bottom); style.SetPadding(4, 4, 4, 4); style.SetMargin(0, 0, 10, 10); style.SetSpacing(0, 0); style.SetBorder(new Border(Color.Transparent, new CornerRadius(20), 0)); style.AddItemState(ItemStateType.Hovered, new ItemState(Color.FromArgb(100, 255, 255, 255))); style.AddItemState(ItemStateType.Pressed, new ItemState(Color.FromArgb(100, 0, 0, 0))); _addButton.SetStyle(style); CustomShape plus = new CustomShape(GraphicsMathService.GetCross(30, 30, 4, 0)); plus.SetAlignment(ItemAlignment.HCenter, ItemAlignment.VCenter); plus.SetBackground(100, 100, 100); plus.SetSizePolicy(SizePolicy.Expand, SizePolicy.Expand); AddItems( _name, _albumList, _addButton ); _addButton.AddItem(plus); _addButton.EventMouseClick += (sender, args) => { Hide(); OpenEntryDialog browse = new OpenEntryDialog("Open Folder:", FileSystemEntryType.Directory, OpenDialogType.Open); browse.OnCloseDialog += () => { if (browse.GetResult() == null || browse.GetResult().Equals(String.Empty)) { Show(); return; } Album album = new Album(new DirectoryInfo(browse.GetResult()).Name, browse.GetResult()); AddAlbum(album); album.OnDoubleClick += (s) => { Hide(); Model.FillImageArea(GetHandler(), _area, _preview, (s as Album).GetPath()); }; }; browse.Show(GetHandler()); }; if (_list.Count > 0) { foreach (Album item in _list) { _albumList.AddItem(item); item._expand.EventToggle += (sender, args) => { _albumList.GetWrapper(item).UpdateSize(); _albumList.GetArea().UpdateLayout(); }; } } _isInit = true; }
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); }; }