Перейти на страницу файла на Викискладе

Файл:Xhole.png

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Xhole.png(433 × 384 пкс, размер файла: 8 КБ, MIME-тип: image/png)

Краткое описание

Описание

A window with a hole in the middle. Used to illustrate the X Window shape extension. The decorative frames etc. are generated by twm. The program that creates this window is below; it has been written by User:Tizio, who release it in the public domain. I have took the screenshot myself.

/*
 * xhole.c
 *
 * A sample application using the shape extension.
 * Creates a window with a hole in the middle. Works
 * with twm, fvwm, and mwm, but kde refuses to add
 * a title bar to it.
 * Compile with `gcc xhole.c -o xhole -lX11 -lXext'
 */

#include <stdio.h>
#include <stdlib.h>
#include <X11/Xlib.h>
#include <X11/extensions/shape.h>

int main(int argc, char* argv[]) {
	Display *d;
	int s;
	Window w;
	Pixmap p;
	GC gw, gp;
	XEvent e;
	int x, y;

	/* open connection with the server */
	d = XOpenDisplay(NULL);
	if (d == NULL) {
		printf("Cannot open display\n");
		exit(1);
	}
	s = DefaultScreen(d);
	gw = DefaultGC(d, s);

	/* create window, select events, map  */
	w = XCreateSimpleWindow(d, RootWindow(d, s), 10, 10, 300, 200, 1,
			BlackPixel(d, s), WhitePixel(d, s));
	XSelectInput(d, w, ExposureMask | KeyPressMask | ButtonPressMask);
	XStoreName(d, w, "XHole");
	XMapWindow(d, w);

	/* create the pixmap that specifies the shape */
	p = XCreatePixmap(d, w, 400, 300, 1);
	gp = XCreateGC(d, p, 0, NULL);
	XSetForeground(d, gp, WhitePixel(d, s));
	XFillRectangle(d, p, gp, 0, 0, 400, 300);
	XSetForeground(d, gp, BlackPixel(d, s));
	XFillArc(d, p, gp, 120, 100, 100, 100, 0, 360*64);

	/* set the pixmap as the new window mask;
	the pixmap is slightly larger than the window
	to allow for the window border and title bar
	(as added by the window manager) to be visible */
	XShapeCombineMask(d, w, ShapeBounding, -20, -50, p, ShapeSet);

	/* event polling loop */
	while (1) {
		XNextEvent(d, &e);
		/* draw or redraw the window */
		if (e.type == Expose) {
			/* not the correct way of drawing text... */
			for (y = 10; y <= 210; y += 11) {
				for (x = 0; x < 300; x += 25) XDrawString(d, w, gw, x, y, "test", 4);
			}
		}

		/* exit on button press */
		if (e.type == ButtonPress)
			break;
	}

	/* close connection to display */
	XCloseDisplay(d);

	return 0;
}

Дата 2 января 2006 (дата первоначальной загрузки файла на вики); 11 января 2006 (last version)
Источник Transferred from en.wikipedia to Commons by User:JohnnyMrNinja using CommonsHelper.
Автор Tizio at en.wikipedia
Права
(Повторное использование этого файла)
twm is under the MIT License

Лицензирование

Этот скриншот либо не содержит части или визуальные элементы программы, защищённой авторским правом, либо автор опубликовал их под свободной лицензией (которая должна быть обозначена ниже этого уведомления), а также следует руководству по лицензированию Викисклада (Wikimedia Commons). Вы можете использовать его свободно согласно его собственной лицензии. Лицензия на свободное программное обеспечение:

Этот файл доступен на условиях лицензии Expat License, иногда называемой Лицензией MIT:

Copyright © Автор

Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное Обеспечение»), безвозмездно использовать Программное Обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, добавление, публикацию, распространение, сублицензирование и/или продажу копий Программного Обеспечения, также как и лицам, которым предоставляется данное Программное Обеспечение, при соблюдении следующих условий:

Указанное выше уведомление об авторском праве и данные условия должны быть включены во все копии или значимые части данного Программного Обеспечения.

Данное программное обеспечение предоставляется «как есть», без каких-либо гарантий, явно выраженных или подразумеваемых, включая, но не ограничиваясь гарантиями товарной пригодности, соответствия по его конкретному назначению и отсутствия нарушений прав. Ни в каком случае авторы или правообладатели не несут ответственности по искам о возмещении ущерба, убытков или других требований по действующим контрактам, деликтам или иному, возникшим из, имеющим причиной или связанным с программным обеспечением или использованием программного обеспечения или иными действиями с программным обеспечением.


Загружающему: Лицензия MIT имеет различные версии, возможно вы хотите указать лицензию более точно. Кликните на {{MIT}} для более подробной информации.

Примечание: если скриншот показывает какое-нибудь произведение, которое не является непосредственно прямым результатом выполнения кода программы, вроде текста или графики, которая не является частью программы, лицензия для данного произведения должна быть указана отдельно.


Public domain Автор этого произведения, Tizio из английский Википедия, передаёт его в общественное достояние. Это разрешение действует по всему миру.
В некоторых странах это не может быть возможно юридически, в таком случае:
Tizio предоставляет любому право использовать данное произведение в любых целях, без каких-либо условий, если только такие условия не требуются по закону.

Исходный журнал загрузок

Первоначальная страница описания находилась здесь. Все нижеперечисленные имена участников относятся к en.wikipedia.
  • 2006-01-11 20:38 Tizio 433×384×8 (8179 bytes) Cleaner version
  • 2006-01-02 13:08 Tizio 448×387×8 (8253 bytes) A window with a hole in the middle. Used to illustrate the X Window shape extension.

Краткие подписи

Добавьте однострочное описание того, что собой представляет этот файл

Элементы, изображённые на этом файле

изображённый объект

История файла

Нажмите на дату/время, чтобы посмотреть файл, который был загружен в тот момент.

Дата/времяМиниатюраРазмерыУчастникПримечание
текущий06:46, 24 июля 2008Миниатюра для версии от 06:46, 24 июля 2008433 × 384 (8 КБ)File Upload Bot (Magnus Manske) {{BotMoveToCommons|en.wikipedia}} {{Information |Description={{en|A window with a hole in the middle. Used to illustrate the X Window shape extension. The decorative frames etc. are generated by en:twm. The program that creates this window is below;

Нет страниц, использующих этот файл.

Глобальное использование файла

Данный файл используется в следующих вики: