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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? native.c

?? mini gui 1.6.8 lib and source
?? C
?? 第 1 頁 / 共 3 頁
字號:
    } else {        if ((nx + w - 1 < 0) || (nx >= gc.psd->xres))            goto inv_args;        if ((ny + h - 1 < 0) || (ny >= gc.psd->yres))            goto inv_args;        if (nx < 0) {            x -= nx;            w += nx;            nx = 0;        }         if (nx + w - 1 >= gc.psd->xres) {            w = gc.psd->xres- nx;        }        if (ny < 0) {            y -= ny;            h += ny;            ny = 0;        }        if (ny + h - 1 >= gc.psd->yres) {            h = gc.psd->yres- ny;        }        }        if ((w <= 0) || (h <= 0))        goto inv_args;    if ((x < 0) || (x + w - 1 >= gc.psd->xres))        goto inv_args;    if ((y < 0) || (y + h - 1 >= gc.psd->yres))        goto inv_args;    if (gc.psd->doclip) {        if ((nx < gc.psd->clipminx) || (nx + w - 1 >= gc.psd->clipmaxx))             goto inv_args;        if ((ny < gc.psd->clipminy) || (ny + h - 1 >= gc.psd->clipmaxy))             goto inv_args;    } else {        if ((nx < 0) || (nx + w - 1 >= gc.psd->xres))             goto inv_args;        if ((ny < 0) || (ny + h - 1 >= gc.psd->yres))             goto inv_args;    }    gc.psd->CopyBox (gc.psd, x, y, w, h, nx, ny);    if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, nx, ny, nx + w, ny + h);inv_args:    UNBLOCK_DRAW_SEM;    return 0;}/*  * Must set destination graphics context */static int crossblit (GAL_GC src, int sx, int sy, int w, int h,        GAL_GC dst, int dx, int dy){#if defined(_LITE_VERSION) && !(_STAND_ALONE)    GAL_GC gc = dst;#endif    int Bpp = bytesperpixel (src);    if ((w <= 0) || (h <= 0)) return -1;    if (src.psd == dst.psd) {        return copybox (src, sx, sy, w, h, dx, dy);    }        //src clip to screen    if (_COOR_TRANS && src.psd == __mg_cur_gfx->phygc.psd) {        /* dst is clipped and is a memory gc */        if ((dx + w - 1 < dst.psd->clipminx) || (dx >= dst.psd->clipmaxx))            return 0;        if ((dy + h - 1 < dst.psd->clipminy) || (dy >= dst.psd->clipmaxy))            return 0;        if (dx < dst.psd->clipminx) {            sx += dst.psd->clipminx - dx;            w -= dst.psd->clipminx - dx;            dx = dst.psd->clipminx;        }         if (dx + w - 1 >= dst.psd->clipmaxx) {            w = dst.psd->clipmaxx - dx;        }        if (dy < dst.psd->clipminy) {            sy += dst.psd->clipminy - dy;            h -= dst.psd->clipminy - dy;            dy = dst.psd->clipminy;        }        if (dy + h - 1 >= dst.psd->clipmaxy) {            h = dst.psd->clipmaxy - dy;        }            if ((w <= 0) || (h <= 0))            return 0;        if ((dx < dst.psd->clipminx) || (dx + w - 1 >= dst.psd->clipmaxx))             return 0;        if ((dy < dst.psd->clipminy) || (dy + h - 1 >= dst.psd->clipmaxy))            return 0;        return getbox_wrapper (src, sx, sy, w, h,                         (BYTE *)dst.psd->addr + dst.psd->linelen * dy + Bpp * dx,                         dst.psd->xres * bytesperpixel (dst));    }    if (_COOR_TRANS && dst.psd == __mg_cur_gfx->phygc.psd) {        /* src is a memory gc */        if ((sx + w <= 0) || (sx >= src.psd->xres))            return 0;        if ((sy + h <= 0) || (sy >= src.psd->yres))            return 0;        if (sx < 0) {            sx = 0;            dx -= sx;            w += sx;        }         if (sx + w - 1 >= src.psd->xres) {            w = src.psd->xres - sx;        }        if (sy < 0) {            sy = 0;            dy -= sy;            h +=sy;        }        if (sy + h - 1 >= src.psd->yres) {            h = src.psd->yres - sy;        }            if ((w <= 0) || (h <= 0))            return 0;        return putbox_wrapper (dst, dx, dy, w, h,                             (BYTE *)src.psd->addr + src.psd->linelen * sy + Bpp * sx,                             src.psd->xres * bytesperpixel (src));    }        if ((sx >= src.psd->xres) || (sx + w - 1 < 0)) return -1;    if ((sy >= src.psd->yres) || (sy + h - 1 < 0)) return -1;    if (sx < 0) { dx -= sx; w += sx; sx = 0; }    if (sy < 0) { dy -= sy; h += sy; sy = 0; }        if (sx + w - 1 >= src.psd->xres) w = src.psd->xres - sx;    if (sy + h - 1 >= src.psd->yres) h = src.psd->yres - sy;            BLOCK_DRAW_SEM;    //dst do clip    if (dst.psd->doclip) {        if ((dx + w - 1 < dst.psd->clipminx) || (dx >= dst.psd->clipmaxx))            goto inv_args;        if ((dy + h - 1 < dst.psd->clipminy) || (dy >= dst.psd->clipmaxy))            goto inv_args;        if (dx < dst.psd->clipminx) {            sx += dst.psd->clipminx - dx;            w -= dst.psd->clipminx - dx;            dx = dst.psd->clipminx;        }         if (dx + w - 1 >= dst.psd->clipmaxx) {            w = dst.psd->clipmaxx - dx;        }        if (dy < dst.psd->clipminy) {            sy += dst.psd->clipminy - dy;            h -= dst.psd->clipminy - dy;            dy = dst.psd->clipminy;        }        if (dy + h - 1 >= dst.psd->clipmaxy) {            h = dst.psd->clipmaxy - dy;        }        } else {        if ((dx + w - 1 < 0) || (dx >= dst.psd->xres))            goto inv_args;        if ((dy + h - 1 < 0) || (dy >= dst.psd->yres))            goto inv_args;        if (dx < 0) {            sx -= dx;            w += dx;            dx = 0;        }         if (dx + w - 1 >= dst.psd->xres) {            w = dst.psd->xres- dx;        }        if (dy < 0) {            sy -= dy;            h += dy;            dy = 0;        }        if (dy + h - 1 >= dst.psd->yres) {            h = dst.psd->yres- dy;        }        }        if ((w <= 0) || (h <= 0))        goto inv_args;    if ((sx < 0) || (sx + w - 1 >= src.psd->xres))        goto inv_args;    if ((sy < 0) || (sy + h - 1 >= src.psd->yres))        goto inv_args;    if (dst.psd->doclip) {        if ((dx < dst.psd->clipminx) || (dx + w - 1 >= dst.psd->clipmaxx))             goto inv_args;        if ((dy < dst.psd->clipminy) || (dy + h - 1 >= dst.psd->clipmaxy))            goto inv_args;    } else {        if ((dx < 0) || (dx + w - 1 >= dst.psd->xres))             goto inv_args;        if ((dy < 0) || (dy + h - 1 >= dst.psd->yres))             goto inv_args;    }    src.psd->Blit (dst.psd, dx, dy, w, h, src.psd, sx, sy);    if (dst.psd->UpdateRect) dst.psd->UpdateRect (dst.psd, dx, dy, dx + w, dy + h);inv_args:    UNBLOCK_DRAW_SEM;    return 0;}static int drawhline (GAL_GC gc, int x, int y, int w, gal_pixel pixel){    if (w <= 0 ) return -1;    BLOCK_DRAW_SEM;    if (_COOR_TRANS && gc.psd == __mg_cur_gfx->phygc.psd) {        rotatepoint (&x, &y, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);        if (!_ROT_DIR_CW) y -= w - 1;        if (native_gen_clipvline (gc.psd, &x, &y, &w) == CLIP_INVISIBLE )            goto ret;        gc.psd->DrawVLine (gc.psd, x, y, w, pixel);        if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, x, y, x + 1, y + w);    }    else {        if (native_gen_cliphline (gc.psd, &x, &y, &w) == CLIP_INVISIBLE )            goto ret;        gc.psd->DrawHLine (gc.psd, x, y, w, pixel);        if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, x, y, x + w, y + 1);    }ret:    UNBLOCK_DRAW_SEM;    return 0;}static int drawvline (GAL_GC gc, int x, int y, int h, gal_pixel pixel){    if (h <= 0 ) return -1;        BLOCK_DRAW_SEM;    if (_COOR_TRANS && gc.psd == __mg_cur_gfx->phygc.psd) {        rotatepoint (&x, &y, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);        if (_ROT_DIR_CW) x -= h - 1;        if (native_gen_clipvline (gc.psd, &x, &y, &h) == CLIP_INVISIBLE )            goto ret;        gc.psd->DrawVLine (gc.psd, x, y, h, pixel);        if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, x, y, x + 1, y + h);    }    else {        if (native_gen_cliphline (gc.psd, &x, &y, &h) == CLIP_INVISIBLE )            goto ret;        gc.psd->DrawHLine (gc.psd, x, y, h, pixel);        if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, x, y, x + h, y + 1);    }ret:    UNBLOCK_DRAW_SEM;    return 0;}/* *  Pixel operations */static int drawpixel (GAL_GC gc, int x, int y, gal_pixel pixel){    BLOCK_DRAW_SEM;    if (_COOR_TRANS && gc.psd == __mg_cur_gfx->phygc.psd)        rotatepoint (&x, &y, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);    if (native_gen_clippoint (gc.psd, x, y)) {        gc.psd->DrawPixel (gc.psd, x, y, pixel);        if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, x, y, x + 1, y + 1);    }    UNBLOCK_DRAW_SEM;    return 0;}static int getpixel (GAL_GC gc, int x, int y, gal_pixel* pixel){    if (_COOR_TRANS && gc.psd == __mg_cur_gfx->phygc.psd) {        if ((x >= 0) && (x < gc.psd->yres) && (y >= 0) && (y < gc.psd->xres)) {            rotatepoint (&x, &y, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);            *pixel = gc.psd->ReadPixel (gc.psd, x, y);        } else             return -1;    }    else {        if ((x >= 0) && (x < gc.psd->xres) && (y >= 0) && (y < gc.psd->yres))            *pixel = gc.psd->ReadPixel (gc.psd, x, y);        else             return -1;    }    return 0;}static int line (GAL_GC gc, int x1, int y1, int x2, int y2, gal_pixel pixel){    gal_pixel oldcolor;    BLOCK_DRAW_SEM;    getfgcolor(gc,&oldcolor);    setfgcolor(gc,pixel);    if (_COOR_TRANS && gc.psd == __mg_cur_gfx->phygc.psd) {        rotatepoint (&x1, &y1, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);        rotatepoint (&x2, &y2, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);    }    native_gen_line (gc.psd, x1, y1, x2, y2, TRUE);    if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, x1, y1, x2, y2);    setfgcolor(gc,oldcolor);    UNBLOCK_DRAW_SEM;    return 0;}/*  * NOTE: must be normalized rect. */static int rectangle (GAL_GC gc, int l, int t, int r, int b, gal_pixel pixel){    gal_pixel oldcolor;        BLOCK_DRAW_SEM;    getfgcolor(gc,&oldcolor);    setfgcolor(gc,pixel);    if (_COOR_TRANS && gc.psd == __mg_cur_gfx->phygc.psd)        rotatecoor (&l, &t, &r, &b, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);    native_gen_rect (gc.psd, l, t, r, b);    if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, l, t, r, b);    setfgcolor (gc, oldcolor);    UNBLOCK_DRAW_SEM;    return 0;}static int circle (GAL_GC gc, int x, int y, int r, gal_pixel pixel){    BLOCK_DRAW_SEM;    if (_COOR_TRANS && gc.psd == __mg_cur_gfx->phygc.psd)        rotatepoint (&x, &y, _ROT_DIR_CW?gc.psd->xres:gc.psd->yres, _ROT_DIR_CW?0:1);    native_gen_circle (gc.psd, x, y, r, pixel);    if (gc.psd->UpdateRect) gc.psd->UpdateRect (gc.psd, x - r, y - r, x + r, y + r);    UNBLOCK_DRAW_SEM;    return 0;}static void panic (int exitcode){    fprintf (stderr, "MiniGUI Panic. Exit Code: %d.\n", exitcode);    __mg_cur_gfx->phygc.psd->Close (__mg_cur_gfx->phygc.psd);}/******************  Initialization and termination of Native IAL engine **************/BOOL InitNative (GFX* gfx){    int i;    PSD psd = NULL;    if (0) {}#ifdef _NATIVE_GAL_FBCON    else if (strcmp (gfx->id, "fbcon") == 0)        psd = scrdev.Open (&scrdev);#endif#ifdef _NATIVE_GAL_QVFB    else if (strcmp (gfx->id, "qvfb") == 0)        psd = qvfbdev.Open (&qvfbdev);#endif#ifdef _NATIVE_GAL_COMMLCD    else if (strcmp (gfx->id, "commlcd") == 0)        psd = commlcd.Open (&commlcd);#endif    if (!psd) return FALSE;    gfx->phygc.psd = psd;     gfx->bytes_per_phypixel = (psd->bpp + 7 ) / 8;    gfx->bits_per_phypixel  =  psd->bpp;    if (_COOR_TRANS) {        gfx->width_phygc        = psd->yres;         gfx->height_phygc       = psd->xres;    }    else {        gfx->width_phygc        = psd->xres;         gfx->height_phygc       = psd->yres;    }    gfx->colors_phygc       = psd->ncolors;    gfx->grayscale_screen = FALSE;        gfx->bytesperpixel      = bytesperpixel;    gfx->bitsperpixel       = bitsperpixel;    gfx->width              = width;    gfx->height             = height;    gfx->colors             = colors;    //now functions    gfx->allocategc         = allocategc;    gfx->freegc             = freegc;    gfx->enableclipping     = enableclipping;    gfx->disableclipping    = disableclipping;    gfx->setclipping        = setclipping;    gfx->getclipping        = getclipping;    gfx->getbgcolor         = getbgcolor;    gfx->setbgcolor         = setbgcolor;    gfx->getfgcolor         = getfgcolor;    gfx->setfgcolor         = setfgcolor;    gfx->mapcolor           = mapcolor;    gfx->unmappixel         = unmappixel;    gfx->getpalette         = getpalette;    gfx->setpalette         = setpalette;    gfx->setcolorfulpalette = setcolorfulpalette;    gfx->boxsize            = boxsize;    gfx->fillbox            = fillbox;    gfx->putbox             = putbox;    gfx->putboxmask         = putboxmask;    gfx->getbox             = getbox;    gfx->scalebox           = scalebox;    gfx->copybox            = copybox;    gfx->crossblit          = crossblit;    gfx->drawhline          = drawhline;    gfx->drawvline          = drawvline;    gfx->drawpixel          = drawpixel;    gfx->getpixel           = getpixel;    gfx->line               = line;    gfx->rectangle          = rectangle;    gfx->panic              = panic;    gfx->circle             = circle;    gfx->setgc              = NULL;        setcolorfulpalette(gfx->phygc);        for (i = 0; i < 17; i++)        SysPixelIndex [i] = mapcolor (gfx->phygc, (GAL_Color*)(SysPixelColor + i));    if (_COOR_TRANS)        setclipping (gfx->phygc, 0, 0, psd->yres - 1, psd->xres - 1);    else        setclipping (gfx->phygc, 0, 0, psd->xres - 1, psd->yres - 1);    return TRUE;}void TermNative (GFX* gfx){    gfx->phygc.psd->Close(gfx->phygc.psd);}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产a毛片| 国内久久婷婷综合| 欧美日韩精品一区二区三区四区 | 亚洲午夜精品网| 久久久99精品久久| 欧美亚洲免费在线一区| 国产乱人伦偷精品视频免下载 | 精品欧美一区二区久久 | 色中色一区二区| 国产亚洲美州欧州综合国 | 蜜臀精品一区二区三区在线观看| 欧美一级黄色片| 精品一区二区三区在线播放| 欧美韩日一区二区三区| 色菇凉天天综合网| 日本特黄久久久高潮| 久久精品一区二区三区不卡| 99视频国产精品| 亚洲h在线观看| 久久久精品蜜桃| 欧美视频一二三区| 国产乱码精品1区2区3区| 亚洲综合自拍偷拍| 久久久久国产一区二区三区四区| 一本大道久久a久久综合| 国产一区二区免费看| 美国十次了思思久久精品导航| 丰满放荡岳乱妇91ww| 亚洲男人都懂的| 亚洲黄色录像片| 一区二区在线观看免费视频播放 | 国产精品福利影院| 综合久久国产九一剧情麻豆| 欧美韩国一区二区| 欧美日韩亚州综合| 粉嫩嫩av羞羞动漫久久久| 欧美午夜宅男影院| 国产精品99久久久久久似苏梦涵| 一级做a爱片久久| 国产欧美日韩视频在线观看| 欧美高清视频一二三区 | 91久久线看在观草草青青| 狠狠色丁香婷婷综合| 日本欧美韩国一区三区| 亚洲动漫第一页| 亚洲一区二三区| 亚洲男帅同性gay1069| 亚洲天堂网中文字| 亚洲精品视频在线看| 日韩伦理免费电影| 亚洲欧美综合另类在线卡通| 国产精品天天看| **欧美大码日韩| 亚洲日本护士毛茸茸| 一区二区三区四区在线| 亚洲自拍都市欧美小说| 亚洲444eee在线观看| 奇米亚洲午夜久久精品| 国产九色sp调教91| av男人天堂一区| 欧美精品自拍偷拍| 久久婷婷成人综合色| 国产精品丝袜91| 亚洲六月丁香色婷婷综合久久| 一区二区不卡在线视频 午夜欧美不卡在| 国产精品麻豆一区二区| 香蕉久久一区二区不卡无毒影院| 秋霞成人午夜伦在线观看| 高清成人免费视频| 欧美日韩国产系列| 日韩欧美色电影| 欧美午夜精品理论片a级按摩| 色综合天天视频在线观看| 欧美二区在线观看| 国产精品私房写真福利视频| 五月天久久比比资源色| 国产精品自在欧美一区| 欧美午夜影院一区| 国产欧美一区二区精品婷婷| 亚洲美女偷拍久久| 国产精品123| 日韩欧美一区在线| 一级女性全黄久久生活片免费| 国产乱码精品一区二区三区五月婷| 91成人免费在线视频| 中文字幕欧美日韩一区| 免费成人性网站| 色婷婷亚洲精品| 国产精品乱人伦| 国产成人在线电影| www欧美成人18+| 久久国内精品视频| 欧美大片在线观看| 日本欧美久久久久免费播放网| 欧美午夜寂寞影院| 亚洲一区二区欧美日韩| 91片在线免费观看| 一区二区视频在线看| 色8久久人人97超碰香蕉987| 综合欧美亚洲日本| 欧美亚洲国产一区二区三区va| 一区二区三区视频在线看| 99久久久精品| 一区二区三区在线免费播放| 91亚洲精华国产精华精华液| 欧美极品另类videosde| 国模无码大尺度一区二区三区| 99re在线精品| 亚洲大片在线观看| 日韩精品中文字幕一区二区三区| 免费观看30秒视频久久| 久久久国产午夜精品| 懂色一区二区三区免费观看 | 欧美一区二区三区播放老司机| 青草av.久久免费一区| 久久久不卡影院| 91在线视频免费91| 日本不卡视频一二三区| 欧美精品一区二区三区蜜桃| 成人午夜电影小说| 日日夜夜精品视频免费| 久久久久久9999| 欧美精品在线观看一区二区| 日韩va亚洲va欧美va久久| 555夜色666亚洲国产免| 日韩精品亚洲专区| 欧美精品一区二区在线播放| 麻豆国产欧美一区二区三区| 国产日产精品一区| 日韩欧美电影在线| 日韩丝袜情趣美女图片| 色一情一伦一子一伦一区| 丝袜亚洲精品中文字幕一区| 日韩欧美国产系列| 欧美亚洲动漫另类| 成人av网站在线| 国产一区二区在线观看视频| 亚洲一区二区三区四区在线免费观看| 日韩欧美三级在线| 欧美一区二区三区性视频| 色综合色综合色综合色综合色综合 | 精品无人区卡一卡二卡三乱码免费卡| 亚洲视频电影在线| 欧美成人免费网站| 日韩一区二区电影网| 欧美一区二区免费观在线| 欧美三级电影网站| 欧美日韩国产综合视频在线观看| 97久久久精品综合88久久| 成人黄色软件下载| av欧美精品.com| 91免费国产在线| 91年精品国产| 欧美日韩国产精品成人| 欧美日韩视频在线观看一区二区三区| 69精品人人人人| 色婷婷久久一区二区三区麻豆| 日本伊人精品一区二区三区观看方式| 玉米视频成人免费看| 首页国产欧美久久| 日本亚洲欧美天堂免费| 国产精品1区2区| 福利电影一区二区三区| 一本大道久久精品懂色aⅴ| 欧美日韩精品一区二区三区 | 欧美日韩视频在线第一区 | 国产精品夜夜爽| 在线观看国产精品网站| 欧美日韩久久不卡| 欧美激情一区二区| 视频一区欧美精品| 粉嫩aⅴ一区二区三区四区五区| 欧美在线999| 久久夜色精品一区| 亚洲成人免费观看| 国产精品18久久久久久久久久久久| 亚洲欧美日韩在线不卡| 亚洲444eee在线观看| 成人app软件下载大全免费| 欧美少妇xxx| 国产精品伦一区| 中文字幕av免费专区久久| 亚洲国产成人porn| 亚洲一区在线观看视频| 污片在线观看一区二区| 韩国女主播一区| 成人三级伦理片| 91精品国产品国语在线不卡| 欧美性xxxxx极品少妇| 午夜av区久久| 欧美高清在线视频| 久久夜色精品一区| 欧美精品久久久久久久多人混战| 国产91精品精华液一区二区三区| 三级亚洲高清视频| 一级做a爱片久久| 亚洲丝袜自拍清纯另类| 欧美精品在线观看一区二区| 日韩精品1区2区3区| www.欧美色图|