UI tweaks
This commit is contained in:
@@ -226,9 +226,9 @@ class Context {
|
||||
}
|
||||
|
||||
#if (is_paint || is_sculpt)
|
||||
public static function in2dView(): Bool {
|
||||
public static function in2dView(type = View2DLayer): Bool {
|
||||
var mouse = Input.getMouse();
|
||||
return UIView2D.inst.show && UIView2D.inst.type == View2DLayer &&
|
||||
return UIView2D.inst.show && UIView2D.inst.type == type &&
|
||||
mouse.x > UIView2D.inst.wx && mouse.x < UIView2D.inst.wx + UIView2D.inst.ww &&
|
||||
mouse.y > UIView2D.inst.wy && mouse.y < UIView2D.inst.wy + UIView2D.inst.wh;
|
||||
}
|
||||
|
||||
@@ -250,6 +250,8 @@ class BoxPreferences {
|
||||
}
|
||||
}
|
||||
|
||||
ui.changed = false;
|
||||
|
||||
if (Std.isOfType(val, Bool)) {
|
||||
h.selected = val;
|
||||
untyped theme[key] = ui.check(h, key);
|
||||
@@ -265,6 +267,10 @@ class BoxPreferences {
|
||||
if (isHex) untyped theme[key] = parseInt(h.text, 16);
|
||||
else untyped theme[key] = parseInt(h.text);
|
||||
}
|
||||
|
||||
if (ui.changed) {
|
||||
ui.elementsBaked = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -531,7 +531,7 @@ class UIMenu {
|
||||
if (menuX + menuW > System.windowWidth()) {
|
||||
menuX = Std.int(System.windowWidth() - menuW);
|
||||
}
|
||||
var menuH = Std.int(menuElements * 28 * App.uiMenu.SCALE()); // ui.t.ELEMENT_H
|
||||
var menuH = Std.int(menuElements * 30 * App.uiMenu.SCALE()); // ui.t.ELEMENT_H
|
||||
if (menuY + menuH > System.windowHeight()) {
|
||||
menuY = System.windowHeight() - menuH;
|
||||
menuX += 1; // Move out of mouse focus
|
||||
|
||||
@@ -899,10 +899,10 @@ class UINodes {
|
||||
img = Context.raw.nodePreview;
|
||||
}
|
||||
if (img != null) {
|
||||
var tw = 80 * ui.SCALE();
|
||||
var tw = 128 * ui.SCALE();
|
||||
var th = tw * (img.height / img.width);
|
||||
var tx = ww - tw - 8 * ui.SCALE();
|
||||
var ty = wh - th - 40 * ui.SCALE();
|
||||
var ty = wh - th - 8 * ui.SCALE();
|
||||
|
||||
#if kha_opengl
|
||||
var invertY = sel.type == "MATERIAL";
|
||||
@@ -928,22 +928,23 @@ class UINodes {
|
||||
}
|
||||
}
|
||||
}
|
||||
#end
|
||||
|
||||
// Menu
|
||||
ui.g.color = ui.t.SEPARATOR_COL;
|
||||
ui.g.fillRect(0, 0, ww, ui.ELEMENT_H() + ui.ELEMENT_OFFSET());
|
||||
ui.g.color = 0xffffffff;
|
||||
|
||||
ui._x = 0;
|
||||
ui._y = 0;
|
||||
ui._w = ew;
|
||||
|
||||
// Editable canvas name
|
||||
var _ACCENT_COL = ui.t.ACCENT_COL;
|
||||
var _BUTTON_H = ui.t.BUTTON_H;
|
||||
var _ELEMENT_H = ui.t.ELEMENT_H;
|
||||
var _FONT_SIZE = ui.fontSize;
|
||||
ui.t.ACCENT_COL = 0x00000000;
|
||||
ui.t.BUTTON_H = 30;
|
||||
ui.t.ELEMENT_H = 30;
|
||||
ui.fontSize = Std.int(22 * ui.SCALE());
|
||||
ui._x = ww - ui.ELEMENT_W() * 1.4;
|
||||
ui._y = wh - ui.ELEMENT_H() * 1.2;
|
||||
ui._w = Std.int(ui.ELEMENT_W() * 1.4);
|
||||
var h = Id.handle();
|
||||
h.text = c.name;
|
||||
var newName = ui.textInput(h, "", Right);
|
||||
ui._x += ew + 3;
|
||||
ui._y = 0;
|
||||
|
||||
if (h.changed) { // Check whether renaming is possible and update group links
|
||||
if (groupStack.length > 0) {
|
||||
@@ -971,28 +972,6 @@ class UINodes {
|
||||
c.name = newName;
|
||||
}
|
||||
}
|
||||
ui.t.ACCENT_COL = _ACCENT_COL;
|
||||
ui.t.BUTTON_H = _BUTTON_H;
|
||||
ui.t.ELEMENT_H = _ELEMENT_H;
|
||||
ui.fontSize = _FONT_SIZE;
|
||||
#end
|
||||
|
||||
// Close node group
|
||||
if (groupStack.length > 0) {
|
||||
ui._x = 5;
|
||||
ui._y = wh - ui.ELEMENT_H() * 1.2;
|
||||
ui._w = Std.int(ui.ELEMENT_W() * 1.4);
|
||||
if (ui.button(tr("Close"))) groupStack.pop();
|
||||
}
|
||||
|
||||
// Menu
|
||||
ui.g.color = ui.t.SEPARATOR_COL;
|
||||
ui.g.fillRect(0, 0, ww, ui.ELEMENT_H() + ui.ELEMENT_OFFSET());
|
||||
ui.g.color = 0xffffffff;
|
||||
|
||||
ui._x = 0;
|
||||
ui._y = 0;
|
||||
ui._w = ew;
|
||||
|
||||
#if is_lab
|
||||
if (ui.button(tr("Run"))) {
|
||||
@@ -1127,8 +1106,15 @@ class UINodes {
|
||||
|
||||
if (ui.button(tr("Search"), Left)) nodeSearch(Std.int(ui._windowX + ui._x), Std.int(ui._windowY + ui._y));
|
||||
if (ui.isHovered) ui.tooltip(tr("Search for nodes") + ' (${Config.keymap.node_search})');
|
||||
ui._x += ew + 3;
|
||||
ui._y = 0;
|
||||
|
||||
ui.t.BUTTON_COL = _BUTTON_COL;
|
||||
|
||||
// Close node group
|
||||
if (groupStack.length > 0 && ui.button(tr("Close"))) {
|
||||
groupStack.pop();
|
||||
}
|
||||
}
|
||||
|
||||
ui.end(!showMenu);
|
||||
|
||||
@@ -100,7 +100,7 @@ class UIView2D {
|
||||
|
||||
// Grid
|
||||
ui.g.color = 0xffffffff;
|
||||
ui.g.drawImage(UINodes.inst.grid, (panX * panScale) % 40 - 40, (panY * panScale) % 40 - 40);
|
||||
ui.g.drawImage(UINodes.inst.grid, (panX * panScale) % 100 - 100, (panY * panScale) % 100 - 100);
|
||||
|
||||
// Texture
|
||||
var l = Context.raw.layer;
|
||||
@@ -200,20 +200,17 @@ class UIView2D {
|
||||
ui.g.drawScaledImage(UVUtil.uvmap, tx, ty, tw, th);
|
||||
}
|
||||
|
||||
// Editable layer name
|
||||
var ACCENT_COL = ui.t.ACCENT_COL;
|
||||
var BUTTON_H = ui.t.BUTTON_H;
|
||||
var ELEMENT_H = ui.t.ELEMENT_H;
|
||||
var FONT_SIZE = ui.fontSize;
|
||||
ui.t.ACCENT_COL = 0x00000000;
|
||||
ui.t.BUTTON_H = 30;
|
||||
ui.t.ELEMENT_H = 30;
|
||||
ui.fontSize = Std.int(22 * ui.SCALE());
|
||||
ui._x = ww - ui.ELEMENT_W() * 1.4;
|
||||
ui._y = wh - ui.ELEMENT_H() * 1.2;
|
||||
ui._w = Std.int(ui.ELEMENT_W() * 1.4);
|
||||
var h = Id.handle();
|
||||
// Controls
|
||||
var ew = Std.int(ui.ELEMENT_W());
|
||||
ui.g.color = ui.t.SEPARATOR_COL;
|
||||
ui.g.fillRect(0, 0, ww, ui.ELEMENT_H() + ui.ELEMENT_OFFSET());
|
||||
ui.g.color = 0xffffffff;
|
||||
ui._x = 2;
|
||||
ui._y = 2;
|
||||
ui._w = ew;
|
||||
|
||||
// Editable layer name
|
||||
var h = Id.handle();
|
||||
if (type == View2DLayer) {
|
||||
h.text = l.name;
|
||||
l.name = ui.textInput(h, "", Right);
|
||||
@@ -235,21 +232,9 @@ class UIView2D {
|
||||
}
|
||||
// else { // View2DNode
|
||||
// }
|
||||
|
||||
if (h.changed) UIBase.inst.hwnds[0].redraws = 2;
|
||||
ui.t.ACCENT_COL = ACCENT_COL;
|
||||
ui.t.BUTTON_H = BUTTON_H;
|
||||
ui.t.ELEMENT_H = ELEMENT_H;
|
||||
ui.fontSize = FONT_SIZE;
|
||||
|
||||
// Controls
|
||||
var ew = Std.int(ui.ELEMENT_W());
|
||||
ui.g.color = ui.t.SEPARATOR_COL;
|
||||
ui.g.fillRect(0, 0, ww, ui.ELEMENT_H() + ui.ELEMENT_OFFSET());
|
||||
ui.g.color = 0xffffffff;
|
||||
ui._x = 2;
|
||||
ui._x += ew + 3;
|
||||
ui._y = 2;
|
||||
ui._w = ew;
|
||||
|
||||
if (type == View2DLayer) {
|
||||
layerMode = ui.combo(Id.handle({ position: layerMode }), [
|
||||
|
||||
Reference in New Issue
Block a user