亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mwm.c

?? 安裝DDD之前
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* $Id: mwm.c,v 1.1 2004/08/28 19:25:46 dannybackx Exp $ *//*****************************************************************************//**       Copyright 1988 by Evans & Sutherland Computer Corporation,        **//**                          Salt Lake City, Utah                           **//**  Portions Copyright 1989 by the Massachusetts Institute of Technology   **//**                        Cambridge, Massachusetts                         **//**                                                                         **//**                           All Rights Reserved                           **//**                                                                         **//**    Permission to use, copy, modify, and distribute this software and    **//**    its documentation  for  any  purpose  and  without  fee is hereby    **//**    granted, provided that the above copyright notice appear  in  all    **//**    copies and that both  that  copyright  notice  and  this  permis-    **//**    sion  notice appear in supporting  documentation,  and  that  the    **//**    names of Evans & Sutherland and M.I.T. not be used in advertising    **//**    in publicity pertaining to distribution of the  software  without    **//**    specific, written prior permission.                                  **//**                                                                         **//**    EVANS & SUTHERLAND AND M.I.T. DISCLAIM ALL WARRANTIES WITH REGARD    **//**    TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES  OF  MERCHANT-    **//**    ABILITY  AND  FITNESS,  IN  NO  EVENT SHALL EVANS & SUTHERLAND OR    **//**    M.I.T. BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL  DAM-    **//**    AGES OR  ANY DAMAGES WHATSOEVER  RESULTING FROM LOSS OF USE, DATA    **//**    OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER    **//**    TORTIOUS ACTION, ARISING OUT OF OR IN  CONNECTION  WITH  THE  USE    **//**    OR PERFORMANCE OF THIS SOFTWARE.                                     **//*****************************************************************************//**************************************************************************** * This module is based on Twm, but has been siginificantly modified  * by Rob Nation  ****************************************************************************//*********************************************************************** * The rest of it is all my fault -- MLM * * Copyright (C) 1995-2002 LessTif Development Team * mwm - "LessTif Window Manager" ***********************************************************************/#include <LTconfig.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#include <ctype.h>#include <signal.h>#ifdef HAVE_FCNTL_H#include <fcntl.h>#endif#ifdef HAVE_UNISTD_H#include <unistd.h>#endif#ifdef HAVE_SYS_TYPES_H#include <sys/types.h>#endif#ifdef HAVE_SYS_WAIT_H#include <sys/wait.h>#endif#ifdef HAVE_SYS_STAT_H#include <sys/stat.h>#else#error "you lose (I don't know how to fix this)"#endif#ifdef HAVE_PWD_H#include <pwd.h>#endif#ifdef HAVE_GETRLIMIT#ifdef HAVE_SYS_TIME_H#include <sys/time.h>#endif#include <sys/resource.h>#endif#ifdef __EMX__#include <netdb.h>#include <X11/Xlibint.h>    /* for __XOS2RedirRoot() */#endif#include <X11/Intrinsic.h>#include <X11/Shell.h>#include <X11/Xproto.h>#include <Xm/Xm.h>#include <Xm/MwmUtil.h>#include <Xm/XmosP.h>#include <Xm/DisplayP.h>#include <Xm/ScreenP.h>#if XmVERSION >= 2#include <XmI/XmI.h>#endif#include "mwm.h"#ifndef HAVE_GETHOSTNAME/* our fallback implementation (gethostname.c) */extern int gethostname (char *name, size_t len);#endif/* * application globals */#define MAXHOSTNAME 255MwmInternalInfo Mwm;Display *dpy;			/* which display are we talking to */Widget toplevel;static Widget xmDisplay;static Boolean multiscreen = False;static char *mwm_name = "mwm";XContext MwmContext;		/* context for mwm windows */XContext MenuContext;		/* context for mwm menus */int JunkX = 0, JunkY = 0;Window JunkRoot, JunkChild;	/* junk window */unsigned int JunkWidth, JunkHeight, JunkBW, JunkDepth, JunkMask;char **g_argv;int fd_width, x_fd;static XtAppContext app;volatile int alarmed;Bool debugging = False;static int last_event_type = 0;/****************************************************************************//* * print usage */static voidusage(void){    fprintf(stderr,             "Mwm Ver %s\n\nusage: mwm [-display dpy] [-debug] [-xrm resourcestring] [-multiscreen] [-name name] [-screens name [name [...]]]\n",             VERSION);}/* * restart on a signal */static voidsig_restart(int sig){    MWM_Done(1, *g_argv);}/* * exit on a signal */static voidsig_done(int nonsense){    MWM_Done(0, NULL);}/* * For auto-raising windows, this routine is called */static voidsig_alarm(int nonsense){    alarmed = True;    signal(SIGALRM, sig_alarm);}/* * figures out if there's another WM running */static voidcatch_redirect(Display *dpy, XErrorEvent *event){    fprintf(stderr, "mwm: Error: Another WM is running\n");    exit(1); /* we don't return (this determines function type) */}/* * displays info on internal errors */static XErrorHandlergeneral_error(Display *dpy, XErrorEvent *event){    /* some errors are acceptable, mostly they're caused by      * trying to update a lost  window */    if ((event->error_code == BadWindow) ||	(event->request_code == X_GetGeometry) ||	(event->error_code == BadDrawable) ||	(event->request_code == X_SetInputFocus) ||	(event->request_code == X_GrabButton) ||	(event->request_code == X_ChangeWindowAttributes) ||	(event->request_code == X_InstallColormap))	return 0;    fprintf(stderr, "mwm: internal error");    fprintf(stderr, "      Request %d, Error %d\n", event->request_code,	    event->error_code);    fprintf(stderr, "      EventType: %d", last_event_type);    fprintf(stderr, "\n");    return 0;}/* * do global mwm initialization */static voidinitialize_mwm( void){    int i;    ScreenInfo *scr;    xmDisplay = XmGetXmDisplay(dpy);    RES_Initialize();    if (Mwm.multi_screen)	multiscreen = True;    EVENT_Initialize();    PROP_Initialize();    MwmContext = XUniqueContext();    MenuContext = XUniqueContext();    if (multiscreen)    {	Mwm.number_of_screens = ScreenCount(dpy);	Mwm.screen_info = (ScreenInfo **)XtMalloc(Mwm.number_of_screens *						  sizeof(ScreenInfo *));	for (i = 0; i < Mwm.number_of_screens; i++)	{	    scr = (ScreenInfo *)XtCalloc(1, sizeof(ScreenInfo));	    scr->screen = i;	    scr->root_win = RootWindow(dpy, scr->screen);	    if (scr->root_win == None)	    {		fprintf(stderr, "Screen %ld is not a valid screen", scr->screen);		exit(1);	    }	/*TODO: only default screen names are supported	 *   since '-screens' mwm command line option is not implemented yet	 *		A.R.	 */	    /* By default, the screen number is used for the screen name. */	    scr->screen_name = (String)XtMalloc(12);	    sprintf(scr->screen_name, "%lu", scr->screen);	    SCREEN_Initialize(scr);	    Mwm.screen_info[i] = scr;	}    }    else    {	Mwm.number_of_screens = 1;	Mwm.screen_info = (ScreenInfo **)XtMalloc(Mwm.number_of_screens *						  sizeof(ScreenInfo *));	scr = (ScreenInfo *)XtCalloc(1, sizeof(ScreenInfo));	scr->screen = DefaultScreen(dpy);	scr->root_win = RootWindow(dpy, scr->screen);	if (scr->root_win == None)	{	    fprintf(stderr, "Screen %ld is not a valid screen", scr->screen);	    exit(1);	}	/*TODO: only default screen names are supported	 *   since '-screens' mwm command line option is not implemented yet	 *		A.R.	 */	/* By default, the screen number is used for the screen name. */	scr->screen_name = (String)XtMalloc(12);	sprintf(scr->screen_name, "%lu", scr->screen);	SCREEN_Initialize(scr);	Mwm.screen_info[0] = scr;    }}/* * set the appropriate error handler */voidMWM_SetErrorHandler(int which){    if (which == REDIRECT)	XSetErrorHandler((XErrorHandler)catch_redirect);    else	XSetErrorHandler((XErrorHandler)general_error);}/* * cleanup and exit mwm */voidMWM_Done(int restart, const char *command){    ScreenInfo *scr;    int i, done, j;    for (i = 0; i < Mwm.number_of_screens; i++)    {	PAGER_MoveViewPort(Mwm.screen_info[i], 0, 0, False);	WIN_ReleaseWindows(Mwm.screen_info[i]);    }    /*     * serious cleanup     */    if (restart)    {	for (i = 0; i < Mwm.number_of_screens; i++)	{	    scr = Mwm.screen_info[i];	    DT_SaveState(scr);	    /* Really make sure that the connection is closed and cleared! */	    XSelectInput(dpy, scr->root_win, 0);	}	XSync(dpy, 0);	XCloseDisplay(dpy);	i = 0;	j = 0;	done = 0;	/* really need to destroy all windows, explicitly,	 * not sleep, but this is adequate for now */	_XmSleep(1);	ReapChildren();	execvp(command, g_argv);	fprintf(stderr, "MWM: Call of '%s' failed!!!!\n", command);	execvp(g_argv[0], g_argv);	/* that _should_ work */	fprintf(stderr, "MWM: Call of '%s' failed!!!!\n", g_argv[0]);    }    else    {	for (i = 0; i < Mwm.number_of_screens; i++)	    PROP_ClearBehavior(Mwm.screen_info[i]);	XCloseDisplay(dpy);	exit(0);    }}/* * ReapChildren - wait() for all dead child processes */voidReapChildren(void){#ifdef HAVE_WAITPID    while ((waitpid(-1, NULL, WNOHANG)) > 0);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
3d成人动漫网站| 一区二区三区日本| 国产精品的网站| 免费在线观看视频一区| 91小宝寻花一区二区三区| 日韩欧美黄色影院| 亚洲国产综合人成综合网站| 国产凹凸在线观看一区二区| 欧美一级生活片| 亚洲国产美女搞黄色| 成人h动漫精品一区二| 久久嫩草精品久久久久| 免费高清成人在线| 欧美日韩一区在线观看| 一区二区三区日本| 色婷婷综合激情| 亚洲精品国产高清久久伦理二区| 国产精品一区三区| 久久综合九色综合欧美98| 图片区日韩欧美亚洲| 欧美性生交片4| 亚洲精品写真福利| 在线免费观看一区| 亚洲自拍偷拍网站| 日本精品视频一区二区三区| 国产精品成人免费在线| av一区二区三区四区| 欧美激情一区二区在线| 粉嫩13p一区二区三区| 日本一区二区在线不卡| 国产成人精品一区二区三区四区 | 国产超碰在线一区| 精品精品国产高清一毛片一天堂| 日韩影院在线观看| 日韩欧美一卡二卡| 国模冰冰炮一区二区| 久久精品视频网| 成人午夜av影视| 最好看的中文字幕久久| 色婷婷久久久综合中文字幕 | 精品国产3级a| 国产伦精品一区二区三区免费迷 | 亚洲国产成人高清精品| 欧美日韩一区二区三区不卡| 亚洲韩国精品一区| 日韩欧美黄色影院| 国产不卡免费视频| 亚洲精品国产一区二区精华液| 欧美在线观看视频一区二区 | 国产福利一区二区| 国产精品午夜春色av| 91免费精品国自产拍在线不卡| 亚洲三级电影网站| 欧美另类videos死尸| 激情深爱一区二区| 国产精品毛片a∨一区二区三区| 99久久精品免费看| 亚洲国产aⅴ天堂久久| 精品久久久久一区| 大胆亚洲人体视频| 亚洲综合区在线| 精品国产露脸精彩对白| www.av精品| 免费视频一区二区| 国产精品久久久久影视| 欧美乱妇15p| 大尺度一区二区| 秋霞影院一区二区| 亚洲免费视频成人| 欧美成人a∨高清免费观看| 99久久精品国产一区| 欧美a一区二区| 亚洲欧美另类久久久精品2019| 欧美一区二区三区精品| 成人av午夜电影| 另类小说色综合网站| 亚洲色图在线播放| 精品国产99国产精品| 91福利在线观看| 成人综合日日夜夜| 另类欧美日韩国产在线| 亚洲人被黑人高潮完整版| 精品国产一区a| 欧美人xxxx| 在线观看中文字幕不卡| 成人美女视频在线观看| 精品在线免费视频| 亚洲动漫第一页| 亚洲欧美一区二区三区久本道91 | 欧美日韩一区二区三区在线看 | 免费成人在线播放| 亚洲综合网站在线观看| 亚洲国产精品成人综合| 欧美一区二区精美| 欧美三区在线观看| 91视频你懂的| av电影一区二区| 国产精品综合一区二区| 麻豆精品久久久| 天天亚洲美女在线视频| 一区二区三区日本| 一区二区高清视频在线观看| 国产精品久久久久久久久久久免费看 | 日韩欧美视频一区| 91麻豆精品国产91久久久久 | 成人美女在线观看| 成人自拍视频在线观看| 国产精品一区二区久激情瑜伽 | 日本网站在线观看一区二区三区 | 亚洲日本一区二区| 最好看的中文字幕久久| 日韩码欧中文字| 国产精品久久看| ...av二区三区久久精品| 国产精品每日更新在线播放网址| 国产亚洲精品7777| 中文一区一区三区高中清不卡| 久久久99精品免费观看| 国产午夜精品久久久久久久| 国产婷婷色一区二区三区四区 | 亚洲国产精品久久不卡毛片| 一区二区免费在线播放| 亚洲一区免费在线观看| 亚洲国产成人porn| 久久国产精品99久久人人澡| 狠狠色丁香婷婷综合久久片| 国产盗摄一区二区| 成人高清av在线| 色88888久久久久久影院按摩| 欧美在线色视频| 7777精品伊人久久久大香线蕉的| 日韩欧美一区二区视频| 国产亚洲综合色| 亚洲欧洲综合另类| 日本va欧美va欧美va精品| 国内精品写真在线观看| 99久久免费视频.com| 精品视频免费看| 亚洲精品一区二区三区影院| 国产精品久久777777| 性感美女久久精品| 国产一区二区h| 欧美无人高清视频在线观看| 欧美成人艳星乳罩| 亚洲丝袜美腿综合| 奇米影视一区二区三区| 成人av在线电影| 91精品麻豆日日躁夜夜躁| 久久久久久一二三区| 一二三区精品视频| 国产一区二区三区在线观看精品 | 亚洲一区二区在线播放相泽| 日韩av中文在线观看| 成人午夜av影视| 日韩手机在线导航| 亚洲欧美视频在线观看| 蜜桃视频在线一区| 99re这里只有精品首页| 日韩欧美综合一区| 亚洲人成在线播放网站岛国| 久久精品国产久精国产| 日本高清不卡视频| 久久综合99re88久久爱| 图片区日韩欧美亚洲| 91视频免费观看| 国产午夜精品一区二区| 奇米影视在线99精品| 在线亚洲高清视频| 国产精品丝袜一区| 国产一区激情在线| 欧美精品一二三| 亚洲男人的天堂在线观看| 国产成人综合亚洲91猫咪| 日韩一区二区中文字幕| 亚洲一区二区影院| 91免费国产在线观看| 中文字幕欧美三区| 国产一区二区免费在线| 日韩三级av在线播放| 亚洲18女电影在线观看| 色哟哟一区二区| 成人欧美一区二区三区白人| 国产91丝袜在线播放0| 精品少妇一区二区三区视频免付费| 一区二区三区在线免费播放 | 欧美一卡二卡三卡| 婷婷中文字幕综合| 欧美另类高清zo欧美| 亚洲国产成人va在线观看天堂| 97久久久精品综合88久久| 欧美极品美女视频| 国产一区二区剧情av在线| 久久综合九色综合97_久久久| 青娱乐精品视频在线| 欧美精品色综合| 天天操天天综合网| 欧美日本一区二区| 人人狠狠综合久久亚洲| 日韩午夜精品视频| 国产综合成人久久大片91|