diff options
author | Benjamin Otte <otte@redhat.com> | 2016-11-04 00:08:03 +0100 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2016-11-04 00:08:03 +0100 |
commit | ec06a717cedbfe42576f623891079143509cdaa6 (patch) | |
tree | 2f8f33557b76edc3e34df46154e46be9c33d790c /gdk/win32 | |
parent | 4585af5719d6854d298038a9defa2c1b3c542612 (diff) | |
download | gtk+-ec06a717cedbfe42576f623891079143509cdaa6.tar.gz |
win32: Remove all mentions of visuals
Diffstat (limited to 'gdk/win32')
-rw-r--r-- | gdk/win32/gdkscreen-win32.c | 205 |
1 files changed, 0 insertions, 205 deletions
diff --git a/gdk/win32/gdkscreen-win32.c b/gdk/win32/gdkscreen-win32.c index b6fccae715..88568cc985 100644 --- a/gdk/win32/gdkscreen-win32.c +++ b/gdk/win32/gdkscreen-win32.c @@ -31,11 +31,6 @@ struct _GdkWin32Screen { GdkScreen parent_instance; - GdkVisual *system_visual; - GdkVisual *rgba_visual; - gint available_visual_depths[1]; - GdkVisualType available_visual_types[1]; - GdkWindow *root_window; }; @@ -46,206 +41,6 @@ struct _GdkWin32ScreenClass G_DEFINE_TYPE (GdkWin32Screen, gdk_win32_screen, GDK_TYPE_SCREEN) -static gint -get_color_precision (gulong mask) -{ - gint p = 0; - - while (mask & 0x1) - { - p++; - mask >>= 1; - } - - return p; -} - -static GdkVisual * -init_visual (GdkScreen *screen, - gboolean is_rgba) -{ - GdkVisual *visual; - struct - { - BITMAPINFOHEADER bi; - union - { - RGBQUAD colors[256]; - DWORD fields[256]; - } u; - } bmi; - HBITMAP hbm; - - const gint rastercaps = GetDeviceCaps (_gdk_display_hdc, RASTERCAPS); - const int numcolors = GetDeviceCaps (_gdk_display_hdc, NUMCOLORS); - gint bitspixel = GetDeviceCaps (_gdk_display_hdc, BITSPIXEL); - gint map_entries = 0; - - visual = g_object_new (GDK_TYPE_VISUAL, NULL); - visual->screen = screen; - - if (rastercaps & RC_PALETTE) - { - const int sizepalette = GetDeviceCaps (_gdk_display_hdc, SIZEPALETTE); - gchar *max_colors = getenv ("GDK_WIN32_MAX_COLORS"); - visual->type = GDK_VISUAL_PSEUDO_COLOR; - - g_assert (sizepalette == 256); - - if (max_colors != NULL) - _gdk_max_colors = atoi (max_colors); - - map_entries = _gdk_max_colors; - - if (map_entries >= 16 && map_entries < sizepalette) - { - if (map_entries < 32) - { - map_entries = 16; - visual->type = GDK_VISUAL_STATIC_COLOR; - bitspixel = 4; - } - else if (map_entries < 64) - { - map_entries = 32; - bitspixel = 5; - } - else if (map_entries < 128) - { - map_entries = 64; - bitspixel = 6; - } - else if (map_entries < 256) - { - map_entries = 128; - bitspixel = 7; - } - else - g_assert_not_reached (); - } - else - map_entries = sizepalette; - } - else if (bitspixel == 1 && numcolors == 16) - { - bitspixel = 4; - visual->type = GDK_VISUAL_STATIC_COLOR; - map_entries = 16; - } - else if (bitspixel == 1) - { - visual->type = GDK_VISUAL_STATIC_GRAY; - map_entries = 2; - } - else if (bitspixel == 4) - { - visual->type = GDK_VISUAL_STATIC_COLOR; - map_entries = 16; - } - else if (bitspixel == 8) - { - visual->type = GDK_VISUAL_STATIC_COLOR; - map_entries = 256; - } - else if (bitspixel == 16) - { - visual->type = GDK_VISUAL_TRUE_COLOR; -#if 1 - /* This code by Mike Enright, - * see http://www.users.cts.com/sd/m/menright/display.html - */ - memset (&bmi, 0, sizeof (bmi)); - bmi.bi.biSize = sizeof (bmi.bi); - - hbm = CreateCompatibleBitmap (_gdk_display_hdc, 1, 1); - GetDIBits (_gdk_display_hdc, hbm, 0, 1, NULL, - (BITMAPINFO *) &bmi, DIB_RGB_COLORS); - GetDIBits (_gdk_display_hdc, hbm, 0, 1, NULL, - (BITMAPINFO *) &bmi, DIB_RGB_COLORS); - DeleteObject (hbm); - - if (bmi.bi.biCompression != BI_BITFIELDS) - { - /* Either BI_RGB or BI_RLE_something - * .... or perhaps (!!) something else. - * Theoretically biCompression might be - * mmioFourCC('c','v','i','d') but I doubt it. - */ - if (bmi.bi.biCompression == BI_RGB) - { - /* It's 555 */ - bitspixel = 15; - visual->red_mask = 0x00007C00; - visual->green_mask = 0x000003E0; - visual->blue_mask = 0x0000001F; - } - else - { - g_assert_not_reached (); - } - } - else - { - DWORD allmasks = - bmi.u.fields[0] | bmi.u.fields[1] | bmi.u.fields[2]; - int k = 0; - while (allmasks) - { - if (allmasks&1) - k++; - allmasks/=2; - } - bitspixel = k; - visual->red_mask = bmi.u.fields[0]; - visual->green_mask = bmi.u.fields[1]; - visual->blue_mask = bmi.u.fields[2]; - } -#else - /* Old, incorrect (but still working) code. */ -#if 0 - visual->red_mask = 0x0000F800; - visual->green_mask = 0x000007E0; - visual->blue_mask = 0x0000001F; -#else - visual->red_mask = 0x00007C00; - visual->green_mask = 0x000003E0; - visual->blue_mask = 0x0000001F; -#endif -#endif - } - else if (bitspixel == 24 || bitspixel == 32) - { - if (!is_rgba) - bitspixel = 24; - visual->type = GDK_VISUAL_TRUE_COLOR; - visual->red_mask = 0x00FF0000; - visual->green_mask = 0x0000FF00; - visual->blue_mask = 0x000000FF; - } - else - g_error ("_gdk_visual_init: unsupported BITSPIXEL: %d\n", bitspixel); - - visual->depth = bitspixel; - visual->byte_order = GDK_LSB_FIRST; - visual->bits_per_rgb = 42; /* Not used? */ - - if ((visual->type != GDK_VISUAL_TRUE_COLOR) && - (visual->type != GDK_VISUAL_DIRECT_COLOR)) - { - visual->red_mask = 0; - visual->green_mask = 0; - visual->blue_mask = 0; - } - else - map_entries = 1 << (MAX (get_color_precision (visual->red_mask), - MAX (get_color_precision (visual->green_mask), - get_color_precision (visual->blue_mask)))); - - visual->colormap_size = map_entries; - - return visual; -} - static gboolean init_root_window_size (GdkWin32Screen *screen) { |