예제 #1
0
KAppRes::KAppRes() : m_hTempRes(INVALID_HANDLE_VALUE)
{
	PrepareRes();
	OpenResPack();
	LoadStringRes();
	LoadImageRes();
	LoadXmlRes();
	LoadFontRes();
}
예제 #2
0
bool Console::cmd_string(int argc, const char **argv) {
	if (argc < 2) {
		DebugPrintf("%s id\n", argv[0]);
		DebugPrintf("Prints the string with the given ID\n");
		return true;
	}

	char tmp[TBUFSZ];
	int id = strToInt(argv[1]);
	LoadStringRes(id, tmp, TBUFSZ);
	DebugPrintf("%s\n", tmp);

	return true;
}
예제 #3
0
Globals::Globals()
	: m_ilSizer(NULL),
	  m_ilSlidingScrollImages(NULL),
	  m_hBitmapExpandVert(NULL),
	  m_hBitmapExpandHorz(NULL),
	  m_hBitmapSubMenu(NULL),
	  m_hBitmapSMCombo(NULL),
	  m_hBitmapMenuScroll(NULL),
	  m_hBitmapEndMarker(NULL),
	  m_hBitmapMenuCheck(NULL),
	  m_hBitmapMenuExpand(NULL),
	  m_hBitmapMDIButtons(NULL),
	  m_hBrushDither(NULL),
	  m_hBrushPattern(NULL),
	  m_hSplitVCursor(NULL),
	  m_hSplitHCursor(NULL),
	  m_pWhatsThisHelpActiveBar(NULL),
	  m_pCustomizeActiveBar(NULL),
	  m_hSmallCaption(NULL),
	  m_pEventLog(NULL),
	  m_hMMLibrary(NULL),
	  m_hHookAccelator(NULL),
	  m_hHandCursor(NULL),
	  m_hUser32Library(NULL)
{
	try
	{
		m_nSmallCaptionHeight = 0;
		m_seFunction = _set_se_translator( trans_func );

		g_bDemoDlgDisplayed = FALSE;

		FWnd::Init();
		FDialog::Init();
		CDDPropertySheet::Init();
		
		for (int nIndex = 0; nIndex < GrabStyleCount; nIndex++)
			m_hBrushGrab[nIndex] = NULL;
		
		TCHAR* szTemp = LoadStringRes(IDS_ALT);
		if (szTemp)
			lstrcpy(m_szAlt, szTemp);
		
		szTemp = LoadStringRes(IDS_CONTROL);	
		if (szTemp)
			lstrcpy(m_szCtrl, szTemp);
		
		szTemp = LoadStringRes(IDS_SHIFT);
		if (szTemp)
			lstrcpy(m_szShift, szTemp);

		m_bFullDrag = FALSE;
		m_bUseDBCSUI = FALSE;
		m_hHookAccelator = SetWindowsHookEx(WH_KEYBOARD, (HOOKPROC)KeyBoardHook, NULL, GetCurrentThreadId());
		assert(m_hHookAccelator);

		m_pmapAccelator = new FMap;
		assert(m_pmapAccelator);
		
		m_pmapBar = new FMap;
		assert(m_pmapBar);
		
		m_pDragDropMgr = new CDragDropMgr;
		assert(m_pDragDropMgr);
		
		WM_SETTOOLFOCUS = RegisterWindowMessage(_T("DDSETTOOLFOCUS"));
		assert(WM_SETTOOLFOCUS);

		WM_REFRESHMENUBAND = RegisterWindowMessage(_T("DDREFRESHMENU"));
		assert(WM_REFRESHMENUBAND);
		
		WM_TOOLTIPSUPPORT  = RegisterWindowMessage(_T("DDPPTP"));
		assert(WM_TOOLTIPSUPPORT);
		
		WM_ACTIVEBARCLICK = RegisterWindowMessage(_T("DDACTIVEBARCLICK"));
		assert(WM_ACTIVEBARCLICK);
		
		WM_ACTIVEBARTEXTCHANGE = RegisterWindowMessage(_T("DDACTIVETEXTCHANGE"));
		assert(WM_ACTIVEBARTEXTCHANGE);

		WM_RECALCLAYOUT = RegisterWindowMessage(_T("DDPPRECALC"));
		assert(WM_RECALCLAYOUT);
		
		WM_POPUPKEYDOWN = RegisterWindowMessage(_T("DDPPMSGKEYDOWN"));
		assert(WM_POPUPKEYDOWN);
		
		WM_POPUPWINMSG = RegisterWindowMessage(_T("DDPPMSG"));
		assert(WM_POPUPWINMSG);
		
		WM_SIZEPARENT = RegisterWindowMessage(_T("DDWM_SIZEPARENT"));
		assert(WM_SIZEPARENT);
		
		WM_KILLWINDOW = RegisterWindowMessage(_T("DDWM_KILLPOPUP"));
		assert(WM_KILLWINDOW);

		WM_FLOATSTATUS = RegisterWindowMessage(_T("DDWM_FLOATSTATUS"));
		assert(WM_FLOATSTATUS);

		WM_POSTACTIVATE = RegisterWindowMessage(_T("DDWM_POSTACTIVATE"));
		assert(WM_POSTACTIVATE);

		WM_UPDATETABTOOL = RegisterWindowMessage(_T("DDWM_UPDATETABTOOL"));
		assert(WM_UPDATETABTOOL);

		WM_CACHEDOCKAREAS = RegisterWindowMessage(_T("DDWM_CACHEDOCKAREAS"));
		assert(WM_CACHEDOCKAREAS);

		WM_ACTIVEBARCOMBOSELCHANGE = RegisterWindowMessage(_T("DDWM_ACTIVEBARCOMBOSELCHANGE"));
		assert(WM_ACTIVEBARCOMBOSELCHANGE);

		m_nDragDelay = GetProfileInt(_T("Windows"), _T("DragDelay"), DD_DEFDRAGDELAY);
		assert(m_nDragDelay);

		m_nDragDist = GetProfileInt(_T("Windows"), _T("DragMinDist"), DD_DEFDRAGMINDIST);
		assert(m_nDragDist);

		m_nIDClipBandFormat = RegisterClipboardFormat(_T("ActiveBar Band"));
		assert(m_nIDClipBandFormat);
			
		m_nIDClipCategoryFormat = RegisterClipboardFormat(_T("ActiveBar Category"));
		assert(m_nIDClipCategoryFormat);

		m_nIDClipToolFormat = RegisterClipboardFormat(_T("ActiveBar Tool"));
		assert(m_nIDClipToolFormat);

		m_nIDClipToolIdFormat = RegisterClipboardFormat(_T("ActiveBar Tool Id"));
		assert(m_nIDClipToolIdFormat);

		m_nIDClipBandToolIdFormat = RegisterClipboardFormat(_T("ActiveBar Band Tool Id"));
		assert(m_nIDClipBandToolIdFormat);

		m_nIDClipBandChildBandToolIdFormat = RegisterClipboardFormat(_T("ActiveBar Band ChildBand Tool Id"));
		assert(m_nIDClipBandChildBandToolIdFormat);

		m_pControls = new FMap;
		assert(m_pControls);

		m_nBrushPatternWidth = m_nBrushPatternHeight = 0;

		m_bUseDBCSUI = FALSE;
		HFONT hFontSys = GetStockFont(SYSTEM_FONT);
		HDC hDCTest = GetDC(NULL);
		if (hDCTest)
		{
			m_nBitDepth = GetDeviceCaps(hDCTest, BITSPIXEL);

			HFONT hFontOld = SelectFont(hDCTest, hFontSys);
			TEXTMETRIC tm;
			GetTextMetrics(hDCTest, &tm);
			SelectFont(hDCTest, hFontOld);
			switch(tm.tmCharSet)
			{
			case SHIFTJIS_CHARSET:
			case HANGEUL_CHARSET:
			case CHINESEBIG5_CHARSET:
				m_bUseDBCSUI = TRUE;
				break;

			default:
				break;
			}
			ReleaseDC(NULL, hDCTest);
		}

#ifdef JAPBUILD
		_fdDefaultControl.cbSizeofstruct = sizeof(FONTDESC);
		_fdDefaultControl.cySize.Hi = 0;
		_fdDefaultControl.cySize.Lo = 90000;
		_fdDefaultControl.fItalic = FALSE;
		_fdDefaultControl.fStrikethrough = FALSE;
		_fdDefaultControl.fUnderline = FALSE;
		_fdDefaultControl.sCharset = DEFAULT_CHARSET;
		_fdDefaultControl.lpstrName = (LPOLESTR)"‚l‚r ‚oƒSƒVƒbƒN\0\0";
		_fdDefaultControl.sWeight = FW_NORMAL;

		_fdDefault.cbSizeofstruct = sizeof(FONTDESC);
		_fdDefault.cySize.Hi = 0;
		_fdDefault.cySize.Lo = 90000;
		_fdDefault.fItalic = FALSE;
		_fdDefault.fStrikethrough = FALSE;
		_fdDefault.fUnderline = FALSE;
		_fdDefault.sCharset = DEFAULT_CHARSET;
		_fdDefault.lpstrName = (LPOLESTR)"‚l‚r ‚oƒSƒVƒbƒN\0\0";
		_fdDefault.sWeight = FW_NORMAL;
#else
		_fdDefaultControl.cbSizeofstruct = sizeof(FONTDESC);
		_fdDefaultControl.cySize.Hi = 0;
		_fdDefaultControl.cySize.Lo = 80000;
		_fdDefaultControl.fItalic = FALSE;
		_fdDefaultControl.fStrikethrough = FALSE;
		_fdDefaultControl.fUnderline = FALSE;
		_fdDefaultControl.sCharset = DEFAULT_CHARSET;
		_fdDefaultControl.lpstrName = OLESTR("MS Sans Serif");
		_fdDefaultControl.sWeight = FW_NORMAL;

		_fdDefault.cbSizeofstruct = sizeof(FONTDESC);
		_fdDefault.cySize.Hi = 0;
		_fdDefault.cySize.Lo = 80000;
		_fdDefault.fItalic = FALSE;
		_fdDefault.fStrikethrough = FALSE;
		_fdDefault.fUnderline = FALSE;
		_fdDefault.sCharset = DEFAULT_CHARSET;
		_fdDefault.lpstrName = OLESTR("Arial");
		_fdDefault.sWeight = FW_NORMAL;
#endif
		InitializeCriticalSection(&m_csGlobals);
		InitializeCriticalSection(&m_csPaintIcon);
	}
	CATCH
	{
		assert(FALSE);
		m_pEventLog = NULL;
		REPORTEXCEPTION(__FILE__, __LINE__)
	}
}