static void drawButtonBackground(Rect r, Window win, bool hovered, bool held) { StyleItem background = style.button.normal; if (hovered) { background = style.button.hover; } if (held) { background = style.button.active; } switch (background.type) { case StyleItem.Type.COLOR: win.canvas.addRectFilled(r, background.color, style.button.rounding); win.canvas.addRect(r, style.button.borderColor, style.button.rounding); break; case StyleItem.Type.IMAGE: win.canvas.addImage(background.image, r); break; case StyleItem.Type.SPRITE: win.canvas.addImage(background.sprite, r); break; case StyleItem.Type.NINEPATCH: win.canvas.addImage(background.patch, r); break; } }
public static StyleItem styleItemNinePatch(NinePatch p) { StyleItem i = new StyleItem(); i.type = StyleItem.Type.NINEPATCH; i.patch = p; return(i); }
public static StyleItem styleItemSprite(Sprite s) { StyleItem i = new StyleItem(); i.type = StyleItem.Type.SPRITE; i.sprite = s; return(i); }
public static StyleItem styleItemImage(Texture t) { StyleItem i = new StyleItem(); i.type = StyleItem.Type.IMAGE; i.image = t; return(i); }
public static StyleItem styleItemHide() { StyleItem i = new StyleItem(); i.type = StyleItem.Type.COLOR; i.color = new Color4(0, 0, 0, 0); return(i); }
public static StyleItem styleItemColor(Color4 color) { StyleItem i = new StyleItem(); i.type = StyleItem.Type.COLOR; i.color = color; return(i); }
void drawWindowBackground() { canvas.reset(); canvas.setScreenResolution(UI.displaySize); //canvas.setScale(1.0f); float alpha = UI.style.window.backgroundColor.A; if (flags.HasFlag(Flags.Root)) { canvas.pushClipRectFullscreen(); UI.styleStacks.floats.Push(UI.style.window.rounding); UI.style.window.rounding = 0.0f; } else { Rect clip = rect; //add 1 since we want to include that last pixel clip.width += 1; clip.height += 1; canvas.pushClipRect(clip); } if (!myIsCollapsed) { //window background if (flags.HasFlag(Flags.Background) == true) { StyleItem background = UI.style.window.background; switch (background.type) { case StyleItem.Type.COLOR: canvas.addRectFilled(rect, background.color, UI.style.window.rounding); break; case StyleItem.Type.IMAGE: canvas.addImage(background.image, rect); break; case StyleItem.Type.SPRITE: canvas.addImage(background.sprite, rect); break; case StyleItem.Type.NINEPATCH: canvas.addImage(background.patch, rect); break; } } } //pop root special style if (flags.HasFlag(Flags.Root)) { UI.style.window.rounding = UI.styleStacks.floats.Pop(); } }
void drawWindowForeground() { float alpha = UI.style.window.borderColor.A; if (flags.HasFlag(Flags.Root)) { UI.styleStacks.floats.Push(UI.style.window.rounding); UI.style.window.rounding = 0.0f; } if (myIsCollapsed) { //title bar only canvas.addRectFilled(titleBarRect, UI.style.window.header.active.color, UI.style.window.rounding, Canvas.Corners.ALL); canvas.addText(titleBarRect, UI.style.window.header.labelNormal, name, Alignment.Middle); } else { //title bar if (flags.HasFlag(Flags.TitleBar) == true) { canvas.addRectFilled(titleBarRect, UI.style.window.header.active.color, UI.style.window.rounding, Canvas.Corners.TOP); canvas.addText(titleBarRect, UI.style.window.header.labelNormal, name, Alignment.Middle); addItem(titleBarRect.size); } //menu bar if (flags.HasFlag(Flags.MenuBar) == true) { canvas.addRectFilled(menuBarRect, UI.style.window.menuBorderColor); } //scroll bars //resize grip //borders if (flags.HasFlag(Flags.Borders) == true) { StyleItem border = UI.style.window.border; switch (border.type) { case StyleItem.Type.COLOR: canvas.addRect(rect, border.color, UI.style.window.rounding, Canvas.Corners.ALL); break; case StyleItem.Type.IMAGE: canvas.addImage(border.image, rect); break; case StyleItem.Type.SPRITE: canvas.addImage(border.sprite, rect); break; case StyleItem.Type.NINEPATCH: canvas.addImage(border.patch, rect); break; } if (flags.HasFlag(Flags.TitleBar) == false) { canvas.addLine(titleBarRect.NW + new Vector2(1, 0), titleBarRect.NE - new Vector2(1, 0), UI.style.window.borderColor); } } } //pop root special style if (flags.HasFlag(Flags.Root)) { UI.style.window.rounding = UI.styleStacks.floats.Pop(); } }