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

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

?? guidrawlayer.cpp

?? 該文件包含有C8051單片機中實現UART波特率自檢的功能
?? CPP
字號:
//-----------------------------------------------------------------------//
// This is a part of the GuiLib MFC Extention.							 //	
// Autor  :  Francisco Campos											 //
// (C) 2002 Francisco Campos <www.beyondata.com> All rights reserved     //
// This code is provided "as is", with absolutely no warranty expressed  //
// or implied. Any use is at your own risk.								 //		
// You must obtain the author's consent before you can include this code //
// in a software library.												 //
// If the source code in  this file is used in any application			 //
// then acknowledgement must be made to the author of this program		 //	
// fco_campos@tutopia.com													 //
// version : 1.1														 //
// Modified by : Francisco Campos										 //
//-----------------------------------------------------------------------//

#include "stdafx.h"
#include "..\header\GuiDrawLayer.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

COLORREF GuiDrawLayer::DarkenColor( long lScale, COLORREF lColor)
{ 
  long R = MulDiv(GetRValue(lColor),(255-lScale),255);
  long G = MulDiv(GetGValue(lColor),(255-lScale),255);
  long B = MulDiv(GetBValue(lColor),(255-lScale),255);

  return RGB(R, G, B); 
}

GuiDrawLayer::GuiDrawLayer()
{
	if (!m_img.Create(IDB_DOCKBAR,9,10,RGB(255,0,255)))
	{
		TRACE0("error");
	}
	m_iWidthDrowDown=GetSystemMetrics(SM_CXHTHUMB);
	CBitmap cbmp;
	BITMAP bmp;
	cbmp.LoadBitmap(IDB_DOCKBAR);
	cbmp.GetBitmap(&bmp);
	mHeight=CPoint(bmp.bmWidth,bmp.bmHeight);	
	

}

COLORREF GuiDrawLayer::GetRGBColorWhite()
{
	return RGB(255,255,255);
}

COLORREF GuiDrawLayer::GetRGBColorTabs()
{
	BYTE byRvalue =GetRValue(GetRGBColorXP());
	BYTE byGvalue =GetGValue(GetRGBColorXP());
	BYTE byBvalue =GetBValue(GetRGBColorXP());
//	byRvalue =byRvalue>>2;
//	byGvalue =byGvalue>>2;
//	byBvalue =byBvalue>>2;
	int iMaximo=max(byRvalue,byGvalue);
	iMaximo=max(iMaximo,byBvalue);
	iMaximo= 255-iMaximo;
	iMaximo=iMaximo-(int)(iMaximo*0.08);
	return RGB(byRvalue+iMaximo,byGvalue+iMaximo,byBvalue+iMaximo);	
	
}

COLORREF GuiDrawLayer::GetRGBColorBTNHigh()
{
	return ::GetSysColor(COLOR_BTNHIGHLIGHT);
}

COLORREF GuiDrawLayer::GetRGBColorFace()
{
	return ::GetSysColor(COLOR_BTNFACE);
}

COLORREF GuiDrawLayer::GetRGBColorShadow()
{
	return ::GetSysColor(COLOR_BTNSHADOW);
}

COLORREF GuiDrawLayer::GetRGBPressBXP()
{
	COLORREF clrPress = ::GetSysColor (COLOR_HIGHLIGHT);

	BYTE byRvalue =GetRValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byGvalue =GetGValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byBvalue =GetBValue(::GetSysColor(COLOR_HIGHLIGHT));
	byRvalue =byRvalue>>2;
	byGvalue =byGvalue>>2;
	byBvalue =byBvalue>>2;
	int iMaximo=max(byRvalue,byGvalue);
	iMaximo=max(iMaximo,byBvalue);
	iMaximo= 255-iMaximo;
	iMaximo=iMaximo-(int)(iMaximo*0.21);
	return RGB(byRvalue+iMaximo,byGvalue+iMaximo,byBvalue+iMaximo);	
	
}

