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

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

?? framewin.c

?? 這是我移植到GBA游戲機(jī)上的uCGUI3.24 可以通過模擬器仿真
?? C
?? 第 1 頁 / 共 2 頁
字號:
      pMsg->Data.v = pObj->hFocussedChild;
      return;
    case WM_SET_FOCUS:
      if (pMsg->Data.v) {      /* Focus received */
        if (pObj->hFocussedChild) {
          WM_SendMessage(pObj->hFocussedChild, pMsg);
        } else {
          pObj->hFocussedChild = WM_SetFocusOnNextChild(hWin);
        }
      }
      return;
    case WM_KEY:
      if ( ((WM_KEY_INFO*)(pMsg->Data.p))->PressedCnt >0) {
        int Key = ((WM_KEY_INFO*)(pMsg->Data.p))->Key;
        switch (Key) {
          case GUI_KEY_TAB:
            pObj->hFocussedChild = WM_SetFocusOnNextChild(hWin);
            break;                    /* Send to parent by not doing anything */
        }
      }
      break;
    case WM_NOTIFY_CHILD_HAS_FOCUS:
      pObj->hFocussedChild = pMsg->hWinSrc;
      if (pMsg->Data.v) {
        pObj->Widget.State |= WIDGET_STATE_CHILD_HAS_FOCUS;
      } else {
        pObj->Widget.State &= ~WIDGET_STATE_CHILD_HAS_FOCUS;
      }
      WM_InvalidateWindow(hParent);
      break;
    case WM_GET_BKCOLOR:
      pMsg->Data.Color = pObj->ClientColor;
      return;                       /* Message handled */
    case WM_GET_CLIENT_WINDOW:      /* return handle to client window. For most windows, there is no seperate client window, so it is the same handle */
      WM_DefaultProc(pMsg);
      return;                       /* We are done ! */
  }
  if (cb) {
    pMsg->hWin = hParent;
    (*cb)(pMsg);
  }
}

/*********************************************************************
*
*        Exported routines:  Create
*
**********************************************************************
*/

FRAMEWIN_Handle FRAMEWIN_CreateAsChild( 
                                    int x0, int y0, int xsize, int ysize, WM_HWIN hParent,
                                    const char* pText, WM_CALLBACK* cb, int Flags)
{
  FRAMEWIN_Handle hObj;
  /* Create the window */
  GUI_LOCK();
  hObj = WM_CreateWindowAsChild(x0, y0, xsize/*+2*HBorder*/, ysize/*+TBorder+BBorder*/, hParent,
                        Flags, _FRAMEWIN_Callback, sizeof(FRAMEWIN_Obj) - sizeof(WM_Obj));
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    /* init widget specific variables */
    WIDGET__Init(&pObj->Widget, WIDGET_STATE_FOCUSSABLE | WIDGET_STATE_ENABLED);
    /* init member variables */
    pObj->pFont = _pDefaultFont;
    memcpy(pObj->BarColor, _aBarColor, sizeof(pObj->BarColor));
    pObj->TextColor    = 0xffffff;
    pObj->TextAlign    = GUI_TA_LEFT;
    pObj->ClientColor  = _DefaultClientColor;
    pObj->pText        = pText;
    pObj->XOff = 1;
    pObj->YOff = 1;
    pObj->cb = cb;
    _CalcPositions(hObj);
#if 0
    pObj->hClient = WM_CreateWindowAsChild(pObj->rClient.x0, pObj->rClient.y0,
                                           pObj->rClient.x1 - pObj->rClient.x0 +1, 
                                           pObj->rClient.y1 - pObj->rClient.y0 +1, 
                                           hObj, WM_CF_SHOW, FRAMEWIN__cbClient, 0);
#else
    pObj->hClient = WM_CreateWindowAsChild(0,0,0,0,
                                           hObj, WM_CF_SHOW, FRAMEWIN__cbClient, 0);
#endif
  }
  GUI_UNLOCK();
  return hObj;
}

FRAMEWIN_Handle FRAMEWIN_Create( const char* pText,
                                    WM_CALLBACK* cb,
                                    int Flags,
                                    int x0, int y0, int xsize, int ysize) {

  return FRAMEWIN_CreateAsChild(x0, y0, xsize, ysize, WM_HWIN_NULL, pText, cb, Flags);
}


FRAMEWIN_Handle FRAMEWIN_CreateIndirect(const GUI_WIDGET_CREATE_INFO* pCreateInfo, WM_HWIN hWinParent, int x0, int y0, WM_CALLBACK* pCallback) {
  FRAMEWIN_Handle hObj;
  hObj = FRAMEWIN_CreateAsChild(
    pCreateInfo->x0 + x0, pCreateInfo->y0 + y0, pCreateInfo->xSize, pCreateInfo->ySize, hWinParent,
    pCreateInfo->pName, pCallback, 0);
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    pObj->Flags = pCreateInfo->Flags;
  }
  return hObj;
}

/*********************************************************************
*
*        Exported routines:  Various methods
*
**********************************************************************
*/
void FRAMEWIN_SetFont(FRAMEWIN_Handle hObj, const GUI_FONT* pFont) {
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    pObj->pFont = pFont;
    _CalcPositions(hObj);
    FRAMEWIN_Invalidate(hObj);
  }
  GUI_UNLOCK();
}

void FRAMEWIN_SetBarColor(FRAMEWIN_Handle hObj, int index, GUI_COLOR color) {
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    pObj->BarColor[index] = color;
    FRAMEWIN_Invalidate(hObj);
  }
  GUI_UNLOCK();
}

void FRAMEWIN_SetTextColor(FRAMEWIN_Handle hObj, GUI_COLOR color) {
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    pObj->TextColor = color;
    FRAMEWIN_Invalidate(hObj);
  }
  GUI_UNLOCK();
}

void FRAMEWIN_SetText(FRAMEWIN_Handle hObj, const char* s) {
  char NeedsInvalidate;
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    NeedsInvalidate = 1;
    if (s && pObj->pText) {
      if (strcmp(s, pObj->pText) == 0) {
        NeedsInvalidate = 0;
      }
    }
    pObj->pText = s;
    if (NeedsInvalidate) {
      FRAMEWIN_Invalidate(hObj);
    }
  }
  GUI_UNLOCK();
}

void FRAMEWIN_SetTextAlign(FRAMEWIN_Handle hObj, int Align) {
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    pObj->TextAlign = Align;
    switch (Align) {
    case GUI_TA_HCENTER:
      pObj->XOff = (pObj->rClient.x1 - pObj->rClient.x0) / 2;
      break;
    case GUI_TA_LEFT:
      pObj->XOff = pObj->FrameSize;
      break;
    case GUI_TA_RIGHT:
      pObj->XOff = pObj->rClient.x1 - pObj->FrameSize;
      break;
    }
    FRAMEWIN_Invalidate(hObj);
  }
  GUI_UNLOCK();
}

void FRAMEWIN_SetTextPos(FRAMEWIN_Handle hObj, int XOff, int YOff) {
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    pObj->XOff = XOff;
    pObj->YOff = YOff;
    FRAMEWIN_Invalidate(hObj);
  }
  GUI_UNLOCK();
}

void FRAMEWIN_SetClientColor(FRAMEWIN_Handle hObj, GUI_COLOR Color) {
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    pObj->ClientColor = Color;
    FRAMEWIN_Invalidate(hObj);
  }
  GUI_UNLOCK();
}


void FRAMEWIN_SetMoveable(FRAMEWIN_Handle hObj, int State) {
  GUI_LOCK();
  if (hObj) {
    FRAMEWIN_Obj* pObj = FRAMEWIN_H2P(hObj);
    if (State) {
      pObj->Flags |= FRAMEWIN_CF_MOVEABLE;
    } else {
      pObj->Flags &= ~FRAMEWIN_CF_MOVEABLE;
    }
  }
  GUI_UNLOCK();
}

void FRAMEWIN_SetActive(FRAMEWIN_Handle hObj, int State) {
  GUI_LOCK();
  if (hObj) {
    if (State) {
      FRAMEWIN_SetBarColor(hObj, 0, FRAMEWIN_BARCOLOR_ACTIVE_DEFAULT);
    } else {
      FRAMEWIN_SetBarColor(hObj, 0, FRAMEWIN_BARCOLOR_INACTIVE_DEFAULT);
    }
  }
  GUI_UNLOCK();
}


