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

📄 crcursor.c

📁 Nxlib,一个模拟xlib的程序。使用microwindows的库来运行需要xlib支持的程序。
💻 C
字号:
#include "nxlib.h"static int min(int a, int b){	return (a < b)? a: b;}/* Calculate the cursor from the given pixmap */GR_CURSOR_ID_nxCreateCursor(GR_WINDOW_ID cursor, GR_RECT * cbb,		 GR_WINDOW_ID mask, GR_RECT * mbb,		 int hotx, int hoty, GR_COLOR fg, GR_COLOR bg){	int w, h;	GR_BITMAP *bcursor, *bmask;	GR_CURSOR_ID cursorid;	/* force cursor size to max Microwindows size*/	w = min(cbb->width, MWMAX_CURSOR_SIZE);	h = min(cbb->height, MWMAX_CURSOR_SIZE);	bcursor = GrNewBitmapFromPixmap(cursor, cbb->x, cbb->y, w, h);	if (!bcursor)		return 0;	w = min(mbb->width, MWMAX_CURSOR_SIZE);	h = min(mbb->height, MWMAX_CURSOR_SIZE);	bmask = GrNewBitmapFromPixmap(mask, mbb->x, mbb->y, w, h);	if (!bmask) {		Xfree(bcursor);		return 0;	}	if (cbb->width > w || cbb->height > h)		printf("nxCreateCursor: truncating original cursor (%d x %d)\n",		       cbb->width, cbb->height);	/*	 * Foreground/background reversed from nano-X !!!	 */	cursorid = GrNewCursor(w, h, hotx, hoty, bg, fg, bcursor, bmask);	free(bcursor);	free(bmask);	return cursorid;}CursorXCreatePixmapCursor(Display * display, Pixmap source, Pixmap mask,		    XColor * fg, XColor * bg, unsigned int x, unsigned y){	Cursor ret;	GR_RECT cbb, mbb;	GR_WINDOW_INFO winfo;	GrGetWindowInfo(source, &winfo);	cbb.x = cbb.y = 0;	cbb.width = winfo.width;	cbb.height = winfo.height;	GrGetWindowInfo(mask, &winfo);	mbb.x = mbb.y = 0;	mbb.width = winfo.width;	mbb.height = winfo.height;	ret = _nxCreateCursor(source, &cbb, mask, &mbb, x, y,		       GR_RGB(fg->red >> 8, fg->green >> 8, fg->blue >> 8),		       GR_RGB(bg->red >> 8, bg->green >> 8, bg->blue >> 8));	return ret;}intXFreeCursor(Display * display, Cursor cursor){	GrDestroyCursor(cursor);	return 1;}

⌨️ 快捷键说明

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