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

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

?? guicharm.c

?? 使用coderwarrior打開 內含中文字庫
?? 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        : GUIChar.C
Purpose     : Implementation of memory devices
----------------------------------------------------------------------
Version-Date---Author-Explanation
----------------------------------------------------------------------
*/

#include <stddef.h>           /* needed for definition of NULL */

#include "GUI_Private.h"
 


/*
      ***********************************************************
      *                                                         *
      *       Monospaced Font                                   *
      *                                                         *
      ***********************************************************

This is the routine that displays a character. It is used by all
other routines which display characters as a subroutine.

Parameters:     c       character to display
*/


void GUIMONO_DispChar(U16P c) {
  int c0, c1;
  U8 * pd;
  int x = GUI_Context.DispPosX;
  int y = GUI_Context.DispPosY;
/* do some checking if drawing is actually necessary ... */
  const GUI_FONT_MONO* pMono = GUI_Context.pAFont->p.pMono;
  unsigned int FirstChar = pMono->FirstChar;
  /* translate character into 2 characters to display : c0,c1
     Check if regular character first. */
  if ((c >= (U16P)FirstChar) &&(c <= (U16P)pMono->LastChar)) {
    pd = (U8*)pMono->pData;
    c0 = ((int)c) - FirstChar;
    c1 = -1;
  } else {
   /* Check if character is in translation table */
    GUI_FONT_TRANSINFO const* pti = pMono->pTrans;
    pd = (U8*)pMono->pTransData;
    if (pti) {
      FirstChar = pti->FirstChar;
      if ((c >= (U16P)FirstChar) && (c <= (U16P)pti->LastChar)) {
        GUI_FONT_TRANSLIST const* ptl;
        c -= pti->FirstChar;
        ptl = pti->pList;
        ptl += c;
        c0  = ptl->c0;
        c1  = ptl->c1;
      } else {
        c0 = c1 = -1;
      }
    } else {
      c0 = c1 = -1;
    }
  }
/*
   Draw first character if it is valid
*/
  if (c0!=-1) {
    int BytesPerChar = GUI_Context.pAFont->YSize*pMono->BytesPerLine;
    GUI_DRAWMODE DrawMode;
    int XSize = pMono->XSize;
    int YSize = GUI_Context.pAFont->YSize;
/* Select the right drawing mode */
    DrawMode = GUI_Context.TextMode;
/* call drawing routine */
    {
      U8 OldMode = LCD_SetDrawMode(DrawMode);
      LCD_DrawBitmap( x, y,
                         XSize, YSize,
                         GUI_Context.pAFont->XMag,  GUI_Context.pAFont->YMag,
                         1,     /* Bits per Pixel */
                         pMono->BytesPerLine,
                         pd + c0* BytesPerChar,
                         &LCD_BKCOLORINDEX
                         );
      if (c1 != -1) {
        LCD_SetDrawMode(DrawMode | LCD_DRAWMODE_TRANS);
        LCD_DrawBitmap( x, y,
                           XSize, YSize,
                           GUI_Context.pAFont->XMag,  GUI_Context.pAFont->YMag,
                           1,     /* Bits per Pixel */
                           pMono->BytesPerLine,
                           pd + c1* BytesPerChar,
                           &LCD_BKCOLORINDEX
                           );
      }
      /* Fill empty pixel lines */
      if (GUI_Context.pAFont->YDist > GUI_Context.pAFont->YSize) {
        int YMag = GUI_Context.pAFont->YMag;
        int YDist = GUI_Context.pAFont->YDist * YMag;
        int YSize = GUI_Context.pAFont->YSize * YMag;
        if (DrawMode != LCD_DRAWMODE_TRANS) {
          LCD_SetDrawMode(DrawMode ^ LCD_DRAWMODE_REV);  /* Reverse so we can fill with BkColor */
          LCD_FillRect(x, y + YSize, x + XSize, y + YDist);
        }
      }
      LCD_SetDrawMode(OldMode);
    } 
  }
  GUI_Context.DispPosX+=pMono->XDist;
}