/***************************************************************
*
*                Set/Get defaults
*
***************************************************************/

void FRAMEWIN_SetDefaultFont(const GUI_FONT* pFont) {
  _pDefaultFont = pFont;
}

const GUI_FONT* FRAMEWIN_GetDefaultFont(void) {
  return _pDefaultFont;
}

void FRAMEWIN_SetDefaultBarColor(int Index, GUI_COLOR Color) {
  if ((Index >= 0) && (Index <= 1)) {
    _aBarColor[Index] = Color;
  }
}

GUI_COLOR FRAMEWIN_GetDefaultBarColor(int Index) {
  GUI_COLOR r = 0;
  if ((Index >= 0) && (Index <= 1)) {
    r = _aBarColor[Index];
  }
  return r;
}

void FRAMEWIN_SetDefaultClientColor(GUI_COLOR Color) {
  _DefaultClientColor = Color;
}

GUI_COLOR FRAMEWIN_GetDefaultClientColor(void) {
  return _DefaultClientColor;
}

int FRAMEWIN_GetDefaultCaptionSize(void) {
  return _DefaultCaptionSize;
}

void FRAMEWIN_SetDefaultCaptionSize(int DefaultCaptionSize) {
  _DefaultCaptionSize = DefaultCaptionSize;
}

int FRAMEWIN_GetDefaultBorderSize(void) {
  return _DefaultBorderSize;
}

void FRAMEWIN_SetDefaultBorderSize(int DefaultBorderSize) {
  _DefaultBorderSize = DefaultBorderSize;
}


#else
  void WIDGET_FrameWin(void) {} /* avoid empty object files */