COLORREF GuiDrawLayer::GetRGBMenu()
{
	COLORREF clrPress = ::GetSysColor (COLOR_BTNSHADOW);

	BYTE byRvalue =GetRValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byGvalue =GetGValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byBvalue =GetBValue(::GetSysColor(COLOR_HIGHLIGHT));
	byRvalue =byRvalue>>3;
	byGvalue =byGvalue>>3;
	byBvalue =byBvalue>>3;
	int iMaximo=max(byRvalue,byGvalue);
	iMaximo=max(iMaximo,byBvalue);
	iMaximo= 255-iMaximo;
	iMaximo=iMaximo-(int)(iMaximo*0.47);
	return RGB(byRvalue+iMaximo,byGvalue+iMaximo,byBvalue+iMaximo);	
	
}

COLORREF GuiDrawLayer::GetRGBTitleMenu()
{
	COLORREF clrPress = ::GetSysColor (COLOR_BTNSHADOW);

	BYTE byRvalue =GetRValue(::GetSysColor(clrPress));
	BYTE byGvalue =GetGValue(::GetSysColor(clrPress));
	BYTE byBvalue =GetBValue(::GetSysColor(clrPress));
	byRvalue =byRvalue>>2;
	byGvalue =byGvalue>>2;
	byBvalue =byBvalue>>2;
	int iMaximo=max(byRvalue,byGvalue);
	iMaximo=max(iMaximo,byBvalue);
	iMaximo= 255-iMaximo;
	iMaximo=iMaximo-(int)(iMaximo*0.8);
	return RGB(byRvalue+iMaximo,byGvalue+iMaximo,byBvalue+iMaximo);	
	
}

COLORREF GuiDrawLayer::GetRGBCaptionXP()
{

	BYTE byRvalue =GetRValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byGvalue =GetGValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byBvalue =GetBValue(::GetSysColor(COLOR_HIGHLIGHT));
	return RGB(byRvalue+10,byGvalue+10,byBvalue+10);	
}

COLORREF GuiDrawLayer::GetRGBFondoXP()
{
	BYTE byRvalue =GetRValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byGvalue =GetGValue(::GetSysColor(COLOR_HIGHLIGHT));
	BYTE byBvalue =GetBValue(::GetSysColor(COLOR_HIGHLIGHT));
	byRvalue =byRvalue>>2;
	byGvalue =byGvalue>>2;
	byBvalue =byBvalue>>2;
	int iMaximo=max(byRvalue,byGvalue);
	iMaximo=max(iMaximo,byBvalue);
	iMaximo= 255-iMaximo;
	iMaximo=iMaximo-(int)(iMaximo*0.14);
	return RGB(byRvalue+iMaximo,byGvalue+iMaximo,byBvalue+iMaximo);	
}

BOOL GuiDrawLayer::IsGrayed()
{
	BYTE byRvalue =GetRValue(::GetSysColor(COLOR_3DFACE));
	BYTE byGvalue =GetGValue(::GetSysColor(COLOR_3DFACE));
	BYTE byBvalue =GetBValue(::GetSysColor(COLOR_3DFACE));
	if ((byRvalue ==byGvalue) && (byGvalue == byBvalue) &&
		 (byBvalue > 190 && byBvalue < 193) || (byBvalue == 216))
		return TRUE;
	else
		return FALSE;
}

COLORREF GuiDrawLayer::GetRGBColorXP()
{

	
	COLORREF clr3DFace = ::GetSysColor (COLOR_3DFACE);
	return RGB (((3*GetRValue (clr3DFace)+240)/4)+1,
				((3*GetGValue (clr3DFace)+240)/4)+1,
				((3*GetBValue (clr3DFace)+240)/4)+1);

}

GuiDrawLayer::~GuiDrawLayer()
{

}

HICON GuiDrawLayer::LoadIconLib(UINT uIcon)
{
	HINSTANCE hIrs = AfxFindResourceHandle(MAKEINTRESOURCE(uIcon),
											RT_GROUP_ICON);
	return (HICON)::LoadImage(hIrs, MAKEINTRESOURCE(uIcon), IMAGE_ICON,16, 16, 0);
}

