⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 visual.c

📁 Nxlib,一个模拟xlib的程序。使用microwindows的库来运行需要xlib支持的程序。
💻 C
字号:
#include "nxlib.h"#include <X11/Xutil.h>/* only one visual to match, no looping required*/StatusXMatchVisualInfo(Display * dpy, int screen, int depth, int class,		 XVisualInfo * vinfo){	Depth *dp = &dpy->screens[0].depths[0];	Visual *vp = dp->visuals;	if (screen != 0 || dp->depth != depth || vp->class != class) {		printf("XmatchVisualInfo failed: want depth %d class %d\n",			depth, class);		return 0;	}	vinfo->visual = vp;	vinfo->visualid = vp->visualid;	vinfo->screen = screen;	vinfo->depth = depth;	vinfo->class = class;	vinfo->red_mask = vp->red_mask;	vinfo->green_mask = vp->green_mask;	vinfo->blue_mask = vp->blue_mask;	vinfo->colormap_size = vp->map_entries;	vinfo->bits_per_rgb = vp->bits_per_rgb;	return 1;}XVisualInfo *XGetVisualInfo(Display *dpy, long visual_info_mask,	XVisualInfo *visual_info_template, int *nitems){	Depth *dp = &dpy->screens[0].depths[0];	Visual *vp = dp->visuals;	XVisualInfo *vip;		*nitems = 0;	if ((visual_info_mask & VisualScreenMask) &&	    visual_info_template->screen != 0)		return NULL;	if ((visual_info_mask & VisualDepthMask) &&	    (dp->depth != visual_info_template->depth))		return NULL;	if ((visual_info_mask & VisualIDMask) &&	    (vp->visualid != visual_info_template->visualid))	    	return NULL;	if ((visual_info_mask & VisualClassMask) &&	    (vp->class != visual_info_template->class))	    	return NULL;	if ((visual_info_mask & VisualRedMaskMask) &&	    (vp->red_mask != visual_info_template->red_mask))	    	return NULL;	if ((visual_info_mask & VisualGreenMaskMask) &&	    (vp->green_mask != visual_info_template->green_mask))	    	return NULL;	if ((visual_info_mask & VisualBlueMaskMask) &&	    (vp->blue_mask != visual_info_template->blue_mask))	    	return NULL;	if ((visual_info_mask & VisualColormapSizeMask) &&	    (vp->map_entries != visual_info_template->colormap_size))	    	return NULL;	if ((visual_info_mask & VisualBitsPerRGBMask) &&	    (vp->bits_per_rgb != visual_info_template->bits_per_rgb))	    	return NULL;	vip = (XVisualInfo *)Xmalloc(sizeof(XVisualInfo));	if (!vip)		return NULL;	vip->visual = vp;	vip->visualid = vp->visualid;	vip->screen = 0;	vip->depth = dp->depth;	vip->class = vp->class;	vip->red_mask = vp->red_mask;	vip->green_mask = vp->green_mask;	vip->blue_mask = vp->blue_mask;	vip->colormap_size = vp->map_entries;	vip->bits_per_rgb = vp->bits_per_rgb;	*nitems = 1;	return vip;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -