/// <summary> /// Grids the demo. /// </summary> /// <param name="ctx">Context.</param> /// <param name="media">Media.</param> public static void grid_demo(this NuklearContext ctx, Media media) { int i; ctx.StyleSetFont(media.font); ctx.StyleSetFontSize(20); if (ctx.Begin("Grid Demo", new RectangleF(600, 350, 275, 250), Nuklear.NK_WINDOW_TITLE | Nuklear.NK_WINDOW_BORDER | Nuklear.NK_WINDOW_MOVABLE | Nuklear.NK_WINDOW_NO_SCROLLBAR)) { ctx.StyleSetFontSize(18); ctx.LayoutRowDynamic(30, 2); ctx.Label("String:", nk_text_align.NK_TEXT_RIGHT); ctx.EditString(Nuklear.NK_EDIT_FIELD, ref edit_strings[0], 64, Nuklear.nk_filter_default); ctx.Label("Floating point:", nk_text_align.NK_TEXT_RIGHT); ctx.EditString(Nuklear.NK_EDIT_FIELD, ref edit_strings[1], 64, Nuklear.nk_filter_float); ctx.Label("Hexadecimal:", nk_text_align.NK_TEXT_RIGHT); ctx.EditString(Nuklear.NK_EDIT_FIELD, ref edit_strings[2], 64, Nuklear.nk_filter_hex); ctx.Label("Binary:", nk_text_align.NK_TEXT_RIGHT); ctx.EditString(Nuklear.NK_EDIT_FIELD, ref edit_strings[3], 64, Nuklear.nk_filter_binary); ctx.Label("Checkbox:", nk_text_align.NK_TEXT_RIGHT); ctx.CheckboxLabel("Check me", ref grid_check); ctx.Label("Combobox:", nk_text_align.NK_TEXT_RIGHT); if (ctx.ComboBeginLabel(items[selectedItem], new Vector2(ctx.WidgetWidth(), 200))) { ctx.LayoutRowDynamic(25, 1); for (i = 0; i < 3; ++i) { if (ctx.ComboItemLabel(items[i], nk_text_align.NK_TEXT_LEFT)) { selectedItem = i; } } ctx.ComboEnd(); } } ctx.End(); ctx.StyleSetFontSize(14); }
/// <summary> /// Grids the demo. /// </summary> /// <param name="ctx">Context.</param> /// <param name="media">Media.</param> public static void grid_demo(NuklearContext ctx, Media media) { int i; ctx.StyleSetFont(media.Font20.Handle); if (ctx.Begin("Grid Demo", Nk.nk_rect_(600, 350, 275, 250), PanelFlags.TITLE | PanelFlags.BORDER | PanelFlags.MOVABLE | PanelFlags.NO_SCROLLBAR)) { ctx.StyleSetFont(media.Font18.Handle); ctx.LayoutRowDynamic(30, 2); ctx.Label("String:", Alignment.MIDDLERIGHT); ctx.EditString(NkEditFlags.FIELD, ref EditStrings[0], 64, Nk.nk_filter_default); ctx.Label("Floating point:", Alignment.MIDDLERIGHT); ctx.EditString(NkEditFlags.FIELD, ref EditStrings[1], 64, Nk.nk_filter_float); ctx.Label("Hexadecimal:", Alignment.MIDDLERIGHT); ctx.EditString(NkEditFlags.FIELD, ref EditStrings[2], 64, Nk.nk_filter_hex); ctx.Label("Binary:", Alignment.MIDDLERIGHT); ctx.EditString(NkEditFlags.FIELD, ref EditStrings[3], 64, Nk.nk_filter_binary); ctx.Label("Checkbox:", Alignment.MIDDLERIGHT); ctx.CheckboxLabel("Check me", ref _gridCheck); ctx.Label("Combobox:", Alignment.MIDDLERIGHT); if (ctx.ComboBeginLabel(Items[_selectedItem2], Nk.nk_vec2_(ctx.WidgetWidth(), 200))) { ctx.LayoutRowDynamic(25, 1); for (i = 0; i < 3; ++i) { if (ctx.ComboItemLabel(Items[i], Alignment.MIDDLELEFT)) { _selectedItem2 = i; } } ctx.ComboEnd(); } } ctx.End(); ctx.StyleSetFont(media.Font14.Handle); }
public static void basic_demo(this NuklearContext ctx, Media media) { int i; ctx.StyleSetFont(media.font); ctx.StyleSetFontSize(20); ctx.Begin("Basic Demo", new RectangleF(320, 50, 275, 610), Nuklear.NK_WINDOW_BORDER | Nuklear.NK_WINDOW_MOVABLE | Nuklear.NK_WINDOW_TITLE); ui_header(ctx, media, "Popup & Scrollbar & Images"); ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(media.dir, "Images", nk_text_align.NK_TEXT_CENTERED)) { image_active = !image_active; } ui_header(ctx, media, "Selected Image"); ui_widget_centered(ctx, media, 100); ctx.Image(media.images[selected_image]); if (image_active) { if (ctx.PopupBegin(Nuklear.NK_POPUP_STATIC, "Image Popup", 0, new RectangleF(265, 0, 320, 220))) { ctx.LayoutRowStatic(82, 82, 3); for (i = 0; i < 9; ++i) { if (ctx.ButtonImage(media.images[i])) { selected_image = i; image_active = false; ctx.PopupClose(); } } ctx.PopupEnd(); } } ui_header(ctx, media, "Combo box"); ui_widget(ctx, media, 40); if (ctx.ComboBeginLabel(items2[selected_item], new Vector2(ctx.WidgetWidth(), 200))) { ctx.LayoutRowDynamic(35, 1); for (i = 0; i < 3; ++i) { if (ctx.ComboItemLabel(items2[i], nk_text_align.NK_TEXT_LEFT)) { selected_item = i; } } ctx.ComboEnd(); } ui_widget(ctx, media, 40); if (ctx.ComboBeginImageLabel(items2[selected_icon], media.images[selected_icon], new Vector2(ctx.WidgetWidth(), 200))) { ctx.LayoutRowDynamic(35, 1); for (i = 0; i < 3; ++i) { if (ctx.ComboItemImageLabel(media.images[i], items2[i], nk_text_align.NK_TEXT_RIGHT)) { selected_icon = i; } } ctx.ComboEnd(); } ui_header(ctx, media, "Checkbox"); ui_widget(ctx, media, 30); ctx.CheckboxLabel("Flag 1", ref check0); ui_widget(ctx, media, 30); ctx.CheckboxLabel("Flag 2", ref check1); ui_header(ctx, media, "Progressbar"); ui_widget(ctx, media, 35); ctx.Progress(ref prog, 100, Nuklear.nk_true); if (Nuklear.nk_input_is_mouse_click_down_in_rect(ctx.input, Nuklear.NK_BUTTON_RIGHT, ctx.WindowGetBounds(), true)) { piemenu_pos = ctx.input.mouse.pos; piemenu_active = true; } if (piemenu_active) { var ret = ui_piemenu(ctx, piemenu_pos, 140, media.menu, 6); if (ret == -2) { piemenu_active = false; } if (ret != -1) { Console.Write("piemenu selected: {0}\n", ret); piemenu_active = false; } } ctx.StyleSetFontSize(14); ctx.End(); }
public static void button_demo(this NuklearContext ctx, Media media) { ctx.StyleSetFont(media.font); ctx.StyleSetFontSize(20); ctx.Begin("Button Demo", new RectangleF(50, 50, 255, 610), Nuklear.NK_WINDOW_BORDER | Nuklear.NK_WINDOW_MOVABLE | Nuklear.NK_WINDOW_TITLE); /*------------------------------------------------ * MENU *------------------------------------------------*/ ctx.MenubarBegin(); { /* toolbar */ ctx.LayoutRowStatic(40, 40, 4); if (ctx.MenuBeginImage("Music", media.play, new Vector2(110, 120))) { /* settings */ ctx.LayoutRowDynamic(25, 1); ctx.MenuItemImageLabel(media.play, "Play", nk_text_align.NK_TEXT_RIGHT); ctx.MenuItemImageLabel(media.stop, "Stop", nk_text_align.NK_TEXT_RIGHT); ctx.MenuItemImageLabel(media.pause, "Pause", nk_text_align.NK_TEXT_RIGHT); ctx.MenuItemImageLabel(media.next, "Next", nk_text_align.NK_TEXT_RIGHT); ctx.MenuItemImageLabel(media.prev, "Prev", nk_text_align.NK_TEXT_RIGHT); ctx.MenuEnd(); } ctx.ButtonImage(media.tools); ctx.ButtonImage(media.cloud); ctx.ButtonImage(media.pen); } ctx.MenubarEnd(); /*------------------------------------------------ * BUTTON *------------------------------------------------*/ ui_header(ctx, media, "Push buttons"); ui_widget(ctx, media, 35); if (ctx.ButtonLabel("Push me")) { Console.Write("pushed!\n"); } ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(media.rocket, "Styled", nk_text_align.NK_TEXT_CENTERED)) { Console.Write("rocket!\n"); } /*------------------------------------------------ * REPEATER *------------------------------------------------*/ ui_header(ctx, media, "Repeater"); ui_widget(ctx, media, 35); if (ctx.ButtonLabel("Press me")) { Console.Write("pressed!\n"); } /*------------------------------------------------ * TOGGLE *------------------------------------------------*/ ui_header(ctx, media, "Toggle buttons"); ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(toggle0 ? media.checkd : media.uncheckd, "Toggle", nk_text_align.NK_TEXT_LEFT)) { toggle0 = !toggle0; } ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(toggle1 ? media.checkd : media.uncheckd, "Toggle", nk_text_align.NK_TEXT_LEFT)) { toggle1 = !toggle1; } ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(toggle2 ? media.checkd : media.uncheckd, "Toggle", nk_text_align.NK_TEXT_LEFT)) { toggle2 = !toggle2; } /*------------------------------------------------ * RADIO *------------------------------------------------*/ ui_header(ctx, media, "Radio buttons"); ui_widget(ctx, media, 35); if (ctx.ButtonSymbolLabel( option == 0 ? nk_symbol_type.NK_SYMBOL_CIRCLE_OUTLINE : nk_symbol_type.NK_SYMBOL_CIRCLE_SOLID, "Select", nk_text_align.NK_TEXT_LEFT)) { option = 0; } ui_widget(ctx, media, 35); if (ctx.ButtonSymbolLabel( option == 1 ? nk_symbol_type.NK_SYMBOL_CIRCLE_OUTLINE : nk_symbol_type.NK_SYMBOL_CIRCLE_SOLID, "Select", nk_text_align.NK_TEXT_LEFT)) { option = 1; } ui_widget(ctx, media, 35); if (ctx.ButtonSymbolLabel( option == 2 ? nk_symbol_type.NK_SYMBOL_CIRCLE_OUTLINE : nk_symbol_type.NK_SYMBOL_CIRCLE_SOLID, "Select", nk_text_align.NK_TEXT_LEFT)) { option = 2; } /*------------------------------------------------ * CONTEXTUAL *------------------------------------------------*/ ctx.StyleSetFontSize(18); if (ctx.ContextualBegin(Nuklear.NK_WINDOW_NO_SCROLLBAR, new Vector2(150, 300), ctx.WindowGetBounds())) { ctx.LayoutRowDynamic(30, 1); if (ctx.ContextualItemImageLabel(media.copy, "Clone", nk_text_align.NK_TEXT_RIGHT)) { Console.Write("pressed clone!\n"); } if (ctx.ContextualItemImageLabel(media.del, "Delete", nk_text_align.NK_TEXT_RIGHT)) { Console.Write("pressed delete!\n"); } if (ctx.ContextualItemImageLabel(media.convert, "Convert", nk_text_align.NK_TEXT_RIGHT)) { Console.Write("pressed convert!\n"); } if (ctx.ContextualItemImageLabel(media.edit, "Edit", nk_text_align.NK_TEXT_RIGHT)) { Console.Write("pressed edit!\n"); } ctx.ContextualEnd(); } ctx.StyleSetFontSize(14); ctx.End(); }
public static void basic_demo(NuklearContext ctx, Media media) { int i; ctx.StyleSetFont(media.Font20.Handle); ctx.Begin("Basic Demo", Nk.nk_rect_(320, 50, 275, 610), PanelFlags.BORDER | PanelFlags.MOVABLE | PanelFlags.TITLE); ui_header(ctx, media, "Popup & Scrollbar & Images"); ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(media.Dir, "Images", Alignment.MIDDLECENTERED)) { _imageActive = !_imageActive; } ui_header(ctx, media, "Selected Image"); ui_widget_centered(ctx, media, 100); ctx.Image(media.Images[_selectedImage]); if (_imageActive) { if (ctx.PopupBegin(NkPopupType.NK_POPUP_STATIC, "Image Popup", 0, Nk.nk_rect_(265, 0, 320, 220))) { ctx.LayoutRowStatic(82, 82, 3); for (i = 0; i < 9; ++i) { if (ctx.ButtonImage(media.Images[i])) { _selectedImage = i; _imageActive = false; ctx.PopupClose(); } } ctx.PopupEnd(); } } ui_header(ctx, media, "Combo box"); ui_widget(ctx, media, 40); if (ctx.ComboBeginLabel(Items2[_selectedItem1], Nk.nk_vec2_(ctx.WidgetWidth(), 200))) { ctx.LayoutRowDynamic(35, 1); for (i = 0; i < 3; ++i) { if (ctx.ComboItemLabel(Items2[i], Alignment.MIDDLELEFT)) { _selectedItem1 = i; } } ctx.ComboEnd(); } ui_widget(ctx, media, 40); if (ctx.ComboBeginImageLabel(Items2[_selectedIcon], media.Images[_selectedIcon], Nk.nk_vec2_(ctx.WidgetWidth(), 200))) { ctx.LayoutRowDynamic(35, 1); for (i = 0; i < 3; ++i) { if (ctx.ComboItemImageLabel(media.Images[i], Items2[i], Alignment.MIDDLERIGHT)) { _selectedIcon = i; } } ctx.ComboEnd(); } ui_header(ctx, media, "Checkbox"); ui_widget(ctx, media, 30); ctx.CheckboxLabel("Flag 1", ref _check0); ui_widget(ctx, media, 30); ctx.CheckboxLabel("Flag 2", ref _check1); ui_header(ctx, media, "Progressbar"); ui_widget(ctx, media, 35); ctx.Progress(ref _prog, 100, Nk.nk_true); if (Nk.nk_input_is_mouse_click_down_in_rect(ctx.Ctx.Input, NkButtons.RIGHT, ctx.WindowGetBounds(), Nk.nk_true) != 0) { _piemenuPos = ctx.Ctx.Input.mouse.Pos; _piemenuActive = true; } if (_piemenuActive) { var ret = ui_piemenu(ctx, _piemenuPos, 140, media.Menu, 6); if (ret == -2) { _piemenuActive = false; } if (ret != -1) { Console.Write("piemenu selected: {0}\n", ret); _piemenuActive = false; } } ctx.StyleSetFont(media.Font14.Handle); ctx.End(); }
public static void button_demo(NuklearContext ctx, Media media) { ctx.StyleSetFont(media.Font20.Handle); ctx.Begin("Button Demo", Nk.nk_rect_(50, 50, 255, 610), PanelFlags.BORDER | PanelFlags.MOVABLE | PanelFlags.TITLE); /*------------------------------------------------ * MENU *------------------------------------------------*/ ctx.MenubarBegin(); { /* toolbar */ ctx.LayoutRowStatic(40, 40, 4); if (ctx.MenuBeginImage("Music", media.Play, Nk.nk_vec2_(110, 120))) { /* settings */ ctx.LayoutRowDynamic(25, 1); ctx.MenuItemImageLabel(media.Play, "Play", Alignment.MIDDLERIGHT); ctx.MenuItemImageLabel(media.Stop, "Stop", Alignment.MIDDLERIGHT); ctx.MenuItemImageLabel(media.Pause, "Pause", Alignment.MIDDLERIGHT); ctx.MenuItemImageLabel(media.Next, "Next", Alignment.MIDDLERIGHT); ctx.MenuItemImageLabel(media.Prev, "Prev", Alignment.MIDDLERIGHT); ctx.MenuEnd(); } ctx.ButtonImage(media.Tools); ctx.ButtonImage(media.Cloud); ctx.ButtonImage(media.Pen); } ctx.MenubarEnd(); /*------------------------------------------------ * BUTTON *------------------------------------------------*/ ui_header(ctx, media, "Push buttons"); ui_widget(ctx, media, 35); if (ctx.ButtonLabel("Push me")) { Console.Write("pushed!\n"); } ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(media.Rocket, "Styled", Alignment.MIDDLECENTERED)) { Console.Write("rocket!\n"); } /*------------------------------------------------ * REPEATER *------------------------------------------------*/ ui_header(ctx, media, "Repeater"); ui_widget(ctx, media, 35); if (ctx.ButtonLabel("Press me")) { Console.Write("pressed!\n"); } /*------------------------------------------------ * TOGGLE *------------------------------------------------*/ ui_header(ctx, media, "Toggle buttons"); ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(_toggle0 ? media.Checkd : media.Uncheckd, "Toggle", Alignment.MIDDLELEFT)) { _toggle0 = !_toggle0; } ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(_toggle1 ? media.Checkd : media.Uncheckd, "Toggle", Alignment.MIDDLELEFT)) { _toggle1 = !_toggle1; } ui_widget(ctx, media, 35); if (ctx.ButtonImageLabel(_toggle2 ? media.Checkd : media.Uncheckd, "Toggle", Alignment.MIDDLELEFT)) { _toggle2 = !_toggle2; } /*------------------------------------------------ * RADIO *------------------------------------------------*/ ui_header(ctx, media, "Radio buttons"); ui_widget(ctx, media, 35); if (ctx.ButtonSymbolLabel(_option == 0 ? NkSymbolType.CIRCLE_OUTLINE : NkSymbolType.CIRCLE_SOLID, "Select", Alignment.MIDDLELEFT)) { _option = 0; } ui_widget(ctx, media, 35); if (ctx.ButtonSymbolLabel(_option == 1 ? NkSymbolType.CIRCLE_OUTLINE : NkSymbolType.CIRCLE_SOLID, "Select", Alignment.MIDDLELEFT)) { _option = 1; } ui_widget(ctx, media, 35); if (ctx.ButtonSymbolLabel(_option == 2 ? NkSymbolType.CIRCLE_OUTLINE : NkSymbolType.CIRCLE_SOLID, "Select", Alignment.MIDDLELEFT)) { _option = 2; } /*------------------------------------------------ * CONTEXTUAL *------------------------------------------------*/ ctx.StyleSetFont(media.Font18.Handle); if (ctx.ContextualBegin(PanelFlags.NO_SCROLLBAR, Nk.nk_vec2_(150, 300), ctx.WindowGetBounds())) { ctx.LayoutRowDynamic(30, 1); if (ctx.ContextualItemImageLabel(media.Copy, "Clone", Alignment.MIDDLERIGHT)) { Console.Write("pressed clone!\n"); } if (ctx.ContextualItemImageLabel(media.Del, "Delete", Alignment.MIDDLERIGHT)) { Console.Write("pressed delete!\n"); } if (ctx.ContextualItemImageLabel(media.Convert, "Convert", Alignment.MIDDLERIGHT)) { Console.Write("pressed convert!\n"); } if (ctx.ContextualItemImageLabel(media.Edit, "Edit", Alignment.MIDDLERIGHT)) { Console.Write("pressed edit!\n"); } ctx.ContextualEnd(); } ctx.StyleSetFont(media.Font14.Handle); ctx.End(); }