aboutsummaryrefslogtreecommitdiffstats
path: root/minilibx-bsd/mlx_int_get_visual.c
diff options
context:
space:
mode:
Diffstat (limited to 'minilibx-bsd/mlx_int_get_visual.c')
-rw-r--r--minilibx-bsd/mlx_int_get_visual.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/minilibx-bsd/mlx_int_get_visual.c b/minilibx-bsd/mlx_int_get_visual.c
new file mode 100644
index 0000000..440a7ca
--- /dev/null
+++ b/minilibx-bsd/mlx_int_get_visual.c
@@ -0,0 +1,39 @@
+/*
+** mlx_int_get_visual.c for MinilibX in
+**
+** Made by Charlie Root
+** Login <ol@epitech.net>
+**
+** Started on Wed Oct 3 17:01:51 2001 Charlie Root
+** Last update Thu Oct 4 15:00:45 2001 Charlie Root
+*/
+
+
+
+#include "mlx_int.h"
+
+
+/*
+** We need a private colormap for non-default Visual.
+*/
+
+
+int mlx_int_get_visual(t_xvar *xvar)
+{
+ XVisualInfo *vi;
+ XVisualInfo template;
+ int nb_item;
+
+ xvar->private_cmap = 0;
+ xvar->visual = DefaultVisual(xvar->display,xvar->screen);
+ if (xvar->visual->class == TrueColor)
+ return (0);
+ template.class = TrueColor;
+ template.depth = xvar->depth;
+ if (!(vi = XGetVisualInfo(xvar->display,VisualDepthMask|VisualClassMask,
+ &template,&nb_item)) )
+ return (-1);
+ xvar->visual = vi->visual;
+ xvar->private_cmap = 1;
+ return (0);
+}