function Panel_Globalvar() : PanelContent() constructor { title = __txtx("panel_globalvar", "Global Variables"); context_str = "Globalvar"; padding = 8; w = ui(320); h = ui(480); b_edit = button(function() /*=>*/ { var_editing = !var_editing; }).setTooltip("Edit").setIcon(THEME.gear, 0, COLORS._main_icon, .6); // title_actions = [ b_edit ]; globalvar_viewer_init(); drawWidgetInit(); function onResize() { contentPane.resize(w - ui(padding + padding), h - ui(padding + padding) - ui(28)); } contentPane = new scrollPane(w - ui(padding + padding), h - ui(padding + padding) - ui(28), function(_y, _m) { draw_clear_alpha(COLORS.panel_bg_clear, 0); var _hover = pHOVER && contentPane.hover; var hh = 0; var yy = _y; var _x = ui(8); var glPar = globalvar_viewer_draw(_x, yy, contentPane.surface_w - _x - ui(8), _m, pFOCUS, _hover, contentPane, x + _x + ui(padding), y + ui(title_height)); var gvh = glPar[0]; if(glPar[1]) contentPane.hover_content = true; yy += gvh + ui(8); hh += gvh + ui(8); return hh; }); function drawContent(panel) { draw_clear_alpha(COLORS.panel_bg_clear, 0); var px = ui(padding); var py = ui(padding); var pw = w - ui(padding + padding); var ph = h - ui(padding + padding) - ui(28); draw_sprite_stretched(THEME.ui_panel_bg, 1, px - ui(8), py - ui(8), pw + ui(16), ph + ui(16)); contentPane.setFocusHover(pFOCUS, pHOVER); contentPane.draw(px, py, mx - px, my - py); var _add_h = ui(24); var _bx = 0; var _by = h - _add_h; var _ww = w; if(var_editing) { var _bw = _ww / 2 - ui(4); var _hov = pHOVER && point_in_rectangle(mx, my, _bx, _by, _bx + _bw, _by + _add_h); draw_sprite_stretched_ext(THEME.ui_panel, 0, _bx, _by, _bw, _add_h, _hov? COLORS._main_value_positive : COLORS._main_icon, .3 + _hov * .1); draw_sprite_stretched_ext(THEME.ui_panel, 1, _bx, _by, _bw, _add_h, _hov? COLORS._main_value_positive : COLORS._main_icon, .6 + _hov * .25); draw_set_text(f_p2, fa_center, fa_center, _hov? COLORS._main_value_positive : COLORS._main_icon); draw_text_add(_bx + _bw / 2, _by + _add_h / 2, __txt("Add")); contentPane.hover_content |= _hov; if(mouse_press(mb_left, _hov && pFOCUS)) PROJECT.globalNode.createValue(); _bx += _bw + ui(8); var _hov = pHOVER && point_in_rectangle(mx, my, _bx, _by, _bx + _bw, _by + _add_h); draw_sprite_stretched_ext(THEME.ui_panel, 0, _bx, _by, _bw, _add_h, _hov? COLORS._main_icon_light : COLORS._main_icon, .3 + _hov * .1); draw_sprite_stretched_ext(THEME.ui_panel, 1, _bx, _by, _bw, _add_h, _hov? COLORS._main_icon_light : COLORS._main_icon, .6 + _hov * .25); draw_set_text(f_p2, fa_center, fa_center, _hov? COLORS._main_icon_light : COLORS._main_icon); draw_text_add(_bx + _bw / 2, _by + _add_h / 2, __txt("Apply")); contentPane.hover_content |= _hov; if(mouse_press(mb_left, _hov && pFOCUS)) var_editing = false; } else { var _hov = pHOVER && point_in_rectangle(mx, my, _bx, _by, _ww, _by + _add_h); draw_sprite_stretched_ext(THEME.ui_panel, 0, _bx, _by, _ww, _add_h, _hov? COLORS._main_value_positive : COLORS._main_icon, .3 + _hov * .1); draw_sprite_stretched_ext(THEME.ui_panel, 1, _bx, _by, _ww, _add_h, _hov? COLORS._main_value_positive : COLORS._main_icon, .6 + _hov * .25); draw_set_text(f_p2, fa_center, fa_center, _hov? COLORS._main_value_positive : COLORS._main_icon); draw_text_add(_bx + _ww / 2, _by + _add_h / 2, __txt("Edit")); contentPane.hover_content |= _hov; if(mouse_press(mb_left, _hov && pFOCUS)) var_editing = true; } } }