void CCompressionOptionsPage::OnGetTime() { if (!Enc_Info.b_selectrange) { UpdateData(TRUE); Enc_Info.b_gettimefromvob = m_bGetTime; if (m_bGetTime) { m_lFrames = Enc_Info.l_frames; m_lSeconds = (long) (m_lFrames / Enc_Info.f_framerate); } m_hour = m_lSeconds / 3600; m_min = (-m_hour * 3600 + m_lSeconds) / 60; m_sec = (-m_hour * 3600 - m_min * 60 + m_lSeconds); RefreshWindow(); if (Enc_Info.b_enter_filesize == 1) { Calc(); } else { CalcFileSize(); } } }
void CCompressionOptionsPage::OnChangeEditSec() { Seconds2Frames(); if (m_intEnterFileSize == 0) { CalcFileSize(); } else { Calc(); } }
void CCompressionOptionsPage::OnRadio2() { UpdateData(TRUE); if (m_intEnterFileSize == 0) { CalcFileSize(); } else { Calc(); } }
void CCompressionOptionsPage::My_Init() { m_intEnterFileSize = Enc_Info.b_enter_filesize; m_intMinBitrate = Enc_Info.i_video_bitrate; m_bGetTime = Enc_Info.b_gettimefromvob; m_lSeconds = 0; m_intFileSize = Enc_Info.i_filesize; m_intManualEnd = Enc_Info.l_manual_end; m_intEndCreditsPct = Enc_Info.i_end_credits_pct; Enc_Info.i_endcredits_option = NORMAL_END; m_intEndCreditsOption = Enc_Info.i_endcredits_option; m_intAutoOrManual = Enc_Info.i_endcredits_auto_manual; CheckDlgButton(IDC_GET_TIME, Enc_Info.b_gettimefromvob); GetDlgItem(IDC_RADIO_END2)->EnableWindow(FALSE); GetDlgItem(IDC_RADIO_END3)->EnableWindow(FALSE); GetDlgItem(IDC_EDIT_ENDCREDITS_FRAMES)->EnableWindow(FALSE); UpDateAuto_Manual(); RefreshWindow(); UpdateData(FALSE); Frames2Seconds(); if (Enc_Info.b_enter_filesize == 0) { CalcFileSize(); } else { Calc(); } LanguageModule.InitAttribs(this,my_page); }
void CCompressionOptionsPage::OnChangeMinbitrate() { UpdateData(TRUE); CalcFileSize(); }
void SearchFolder(IShellFolder* pSearchFolder, CDoubleList<FILE_ITEM> &Items, LARGE_INTEGER& liSize) { //getting the enumerator object to enumerate the items of the search folder IEnumIDList* pEnumIDList = NULL; HRESULT hr = pSearchFolder->EnumObjects(NULL, SHCONTF_FOLDERS | SHCONTF_NONFOLDERS | SHCONTF_INCLUDEHIDDEN, &pEnumIDList); if (FAILED(hr)) { if (hr != E_ACCESSDENIED) DisplayError(hr); return; } if (hr == S_FALSE) return; //getting pidl to each child item ITEMIDLIST* pidlChild = NULL; HRESULT hrEnum; do { hrEnum = pEnumIDList->Next(1, &pidlChild, NULL); if (FAILED(hrEnum)) { pEnumIDList->Release(); _ASSERT(0); DisplayError(hrEnum); return; } if (S_FALSE == hrEnum) break; //we need to know whether this is a folder or a file, and if it is a system item ULONG ulFlags = 0xFFFFFFFF; hr = pSearchFolder->GetAttributesOf(1, (LPCITEMIDLIST*)&pidlChild, &ulFlags); if (FAILED(hr)) { CoTaskMemFree(pidlChild); pidlChild = NULL; pEnumIDList->Release(); _ASSERT(0); MessageBox(0, L"Could not get the attributes of the item: pSearchFolder->GetAttributesOf", 0, 0); return; } if (ulFlags & SFGAO_FILESYSTEM) { if (ulFlags & SFGAO_FOLDER && ulFlags & SFGAO_FILESYSANCESTOR && ulFlags & SFGAO_STORAGE) { //we need to search it IShellFolder* pNewSearchFolder = NULL; hr = pSearchFolder->BindToObject(pidlChild, NULL, IID_IShellFolder, (void**)&pNewSearchFolder); if (FAILED(hr)) { CoTaskMemFree(pidlChild); pidlChild = NULL; pEnumIDList->Release(); _ASSERT(0); MessageBox(0, L"Could not bind to new folder: pSearchFolder->BindToObject", 0, 0); return; } //it is a folder!! //get its full name STRRET strret; pSearchFolder->GetDisplayNameOf(pidlChild, SHGDN_FORPARSING, &strret); WCHAR* wsFullName; StrRetToStrW(&strret, NULL, &wsFullName); FILE_ITEM item; item.size = 0; item.wsFullName = wsFullName; item.type = ItemType::Folder; Items.push_back(item); SearchFolder(pNewSearchFolder, Items, liSize); pNewSearchFolder->Release(); } else if (ulFlags & SFGAO_STREAM) { //it is a file!! //get its full name STRRET strret; pSearchFolder->GetDisplayNameOf(pidlChild, SHGDN_FORPARSING, &strret); WCHAR* wsFullName; StrRetToStrW(&strret, NULL, &wsFullName); FILE_ITEM item; LARGE_INTEGER li; CalcFileSize(wsFullName, li); item.size = li.QuadPart; liSize.QuadPart += item.size; item.wsFullName = wsFullName; item.type = ItemType::File; Items.push_back(item); } } CoTaskMemFree(pidlChild); pidlChild = NULL; #pragma warning(suppress: 4127) }while (1); if (pidlChild) CoTaskMemFree(pidlChild); pEnumIDList->Release(); }