void GuiDrawLayer::DrawArrow(CDC* pDC,CRect m_rc,BOOL m_bDown)
{
	int difh =m_rc.Height()-mHeight.y;
	difh/=2;
	m_rc.left=m_rc.right-m_iWidthDrowDown;
	m_img.Draw(pDC,m_bDown?0:2,CPoint(m_rc.left+2,m_rc.top+difh),ILD_TRANSPARENT);		

}

void GuiDrawLayer::DrawCheck(CDC* pDC,CRect m_rcTemp)
{
	int iMediaAltura=(m_rcTemp.Height()/2)-2;
	int iMedioBox= m_rcTemp.Width()/2;
	CPen cp(PS_SOLID,1,GuiDrawLayer::GetRGBCaptionXP());
	CPen *pOld=pDC->SelectObject(&cp);
	pDC->MoveTo(m_rcTemp.left+1,m_rcTemp.top+iMediaAltura+3);
	pDC->LineTo(m_rcTemp.left+3,m_rcTemp.bottom-2);
	pDC->MoveTo(m_rcTemp.left+3,m_rcTemp.bottom-2);
	pDC->LineTo(m_rcTemp.right-1,m_rcTemp.top+2);
				
	pDC->MoveTo(m_rcTemp.left+1,m_rcTemp.top+iMediaAltura+2);
	pDC->LineTo(m_rcTemp.left+3,m_rcTemp.bottom-3);
	pDC->MoveTo(m_rcTemp.left+3,m_rcTemp.bottom-3);
	pDC->LineTo(m_rcTemp.right-1,m_rcTemp.top+1);

	pDC->MoveTo(m_rcTemp.left+1,m_rcTemp.top+iMediaAltura+1);
	pDC->LineTo(m_rcTemp.left+3,m_rcTemp.bottom-4);
	pDC->MoveTo(m_rcTemp.left+3,m_rcTemp.bottom-4);
	pDC->LineTo(m_rcTemp.right-1,m_rcTemp.top);
	pDC->SelectObject(pOld);
}

HICON GuiDrawLayer::GetIcon(int nIcon)
{
	return m_img.ExtractIcon(nIcon);
}

//function of Bruno Podetti

void GuiDrawLayer::DrawShade( CRect Rect,CPoint screen,CDC* pDC)
{ 
//  if(!SystemParametersInfo(SPI_GETDROPSHADOW,0,&bEnabled,0))
  //  return;

  // Get the size of the menu... 
  
  long winW = Rect.Width(); 
  long winH = Rect.Height(); 
  long xOrg = screen.x;  
  long yOrg = screen.y;

  // Get the desktop hDC... 
  HDC hDcDsk = GetWindowDC(0) ;
  
  int X,Y;
  // Simulate a shadow on right edge... 
  for (X=1; X<=2 ;X++)
  { 
    for (Y=0; Y<2 ;Y++)
    {
      SetPixel(pDC->m_hDC,winW-X,Y, GetPixel(hDcDsk,xOrg+winW-X,yOrg+Y) );
    }
    for (Y=4; Y<8 ;Y++)
    {
      COLORREF c = GetPixel(hDcDsk, xOrg + winW - X, yOrg + Y) ;
      SetPixel(pDC->m_hDC,winW-X,Y,DarkenColor(3 * X * (Y - 3), c)) ;
    }
    for (Y=8; Y<=(winH-5) ;Y++)
    {
      COLORREF c = GetPixel(hDcDsk, xOrg + winW - X, yOrg + Y) ;
      SetPixel(pDC->m_hDC, winW - X, Y, DarkenColor(15 * X, c) );
    }
    for (Y=(winH-4); Y<=(winH-1) ;Y++)
    {
      COLORREF c = GetPixel(hDcDsk, xOrg + winW - X, yOrg + Y) ;
      SetPixel( pDC->m_hDC, winW - X, Y, DarkenColor(3 * X * -(Y - winH), c)) ;
    }
  } 

  // Simulate a shadow on the bottom edge... 
  for(Y=1; Y<=2 ;Y++)
  {
    for(X=0; X<=2 ;X++)
    {
      SetPixel(pDC->m_hDC,X,winH-Y, GetPixel(hDcDsk,xOrg+X,yOrg+winH-Y)) ;
    }
    for(X=4; X<=7 ;X++)
    {
      COLORREF c = GetPixel(hDcDsk, xOrg + X, yOrg + winH - Y) ;
      SetPixel(pDC->m_hDC, X, winH - Y, DarkenColor(3 * (X - 3) * Y, c)) ;
    }
    for(X=8; X<=(winW-5) ;X++)
    {
      COLORREF  c = GetPixel(hDcDsk, xOrg + X, yOrg + winH - Y); 
      SetPixel(pDC->m_hDC, X, winH - Y, DarkenColor(15 * Y, c)) ;
    }
  }   
  // Release the desktop hDC... 
  ReleaseDC(0,hDcDsk);
}



