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

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

?? mso_text.c

?? ZORAN 962/966 SOURCE CODE,DVD chip
?? C
字號(hào):
/* **************************************************************************************
*  Copyright (c) 2004 ZORAN Corporation, All Rights Reserved
*  THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF ZORAN CORPORATION
*
*  File: $Workfile: o_text.c $
*
* Description:
* ============
* Project definition of the MSO_TEXT functions
*
****************************************************************************************/
#include "Config.h"		// Global Configuration - do not remove!

#ifdef DEBUG_UI_TRACE
#undef IFTRACE
#define IFTRACE if (gTraceUI)
#include "Debug\DbgMain.h"
#endif //DEBUG_UI_TRACE

#include "Include\SysDefs.h"

/////////////////////////////////////////////////////////////////////////////
// Include files
#include <stdio.h>
#include <string.h>

#include "Bitmap\bitmap_defs.h"
#include "GUI\Menu_system\ms_object.h"
#include "gui\menu_system\osd_rendering.h"
#include "gui\menu_system\ms_display.h"
#include "GUI\Menu_system\ms_screen.h"
#include "gui\menu_system\ms_send_op.h"

#include "GUI\Object_class\Text\mso_text.h"
#include "Playcore\ScPad\SCMGR.h"

#ifndef DEBUG_UI_TRACE
#undef dbg_printf(sMsg)
#define dbg_printf(sMsg)
#undef	dbgm_printf(sMsg, mode)
#define dbgm_printf(sMsg, mode)
#endif

#define pObjectText ((MSO_TEXT __NEAR*)pThis)
#define pDescriptorText ((MS_DESCRIPTOR_TEXT*)(pThis->mpDescriptor))

CONST UINT8* OTEXT_GetBitmapFromSet(MSO_OBJECT __NEAR* pThis, MS_BITMAP_SET *pBmpSet)
{
	if(pBmpSet == NULL)
		return NULL;

	// Not focusable is highest priority
	if(!MS_IsFocusable(pThis))
		return (pBmpSet->mpNotFocusable ? pBmpSet->mpNotFocusable : pBmpSet->mpDefault);

	// Then comes the selection state
			if(MS_IsSelected(pThis))
				return (pBmpSet->mpAction ? pBmpSet->mpAction : pBmpSet->mpDefault);

	// else display the default
	return (pBmpSet->mpDefault);
}

UINT8 OTEXT_GetColorFromSet(MSO_OBJECT __NEAR* pThis, MS_COLOR_SET *pColorSet)
{
	if(MS_IsFocusable(pThis))
	{
		if(MS_IsFocused(pThis))
		{
			if(MS_IsSelected(pThis))
				return (pColorSet->mcAction ? pColorSet->mcAction : pColorSet->mcDefault);

			return (pColorSet->mcFocused ? pColorSet->mcFocused : pColorSet->mcDefault);;
		}
		return pColorSet->mcDefault;
	}
	return (pColorSet->mcNotFocusable ? pColorSet->mcNotFocusable : pColorSet->mcDefault);
}

/**************************************************************************
*	Function	:	TextOperation
*
*	In		:
*
*	Out 		:
*
*	Desc		:
 ***************************************************************************/
MS_OP OTEXT_Operation(MSO_OBJECT __NEAR* pThis, MS_OP MsOp, UINT32 lParam)
{
	switch (MsOp)
	{

	case MS_OP_REFRESH:
	case MS_OP_FOCUS_CHANGE:
        	// We have gained or lost focus.
            // Ask for a redisplay:
            MS_DisplayAddObject(pThis);
            break;

	// When building the text string requested in menus (not on MS_OP_INIT or MS_OP_DEFROST) 
	// the user can change the string, so the parameter in the OSD_TEXT is only for initialization.
	case MS_OP_BUILD_TEXT_STRING:
		{
			FORMATED_UNICODE_STRING oFormUniStr;

			if(pDescriptorText->mText != NULL)
			{
				oFormUniStr.mtFontIndex = pDescriptorText->mtFontIndex;
				pDescriptorText->mText->mGetStr((FORMATED_UNICODE_STRING __NEAR*)&oFormUniStr, lParam);
			}
			else
			{
				oFormUniStr.mszUniStr[0] = 0;
			}
			OSDR_SetScFormUniStr((FORMATED_UNICODE_STRING __NEAR*)&oFormUniStr, pObjectText->moParam.wScFormUniStr);
		}
		return MS_OP_NONE;

	case MS_OP_ON_DEFROST:
    	case MS_OP_INIT:
		// All text are dynamically allocated, might want to add attribute to the text descriptor to specify static text
		{
			// Allocate scratchpad memory to hold a unicode formatted string.
			pObjectText->moParam.wScFormUniStr = OSDR_MallocScFormUniStr();
			MS_ASSERT(NULL_HANDLE != pObjectText->moParam.wScFormUniStr);

			MS_SendOperation(pThis, MS_OP_BUILD_TEXT_STRING, pDescriptorText->mText->mParam);
    		}
        	break;

	case MS_OP_PREPARE_FOR_FREEZE:
       case MS_OP_EMPTY:
		{
			// Release the scratchpad memory:
			OSDR_FreeScFormUniStr(pObjectText->moParam.wScFormUniStr);
			pObjectText->moParam.wScFormUniStr = NULL_HANDLE;
        	}
		break;

	}

	return(MsOp);
}

