summaryrefslogtreecommitdiff
path: root/SharedGraphics/StylePainter.h
blob: 023191b077a923c92866780f7f546b6cf4afa6c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#pragma once

class Painter;
class Rect;

enum class ButtonStyle { Normal, CoolBar, OldNormal };
enum class FrameShadow { Plain, Raised, Sunken };
enum class FrameShape { NoFrame, Box, Container, Panel, VerticalLine, HorizontalLine };

class StylePainter {
public:
    static void paint_button(Painter&, const Rect&, ButtonStyle, bool pressed, bool hovered = false, bool checked = false);
    static void paint_surface(Painter&, const Rect&, bool paint_vertical_lines = true);
    static void paint_frame(Painter&, const Rect&, FrameShape, FrameShadow, int thickness, bool skip_vertical_lines = false);
};