CGuiControlBarButton::CGuiControlBarButton()
{
	bTypeButton=GUINORMAL;
	m_bEnabled=TRUE;
}


CGuiControlBarButton::~CGuiControlBarButton()
{

}

void CGuiControlBarButton::SetTypeButton(GuiType bTypeb)
{
	bTypeButton=bTypeb;
}


void CGuiControlBarButton::SetEnabled(BOOL bEnabled)
{
	m_bEnabled=bEnabled;
}

void CGuiControlBarButton::Paint(CDC* pDC,int st,CRect rc,COLORREF clrFondo)
{
	CBrush cb;
	if(bTypeButton==GUINORMAL) 
		cb.CreateSolidBrush(clrFondo);
	else
	{
		if (m_bEnabled)
			if (st == OVERBTN)
				cb.CreateSolidBrush(GuiDrawLayer::GetRGBFondoXP());
			else if(st == PRESSBTN)
				cb.CreateSolidBrush(GuiDrawLayer::GetRGBPressBXP());
			else
				cb.CreateSolidBrush(clrFondo);
	}

	if (m_bEnabled)
	{
		pDC->FillRect(rc,&cb);
		if (st == OVERBTN)
			pDC->Draw3dRect(rc,bTypeButton==GUINORMAL?::GetSysColor(COLOR_BTNHIGHLIGHT):GuiDrawLayer::GetRGBCaptionXP(),
							   bTypeButton==GUINORMAL?::GetSysColor(COLOR_BTNSHADOW):GuiDrawLayer::GetRGBCaptionXP());
		if (st == PRESSBTN)
			pDC->Draw3dRect(rc,bTypeButton==GUINORMAL?::GetSysColor(COLOR_BTNSHADOW):GuiDrawLayer::GetRGBCaptionXP(),
			bTypeButton==GUINORMAL?::GetSysColor(COLOR_BTNHIGHLIGHT):GuiDrawLayer::GetRGBCaptionXP());
	}
	if(bTypeButton==GUINORMAL) 
		m_imgList.Draw(pDC,clrFondo == ::GetSysColor(COLOR_ACTIVECAPTION)? m_nIcon+1:m_nIcon, 
						CPoint(rc.left+3,rc.top+2), ILD_TRANSPARENT);				
	else
	{
		HICON m_Icon=m_imgList.ExtractIcon(m_nIcon);
		ICONINFO bm;
		ZeroMemory(&bm, sizeof(ICONINFO));
		::GetIconInfo(m_Icon,&bm);
		CSize m_SizeImage =CSize((BYTE)(bm.xHotspot*2),(BYTE)(bm.yHotspot*2));
		int yngap=rc.Height()-m_SizeImage.cy;
		int xngap=rc.Width()-m_SizeImage.cx;
		yngap/=2;
		xngap/=2;
		if (m_bEnabled)
			m_imgList.Draw(pDC,m_nIcon, CPoint(rc.left+xngap+1,bTypeButton==GUINORMAL?rc.top+1:rc.top+yngap), ILD_TRANSPARENT);				
		else
		{
			
			CSize m_SizeImage =CSize((BYTE)(bm.xHotspot*2),(BYTE)(bm.yHotspot*2));
			pDC->DrawState(CPoint(rc.left+xngap+3,rc.top+yngap),m_SizeImage,m_Icon,DSS_MONO,CBrush (GuiDrawLayer::GetRGBColorShadow()));
		}
	}
}

