STDMETHODIMP CBasePropertyPage::GetPageInfo(__out LPPROPPAGEINFO pPageInfo) { CheckPointer(pPageInfo,E_POINTER); WCHAR wszTitle[STR_MAX_LENGTH]; WideStringFromResource(wszTitle,m_TitleId); // Allocate dynamic memory for the property page title LPOLESTR pszTitle; HRESULT hr = AMGetWideString(wszTitle, &pszTitle); if (FAILED(hr)) { NOTE("No caption memory"); return hr; } pPageInfo->cb = sizeof(PROPPAGEINFO); pPageInfo->pszTitle = pszTitle; pPageInfo->pszDocString = NULL; pPageInfo->pszHelpFile = NULL; pPageInfo->dwHelpContext = 0; // Set defaults in case GetDialogSize fails pPageInfo->size.cx = 340; pPageInfo->size.cy = 150; GetDialogSize(m_DialogId, DialogProc,0L,&pPageInfo->size); return NOERROR; }
STDMETHODIMP CDVSBasePPage::GetPageInfo(LPPROPPAGEINFO pPageInfo) { AFX_MANAGE_STATE(AfxGetStaticModuleState()); CString str; if(!str.LoadString(m_TitleId)) return E_FAIL; WCHAR wszTitle[STR_MAX_LENGTH]; #ifdef UNICODE wcscpy(wszTitle, str); #else mbstowcs(wszTitle, str, str.GetLength()+1); #endif CheckPointer(pPageInfo, E_POINTER); // Allocate dynamic memory for the property page title LPOLESTR pszTitle; HRESULT hr = AMGetWideString(wszTitle, &pszTitle); if(FAILED(hr)) {NOTE("No caption memory"); return hr;} pPageInfo->cb = sizeof(PROPPAGEINFO); pPageInfo->pszTitle = pszTitle; pPageInfo->pszDocString = NULL; pPageInfo->pszHelpFile = NULL; pPageInfo->dwHelpContext = 0; // Set defaults in case GetDialogSize fails pPageInfo->size.cx = 340; pPageInfo->size.cy = 150; MyGetDialogSize(m_DialogId, DialogProc, 0L, &pPageInfo->size); return NOERROR; }
STDMETHODIMP TffdshowPageBase::GetPageInfo(LPPROPPAGEINFO pPageInfo) { CheckPointer(pPageInfo, E_POINTER); pPageInfo->cb = sizeof(PROPPAGEINFO); pPageInfo->pszDocString = NULL; pPageInfo->pszHelpFile = NULL; pPageInfo->dwHelpContext = 0; LPOLESTR pszTitle; AMGetWideString(titleW, &pszTitle); pPageInfo->pszTitle = pszTitle; if (HWND hwnd = createDialog(dialogId, GetDesktopWindow(), 0)) { RECT rc; GetWindowRect(hwnd, &rc); pPageInfo->size.cx = rc.right - rc.left; pPageInfo->size.cy = rc.bottom - rc.top; DestroyWindow(hwnd); } else { pPageInfo->size.cx = 340; pPageInfo->size.cy = 150; } return S_OK; }
// Default QueryId to return the pin's name STDMETHODIMP CBasePin::QueryId( LPWSTR * Id ) { // We're not going away because someone's got a pointer to us // so there's no need to lock return AMGetWideString(Name(), Id); }
STDMETHODIMP CInternalPropertyPage::GetPageInfo(PROPPAGEINFO* pPageInfo) { CAutoLock cAutoLock(this); CheckPointer(pPageInfo, E_POINTER); LPOLESTR pszTitle; HRESULT hr = AMGetWideString(CStringW(GetWindowTitle()), &pszTitle); if (FAILED(hr)) { return hr; } pPageInfo->cb = sizeof(PROPPAGEINFO); pPageInfo->pszTitle = pszTitle; pPageInfo->pszDocString = nullptr; pPageInfo->pszHelpFile = nullptr; pPageInfo->dwHelpContext = 0; pPageInfo->size = GetWindowSize(); return S_OK; }