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

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

?? editbin.c

?? 一種可移植系統
?? C
字號:
/***********************************************************************************************************                                                uC/GUI*                        Universal graphic software for embedded applications**                       (c) Copyright 2002, Micrium Inc., Weston, FL*                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH**              礐/GUI is protected by international copyright laws. Knowledge of the*              source code may not be used to write a similar product. This file may*              only be used in accordance with a license and should not be redistributed*              in any way. We appreciate your understanding and fairness.*----------------------------------------------------------------------
File        : EditBin
Purpose     : Edit binary values
---------------------------END-OF-HEADER------------------------------
*/

#include <string.h>

#include "EDIT.h"
#include "GUIDebug.h"
#include "GUI_Protected.h"
#include "EDIT_Private.h"

#if GUI_WINSUPPORT

/*********************************************************************
*
*             Helpers
*
**********************************************************************
*/

static int _BinChar2Int(int Char) {
  if ((Char >= '0') && (Char <= '1'))
    return Char - '0';
  return -1;
}

static void _UpdateBuffer(EDIT_Obj* pObj) {
  char * s = (char*) WM_HMEM2Ptr(pObj->hpText);
  GUI_AddBin(pObj->CurrentValue, pObj->MaxLen, &s);
}

static void _EditBin(U8 Bit, EDIT_Obj* pObj, EDIT_Handle hObj) {
  int Pos = pObj->MaxLen - pObj->CursorPos - 1;   /* Bit position */
  U32 AndMask = ~(1   << Pos);
  U32 OrMask  =   Bit << Pos;
  I32 Result  = pObj->CurrentValue & AndMask;
  Result     |= OrMask;
  EDIT_SetValue(hObj, Result);
  /*
  U32 AndMask = ~(1   << Pos);
  U32 OrMask  =   Bit << Pos;
  pObj->CurrentValue &= AndMask;
  pObj->CurrentValue |= OrMask;
  if (pObj->CurrentValue > (U32)pObj->Max)
    pObj->CurrentValue = pObj->Max;
  if (pObj->CurrentValue < (U32)pObj->Min)
    pObj->CurrentValue = pObj->Min;
  */
}

static U8 _GetCurrentBit(EDIT_Obj* pObj) {
  int Pos = pObj->MaxLen - pObj->CursorPos - 1;   /* Bit position */
  U32 AndMask = 1 << Pos;
  U8 Bit = (pObj->CurrentValue & AndMask) >> Pos;
  return Bit;
}

static int _GetNumDigits(U32 Value) {
  int Ret;
  for (Ret = 0; Value; Value >>= 1, Ret++);
  return Ret;
}

/*********************************************************************
*
*             Handle input
*
**********************************************************************
*/

static void _AddKeyBin(EDIT_Obj* pObj, EDIT_Handle hObj, int Key) {
  if (pObj) {
    switch (Key) {
      case GUI_KEY_UP:
        {
          int Bit = _GetCurrentBit(pObj) + 1;
          if (Bit > 1)
            Bit = 0;
          _EditBin(Bit, pObj, hObj);
        }
        break;
      case GUI_KEY_DOWN:
        {
          int Bit = _GetCurrentBit(pObj) - 1;
          if (Bit < 0)
            Bit = 1;
          _EditBin(Bit, pObj, hObj);
        }
        break;
      case GUI_KEY_RIGHT:
        if (pObj->CursorPos < (pObj->MaxLen - 1))
          pObj->CursorPos++;
        break;
      case GUI_KEY_LEFT:
        if (pObj->CursorPos > 0)
          pObj->CursorPos--;
        break;
      default:
        {
          int Bit = _BinChar2Int(Key);
          if (Bit >= 0) {
            _EditBin(Bit, pObj, hObj);
            if (pObj->CursorPos < (pObj->MaxLen - 1))
              pObj->CursorPos++;
          }
        }
        break;
    }
  }
  _UpdateBuffer(pObj);
}

/*********************************************************************
*
*             Exported routines
*
**********************************************************************
*/