/**************************************************************************
*	Function	:	TextFillOSDSeg
*
*	In		:
*
*	Out 		:
*
*	Desc		:
 ***************************************************************************/
BOOL OTEXT_FillOSDSeg(MSO_OBJECT __NEAR* pThis, MS_AREA __NEAR* pAbsArea)
{
	FORMATED_UNICODE_STRING oFormUniStr;
	MS_X_Y_ALIGN			*pXYAlignText  =  (((MS_DESCRIPTOR_TEXT*)(pThis->mpDescriptor))->mpXYAlignText);
	// display bitmap underneath text
	OSDR_FillOsdSegBitmapFitArea(OTEXT_GetBitmapFromSet(pThis, pDescriptorText->mpBmpSetBg), pAbsArea);

	if(MS_IsFocused(pThis) && (NULL != pDescriptorText->mpBmpSetBg))
		OSDR_FillOsdSegBitmapFitArea(pDescriptorText->mpBmpSetBg->mpFocused, pAbsArea);

	// if an icon exists
	if(pDescriptorText->mpBmpSetIcon != NULL)
	{
		CONST UINT8 *pcIcon = OTEXT_GetBitmapFromSet(pThis, pDescriptorText->mpBmpSetIcon);
		MS_X_Y_ALIGN	*pXYAlignIcon = (((MS_DESCRIPTOR_TEXT*)(pThis->mpDescriptor))->mpXYAlignIcon) ;
		OSDR_FillOsdSegBitmap(pcIcon,
							pAbsArea,
							TEXT_GetAlignXPosition(pXYAlignIcon, BMP_GetWidth(pcIcon), pAbsArea->mwW) ,
							TEXT_GetAlignYPosition(pXYAlignIcon, BMP_GetHeight(pcIcon), pAbsArea->mwH),
							TEXT_GetAlignHorizontal(pXYAlignIcon),
							TEXT_GetAlignVertical(pXYAlignIcon) ,
							NULL_EXPANSION,
							NULL_EXPANSION);
	}

	// Get the formatted message from it's storage location:
	OSDR_GetFormUniStr_ScFormatted((FORMATED_UNICODE_STRING __NEAR*)&oFormUniStr, (UINT32)(pObjectText->moParam.wScFormUniStr));

	OSDR_FillOsdSegUniString((FORMATED_UNICODE_STRING __NEAR*)&oFormUniStr,
							pAbsArea,
							TEXT_GetAlignXPosition(pXYAlignText, oFormUniStr.mwPixelWidth, pAbsArea->mwW)	,
							TEXT_GetAlignYPosition(pXYAlignText, oFormUniStr.mcPixelHeight, pAbsArea->mwH)	,
							TEXT_GetAlignHorizontal(pXYAlignText), 
							TEXT_GetAlignVertical(pXYAlignText),
							OTEXT_GetColorFromSet(pThis, pDescriptorText->mpColorSetText));

	return FALSE;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区看久久| 亚洲成人tv网| 成人性生交大合| 国产精品欧美精品| 一本色道久久加勒比精品| 亚洲欧美色一区| 欧美日韩久久一区| 三级不卡在线观看| 久久综合av免费| 国产91精品免费| 亚洲欧美电影院| 91精品国产一区二区| 麻豆精品新av中文字幕| 国产视频一区在线播放| 91亚洲国产成人精品一区二三| 亚洲麻豆国产自偷在线| 欧美一卡在线观看| 国产成人午夜精品影院观看视频 | 欧美日韩久久久久久| 免费成人性网站| 国产日产亚洲精品系列| 色综合天天综合网天天看片| 日日夜夜精品视频天天综合网| 精品国产一区二区三区av性色| 成人午夜视频免费看| 亚洲va韩国va欧美va精品| 久久久久久久久久久黄色| 欧美综合一区二区| 国产真实精品久久二三区| 综合激情网...| 欧美一级艳片视频免费观看| 成人中文字幕合集| 午夜欧美视频在线观看 | 国产视频一区在线播放| 欧美日韩一级大片网址| 成人免费毛片高清视频| 天天综合色天天综合| 国产精品欧美久久久久一区二区| 欧美理论片在线| 不卡电影一区二区三区| 麻豆国产欧美一区二区三区| 亚洲男人都懂的| 久久久精品欧美丰满| 欧美日韩国产综合久久 | 欧美午夜精品久久久久久超碰 | 久久亚洲精精品中文字幕早川悠里| 91一区二区在线| 国产成人免费视频网站高清观看视频| 偷拍与自拍一区| 亚洲女同ⅹxx女同tv| xf在线a精品一区二区视频网站| 欧美在线一二三四区| 岛国av在线一区| 极品尤物av久久免费看| 香蕉影视欧美成人| 亚洲欧美精品午睡沙发| 国产精品美女久久久久久2018| 91精品在线一区二区| 在线观看免费亚洲| 91麻豆国产福利精品| 国产盗摄女厕一区二区三区 | 一区二区三区鲁丝不卡| 中文字幕乱码日本亚洲一区二区 | 亚洲国产精品精华液网站| 中文字幕欧美一区| 国产婷婷色一区二区三区| 久久久久青草大香线综合精品| 91精品一区二区三区在线观看| 欧美四级电影在线观看| 在线欧美日韩国产| 91精品办公室少妇高潮对白| 99久久99久久精品免费观看| 成人激情黄色小说| 91成人免费网站| 99综合电影在线视频| 高清av一区二区| 懂色av一区二区夜夜嗨| 粉嫩在线一区二区三区视频| 国产不卡一区视频| 成人黄色小视频在线观看| 豆国产96在线|亚洲| 国产v综合v亚洲欧| 成人av电影在线网| 99视频国产精品| 色综合久久九月婷婷色综合| 在线观看一区二区视频| 欧美日韩成人在线一区| 欧美一区中文字幕| 亚洲精品在线电影| 国产人妖乱国产精品人妖| 国产精品水嫩水嫩| 一区二区三区欧美亚洲| 日韩制服丝袜av| 久久99久久久久久久久久久| 紧缚奴在线一区二区三区| 成人在线一区二区三区| 91美女片黄在线观看| 在线一区二区观看| 91精品国产欧美一区二区18| 精品少妇一区二区三区| 国产日韩欧美高清| 亚洲一区二区三区四区五区黄 | 久久超碰97中文字幕| 国产一区二区主播在线| 北条麻妃国产九九精品视频| 在线日韩一区二区| 精品国产乱码久久久久久牛牛| 国产午夜精品久久| 一区二区三区不卡在线观看| 人人狠狠综合久久亚洲| 粉嫩aⅴ一区二区三区四区| 欧美写真视频网站| 欧美二区三区91| 国产午夜精品美女毛片视频| 亚洲激情一二三区| 狠狠网亚洲精品| 欧美在线一区二区| 精品久久久久久久久久久久包黑料 | 日韩一级大片在线| 国产精品久久久久久亚洲伦| 日韩中文字幕区一区有砖一区| 国产精品77777| 久久婷婷色综合| 亚洲精品成人少妇| 国产美女在线观看一区| 欧美无乱码久久久免费午夜一区| 精品免费国产二区三区| 亚洲女同ⅹxx女同tv| 国产成人精品午夜视频免费| 欧美日韩免费一区二区三区| 国产欧美一区二区精品忘忧草 | 亚洲色大成网站www久久九九| 日本午夜一区二区| 色哟哟亚洲精品| 久久久久久久久免费| 免费日韩伦理电影| 欧美日韩视频第一区| 中文字幕制服丝袜一区二区三区| 美女任你摸久久| 欧美中文字幕一二三区视频| 中文字幕欧美激情| 精品一区二区三区香蕉蜜桃 | 免费在线观看一区| 欧美亚洲图片小说| 国产精品久久久久久久岛一牛影视| 人人精品人人爱| 欧美日本高清视频在线观看| 亚洲综合区在线| 色综合久久综合| 国产精品情趣视频| 成人深夜视频在线观看| 精品av久久707| 麻豆传媒一区二区三区| 欧美影院午夜播放| 亚洲黄色片在线观看| 91视视频在线观看入口直接观看www| 久久久久久9999| 国产成人免费视频一区| 久久久久久久久蜜桃| 国产麻豆欧美日韩一区| 一区二区三区国产精华| 99国产欧美久久久精品| 国产精品欧美一区喷水| 播五月开心婷婷综合| 国产精品久久久久四虎| 99久久精品国产一区二区三区| 中文幕一区二区三区久久蜜桃| 国产电影精品久久禁18| 国产亚洲一区字幕| 丁香网亚洲国际| 中文字幕免费观看一区| 99久久99久久精品国产片果冻| 国产精品国产三级国产普通话99| 成人免费看视频| 亚洲色图一区二区三区| 欧美综合一区二区三区| 午夜精品国产更新| 欧美一级午夜免费电影| 国产乱人伦偷精品视频不卡| 欧美国产精品一区二区三区| av电影天堂一区二区在线| 亚洲精品大片www| 3751色影院一区二区三区| 美腿丝袜一区二区三区| 国产日产欧产精品推荐色| 粗大黑人巨茎大战欧美成人| 国产精品久久久久久福利一牛影视 | 欧美精品久久99久久在免费线| 日本不卡视频在线| 久久综合久久综合久久综合| av亚洲精华国产精华精华| 亚洲一区二区三区四区不卡| 欧美一区二区三区视频免费| 国产剧情一区在线| 亚洲激情五月婷婷| 欧美不卡一区二区三区| 成人精品鲁一区一区二区| 一区二区国产视频| 欧美mv日韩mv| 一本久道久久综合中文字幕|