Files
2016-03-25 09:14:13 +08:00

214 lines
3.9 KiB
C++

#include "StdAfx.h"
#include "SkinSetting.h"
#include "About.h"
const TCHAR* const kSysBtnControlName = _T("SysButton");
const TCHAR* const kCloseButtonControlName = _T("closebtn");
const TCHAR* const kLogoControlName = _T("logo_btn");
const TCHAR* const kTitleControlName = _T("title");
const TCHAR* const kBackgroundControlName = _T("Background");
const TCHAR* const kClientRectControlName = _T("ClientRect");
CAbout::CAbout(HWND hWndParent,const RECT rc)
{
m_bModal = false;
Create(hWndParent, _T("About"), WS_POPUPWINDOW | WS_CAPTION | WS_DLGFRAME | WS_CLIPSIBLINGS | WS_CLIPCHILDREN, WS_EX_TOOLWINDOW,rc, 0);
MoveWindow(m_hWnd,rc.left, rc.top, rc.right, rc.bottom, FALSE);
ShowWindow(true);
//ShowModal();
}
CAbout::~CAbout(void)
{
}
LPCTSTR CAbout::GetWindowClassName() const
{
return _T("AboutWindow");
}
void CAbout::OnFinalMessage(HWND hWnd)
{
WindowImplBase::OnFinalMessage(hWnd);
delete this;
}
void CAbout::OnPrepare(TNotifyUI& msg)
{
}
void CAbout::Notify(TNotifyUI& msg)
{
if (_tcsicmp(msg.sType, _T("windowinit")) == 0)
{
OnPrepare(msg);
}
else if (_tcsicmp(msg.sType, _T("killfocus")) == 0)
{
}
else if( msg.sType == _T("click") )
{
if (_tcsicmp(msg.pSender->GetName(), kCloseButtonControlName) == 0)
{
Close();
return;
}
}
}
void CAbout::InitWindow()
{
}
CDuiString CAbout::GetSkinFile()
{
return CSkinSetting::GetSkinFile();
}
CDuiString CAbout::GetSkinFolder()
{
return CSkinSetting::GetSkinFolder();
}
UILIB_RESOURCETYPE CAbout::GetResourceType() const
{
return CSkinSetting::GetResourceType();
}
LPCTSTR CAbout::GetResourceID() const
{
return CSkinSetting::GetResourceID();
}
CDuiString CAbout::GetZIPFileName() const
{
return CSkinSetting::GetZIPFileName();
}
DWORD CAbout::GetBkColor()
{
CControlUI* background = m_PaintManager.FindControl(kBackgroundControlName);
if (background != NULL)
return background->GetBkColor();
return 0;
}
void CAbout::SetBkColor(DWORD dwBackColor)
{
CControlUI* background = m_PaintManager.FindControl(kBackgroundControlName);
if (background != NULL)
{
background->SetBkImage(_T(""));
background->SetBkColor(dwBackColor);
background->NeedUpdate();
}
}
void CAbout::SetBkImage(LPCTSTR szImageName)
{
CControlUI* background = m_PaintManager.FindControl(kBackgroundControlName);
if (background != NULL)
{
background->SetBkImage(szImageName);
}
}
LRESULT CAbout::OnMouseMove(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
POINT pt;
pt.x = GET_X_LPARAM(lParam); pt.y = GET_Y_LPARAM(lParam);
RECT btnRect;
CButtonUI* linkbtn;
linkbtn = (CButtonUI*)m_PaintManager.FindControl(_T("www.131qz.com"));
if (linkbtn != NULL)
{
btnRect = linkbtn->GetPos();
if(pt.x > btnRect.left && pt.x < btnRect.right && pt.y > btnRect.top && pt.y < btnRect.bottom)
{
linkbtn->SetTextColor(0xffff0000);
linkbtn->NeedUpdate();
}else{
linkbtn->SetTextColor(0xff0000ff);
linkbtn->NeedUpdate();
}
}
bHandled = FALSE;
return 0;
}
LRESULT CAbout::OnMouseHover(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
bHandled = FALSE;
return 0;
}
LRESULT CAbout::OnMouseLeave(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
bHandled = FALSE;
return 0;
}
LRESULT CAbout::OnKillFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
//Close();
return 0;
}
LRESULT CAbout::OnNcActivate(UINT /*uMsg*/, WPARAM wParam, LPARAM /*lParam*/, BOOL& bHandled)
{
//wParam为0时表示是失去焦点,为非0时表示得到焦点
if (m_bModal)
{
if (! wParam)
{
}else{
}
}
if( ::IsIconic(*this) ) bHandled = FALSE;
return (wParam == 0) ? TRUE : FALSE;
}
DWORD CAbout::DoModal()
{
if(! this->m_hWnd)
return -1;
m_bModal = true;
return ShowModal();
}