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

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

?? loadicon.c

?? 這是針對 Linux (i386)平臺的 minigui 3.6.2 開發(fā)包(MiniGUI-Processes 運(yùn)行模式)。
?? C
字號:
#define align_32_bits(b) (((b) + 3) & -4)/************************* Icon support **************************************/// Icon creating and destroying.HICON GUIAPI LoadIconFromFile (HDC hdc, const char* filename, int which){    FILE* fp;    WORD wTemp;    BYTE bTemp;    int  w, h, colornum;    DWORD size, offset;    DWORD imagesize, imagew, imageh;    BYTE* image;    HICON icon = 0;        if( !(fp = fopen(filename, "rb")) ) return 0;    fseek(fp, sizeof(WORD), SEEK_SET);    // the cbType of struct ICONDIR.    wTemp = MGUI_ReadLE16FP (fp);    if(wTemp != 1) goto error;    // get ICON images count.    wTemp = MGUI_ReadLE16FP (fp);    if (which >= wTemp)        which = wTemp - 1;    if (which < 0)        which = 0;    // seek to the right ICONDIRENTRY if needed.    if (which != 0)        fseek (fp, SIZEOF_ICONDIRENTRY * which, SEEK_CUR);    // cursor info, read the members of struct ICONDIRENTRY.    w = fgetc (fp);       // the width of first cursor    h = fgetc (fp);       // the height of first cursor    if ((w%16) != 0 || (h%16) != 0) goto error;    bTemp = fgetc (fp);   // the bColorCount    if(bTemp != 2 && bTemp != 16) goto error;    fseek(fp, sizeof(BYTE), SEEK_CUR); // skip the bReserved    wTemp = MGUI_ReadLE16FP (fp);   // the wPlanes    if(wTemp != 0) goto error;    wTemp = MGUI_ReadLE16FP (fp);   // the wBitCount    if(wTemp > 4) goto error;    size = MGUI_ReadLE32FP (fp);    offset = MGUI_ReadLE32FP (fp);    // read the cursor image info.    fseek(fp, offset, SEEK_SET);    fseek(fp, sizeof(DWORD), SEEK_CUR); // skip the biSize member.    imagew = MGUI_ReadLE32FP (fp);    imageh = MGUI_ReadLE32FP (fp);    // check the biPlanes member;    wTemp = MGUI_ReadLE16FP (fp);    if(wTemp != 1) goto error;    // check the biBitCount member;    wTemp = MGUI_ReadLE16FP (fp);    if(wTemp > 4) goto error;    colornum = (int)wTemp;    fseek(fp, sizeof(DWORD), SEEK_CUR); // skip the biCompression members.    if (colornum == 1)        imagesize = align_32_bits(w>>3) * h;    else        imagesize = align_32_bits(w>>1) * h;    imagesize += align_32_bits(w>>3) * h;    fseek(fp, sizeof(DWORD), SEEK_CUR);    // skip the rest members and the color table.    fseek(fp, sizeof(DWORD)*4 + sizeof(BYTE)*(4<<colornum), SEEK_CUR);        // allocate memory for image.#ifdef HAVE_ALLOCA    // Use alloca, the stack may be enough for the image.    if ((image = (BYTE*) alloca (imagesize)) == NULL)#else    if ((image = (BYTE*) malloc (imagesize)) == NULL)#endif        goto error;    // read image    fread (image, imagesize, 1, fp);    icon = CreateIcon (hdc, w, h,                     image + (imagesize - (align_32_bits(w>>3) * h)), image, colornum);#ifndef HAVE_ALLOCA    free (image);#endiferror:    fclose (fp);    return icon;}HICON GUIAPI LoadIconFromMem (HDC hdc, const void* area, int which){    const Uint8* p = (Uint8*)area;    WORD wTemp;    BYTE bTemp;    int  w, h, colornum;    DWORD size, offset;    DWORD imagesize, imagew, imageh;        p += sizeof (WORD);    // the cbType of struct ICONDIR.    wTemp = MGUI_ReadLE16Mem (&p);    if(wTemp != 1) goto error;    // get ICON images count.    wTemp = MGUI_ReadLE16Mem (&p);    if (which >= wTemp)        which = wTemp - 1;    if (which < 0)        which = 0;    // seek to the right ICONDIRENTRY if needed.    if (which != 0)        p += SIZEOF_ICONDIRENTRY * which;    // cursor info, read the members of struct ICONDIRENTRY.    w = *p++;       // the width of first cursor    h = *p++;       // the height of first cursor    if ((w%16) != 0 || (h%16) != 0) goto error;    bTemp = *p++;   // the bColorCount    if(bTemp != 2 && bTemp != 16) goto error;    // skip the bReserved    p ++;    wTemp = MGUI_ReadLE16Mem (&p);   // the wPlanes    if (wTemp != 0) goto error;    wTemp = MGUI_ReadLE16Mem (&p);   // the wBitCount    if (wTemp > 4) goto error;    size = MGUI_ReadLE32Mem (&p);    offset = MGUI_ReadLE32Mem (&p);    // read the cursor image info.    p = (Uint8*)area + offset;    // skip the bReserved    p += sizeof (DWORD);    imagew = MGUI_ReadLE32Mem (&p);    imageh = MGUI_ReadLE32Mem (&p);    // check the biPlanes member;    wTemp = MGUI_ReadLE16Mem (&p);    if(wTemp != 1) goto error;    // check the biBitCount member;    wTemp = MGUI_ReadLE16Mem (&p);    if(wTemp > 4) goto error;    colornum = (int)wTemp;    // skip the biCompression members.    p += sizeof(DWORD);    if (colornum == 1)        imagesize = align_32_bits(w>>3) * h;    else        imagesize = align_32_bits(w>>1) * h;    imagesize += align_32_bits(w>>3) * h;    p += sizeof(DWORD);    // skip the rest members and the color table.    p += sizeof(DWORD)*4 + sizeof(BYTE)*(4<<colornum);        return CreateIcon (hdc, w, h,                     p + (imagesize - (align_32_bits(w>>3) * h)), p, colornum);error:    return 0;}HICON GUIAPI CreateIcon (HDC hdc, int w, int h, const BYTE* pAndBits,                         const BYTE* pXorBits, int colornum){    PICON picon;    int bpp, pitch;    if ((w%16) != 0 || (h%16) != 0) return 0;    bpp = GAL_BytesPerPixel (dc_HDC2PDC (hdc)->gc);    pitch = bpp * w;    // allocate memory.    if (!(picon = (PICON)malloc(sizeof(ICON))) ) return 0;    if (!(picon->AndBits = malloc (pitch * h)) ) {        free (picon);        return 0;    }    if( !(picon->XorBits = malloc (pitch * h)) ) {        free (picon->AndBits);        free (picon);        return 0;    }    picon->width = w;    picon->height = h;    if(colornum == 1) {        ExpandMonoBitmap (hdc, w, h, pAndBits, align_32_bits (w >> 3), MYBMP_FLOW_UP,                         picon->AndBits, pitch, 0, 0xFFFFFFFF);        ExpandMonoBitmap (hdc, w, h, pXorBits, align_32_bits (w >> 3), MYBMP_FLOW_UP,                        picon->XorBits, pitch, 0, 0xFFFFFFFF);    }    else if(colornum == 4) {        ExpandMonoBitmap (hdc, w, h, pAndBits, align_32_bits (w >> 3), MYBMP_FLOW_UP,                         picon->AndBits, pitch, 0, 0xFFFFFFFF);        Expand16CBitmap (hdc, w, h, pXorBits,  align_32_bits (w >> 1), MYBMP_FLOW_UP,                        picon->XorBits, pitch, NULL);    }    return (HICON)picon;}BOOL GUIAPI DestroyIcon (HICON hicon){    PICON picon = (PICON)hicon;    if (!picon)        return FALSE;    free (picon->AndBits);    free (picon->XorBits);    free (picon);    return TRUE;}BOOL GUIAPI GetIconSize (HICON hicon, int* w, int* h){    PICON picon = (PICON)hicon;    if (!picon)        return FALSE;    if (w) *w = picon->width;    if (h) *h = picon->height;    return TRUE;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡的av网站| 日本午夜精品视频在线观看| 久久99热这里只有精品| 91精选在线观看| 免费在线欧美视频| 日韩欧美国产成人一区二区| 久久爱www久久做| 欧美精品一区二区三| 国产麻豆欧美日韩一区| 国产日韩欧美a| 91色在线porny| 一个色综合av| 日韩一区二区在线观看| 美女性感视频久久| 久久久久国色av免费看影院| 成人免费视频网站在线观看| √…a在线天堂一区| 欧美在线free| 免费一级欧美片在线观看| 欧美精品一区二区三区久久久| 粉嫩av亚洲一区二区图片| 亚洲欧美综合色| 欧美疯狂做受xxxx富婆| 国产精品综合一区二区| 亚洲黄色av一区| 欧美成人r级一区二区三区| 成人午夜在线播放| 亚洲va韩国va欧美va| 久久久午夜精品| 欧美午夜理伦三级在线观看| 蜜臀av国产精品久久久久| 国产精品免费免费| 欧美美女喷水视频| 国产精品影视网| 一个色综合av| 久久久国产综合精品女国产盗摄| 91视频免费看| 国产一二精品视频| 一区二区三区av电影| 久久久久久久久久久久电影| 日本高清不卡一区| 国产一区中文字幕| 亚洲成av人在线观看| 欧美激情综合网| 欧美放荡的少妇| av在线播放成人| 久久99久久久欧美国产| 亚洲精品你懂的| 亚洲国产精品传媒在线观看| 7777精品久久久大香线蕉| 91网上在线视频| 国产九九视频一区二区三区| 日韩精品国产精品| 亚洲欧美激情视频在线观看一区二区三区| 欧美成人r级一区二区三区| 在线视频欧美精品| 成人av资源在线| 国产福利一区二区三区| 美国十次了思思久久精品导航| 亚洲伊人色欲综合网| 亚洲视频网在线直播| 欧美国产国产综合| 久久视频一区二区| 欧美一级电影网站| 91精品国产乱码久久蜜臀| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 91麻豆精品国产91久久久久久久久| 成人av综合在线| 国产伦精品一区二区三区免费迷| 奇米亚洲午夜久久精品| 亚洲成av人在线观看| 亚洲一二三四在线| 亚洲视频1区2区| 亚洲色图.com| 亚洲精品视频一区二区| 亚洲天天做日日做天天谢日日欢| 亚洲国产成人自拍| 国产亚洲欧美日韩日本| 久久久久久免费| 久久久影院官网| 国产欧美视频在线观看| 久久久国际精品| 国产精品三级电影| 国产精品每日更新在线播放网址 | 免费不卡在线视频| 男女男精品视频| 韩国精品免费视频| 日韩**一区毛片| 日韩成人精品在线观看| 国产日产亚洲精品系列| 亚洲免费av观看| 亚洲成人高清在线| 极品少妇xxxx偷拍精品少妇| 风间由美一区二区三区在线观看 | 午夜精品久久久久久久| 一区二区三区中文字幕精品精品| 亚洲精品视频自拍| 亚洲aaa精品| 日韩av中文字幕一区二区| 人人狠狠综合久久亚洲| 国产自产高清不卡| 国产成人精品一区二区三区四区 | 韩国一区二区三区| 风间由美一区二区av101| 不卡大黄网站免费看| 欧美一区二区大片| 成av人片一区二区| 国产自产v一区二区三区c| 国产成人在线视频播放| 成人av午夜电影| 99riav一区二区三区| 欧美一级生活片| 精品久久久久久无| 欧美高清在线精品一区| 一区二区三区在线视频观看58| 亚洲午夜三级在线| 麻豆一区二区99久久久久| 粉嫩嫩av羞羞动漫久久久| 91免费观看在线| 91精品一区二区三区久久久久久| 久久精品一区二区三区不卡 | 中文幕一区二区三区久久蜜桃| 亚洲主播在线播放| 老色鬼精品视频在线观看播放| 成人午夜伦理影院| 在线播放/欧美激情| 国产午夜精品一区二区三区视频| 一区二区视频在线| 国模无码大尺度一区二区三区| 97久久人人超碰| 精品国产露脸精彩对白| 一区二区三区四区中文字幕| 狠狠色丁香婷婷综合| 欧美色爱综合网| 亚洲国产成人在线| 老司机午夜精品| 一本一本大道香蕉久在线精品 | 久久网站热最新地址| 五月天中文字幕一区二区| 成人综合婷婷国产精品久久| 91精品国产黑色紧身裤美女| 亚洲欧洲色图综合| 国产一区二区91| 日韩一区二区三区三四区视频在线观看| 欧美国产一区在线| 精品一区二区三区在线播放| 欧美一a一片一级一片| 中文字幕亚洲视频| 国产九色sp调教91| 日韩精品中文字幕一区二区三区| 亚洲一区二区在线免费看| 从欧美一区二区三区| 2020日本不卡一区二区视频| 天天综合色天天综合色h| 91久久线看在观草草青青| 亚洲国产成人一区二区三区| 黑人巨大精品欧美一区| 欧美一二区视频| 天天亚洲美女在线视频| 91成人网在线| 亚洲免费av高清| 91免费国产在线| 亚洲女同一区二区| 99精品久久只有精品| 国产精品久久久久久久久晋中| 韩国欧美国产1区| 欧美tickle裸体挠脚心vk| 日本在线不卡一区| 欧美酷刑日本凌虐凌虐| 亚洲图片自拍偷拍| 欧美吻胸吃奶大尺度电影| 亚洲美女免费视频| 91久久香蕉国产日韩欧美9色| 亚洲精品日韩专区silk| 欧美综合亚洲图片综合区| 亚洲精品视频一区二区| 在线观看三级视频欧美| 亚洲一区二区精品3399| 欧美日韩日日摸| 日韩精品色哟哟| 欧美tickling挠脚心丨vk| 国产黄色91视频| 中文字幕一区在线观看视频| 99久久99精品久久久久久| 亚洲精品国产一区二区精华液| 一本到一区二区三区| 亚洲午夜精品一区二区三区他趣| 欧美精品欧美精品系列| 精品在线观看视频| 国产免费观看久久| 99国产精品国产精品久久| 亚洲在线视频网站| 日韩一级大片在线| 国产精品综合网| 亚洲免费伊人电影| 欧美精品777| 国产成人av一区二区三区在线| 国产精品毛片a∨一区二区三区| 91久久久免费一区二区| 丝袜美腿亚洲色图|