#endif /* GUI_WINSUPPORT */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人综合在线观看| 一区二区欧美视频| 亚洲高清三级视频| 国产成人亚洲综合a∨婷婷| 欧美少妇xxx| 欧美国产日韩亚洲一区| 久久97超碰色| 7777精品伊人久久久大香线蕉经典版下载| 国产丝袜在线精品| 久久精品国产精品亚洲精品| 欧美亚洲日本一区| 综合自拍亚洲综合图不卡区| 国产精品一区二区在线观看不卡| 欧美三级中文字| 亚洲理论在线观看| 成人午夜视频网站| 中文字幕精品三区| 国产成人av电影在线| 欧美一区二区在线不卡| 有坂深雪av一区二区精品| 国产成人免费视频网站高清观看视频| 欧美一区二区性放荡片| 三级欧美在线一区| 欧美色手机在线观看| 亚洲精品网站在线观看| 一本大道av一区二区在线播放| 国产精品美女一区二区在线观看| 国产一区二区精品久久99| 精品国产免费久久| 韩国av一区二区三区| 日韩女优av电影| 久久国产精品色| 欧美电影免费观看高清完整版在线 | 精品一区二区精品| 欧美一级夜夜爽| 日韩精品视频网站| 欧美喷潮久久久xxxxx| 亚洲国产日韩在线一区模特| 欧美色国产精品| 午夜精品一区二区三区免费视频 | 亚洲私人影院在线观看| 色综合久久综合网欧美综合网| 国产精品久久久久久久蜜臀 | 亚洲精品一二三| 欧美视频第二页| 亚洲成精国产精品女| 欧美精品日韩精品| 久久99精品国产.久久久久 | 中文字幕一区二区三区不卡| 99精品视频在线播放观看| 国产精品理论在线观看| 91麻豆国产福利精品| 亚洲一区在线观看视频| 51精品久久久久久久蜜臀| 精品一区二区三区在线观看国产| 亚洲精品一区二区精华| 国产成人午夜视频| 一区二区三区日韩欧美| 日韩欧美亚洲另类制服综合在线| 国产一区二区三区四| 亚洲人成精品久久久久| 欧美日韩中文一区| 狠狠色综合日日| 亚洲男人电影天堂| 欧美r级在线观看| av在线不卡电影| 午夜精品123| 中文字幕av一区二区三区高 | 国产亚洲一本大道中文在线| 白白色 亚洲乱淫| 亚洲一二三区在线观看| 精品日韩99亚洲| eeuss鲁一区二区三区| 日韩高清电影一区| 国产精品久久精品日日| 欧美日韩精品专区| 成人综合在线视频| 视频在线观看91| 亚洲日韩欧美一区二区在线| 欧美成人精品福利| 色8久久精品久久久久久蜜| 极品销魂美女一区二区三区| 一区二区三区视频在线看| 久久久久久久久久美女| 在线日韩av片| 粉嫩在线一区二区三区视频| 日韩国产高清影视| 亚洲精品久久7777| 国产午夜精品久久| 日韩欧美国产综合在线一区二区三区 | 在线中文字幕不卡| 国产成人自拍网| 美日韩一区二区三区| 亚洲精品成人在线| 日本一区二区三区免费乱视频| 欧美日韩aaaaaa| 91免费在线视频观看| 国产麻豆一精品一av一免费 | 亚洲最新视频在线播放| 国产婷婷色一区二区三区| 欧美一区二区精美| 欧美偷拍一区二区| 91免费观看视频在线| 高清日韩电视剧大全免费| 韩日精品视频一区| 狠狠色伊人亚洲综合成人| 日本视频一区二区三区| 亚洲国产精品一区二区www在线| 亚洲欧美一区二区视频| 中文字幕在线观看不卡视频| 国产视频一区在线观看 | 国产精品亚洲第一区在线暖暖韩国| 五月婷婷综合激情| 亚洲mv在线观看| 亚洲成a人片综合在线| 亚洲香蕉伊在人在线观| 亚洲成av人综合在线观看| 亚洲自拍偷拍欧美| 夜夜操天天操亚洲| 亚洲国产日韩精品| 偷拍亚洲欧洲综合| 日韩国产在线一| 青娱乐精品视频| 久久国产视频网| 国产一区二区三区四区五区美女| 黄页网站大全一区二区| 粉嫩在线一区二区三区视频| 丰满少妇久久久久久久| 91免费国产在线| 欧美日韩综合在线免费观看| 8x8x8国产精品| 精品国产乱码久久久久久夜甘婷婷 | 51精品国自产在线| 精品国内片67194| 国产调教视频一区| 亚洲精品videosex极品| 亚洲成av人片在线| 六月婷婷色综合| 国产a久久麻豆| 色成年激情久久综合| 欧美精品日日鲁夜夜添| 久久久久9999亚洲精品| 亚洲欧美精品午睡沙发| 午夜久久久久久久久久一区二区| 看国产成人h片视频| 国产**成人网毛片九色| 欧美日韩中文精品| 久久久精品综合| 一区二区三区产品免费精品久久75 | 夫妻av一区二区| 欧美丝袜丝交足nylons| 精品国产成人在线影院| 国产精品美日韩| 全部av―极品视觉盛宴亚洲| 国产suv精品一区二区三区| 在线观看区一区二| 久久久久97国产精华液好用吗| 亚洲免费资源在线播放| 国产在线播放一区| 欧美午夜精品理论片a级按摩| 精品av久久707| 亚洲综合久久久| 国产高清无密码一区二区三区| 色婷婷av一区二区| 久久综合成人精品亚洲另类欧美 | 777亚洲妇女| 亚洲欧洲av在线| 麻豆成人免费电影| 欧美亚洲国产一区二区三区va| 26uuu久久天堂性欧美| 一区二区三区四区中文字幕| 国产在线精品视频| 欧美日韩美少妇| 亚洲人成网站影音先锋播放| 国产精品一区二区久久不卡| 欧美精品在线一区二区三区| 国产精品嫩草影院com| 国内精品免费在线观看| 在线观看91av| 亚洲午夜视频在线观看| 成人福利视频网站| 精品日本一线二线三线不卡| 日韩福利视频网| 欧美色综合天天久久综合精品| 亚洲色图20p| 不卡电影一区二区三区| 日本一区免费视频| 国产一区亚洲一区| 精品久久久影院| 日本色综合中文字幕| 欧美日韩国产区一| 午夜精彩视频在线观看不卡| 在线一区二区三区四区| 亚洲女人****多毛耸耸8| 99精品一区二区三区| 国产精品久久久久影院色老大| 高清视频一区二区| 国产精品久久久久久久久快鸭| 国产福利一区在线| 国产欧美精品一区|