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

📄 colors.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
字号:
#include <u.h>#include <libc.h>#include <thread.h>#include <draw.h>#include <keyboard.h>#include <mouse.h>#include <control.h>#include "colors.h"Font *boldfont;Font *romanfont;Image		*background;Image		*bordercolor;Image		*black;Image		*blue;Image		*darkblue;Image		*darkgrey;Image		*darkgreen;Image		*darkmagenta;Image		*green;Image		*grey;Image		*high;Image		*land;Image		*lightblue;Image		*lightgreen;Image		*lightgrey;Image		*lightmagenta;Image		*low;Image		*magenta;Image		*oceanblue;Image		*pale;Image		*paleblue;Image		*paleyellow;Image		*red;Image		*sea;Image		*white;Image		*yellow;static ulongrgba(ulong rgba){	uchar r, g, b, a;	a = rgba & 0xff;	b = (rgba >>= 8) & 0xff;	g = (rgba >>= 8) & 0xff;	r = (rgba >> 8) & 0xff;	rgba = ((r * a / 0xff) & 0xff);	rgba = ((g * a / 0xff) & 0xff) | (rgba << 8);	rgba = ((b * a / 0xff) & 0xff) | (rgba << 8);	rgba = (a & 0xff) | (rgba << 8);	return rgba;}voidcolorinit(char *roman, char *bold){	Rectangle r = Rect(0, 0, 1, 1);	white =			display->white;	black =			display->black;	blue =			allocimage(display, r, screen->chan, 1, rgba(0x0000ffff));	darkblue =		allocimage(display, r, screen->chan, 1, rgba(0x0000ccff));	darkgrey =		allocimage(display, r, screen->chan, 1, rgba(0x444444ff));	darkgreen =		allocimage(display, r, screen->chan, 1, rgba(0x008800ff));	darkmagenta =		allocimage(display, r, screen->chan, 1, rgba(0x770077ff));	green =			allocimage(display, r, screen->chan, 1, rgba(0x00ff00ff));	grey =			allocimage(display, r, screen->chan, 1, rgba(0x888888ff));	high =			allocimage(display, r, screen->chan, 1, rgba(0x00ccccff));	land =			allocimage(display, r, screen->chan, 1, rgba(0xe0ffe0ff));	lightblue =		allocimage(display, r, screen->chan, 1, rgba(0x88ccccff));	lightgreen =		allocimage(display, r, screen->chan, 1, rgba(0xaaffaaff));	lightgrey =		allocimage(display, r, screen->chan, 1, rgba(0xddddddff));	lightmagenta =		allocimage(display, r, screen->chan, 1, rgba(0xff88ffff));	low =			allocimage(display, r, screen->chan, 1, rgba(0xddddddff));	magenta =		allocimage(display, r, screen->chan, 1, rgba(0xbb00bbff));	oceanblue =		allocimage(display, r, screen->chan, 1, rgba(0x93ddddff));	pale =			allocimage(display, r, screen->chan, 1, rgba(0xffffaaff));	paleblue =		allocimage(display, r, screen->chan, 1, rgba(0xddffffff));	paleyellow =		allocimage(display, r, screen->chan, 1, rgba(0xeeee9eff));	red =			allocimage(display, r, screen->chan, 1, rgba(0xff0000ff));	sea =			allocimage(display, r, screen->chan, 1, rgba(0xe0e0ffff));	yellow =			allocimage(display, r, screen->chan, 1, rgba(0xffff00ff));	background = sea;	bordercolor = darkgreen;	namectlimage(background, "background");	namectlimage(bordercolor, "border");	namectlimage(black, "black");	namectlimage(blue, "blue");	namectlimage(darkblue, "darkblue");	namectlimage(darkgreen, "darkgreen");	namectlimage(darkmagenta, "darkmagenta");	namectlimage(green, "green");	namectlimage(grey, "grey");	namectlimage(high, "high");	namectlimage(land, "land");	namectlimage(lightblue, "lightblue");	namectlimage(lightgreen, "lightgreen");	namectlimage(lightgrey, "lightgrey");	namectlimage(lightmagenta, "lightmagenta");	namectlimage(low, "low");	namectlimage(magenta, "magenta");	namectlimage(oceanblue, "oceanblue");	namectlimage(pale, "pale");	namectlimage(paleblue, "paleblue");	namectlimage(paleyellow, "paleyellow");	namectlimage(red, "red");	namectlimage(sea, "sea");	namectlimage(white, "white");	namectlimage(yellow, "yellow");	if ((romanfont = openfont(display, roman)) == nil)		sysfatal("openfont %s: %r", roman);	namectlfont(romanfont, "romanfont");	if ((boldfont = openfont(display, bold)) == nil)		sysfatal("openfont %s: %r", bold);	namectlfont(boldfont, "boldfont");}

⌨️ 快捷键说明

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