int GUIMONO_GetCharDistX(U16P c) {
  const GUI_FONT_MONO* pMono = GUI_Context.pAFont->p.pMono;
  GUI_USE_PARA(c);
  return pMono->XDist;
}

void GUIMONO_GetFontInfo(void* pFont, GUI_FONTINFO* pfi) {
  GUI_USE_PARA(pFont);
  pfi->Flags = GUI_FONTINFO_FLAG_MONO;
}

char GUIMONO_IsInFont(void* pFont, U16 c) {
  const GUI_FONT_MONO* pMono = ((GUI_FONT*)pFont)->p.pMono;
  unsigned int FirstChar = pMono->FirstChar;
  /* Check if regular character first. */
  if ((c >= (U16P)FirstChar) &&(c <= (U16P)pMono->LastChar)) {
    return 1;  /* Yes, we have it ! */
  } else {
   /* Check if character is in translation table */
    GUI_FONT_TRANSINFO const* pti = pMono->pTrans;
    if (pti) {
      if ((c >= pti->FirstChar) && (c <= pti->LastChar)) {
        return 1;  /* Yes, we have it ! */
      }
		}
	}
  return 0;  /* No, we can not display this character */
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久爱www久久做| 综合在线观看色| 在线精品视频免费播放| 国产·精品毛片| 国产一区二区日韩精品| 国产麻豆精品一区二区| 韩国女主播一区二区三区| 美腿丝袜亚洲色图| 久久成人久久爱| 精品系列免费在线观看| 韩国av一区二区三区| 国产一区二区美女| 日韩va亚洲va欧美va久久| 成人精品鲁一区一区二区| 成人av免费网站| 97久久精品人人做人人爽| 欧美日韩日日摸| 亚洲精品国产精品乱码不99| 久久久久国产成人精品亚洲午夜| 91在线无精精品入口| 欧美视频精品在线观看| 精品日韩在线观看| 亚洲免费视频成人| 欧美va亚洲va香蕉在线| 99久久伊人久久99| 欧美人牲a欧美精品| 成人网男人的天堂| 午夜精品国产更新| 久久精品久久综合| 91久久线看在观草草青青| 在线播放/欧美激情| 精品久久一区二区| 亚洲国产一区视频| 久久电影网站中文字幕 | 丁香激情综合国产| 日韩精品一区二区在线观看| 亚洲另类在线制服丝袜| 日韩成人av影视| 老色鬼精品视频在线观看播放| 色综合久久久久久久久| 亚洲欧美自拍偷拍色图| 亚洲国产一区二区三区青草影视| 奇米精品一区二区三区在线观看 | av在线免费不卡| 欧美综合欧美视频| 久久欧美中文字幕| 亚洲国产你懂的| av亚洲精华国产精华精华| 久久久久国产精品人| 一区二区三区蜜桃网| 在线观看日韩国产| 福利电影一区二区三区| 欧美大片一区二区| 国产乱码精品一区二区三区av | 成人av网站在线观看| 久久九九久精品国产免费直播| 一区二区三区欧美亚洲| 极品少妇xxxx偷拍精品少妇| 91免费版在线| 欧美精品丝袜久久久中文字幕| 国产美女精品人人做人人爽| 一区二区三区美女| 国产视频一区二区三区在线观看| 国产精品不卡视频| 国产精品1区2区| 日韩三级精品电影久久久| 亚洲精品成人少妇| 成人av电影在线| 欧美激情一区二区| 国产成人免费在线观看不卡| 欧美va天堂va视频va在线| 亚洲成人手机在线| 91电影在线观看| 亚洲最新视频在线播放| 色999日韩国产欧美一区二区| 国产精品国产馆在线真实露脸| 国产成人午夜视频| 国产精品伦一区| 不卡av免费在线观看| 中文字幕乱码亚洲精品一区 | 成人app在线| 国产精品久久久久久久久免费桃花 | 91在线免费播放| 国产精品午夜电影| 不卡视频免费播放| 亚洲最色的网站| 欧美日韩一区二区三区不卡| 午夜不卡av在线| 日韩一区二区精品在线观看| 精品一区二区日韩| 日本一区二区三级电影在线观看| 大美女一区二区三区| 亚洲欧洲日韩在线| 欧美麻豆精品久久久久久| 午夜精品久久久久久久| 欧美videos中文字幕| 国产激情一区二区三区| 亚洲欧美综合在线精品| 欧美日韩国产欧美日美国产精品| 日韩精品一级中文字幕精品视频免费观看| 欧美日韩国产综合一区二区三区 | 免费人成在线不卡| 久久亚洲影视婷婷| 不卡一区中文字幕| 丝袜国产日韩另类美女| 日韩欧美一级在线播放| zzijzzij亚洲日本少妇熟睡| 一二三区精品视频| 久久综合色婷婷| 91啦中文在线观看| 久久精品二区亚洲w码| 国产精品美女一区二区| 制服丝袜亚洲色图| 成人蜜臀av电影| 日韩国产欧美视频| 国产精品美女久久久久av爽李琼| 欧美亚洲国产一卡| 国产精品乡下勾搭老头1| 一区二区三区四区激情| 日韩欧美123| 日本黄色一区二区| 国产精品自在在线| 久久精品国产秦先生| 中文字幕亚洲综合久久菠萝蜜| 91精品国产欧美一区二区18| 91网上在线视频| 高清shemale亚洲人妖| 欧美aaaaaa午夜精品| 亚洲一区在线观看免费| 日本一区二区在线不卡| 精品国产乱码久久久久久免费| 在线区一区二视频| 99视频一区二区| 国产九色精品成人porny| 奇米888四色在线精品| 亚洲一区二区三区国产| 亚洲欧洲99久久| 国产女人18毛片水真多成人如厕 | 亚洲一区二区欧美| 亚洲欧洲另类国产综合| 中文字幕欧美激情一区| 久久中文字幕电影| 精品国产三级电影在线观看| 91精品国产一区二区三区| 色综合久久88色综合天天| 国产69精品久久久久777| 国产福利一区二区| 国产一区二区按摩在线观看| 六月丁香婷婷久久| 老司机免费视频一区二区| 日本不卡123| 麻豆国产91在线播放| 蜜桃91丨九色丨蝌蚪91桃色| 美女视频黄频大全不卡视频在线播放| 亚洲在线视频网站| 三级久久三级久久久| 日韩成人伦理电影在线观看| 日本系列欧美系列| 精品在线播放免费| 国产成a人无v码亚洲福利| 成人一级片网址| 色综合久久中文字幕综合网| 91国偷自产一区二区三区观看| 91成人免费网站| 欧美精品在线一区二区三区| 91精品国产综合久久香蕉的特点 | 国产高清成人在线| 成人免费视频视频在线观看免费| 国产一区二区视频在线| 国产成人av电影在线播放| 99国产精品一区| 欧美日产国产精品| 久久综合色之久久综合| 国产精品盗摄一区二区三区| 亚洲成av人片一区二区| 久热成人在线视频| 99精品久久只有精品| 欧美丰满少妇xxxxx高潮对白| 日韩精品中文字幕在线不卡尤物| 久久久五月婷婷| 一区二区三区在线观看国产| 日韩极品在线观看| 懂色av中文字幕一区二区三区| 91蜜桃网址入口| 精品美女在线观看| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 日韩欧美在线网站| 国产精品久久久久久久久免费樱桃| 亚洲午夜电影网| 国产精品国产自产拍在线| 亚洲第一搞黄网站| 国产成人免费视频网站高清观看视频 | 91精品午夜视频| 日韩欧美的一区二区| 国产精品日韩成人| 视频一区视频二区在线观看| 另类调教123区| 欧美日韩中文精品| 日本一区二区免费在线观看视频| 亚洲一区欧美一区|