void EDIT_SetBinMode(EDIT_Handle hEdit, U32 Value, U32 Min, U32 Max) {
  EDIT_Obj* pObj;
  int MaxLen;
  WM_LOCK();
  pObj = EDIT_H2P(hEdit);
  pObj->pfAddKeyEx    = _AddKeyBin;
  pObj->pfUpdateBufer = _UpdateBuffer;
  pObj->CurrentValue = Value;
  pObj->CursorPos = 0;
  MaxLen = pObj->MaxLen;
  if (MaxLen <= 0 ) {
    MaxLen = _GetNumDigits(Max);
  }
  if (MaxLen > 32) {
    MaxLen = 32;
  }
  if (MaxLen != pObj->MaxLen) {
    EDIT_SetMaxLen(hEdit, MaxLen);
  }
  pObj->Min = Min;
  pObj->Max = Max;
  pObj->EditMode = GUI_EDIT_MODE_OVERWRITE;
  _UpdateBuffer(pObj);
  WM_UNLOCK();
}

#else  /* avoid empty object files */

void EditBin_C(void);

#endif /* GUI_WINSUPPORT */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一级欧美三级| 久久久久久久久久久黄色| 日韩一级大片在线| 综合亚洲深深色噜噜狠狠网站| 亚洲国产精品久久艾草纯爱| 国产精品888| 欧美人妇做爰xxxⅹ性高电影 | 久久久99精品久久| 亚洲图片有声小说| 懂色av一区二区在线播放| 欧美福利视频导航| 亚洲另类春色校园小说| 国产精品一区二区久久精品爱涩 | 99精品视频中文字幕| 日韩欧美国产一二三区| 亚洲一级在线观看| 91在线精品一区二区三区| 欧美极品aⅴ影院| 狠狠狠色丁香婷婷综合激情| 在线电影院国产精品| 一区二区在线免费观看| 9i看片成人免费高清| 国产欧美日韩精品一区| 蜜桃精品视频在线| 中文字幕va一区二区三区| 91麻豆精品国产91久久久久| 欧美日韩国产成人在线免费| 日韩免费看网站| 欧美成人精精品一区二区频| 日韩av二区在线播放| 欧美日韩一区二区三区视频| 亚洲人成人一区二区在线观看| 风间由美一区二区三区在线观看| 精品精品国产高清a毛片牛牛| 日韩综合在线视频| 91精品国产91久久久久久最新毛片| 亚洲国产欧美日韩另类综合| 99这里都是精品| 亚洲女同ⅹxx女同tv| 在线看日本不卡| 亚洲综合色网站| 91精品国产综合久久精品麻豆| 爽爽淫人综合网网站| 欧美一级在线观看| 国产一区二区三区精品视频| 26uuu国产在线精品一区二区| 亚洲精品综合在线| 久久精品欧美一区二区三区麻豆| 亚洲特级片在线| 91官网在线观看| 亚洲成人免费视频| 日韩欧美国产精品| 国产成人啪午夜精品网站男同| 久久精品在这里| 91美女精品福利| 亚洲va国产va欧美va观看| 91精品国产麻豆国产自产在线 | 欧美性受xxxx黑人xyx| 香蕉久久夜色精品国产使用方法| 欧美日韩视频在线一区二区| 另类人妖一区二区av| 久久久99精品久久| 欧美伊人久久久久久午夜久久久久| 日韩主播视频在线| 国产日韩av一区| 欧美日韩免费电影| 国产成人精品综合在线观看| 亚洲一区二区三区中文字幕在线| 欧美一区二区三区公司| 成人激情小说乱人伦| 亚洲第一搞黄网站| 国产日韩综合av| 欧美人妇做爰xxxⅹ性高电影| 精品一区二区三区日韩| 亚洲人成网站在线| 久久综合丝袜日本网| 一本大道久久a久久精品综合| 免费在线观看不卡| 亚洲日本一区二区三区| 337p日本欧洲亚洲大胆精品 | 日韩无一区二区| 色狠狠桃花综合| 国产自产视频一区二区三区| 久久久99精品免费观看不卡| 亚洲国产精品激情在线观看| 日韩精品福利网| 亚洲国产成人午夜在线一区| 欧美日韩高清在线| 色综合天天性综合| 国产成人在线视频播放| 日韩电影在线一区| 一区二区三区免费| 国产日韩欧美一区二区三区乱码| 欧美日韩国产一二三| 91麻豆福利精品推荐| 精品一区二区三区久久久| 中文字幕亚洲不卡| 国产日产欧美一区二区三区| 欧美一区二区三区白人| 欧美写真视频网站| 97se亚洲国产综合自在线不卡| 国产一区二区美女| 久久69国产一区二区蜜臀| 日本亚洲最大的色成网站www| 亚洲精品乱码久久久久| 日韩久久一区二区| 2017欧美狠狠色| 日韩午夜在线播放| 99精品一区二区三区| 亚洲在线免费播放| 亚洲三级视频在线观看| 国产女人18水真多18精品一级做| 日韩一区二区三区观看| 欧美夫妻性生活| 91精品福利在线一区二区三区| 欧美写真视频网站| 欧美日免费三级在线| 欧美在线观看视频在线| 欧美熟乱第一页| 欧美日韩高清一区二区| 9191成人精品久久| 91精品国产一区二区| 欧美一区二区在线不卡| 日韩一区二区三区观看| 精品av久久707| 久久久久久黄色| 亚洲欧洲精品天堂一级| 亚洲精品视频在线观看免费| 亚洲精品乱码久久久久久久久 | 91精品国产入口| 国产成人精品在线看| 麻豆91精品视频| 免费在线观看视频一区| 国产精品亚洲午夜一区二区三区| 国产一区二区91| 99re这里只有精品首页| 91福利精品第一导航| 91精品一区二区三区久久久久久 | 色综合视频一区二区三区高清| 色欧美片视频在线观看| 欧美日本一道本| 久久精品夜色噜噜亚洲aⅴ| 中文字幕制服丝袜一区二区三区| 亚洲日本护士毛茸茸| 日韩成人一级大片| 成人精品高清在线| 欧美三区在线视频| 久久久.com| 亚洲成人www| 国产成人鲁色资源国产91色综| 色播五月激情综合网| 精品国产一区二区精华| 中文字幕一区二区三区在线不卡 | 337p日本欧洲亚洲大胆精品| 专区另类欧美日韩| 美女脱光内衣内裤视频久久网站| 夫妻av一区二区| 欧美刺激午夜性久久久久久久| 中文字幕中文字幕在线一区 | av电影在线观看完整版一区二区| 欧洲亚洲精品在线| 国产亚洲一区二区三区四区 | 亚洲黄色在线视频| 国产一区二区中文字幕| 欧美少妇性性性| 国产精品视频在线看| 蜜臀a∨国产成人精品| 91美女视频网站| 中文字幕av一区二区三区高| 日韩精品欧美成人高清一区二区| 99精品欧美一区二区三区小说 | 成a人片国产精品| 精品裸体舞一区二区三区| 亚洲精品ww久久久久久p站| 国产精品一区二区视频| 日韩欧美激情一区| 午夜不卡av在线| 91豆麻精品91久久久久久| 国产精品免费视频观看| 国产精一品亚洲二区在线视频| 欧美日韩一区不卡| 亚洲精选在线视频| 暴力调教一区二区三区| 国产清纯在线一区二区www| 精品一区二区三区免费播放| 欧美电影在哪看比较好| 亚洲国产另类av| 欧洲一区在线电影| 亚洲黄色小视频| 欧洲精品视频在线观看| 一区二区三区日韩欧美精品 | 日韩精品一区二| 美腿丝袜一区二区三区| 91麻豆精品国产综合久久久久久| 一区二区成人在线| 欧美日韩在线三区| 五月天激情综合| 欧美疯狂做受xxxx富婆| 日韩中文欧美在线| 欧美妇女性影城|