forked from AuroraMiddleware/gtk
win32: Implement fallback code for tabs
This is naive code in that it doesn't do the rounded edges for the tab items yet. We can fix that later I guess.
This commit is contained in:
parent
b18e64e6c6
commit
5d34ee729d
@ -394,6 +394,34 @@ draw_window_button (cairo_t *cr,
|
|||||||
mask_icon (cr, icon, 1, 1, width - 2, height - 2);
|
mask_icon (cr, icon, 1, 1, width - 2, height - 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
draw_tab_item (cairo_t *cr,
|
||||||
|
int part,
|
||||||
|
int state,
|
||||||
|
int width,
|
||||||
|
int height)
|
||||||
|
{
|
||||||
|
draw_edge (cr, EDGE_RAISED, 0, 0, width, height + 2);
|
||||||
|
|
||||||
|
gtk_cairo_set_source_sys_color (cr, GTK_WIN32_SYS_COLOR_BTNFACE);
|
||||||
|
cairo_rectangle (cr, 2, 2, width - 4, height - 2);
|
||||||
|
cairo_fill (cr);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
draw_tab_pane (cairo_t *cr,
|
||||||
|
int part,
|
||||||
|
int state,
|
||||||
|
int width,
|
||||||
|
int height)
|
||||||
|
{
|
||||||
|
draw_edge (cr, EDGE_RAISED, 0, 0, width, height);
|
||||||
|
|
||||||
|
gtk_cairo_set_source_sys_color (cr, GTK_WIN32_SYS_COLOR_BTNFACE);
|
||||||
|
cairo_rectangle (cr, 2, 2, width - 4, height - 4);
|
||||||
|
cairo_fill (cr);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
draw_tooltip (cairo_t *cr,
|
draw_tooltip (cairo_t *cr,
|
||||||
int part,
|
int part,
|
||||||
@ -436,6 +464,15 @@ static GtkWin32ThemePart theme_parts[] = {
|
|||||||
{ "edit", 7, 0, { 0, 0, 0, 0 }, draw_edit },
|
{ "edit", 7, 0, { 0, 0, 0, 0 }, draw_edit },
|
||||||
{ "edit", 8, 0, { 0, 0, 0, 0 }, draw_edit },
|
{ "edit", 8, 0, { 0, 0, 0, 0 }, draw_edit },
|
||||||
{ "edit", 9, 0, { 0, 0, 0, 0 }, draw_edit },
|
{ "edit", 9, 0, { 0, 0, 0, 0 }, draw_edit },
|
||||||
|
{ "tab", 1, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 2, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 3, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 4, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 5, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 6, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 7, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 8, 0, { 0, 0, 0, 0 }, draw_tab_item },
|
||||||
|
{ "tab", 9, 0, { 0, 0, 0, 0 }, draw_tab_pane },
|
||||||
{ "tooltip", 1, 0, { 0, 0, 0, 0 }, draw_tooltip },
|
{ "tooltip", 1, 0, { 0, 0, 0, 0 }, draw_tooltip },
|
||||||
{ "window", 1, 0, { 0, 0, 0, 0 }, draw_window },
|
{ "window", 1, 0, { 0, 0, 0, 0 }, draw_window },
|
||||||
{ "window", 7, 0, { 0, 0, 0, 0 }, draw_window_left },
|
{ "window", 7, 0, { 0, 0, 0, 0 }, draw_window_left },
|
||||||
|
Loading…
Reference in New Issue
Block a user