Пример #1
0
HRESULT WINAPI GetCurrentScheme(ISkinScheme** ppScheme)
{
    CComPtr<ISkinMgr> p;
    GetSkinMgr(&p);

    if (p)
        return p->GetCurentScheme(ppScheme);

    return E_FAIL;
}
Пример #2
0
HRESULT WINAPI LoadSkinFile( LPCTSTR pszFileName )
{
	CComPtr<ISkinMgr> p;
	GetSkinMgr(&p);

	if (p && S_OK == p->LoadTheme( pszFileName ))
	{
		//CSkinMenuMgr::RefreshSkin();
		CSkinHook::RefreshUI();
		p->InitMenuColor( RGB(0, 0, 0), FALSE );
		return S_OK;
	}

	return S_FALSE;
}
Пример #3
0
HRESULT WINAPI ClearCurrentSchemeColor( )
{
	CComPtr<ISkinMgr> p;
	GetSkinMgr(&p);

	CComPtr<ISkinScheme> pss;

	if (p)
	{
		p->GetCurentScheme(&pss);
		p->InitMenuColor( RGB(0, 0, 0), FALSE );
	}
	if ( pss )
		pss->ClearSchemeColor(  );

	//CSkinMenuMgr::RefreshSkin();
	CSkinHook::RefreshUI();
	

	return E_FAIL;
}
Пример #4
0
HRESULT WINAPI ChangeCurrentSchemeColor( COLORREF clr )
{
	CComPtr<ISkinMgr> p;
	GetSkinMgr(&p);

	CComPtr<ISkinScheme> pss;

	if (p)
	{
		p->GetCurentScheme(&pss);
		p->InitMenuColor( clr, TRUE );
	}
	if ( pss )
		pss->ChangeSchemeColor( clr );

	//CSkinMenuMgr::RefreshSkin();
	CSkinHook::RefreshUI();
	

	return E_FAIL;
}
Пример #5
0
VOID CDUIProgressBarBase::SetAttribute(const CDUIString& strName, const CDUIString& strValue)
{
	BOOL bHandled(FALSE);
	if(strName.compare(_T("back_image")) == 0)
	{
		CRefPtr<CImageList> pImage = GetSkinMgr()->GetImage(strValue);
		DUI_ASSERT(!pImage.IsNull() && (pImage->GetItemCount() >= PROCRSS_BAR_IMAGE_COUNT));
		
		CProgressBarUIData data;
		data.m_imageBK = pImage;
		SetUIData(data);

		bHandled = TRUE;
	}
	else if(strName.compare(_T("range")) == 0)
	{
		TCHAR szValue[128] = {0};
		lstrcpyn(szValue, strValue.c_str(), sizeof(szValue) / sizeof(TCHAR) - 1);
		LPTSTR pstr = szValue;
		INT nItem1 = _tcstol(pstr, &pstr, 10);    
		INT nItem2 = _tcstol(pstr + 1, &pstr, 10); 	

		SetRange(nItem1, nItem2);
		bHandled = TRUE;
	}
	else if(strName.compare(_T("pos")) == 0)
	{
		INT nPos = _ttol(strValue.c_str());
		SetPos(nPos);
		bHandled = TRUE;
	}
	

	if(!bHandled)
	{
		theBase::SetAttribute(strName, strValue);
	}
}
Пример #6
0
BOOL CDUIControlFactory::GetPlugin(const CDUIString& strName, CDUIString& strDllName, CDUIString& strEntryFunction)
{
	IDUISkinMgr* pSkinMgr = GetSkinMgr();
	if(pSkinMgr == NULL) return FALSE;

	CDUIString strPluginXML;
	if(!pSkinMgr->GetPlugin(strName, strPluginXML))
	{
		DUI_ASSERT(FALSE);
		return FALSE;
	}

	CDUIXml xml;
	if(!xml.SetDoc(strPluginXML))
	{
		DUI_ASSERT(FALSE);
		return FALSE;
	}

	if(!xml.FindElem(_T("plugin")))
	{
		DUI_ASSERT(FALSE);
		return FALSE;
	}

	strDllName = xml.GetAttrib(_T("file_name"));
	strEntryFunction = xml.GetAttrib(_T("entry_function"));
	if(strDllName.size() == 0
		|| strEntryFunction.size() == 0)
	{
		DUI_ASSERT(FALSE);
		return FALSE;
	}

	return TRUE;
}
Пример #7
0
VOID CDUIIconTextItem::SetAttribute(const CDUIString& strName, const CDUIString& strValue)
{
	BOOL bHandled(FALSE);
	if(strName.compare(_T("normal_icon")) == 0)
	{
		m_uiData.m_pNormalIcon = GetSkinMgr()->GetImage(strValue);
		bHandled = TRUE;
	}
	else if(strName.compare(_T("expand_icon")) == 0)
	{
		m_uiData.m_pExpandIcon = GetSkinMgr()->GetImage(strValue);
		bHandled = TRUE;
	}
	else if(strName.compare(_T("hover_frame")) == 0)
	{
		SetHoverFrameBK(GetSkinMgr()->GetFrameBK(strValue));
		bHandled = TRUE;
	}
	else if(strName.compare(_T("select_frame")) == 0)
	{
		SetSelectFrameBK(GetSkinMgr()->GetFrameBK(strValue));
		bHandled = TRUE;
	}
	else if(strName.compare(_T("normal_height")) == 0)
	{
		SetHeight(FALSE, _ttol(strValue.c_str()));
		bHandled = TRUE;
	}
	else if(strName.compare(_T("expand_height")) == 0)
	{
		SetHeight(TRUE, _ttol(strValue.c_str()));
		bHandled = TRUE;
	}
	else if(strName.compare(_T("group")) == 0)
	{
		if(strValue.compare(DUI_STR_TRUE) == 0)
		{
			SetGroup(TRUE);
		}
		else
		{
			SetGroup(FALSE);
		}
		bHandled = TRUE;
	}
	else if(strName.compare(_T("expand")) == 0)
	{
		if(strValue.compare(DUI_STR_TRUE) == 0)
		{
			SetExpand(TRUE);
		}
		else
		{
			SetExpand(FALSE);
		}
		bHandled = TRUE;
	}

	if(!bHandled)
	{
		theBase::SetAttribute(strName, strValue);
	}
}
Пример #8
0
VOID CDUIFramePanel::SetAttribute(const CDUIString& strName, const CDUIString& strValue)
{
	BOOL bHandled(FALSE);
	if(strName.compare(_T("frame_type")) == 0)
	{
		DWORD dwMode(0);
		if(strValue.find(_T("use_color")) != -1)
		{
			dwMode = FRAME_PANEL_SINGLE_COLOR;
		}
		else if(strValue.find(_T("use_image")) != -1)
		{
			dwMode = FRAME_PANEL_USE_IMAGE;
		}

		DUI_ASSERT(dwMode != 0);
		SetDrawMode(dwMode);
		bHandled = TRUE;
	}
	else if(strName.compare(_T("border_color")) == 0)
	{
		m_uiData.m_clrFrame = GetSkinMgr()->GetColor(strValue);
		bHandled = TRUE;
	}
	if(strName.compare(_T("left_border_image")) == 0)
	{
		m_uiData.m_pImageLeft = GetSkinMgr()->GetImage(strValue);	
		bHandled = TRUE;
	}
	else if(strName.compare(_T("right_border_image")) == 0)
	{
		m_uiData.m_pImageRight = GetSkinMgr()->GetImage(strValue);	
		bHandled = TRUE;
	}
	else if(strName.compare(_T("top_border_image")) == 0)
	{
		m_uiData.m_pImageTop = GetSkinMgr()->GetImage(strValue);
		bHandled = TRUE;
	}
	else if(strName.compare(_T("bottom_border_image")) == 0)
	{
		m_uiData.m_pImageBottom = GetSkinMgr()->GetImage(strValue);	
		bHandled = TRUE;
	}	
	else if(strName.compare(_T("border_rect")) == 0)
	{
		TCHAR szTextBuffer[128] = {0};
		lstrcpyn(szTextBuffer, strValue.c_str(), sizeof(szTextBuffer) / sizeof(TCHAR) - 1);
		
		RECT rtTemp = {0};
		LPTSTR pstr = NULL;
		rtTemp.left = _tcstol(szTextBuffer, &pstr, 10);
		rtTemp.top = _tcstol(pstr + 1, &pstr, 10);
		rtTemp.right = _tcstol(pstr + 1, &pstr, 10);
		rtTemp.bottom = _tcstol(pstr + 1, &pstr, 10);

		SetFrameRect(rtTemp);

		bHandled = TRUE;
	}


	if(!bHandled)
	{
		theBase::SetAttribute(strName, strValue);
	}
}