forked from AuroraMiddleware/gtk
182 lines
7.4 KiB
C
182 lines
7.4 KiB
C
/* GTK - The GIMP Toolkit
|
|
* Copyright (C) 2016 Benjamin Otte <otte@gnome.org>
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef __GTK_WIN32_DRAW_H__
|
|
#define __GTK_WIN32_DRAW_H__
|
|
|
|
#include <gdk/gdk.h>
|
|
#include <cairo.h>
|
|
|
|
#include <gtk/gtkborder.h>
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
enum {
|
|
GTK_WIN32_SYS_COLOR_SCROLLBAR,
|
|
GTK_WIN32_SYS_COLOR_BACKGROUND,
|
|
GTK_WIN32_SYS_COLOR_ACTIVECAPTION,
|
|
GTK_WIN32_SYS_COLOR_INACTIVECAPTION,
|
|
GTK_WIN32_SYS_COLOR_MENU,
|
|
GTK_WIN32_SYS_COLOR_WINDOW,
|
|
GTK_WIN32_SYS_COLOR_WINDOWFRAME,
|
|
GTK_WIN32_SYS_COLOR_MENUTEXT,
|
|
GTK_WIN32_SYS_COLOR_WINDOWTEXT,
|
|
GTK_WIN32_SYS_COLOR_CAPTIONTEXT,
|
|
GTK_WIN32_SYS_COLOR_ACTIVEBORDER,
|
|
GTK_WIN32_SYS_COLOR_INACTIVEBORDER,
|
|
GTK_WIN32_SYS_COLOR_APPWORKSPACE,
|
|
GTK_WIN32_SYS_COLOR_HIGHLIGHT,
|
|
GTK_WIN32_SYS_COLOR_HIGHLIGHTTEXT,
|
|
GTK_WIN32_SYS_COLOR_BTNFACE,
|
|
GTK_WIN32_SYS_COLOR_BTNSHADOW,
|
|
GTK_WIN32_SYS_COLOR_GRAYTEXT,
|
|
GTK_WIN32_SYS_COLOR_BTNTEXT,
|
|
GTK_WIN32_SYS_COLOR_INACTIVECAPTIONTEXT,
|
|
GTK_WIN32_SYS_COLOR_BTNHIGHLIGHT,
|
|
GTK_WIN32_SYS_COLOR_3DDKSHADOW,
|
|
GTK_WIN32_SYS_COLOR_3DLIGHT,
|
|
GTK_WIN32_SYS_COLOR_INFOTEXT,
|
|
GTK_WIN32_SYS_COLOR_INFOBK,
|
|
GTK_WIN32_SYS_COLOR_ALTERNATEBTNFACE,
|
|
GTK_WIN32_SYS_COLOR_HOTLIGHT,
|
|
GTK_WIN32_SYS_COLOR_GRADIENTACTIVECAPTION,
|
|
GTK_WIN32_SYS_COLOR_GRADIENTINACTIVECAPTION,
|
|
GTK_WIN32_SYS_COLOR_MENUHILIGHT,
|
|
GTK_WIN32_SYS_COLOR_MENUBAR
|
|
};
|
|
|
|
enum {
|
|
GTK_WIN32_SYS_METRIC_CXSCREEN = 0,
|
|
GTK_WIN32_SYS_METRIC_CYSCREEN = 1,
|
|
GTK_WIN32_SYS_METRIC_CXVSCROLL = 2,
|
|
GTK_WIN32_SYS_METRIC_CYHSCROLL = 3,
|
|
GTK_WIN32_SYS_METRIC_CYCAPTION = 4,
|
|
GTK_WIN32_SYS_METRIC_CXBORDER = 5,
|
|
GTK_WIN32_SYS_METRIC_CYBORDER = 6,
|
|
GTK_WIN32_SYS_METRIC_CXDLGFRAME = 7,
|
|
GTK_WIN32_SYS_METRIC_CYDLGFRAME = 8,
|
|
GTK_WIN32_SYS_METRIC_CYVTHUMB = 9,
|
|
GTK_WIN32_SYS_METRIC_CXHTHUMB = 10,
|
|
GTK_WIN32_SYS_METRIC_CXICON = 11,
|
|
GTK_WIN32_SYS_METRIC_CYICON = 12,
|
|
GTK_WIN32_SYS_METRIC_CXCURSOR = 13,
|
|
GTK_WIN32_SYS_METRIC_CYCURSOR = 14,
|
|
GTK_WIN32_SYS_METRIC_CYMENU = 15,
|
|
GTK_WIN32_SYS_METRIC_CXFULLSCREEN = 16,
|
|
GTK_WIN32_SYS_METRIC_CYFULLSCREEN = 17,
|
|
GTK_WIN32_SYS_METRIC_CYKANJIWINDOW = 18,
|
|
GTK_WIN32_SYS_METRIC_MOUSEPRESENT = 19,
|
|
GTK_WIN32_SYS_METRIC_CYVSCROLL = 20,
|
|
GTK_WIN32_SYS_METRIC_CXHSCROLL = 21,
|
|
GTK_WIN32_SYS_METRIC_DEBUG = 22,
|
|
GTK_WIN32_SYS_METRIC_SWAPBUTTON = 23,
|
|
GTK_WIN32_SYS_METRIC_RESERVED1 = 24,
|
|
GTK_WIN32_SYS_METRIC_RESERVED2 = 25,
|
|
GTK_WIN32_SYS_METRIC_RESERVED3 = 26,
|
|
GTK_WIN32_SYS_METRIC_RESERVED4 = 27,
|
|
GTK_WIN32_SYS_METRIC_CXMIN = 28,
|
|
GTK_WIN32_SYS_METRIC_CYMIN = 29,
|
|
GTK_WIN32_SYS_METRIC_CXSIZE = 30,
|
|
GTK_WIN32_SYS_METRIC_CYSIZE = 31,
|
|
GTK_WIN32_SYS_METRIC_CXFRAME = 32,
|
|
GTK_WIN32_SYS_METRIC_CYFRAME = 33,
|
|
GTK_WIN32_SYS_METRIC_CXMINTRACK = 34,
|
|
GTK_WIN32_SYS_METRIC_CYMINTRACK = 35,
|
|
GTK_WIN32_SYS_METRIC_CXDOUBLECLK = 36,
|
|
GTK_WIN32_SYS_METRIC_CYDOUBLECLK = 37,
|
|
GTK_WIN32_SYS_METRIC_CXICONSPACING = 38,
|
|
GTK_WIN32_SYS_METRIC_CYICONSPACING = 39,
|
|
GTK_WIN32_SYS_METRIC_MENUDROPALIGNMENT = 40,
|
|
GTK_WIN32_SYS_METRIC_PENWINDOWS = 41,
|
|
GTK_WIN32_SYS_METRIC_DBCSENABLED = 42,
|
|
GTK_WIN32_SYS_METRIC_CMOUSEBUTTONS = 43,
|
|
GTK_WIN32_SYS_METRIC_SECURE = 44,
|
|
GTK_WIN32_SYS_METRIC_CXEDGE = 45,
|
|
GTK_WIN32_SYS_METRIC_CYEDGE = 46,
|
|
GTK_WIN32_SYS_METRIC_CXMINSPACING = 47,
|
|
GTK_WIN32_SYS_METRIC_CYMINSPACING = 48,
|
|
GTK_WIN32_SYS_METRIC_CXSMICON = 49,
|
|
GTK_WIN32_SYS_METRIC_CYSMICON = 50,
|
|
GTK_WIN32_SYS_METRIC_CYSMCAPTION = 51,
|
|
GTK_WIN32_SYS_METRIC_CXSMSIZE = 52,
|
|
GTK_WIN32_SYS_METRIC_CYSMSIZE = 53,
|
|
GTK_WIN32_SYS_METRIC_CXMENUSIZE = 54,
|
|
GTK_WIN32_SYS_METRIC_CYMENUSIZE = 55,
|
|
GTK_WIN32_SYS_METRIC_ARRANGE = 56,
|
|
GTK_WIN32_SYS_METRIC_CXMINIMIZED = 57,
|
|
GTK_WIN32_SYS_METRIC_CYMINIMIZED = 58,
|
|
GTK_WIN32_SYS_METRIC_CXMAXTRACK = 59,
|
|
GTK_WIN32_SYS_METRIC_CYMAXTRACK = 60,
|
|
GTK_WIN32_SYS_METRIC_CXMAXIMIZED = 61,
|
|
GTK_WIN32_SYS_METRIC_CYMAXIMIZED = 62,
|
|
GTK_WIN32_SYS_METRIC_NETWORK = 63,
|
|
GTK_WIN32_SYS_METRIC_CLEANBOOT = 67,
|
|
GTK_WIN32_SYS_METRIC_CXDRAG = 68,
|
|
GTK_WIN32_SYS_METRIC_CYDRAG = 69,
|
|
GTK_WIN32_SYS_METRIC_SHOWSOUNDS = 70,
|
|
GTK_WIN32_SYS_METRIC_CXMENUCHECK = 71,
|
|
GTK_WIN32_SYS_METRIC_CYMENUCHECK = 72,
|
|
GTK_WIN32_SYS_METRIC_SLOWMACHINE = 73,
|
|
GTK_WIN32_SYS_METRIC_MIDEASTENABLED = 74,
|
|
GTK_WIN32_SYS_METRIC_MOUSEWHEELPRESENT = 75,
|
|
GTK_WIN32_SYS_METRIC_XVIRTUALSCREEN = 76,
|
|
GTK_WIN32_SYS_METRIC_YVIRTUALSCREEN = 77,
|
|
GTK_WIN32_SYS_METRIC_CXVIRTUALSCREEN = 78,
|
|
GTK_WIN32_SYS_METRIC_CYVIRTUALSCREEN = 79,
|
|
GTK_WIN32_SYS_METRIC_CMONITORS = 80,
|
|
GTK_WIN32_SYS_METRIC_SAMEDISPLAYFORMAT = 81,
|
|
GTK_WIN32_SYS_METRIC_IMMENABLED = 82,
|
|
GTK_WIN32_SYS_METRIC_CXFOCUSBORDER = 83,
|
|
GTK_WIN32_SYS_METRIC_CYFOCUSBORDER = 84,
|
|
GTK_WIN32_SYS_METRIC_TABLETPC = 86,
|
|
GTK_WIN32_SYS_METRIC_MEDIACENTER = 87,
|
|
GTK_WIN32_SYS_METRIC_STARTER = 88,
|
|
GTK_WIN32_SYS_METRIC_SERVERR2 = 89,
|
|
GTK_WIN32_SYS_METRIC_CMETRICS = 90,
|
|
GTK_WIN32_SYS_METRIC_MOUSEHORIZONTALWHEELPRESENT = 91,
|
|
GTK_WIN32_SYS_METRIC_CXPADDEDBORDER = 92
|
|
};
|
|
|
|
void gtk_win32_draw_theme_background (cairo_t *cr,
|
|
const char *class_name,
|
|
int part,
|
|
int state,
|
|
int width,
|
|
int height);
|
|
void gtk_win32_get_theme_part_size (const char *class_name,
|
|
int part,
|
|
int state,
|
|
int *width,
|
|
int *height);
|
|
void gtk_win32_get_theme_margins (const char *class_name,
|
|
int part,
|
|
int state,
|
|
GtkBorder *out_margins);
|
|
|
|
const char * gtk_win32_get_sys_metric_name_for_id (gint id);
|
|
int gtk_win32_get_sys_metric_id_for_name (const char *name);
|
|
int gtk_win32_get_sys_metric (gint id);
|
|
|
|
const char * gtk_win32_get_sys_color_name_for_id (gint id);
|
|
int gtk_win32_get_sys_color_id_for_name (const char *name);
|
|
void gtk_win32_get_sys_color (gint id,
|
|
GdkRGBA *color);
|
|
|
|
G_END_DECLS
|
|
|
|
#endif /* __GTK_WIN32_DRAW_H__ */
|