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

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

?? config.hpp

?? 一個3D桌面的實現源碼
?? HPP
?? 第 1 頁 / 共 2 頁
字號:
//  ----------------------------------------------------------////  Copyright (C) 2002 Brad Wasson <bard@systemtoolbox.com>////  This file is part of 3ddesktop.////  3ddesktop is free software; you can redistribute it and/or modify it//  under the terms of the GNU General Public License as published by//  the Free Software Foundation; either version 2, or (at your option)//  any later version.////  3ddesktop is distributed in the hope that it will be useful, but//  WITHOUT ANY WARRANTY; without even the implied warranty of//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the//  GNU General Public License for more details.////  You should have received a copy of the GNU General Public License//  along with 3ddesktop; see the file COPYING.   If not, write to//  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.//#ifndef _CONFIG_HPP#define _CONFIG_HPP#include <stdio.h>#include <stdlib.h>#include <errno.h>#include <unistd.h>#include <fcntl.h>#include <sys/types.h>#include <sys/stat.h>  // for mkdir#ifndef _GNU_SOURCE#define _GNU_SOURCE#endif#include <dirent.h>  // for PATH_MAX?#include <getopt.h>#include "3ddesk.h"//#include "arrange.hpp"// STLusing namespace std;#include <list>static void usage_and_bye (void){    msgout(INFO,            "usage: 3ddeskd [ OPTIONS ]\n\n"           "  where:\n"           "    --acquire[=#]    Grab images for all the desktops by cycling thru\n"           "                       (sleep for # millisecs at each screen for refresh)\n"           "    --dir=/path      the install dir if different than /usr/share/3ddesktop\n"           "    --texturesize=#  size of textures (larger for more detail) in powers of 2\n"            "    --wm=            Specify the Windowmanager type so all the virtual \n"           "                     desktops are found correctly.  Available options are:\n"           "                       kde2, kde3, gnome1, gnome2, ewmh, fluxbox, windowmaker,\n"           "                       enlightenment, sawfishonly, workspaces\n"           "    --fastest        hog the CPU for smoothest operation\n"           "    -v               verbose/debug information\n\n");    exit (1);} // END usage_and_bye// options by command line or config file class Options {public:    char name[50];    // bits/bools on/off    int acquire : 1;    int show_fps : 1;    int show_digits : 1;    int do_fullscreen : 1;    int entry_exit_movement : 1;    int use_context_switch : 1;    int use_breathing : 1;    int daemonized : 1;    int use_wireframe : 1;    int __early_desktop_switch : 1;    int __disable_keys_in_goto : 1;    int __verbose : 1;    int __texture_size;    int __use_kde : 1;    int __use_ewmh : 1;    int __sawfish_only : 1;    int __use_workspaces : 1;    int __use_viewareas : 1;#if defined(__FreeBSD__)    char base_dir[MAXNAMLEN + 1];#else    char base_dir[PATH_MAX];#endif    int random_fun_delay;    // 15    float animation_speed;  // ms between animations    // steps between face changes (40 * 10ms animation step = 400ms to    // change faces)    float face_change_steps;    float zoom_steps;    FaceType_t face_type;    float default_z_offset_distance;    int goto_column;    int goto_row;    float digit_size;    int digit_color;    int frame_color;    float linear_spacing;    int recalc;  // set if arrangement needs to be recalculated    // ---------    //Arrangement *arrangement;    Options(char *n = NULL) {	if (n)	    strncpy(name, n, sizeof(name));        // defaults        __verbose = 0;        __texture_size = 1024;	__use_kde = 0;	__use_ewmh = 0;        __sawfish_only = 0;        __use_workspaces = 0;        __use_viewareas = 0;        __early_desktop_switch = 1;        __disable_keys_in_goto = 1;        acquire = 0;        show_fps = 0;        show_digits = 1;        do_fullscreen = 1;        entry_exit_movement = 1;        use_context_switch = 1;        use_breathing = 1;        random_fun_delay = 15;        face_type = FACE_TYPE_CAROUSEL;        default_z_offset_distance = 0;        daemonized = 0;        goto_column = NO_GOTO;        goto_row = NO_GOTO;        strcpy(base_dir, SHAREDIR);        digit_size = 50;        digit_color = COLOR_RED;        frame_color = COLOR_GRAY;        use_wireframe = true;        linear_spacing = 2.0;        recalc = 1;        animation_speed = 10;        face_change_steps = 40;        zoom_steps = 45;	// ----        //arrangement = NULL;    };    void set_color (int *v, char *color) {        if (strcmp(color, "red") == 0) {            *v = COLOR_RED;        } else if (strcmp(color, "green") == 0) {            *v = COLOR_GREEN;        } else if (strcmp(color, "blue") == 0) {            *v = COLOR_BLUE;        } else if (strcmp(color, "lightblue") == 0) {            *v = COLOR_LIGHTBLUE;        } else if (strcmp(color, "white") == 0) {            *v = COLOR_WHITE;        } else if (strcmp(color, "gray") == 0) {            *v = COLOR_GRAY;        } else if (strcmp(color, "purple") == 0) {            *v = COLOR_PURPLE;        } else if (strcmp(color, "yellow") == 0) {            *v = COLOR_YELLOW;        } else {            msgout (DEBUG, "conf file: invalid color '%s' (red,green,blue,yellow,white,purple,orange)\n", color);            //*v = COLOR_WHITE;        }    }            int get_boolean (char *value) {        if (!value) return 0;        if (!strcmp(value, "0") ||            !strcmp(value, "false") ||            !strcmp(value, "no") ||            !strcmp(value, "off"))             return 0;                if (!strcmp(value, "1") ||            !strcmp(value, "true") ||            !strcmp(value, "yes") ||            !strcmp(value, "on"))             return 1;        return 0;  // default false (?)    }    int set_option (char *option, char *value, bool from_cmdline) {        int tmpint;        float tmpfloat;	if (!option)	    return 1;	if (strcmp(option, "mode") == 0) {	    if (strcmp(value, "cylinder") == 0) {		face_type = FACE_TYPE_CYLINDER;	    } else if (strcmp(value, "linear") == 0) {		face_type = FACE_TYPE_LINEAR;	    } else if (strcmp(value, "viewmaster") == 0) {		face_type = FACE_TYPE_VIEWMASTER;	    } else if (strcmp(value, "carousel") == 0) {		face_type = FACE_TYPE_CAROUSEL;	    } else if (strcmp(value, "priceisright") == 0) {		face_type = FACE_TYPE_PRICEISRIGHT;	    } else if (strcmp(value, "flip") == 0) {		face_type = FACE_TYPE_FLIP;	    } else if (strcmp(value, "random") == 0) {		face_type = FACE_TYPE_RANDOM;	    } else {		return 1;	    }	} else if (strcmp(option, "zoomspeed") == 0) {            float tmp = atof(value);            if (tmp >= 1.0 && tmp <= 300.0) {                zoom_steps = tmp;            }	} else if (strcmp(option, "changespeed") == 0) {            float tmp = atof(value);            if (tmp >= 1.0 && tmp <= 300.0) {                face_change_steps = tmp;            }	} else if (strcmp(option, "animation_speed") == 0) {            float tmp = atof(value);            if (tmp >= 1.0 && tmp <= 100.0) {                animation_speed = tmp;            }	} else if (strcmp(option, "linear_spacing") == 0) {            float tmp = atof(value);            if (tmp >= 0.0 && tmp <= 20) {                linear_spacing = tmp;                recalc = 1;            }	} else if (strcmp(option, "use_breathing") == 0) {            use_breathing = get_boolean (value);	} else if (strcmp(option, "digit_size") == 0) {	    digit_size = atoi(value);	} else if (strcmp(option, "digit_color") == 0) {            set_color (&digit_color, value);	} else if (strcmp(option, "frame_color") == 0) {            set_color (&frame_color, value);	} else if (strcmp(option, "use_wireframe") == 0) {            use_wireframe = get_boolean (value);	} else if (strcmp(option, "fps") == 0) {	    show_fps = get_boolean (value);	} else if (strcmp(option, "show_digit") == 0) {	    show_digits = get_boolean (value);;	} else if (strcmp(option, "dir") == 0) {	    strncpy(base_dir, value, sizeof(base_dir));	} else if (strcmp(option, "randdelay") == 0) {	    tmpint = atoi (value);	    if (0 <= tmpint && tmpint < 60)		random_fun_delay = tmpint;	} else if (strcmp(option, "workspaces") == 0) {            __use_workspaces = from_cmdline ? 1 : get_boolean (value);	} else if (strcmp(option, "texturesize") == 0) {	    __texture_size = atoi (value);	    switch (__texture_size) {	    case  16: case  32: case   64: case  128:	    case 256: case 512: case 1024: case 2048:		break;	    default:		// I now use gluBuild2DMipmaps so this isn't		// really necessary because it converts it however		// it is sooooo slow.  To use glTexImage2D it is		// necessary.		msgout (ERROR, "Texture size must be a power of 2 (such as 256, 512, 1024 ...)\n");		end_program(-1);  // should I ignore this error?		break;	    }	} else if (strcmp(option, "fastest") == 0) {	    use_context_switch = get_boolean (value);	} else if (strcmp(option, "depth") == 0) {	    tmpfloat = (float)atof(value);	    if (3.5 <= tmpfloat && tmpfloat < 40.0)		default_z_offset_distance = tmpfloat;	} else if (strcmp(option, "win") == 0) {	    do_fullscreen = from_cmdline ? 0 : get_boolean (value);	} else if (strcmp(option, "sawfish") == 0) {	    __sawfish_only = from_cmdline ? 1 : get_boolean (value);        } else if (strcmp(option, "kde") == 0) {            __use_kde = from_cmdline ? 1 : get_boolean (value);        } else if (strcmp(option, "kde2") == 0) {            __use_kde = from_cmdline ? 1 : get_boolean (value);        } else if (strcmp(option, "kde3") == 0) {            __use_ewmh = from_cmdline ? 1 : get_boolean (value);        } else if (strcmp(option, "gnome") == 0) {            // "gnome off" will actaully enable in .conf ... but oh well            __use_ewmh = 0;            __use_workspaces = 1;        } else if (strcmp(option, "gnome1") == 0) {            __use_ewmh = 0;            __use_workspaces = 1;        } else if (strcmp(option, "gnome2") == 0) {            __use_ewmh = from_cmdline ? 1 : get_boolean (value);        } else if (strcmp(option, "ewmh") == 0) {            __use_ewmh = from_cmdline ? 1 : get_boolean (value);	} else if (strcmp(option, "acquire") == 0) {	    acquire = 1;	    if (value) {		tmpint = atoi (value);		// must be between 10ms and 3sec for now		if (10 < tmpint && tmpint < 3000)		    acquire = tmpint;	    }	} else if (strcmp(option, "wm") == 0) {	    if (!value)		return 1;	    if (strcmp (value, "sawfishonly") == 0) {		__sawfish_only = 1;	    } else if (strcmp (value, "kde") == 0 ||                       strcmp (value, "kde2") == 0) {		__use_kde = 1;		__use_ewmh = 0;	    } else if (strcmp (value, "kde3") == 0) {		__use_ewmh = 1;	    } else if (strcmp (value, "gnome") == 0 ||                       strcmp (value, "gnome1") == 0 ||                       strcmp (value, "enlightenment") == 0) {                __use_viewareas = 1;		__use_workspaces = 1;		__use_ewmh = 0;	    } else if (strcmp (value, "gnome2") == 0 ||                       strcmp (value, "ewmh") == 0) {		__use_ewmh = 1;	    } else if (strcmp (value, "gnomeworkspaces") == 0 ||

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美www视频| 欧美性高清videossexo| 日本女优在线视频一区二区| 中文字幕在线一区| 国产三级一区二区| 中文字幕在线不卡一区二区三区| 久久免费视频一区| 国产精品美女视频| 亚洲欧美偷拍三级| 午夜精品福利久久久| 亚洲超碰精品一区二区| 亚洲最大成人综合| 日本欧美在线看| 成人一区二区三区视频| 在线亚洲欧美专区二区| 欧美精品亚洲一区二区在线播放| 日韩美一区二区三区| 国产精品乱码人人做人人爱| 亚洲午夜久久久久| 高清久久久久久| 欧美日韩国产三级| 国产欧美日韩一区二区三区在线观看| 亚洲人成精品久久久久久 | 天天色天天操综合| 国产毛片精品国产一区二区三区| www.亚洲人| 久久综合国产精品| 久久91精品久久久久久秒播| 亚洲无人区一区| 国产99精品国产| 51精品秘密在线观看| 国产精品久久久久一区 | 91丨porny丨最新| 精品成人私密视频| 日本三级亚洲精品| 欧美日韩一区二区在线观看视频| 中文在线一区二区| 韩国欧美国产一区| 欧美va亚洲va| 激情五月婷婷综合网| 欧美大片在线观看| 免费不卡在线视频| 久久青草国产手机看片福利盒子 | voyeur盗摄精品| 日本一区二区电影| 福利91精品一区二区三区| 精品国产91乱码一区二区三区| 亚洲成a人片在线不卡一二三区| 欧美一区二区三区在线观看 | 成人免费毛片高清视频| 精品少妇一区二区三区日产乱码| 毛片av一区二区三区| 精品国产乱码久久久久久久| 国产一区二区三区四| 亚洲乱码国产乱码精品精可以看| 91黄色小视频| 国产精品亚洲成人| 亚洲综合色丁香婷婷六月图片| 欧美二区三区91| 国产91丝袜在线播放0| 夜夜精品视频一区二区| 亚洲精品一线二线三线| 色激情天天射综合网| 激情文学综合网| 一区二区久久久久久| 久久久久综合网| 91精品国产综合久久婷婷香蕉| 国产不卡免费视频| 精东粉嫩av免费一区二区三区| 亚洲国产精品99久久久久久久久| 精品视频免费在线| 色婷婷综合久久久中文字幕| 婷婷亚洲久悠悠色悠在线播放| 粉嫩av一区二区三区| 亚洲一区二区三区在线| 国产精品久久综合| wwwwxxxxx欧美| 91精品欧美综合在线观看最新| 91色九色蝌蚪| 粉嫩av亚洲一区二区图片| 国产激情视频一区二区三区欧美| 秋霞成人午夜伦在线观看| 午夜精品福利视频网站| 日韩在线一二三区| 亚洲成人综合网站| 调教+趴+乳夹+国产+精品| 尤物av一区二区| 亚洲图片一区二区| 亚洲国产精品av| 91精品欧美久久久久久动漫| 午夜精品爽啪视频| 亚洲大片一区二区三区| 婷婷成人激情在线网| 麻豆精品国产传媒mv男同| 激情偷乱视频一区二区三区| 九九**精品视频免费播放| 国产成人免费视| 色综合久久久久综合体| 欧美丰满一区二区免费视频| 欧美日韩一二三区| 久久婷婷成人综合色| 欧美电影免费提供在线观看| 久久无码av三级| 亚洲日本电影在线| 国产精品不卡在线观看| 中文字幕亚洲一区二区av在线| xfplay精品久久| 99精品视频在线观看免费| 亚洲午夜三级在线| 精品一区二区三区在线观看| 国产成人夜色高潮福利影视| 欧洲精品一区二区| 国产精品久久久久aaaa樱花 | 精品一区二区三区影院在线午夜 | 精品国内片67194| 日韩一区有码在线| 久久99久久99精品免视看婷婷| 91黄色在线观看| 国产精品毛片久久久久久| 国内成人免费视频| 日韩无一区二区| 奇米精品一区二区三区在线观看一| 99久久婷婷国产综合精品| 精品国产免费一区二区三区香蕉| 一区二区三区中文字幕电影| 国产九色精品成人porny| 日韩免费视频线观看| 九色|91porny| 精品第一国产综合精品aⅴ| 精品一区二区三区免费视频| 日本高清不卡在线观看| 国产精品二区一区二区aⅴ污介绍| 成人一区二区三区中文字幕| 久久精品欧美一区二区三区不卡| 午夜精品久久久久久久| 91精品久久久久久久99蜜桃| 亚洲风情在线资源站| 欧美三级乱人伦电影| 天天综合日日夜夜精品| 欧美日韩国产成人在线免费| 蜜桃av一区二区| 中文字幕精品综合| 色嗨嗨av一区二区三区| 亚洲第一精品在线| 亚洲精品在线电影| 91在线观看免费视频| 亚洲一区二区三区在线| 欧美r级电影在线观看| 波波电影院一区二区三区| 日韩美女视频一区二区| 欧美在线短视频| 国产老肥熟一区二区三区| 日韩伦理av电影| 国产精品免费网站在线观看| 一本久道中文字幕精品亚洲嫩| 亚洲小少妇裸体bbw| 欧美激情一区在线| 日韩一区二区免费视频| 色8久久人人97超碰香蕉987| 奇米777欧美一区二区| 一区二区三区四区不卡视频| 亚洲精品一区在线观看| 欧美日高清视频| 91精彩视频在线观看| 成人午夜在线免费| 国产精品一区二区久久不卡| 一区二区理论电影在线观看| 亚洲国产精华液网站w | 欧美tickling挠脚心丨vk| 亚洲一区二区精品3399| 韩国精品久久久| 国产日本欧洲亚洲| 精品久久一二三区| 5月丁香婷婷综合| 欧美三级电影在线看| 在线看不卡av| 91网站最新地址| av激情成人网| 色婷婷香蕉在线一区二区| 91麻豆自制传媒国产之光| 国产传媒欧美日韩成人| 国产成人精品1024| 成人av在线资源网站| 99久久夜色精品国产网站| 9人人澡人人爽人人精品| 国产999精品久久久久久| 9i看片成人免费高清| 91福利社在线观看| 日韩视频免费观看高清完整版| 欧美精品v国产精品v日韩精品| 在线观看成人免费视频| 成人精品小蝌蚪| 久久一区二区三区国产精品| 日韩免费看网站| 国产精品视频在线看| 中文字幕在线不卡| 亚洲丝袜另类动漫二区| 精品国产sm最大网站免费看| 日韩一区二区精品| 欧美精品一卡两卡|