void CGuiControlBarButton::SetData(int nIcon,LPCTSTR lpMsg)
{
	m_nIcon=nIcon;
	m_lpMsg=lpMsg;
}

void  CGuiControlBarButton::SetImageList(UINT nBitmapID, int cx, int nGrow, COLORREF crMask)
{
	CBitmap cbmp;
	BITMAP bmp;
	m_imgList.Create(nBitmapID,cx,nGrow,crMask);
	cbmp.LoadBitmap(nBitmapID);
	cbmp.GetBitmap(&bmp);
	m_imgList.Add(&cbmp,crMask);

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本不卡的三区四区五区| 日韩精品福利网| 欧美日韩国产一区二区三区地区| 国产一区二区成人久久免费影院| 玖玖九九国产精品| 亚洲天堂福利av| 国产精品色呦呦| 三级亚洲高清视频| 狠狠色丁香久久婷婷综合_中| 韩国一区二区三区| 国产精品一区二区三区四区| 亚洲第一狼人社区| 久久久亚洲精品一区二区三区| 91免费视频网| 国产在线国偷精品产拍免费yy| 亚洲一区二区三区中文字幕| 国产一区二区三区黄视频| 国产精品美女视频| 欧美国产精品一区| 1区2区3区国产精品| 国产精品久久午夜| 欧美一卡二卡三卡四卡| 一本色道综合亚洲| jlzzjlzz亚洲女人18| 久久精品99国产精品日本| 91视频一区二区| 国产女主播一区| 欧美精品久久天天躁| 国产精品99久久久久久久女警| 久久久久国产精品免费免费搜索| 91浏览器在线视频| 韩国女主播成人在线| 亚洲美女区一区| 日韩电影一二三区| 精品一区二区三区在线观看| 国内精品伊人久久久久影院对白| 亚洲成a人片在线不卡一二三区| 日韩一本二本av| 欧美亚洲免费在线一区| 欧美色图在线观看| 26uuu亚洲综合色欧美| 中文字幕一区二区三区四区| 午夜精品福利一区二区三区蜜桃| 成人免费高清在线观看| 欧美日本视频在线| 最新成人av在线| 91丝袜美女网| 亚洲电影中文字幕在线观看| 在线精品视频一区二区三四| 亚洲成人777| 欧美一区在线视频| 粉嫩一区二区三区性色av| 国产精品久久久久久久久免费桃花| 色综合一区二区三区| 一区二区日韩电影| 欧美精品在线观看一区二区| 午夜久久久久久久久久一区二区| 91在线精品一区二区三区| 亚洲人成网站在线| av电影在线观看一区| 26uuu色噜噜精品一区二区| 男人操女人的视频在线观看欧美| 欧美福利视频导航| 国产在线精品一区二区三区不卡| 久久久综合九色合综国产精品| 国产精品综合二区| 国产欧美精品国产国产专区| 激情五月播播久久久精品| 99精品视频中文字幕| 欧美久久久影院| 国产精品久久久久久久久果冻传媒 | 欧美一区二区在线播放| 国产精品影视网| 91亚洲精品久久久蜜桃网站| 欧美r级在线观看| 中文字幕日本乱码精品影院| 亚洲第一精品在线| 国产精品一品二品| 26uuu国产一区二区三区| 国产精品自拍三区| 日韩精品一区二区三区四区| 日韩精品福利网| 国产日韩欧美电影| 91视频xxxx| 视频一区视频二区中文| 欧美精品视频www在线观看| 一本久久a久久精品亚洲| 欧美四级电影网| 国产视频一区二区在线观看| 国产宾馆实践打屁股91| 亚洲女爱视频在线| 久久中文娱乐网| 欧美日韩一区在线| 国模一区二区三区白浆| 亚洲特级片在线| 国产亚洲一二三区| 欧美日韩电影在线| 欧美日韩五月天| 色拍拍在线精品视频8848| 不卡一区在线观看| 99国产精品99久久久久久| av电影一区二区| 粉嫩aⅴ一区二区三区四区五区 | 欧美理论片在线| 激情图片小说一区| 麻豆久久一区二区| 国产精品不卡视频| 久久综合色之久久综合| 欧美一级高清片在线观看| 在线观看视频91| 在线观看av一区| 欧美中文字幕一二三区视频| 91女厕偷拍女厕偷拍高清| 高清视频一区二区| 91丨porny丨在线| 一本到三区不卡视频| 国产成人免费视频精品含羞草妖精 | 91尤物视频在线观看| 久久国产欧美日韩精品| 中文字幕一区二区三区色视频| 色偷偷一区二区三区| 亚洲精品videosex极品| 日韩欧美二区三区| 欧美亚洲动漫制服丝袜| 国产美女娇喘av呻吟久久| 夜夜嗨av一区二区三区中文字幕| 精品国产123| 波多野结衣视频一区| 激情久久五月天| 国产麻豆精品视频| 国产精品自在欧美一区| 激情综合色综合久久| 欧美96一区二区免费视频| 国产精品88av| 欧美亚洲禁片免费| 欧美色网一区二区| 精品久久久久久久久久久久久久久 | 亚洲精品成人精品456| 久久青草欧美一区二区三区| 久久久99精品免费观看| 欧美高清在线视频| 欧美成人精品二区三区99精品| 岛国av在线一区| 国产成人在线观看免费网站| 欧美日韩国产bt| 亚洲欧美日韩久久| 91免费观看视频| 日韩伦理免费电影| 成人综合婷婷国产精品久久| 日韩视频一区在线观看| 日韩精品欧美精品| 欧美一区二区三区视频在线| 久久电影网站中文字幕| 88在线观看91蜜桃国自产| 无码av免费一区二区三区试看| 色偷偷88欧美精品久久久| 亚洲人妖av一区二区| 国产一区二区三区蝌蚪| 日韩欧美国产1| 亚洲电影视频在线| 99久久777色| 国产女人aaa级久久久级| 一区二区三区不卡在线观看| 国产盗摄精品一区二区三区在线| 成人激情黄色小说| 国产偷国产偷亚洲高清人白洁| 日韩精品久久久久久| 欧美日精品一区视频| 国产视频一区在线观看| 国产成人av电影免费在线观看| 91麻豆精品国产91久久久使用方法| 国产欧美精品在线观看| 美腿丝袜在线亚洲一区| 国产在线精品一区二区三区不卡| av动漫一区二区| 欧美日韩中文字幕一区二区| 精品成人一区二区| 99久久久国产精品免费蜜臀| 伊人色综合久久天天人手人婷| 韩国精品久久久| 3atv一区二区三区| 日本aⅴ免费视频一区二区三区| 99久久国产综合精品麻豆| 国产视频一区在线播放| 蜜桃久久久久久久| 91精品国产综合久久精品性色 | 欧美一级xxx| 国产一区二区女| 国产午夜亚洲精品不卡| 国产a级毛片一区| 亚洲尤物视频在线| 国产精品456露脸| 欧美xxxxxxxxx| 国产乱码精品一区二区三区av | 激情亚洲综合在线| 欧美精彩视频一区二区三区| 欧美日韩视频不卡| 青青草原综合久久大伊人精品| 久久国产人妖系列| 国产在线精品一区二区不卡了|