CDVSZoomPPage::CDVSZoomPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Zoom Property Page"), pUnk, IDD_DVSZOOMPAGE, IDD_DVSZOOMPAGE) { BindControl(IDC_SPIN1, m_posx); BindControl(IDC_SPIN2, m_posy); BindControl(IDC_SPIN7, m_scalex); BindControl(IDC_SPIN8, m_scaley); }
CDVSTimingPPage::CDVSTimingPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Timing Property Page"), pUnk, IDD_DVSTIMINGPAGE, IDD_DVSTIMINGPAGE) { BindControl(IDC_MODFPS, m_modfps); BindControl(IDC_FPS, m_fps); BindControl(IDC_SPIN5, m_subdelay); BindControl(IDC_SPIN6, m_subspeedmul); BindControl(IDC_SPIN9, m_subspeeddiv); }
CDVSColorPPage::CDVSColorPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Color Property Page"), pUnk, IDD_DVSCOLORPAGE, IDD_DVSCOLORPAGE) { BindControl(IDC_PREFLIST, m_preflist); BindControl(IDC_DYNCHGLIST, m_dynchglist); BindControl(IDC_FORCERGBCHK, m_forcergb); m_fDisableInstantUpdate = true; }
CDVSZoomPPage::CDVSZoomPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("VSFilter Zoom Property Page"), pUnk, IDD_DVSZOOMPAGE, IDD_DVSZOOMPAGE) { ZeroMemory(&m_rect, sizeof(m_rect)); BindControl(IDC_SPIN1, m_posx); BindControl(IDC_SPIN2, m_posy); BindControl(IDC_SPIN7, m_scalex); BindControl(IDC_SPIN8, m_scaley); }
CDVSPathsPPage::CDVSPathsPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Paths Property Page"), pUnk, IDD_DVSPATHSPAGE, IDD_DVSPATHSPAGE) { BindControl(IDC_PATHLIST, m_pathlist); BindControl(IDC_PATHEDIT, m_path); BindControl(IDC_BROWSE, m_browse); BindControl(IDC_REMOVE, m_remove); BindControl(IDC_ADD, m_add); m_fDisableInstantUpdate = true; }
CDVSTimingPPage::CDVSTimingPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("VSFilter Timing Property Page"), pUnk, IDD_DVSTIMINGPAGE, IDD_DVSTIMINGPAGE) , m_SubtitleSpeedMul(1000) , m_SubtitleSpeedDiv(1000) , m_SubtitleDelay(0) , m_fMediaFPSEnabled(false) , m_MediaFPS(25.0) { BindControl(IDC_MODFPS, m_modfps); BindControl(IDC_FPS, m_fps); BindControl(IDC_SPIN5, m_subdelay); BindControl(IDC_SPIN6, m_subspeedmul); BindControl(IDC_SPIN9, m_subspeeddiv); }
CDVSGeneralPPage::CDVSGeneralPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Property Page (global settings)"), pUnk, IDD_DVSGENERALPAGE, IDD_DVSGENERALPAGE) { BindControl(IDC_VEREXTCOMBO, m_verext); BindControl(IDC_MOD32FIX, m_mod32fix); BindControl(IDC_RESX2COMBO, m_resx2); BindControl(IDC_SPIN3, m_resx2w); BindControl(IDC_SPIN4, m_resx2h); BindControl(IDC_LOADCOMBO, m_load); BindControl(IDC_EXTLOAD, m_extload); BindControl(IDC_WEBLOAD, m_webload); BindControl(IDC_EMBLOAD, m_embload); }
CDVSMiscPPage::CDVSMiscPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Property Page (misc settings)"), pUnk, IDD_DVSMISCPAGE, IDD_DVSMISCPAGE) { BindControl(IDC_FLIP, m_flippic); BindControl(IDC_FLIPSUB, m_flipsub); BindControl(IDC_HIDE, m_hidesub); BindControl(IDC_SHOWOSDSTATS, m_showosd); BindControl(IDC_PREBUFFERING, m_subpicttobuff); BindControl(IDC_ANIMWHENBUFFERING, m_animwhenbuff); BindControl(IDC_AUTORELOAD, m_autoreload); BindControl(IDC_SAVEFULLPATH, m_savefullpath); BindControl(IDC_INSTANTUPDATE, m_instupd); }
CDVSColorPPage::CDVSColorPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Color Property Page"), pUnk, IDD_DVSCOLORPAGE, IDD_DVSCOLORPAGE) , m_outputColorSpace(NULL) , m_inputColorSpace(NULL) { BindControl(IDC_OUTPUT_FORMAT_LIST, m_outputFmtList); BindControl(IDC_INPUT_FORMAT_LIST, m_inputFmtList); BindControl(IDC_CHECK_FOLLOW_UPSTREAM, m_followUpstreamPreferredOrder); BindControl(IDC_COLORUP, m_btnColorUp); BindControl(IDC_COLORDOWN, m_btnColorDown); m_fDisableInstantUpdate = true; //donot know how to detect check event of CListCtrl's checkboxes //use this to false a update m_bDirty = true; }
CDVSMiscPPage::CDVSMiscPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Property Page (misc settings)"), pUnk, IDD_DVSMISCPAGE, IDD_DVSMISCPAGE) { BindControl(IDC_FLIP, m_flippic); BindControl(IDC_FLIPSUB, m_flipsub); BindControl(IDC_HIDE, m_hidesub); BindControl(IDC_SHOWOSDSTATS, m_showosd); //BindControl(IDC_PREBUFFERING, m_prebuff); BindControl(IDC_COMBO_COLOR_SPACE, m_colorSpaceDropList); BindControl(IDC_COMBO_YUV_RANGE, m_yuvRangeDropList); BindControl(IDC_AUTORELOAD, m_autoreload); BindControl(IDC_SAVEFULLPATH, m_savefullpath); BindControl(IDC_INSTANTUPDATE, m_instupd); }
CDVSMainPPage::CDVSMainPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub Property Page (main)"), pUnk, IDD_DVSMAINPAGE, IDD_DVSMAINPAGE), m_nLangs(0), m_ppLangs(NULL) { BindControl(IDC_FILENAME, m_fnedit); BindControl(IDC_LANGCOMBO, m_langs); BindControl(IDC_OVERRIDEPLACEMENT, m_oplacement); BindControl(IDC_SPIN1, m_subposx); BindControl(IDC_SPIN2, m_subposy); BindControl(IDC_FONT, m_font); BindControl(IDC_ONLYSHOWFORCEDSUBS, m_forcedsubs); BindControl(IDC_PARCOMBO, m_PARCombo); BindControl(IDC_CHECKBOX_HideTrayIcon, m_hide_tray_icon); }
/* CDVSMorePPage */ CDVSMorePPage::CDVSMorePPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("DirectVobSub More Property Page"), pUnk, IDD_DVSMOREPAGE, IDD_DVSMOREPAGE) { BindControl(IDC_SPINPathCache, m_path_cache); BindControl(IDC_SPINScanlineCache, m_scanline_cache); BindControl(IDC_SPINOverlayNoBlurCache, m_overlay_no_blur_cache); BindControl(IDC_SPINOverlayCache, m_overlay_cache); BindControl(IDC_COMBO_SUBPIXEL_POS, m_combo_subpixel_pos); BindControl(IDC_COMBO_LAYOUT_SIZE_OPT, m_combo_layout_size_opt); BindControl(IDC_SPIN_LAYOUT_SIZE_X, m_layout_size_x); BindControl(IDC_SPIN_LAYOUT_SIZE_Y, m_layout_size_y); }
CDVSMiscPPage::CDVSMiscPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("VSFilter Property Page (misc settings)"), pUnk, IDD_DVSMISCPAGE, IDD_DVSMISCPAGE) , m_fFlipPicture(false) , m_fFlipSubtitles(false) , m_fHideSubtitles(false) , m_fOSD(false) , m_fAnimWhenBuffering(true) , m_fReloaderDisabled(false) , m_fSaveFullPath(false) , m_uSubPictToBuffer(10) { BindControl(IDC_FLIP, m_flippic); BindControl(IDC_FLIPSUB, m_flipsub); BindControl(IDC_HIDE, m_hidesub); BindControl(IDC_SHOWOSDSTATS, m_showosd); BindControl(IDC_PREBUFFERING, m_subpicttobuff); BindControl(IDC_ANIMWHENBUFFERING, m_animwhenbuff); BindControl(IDC_AUTORELOAD, m_autoreload); BindControl(IDC_SAVEFULLPATH, m_savefullpath); BindControl(IDC_INSTANTUPDATE, m_instupd); }
CDVSGeneralPPage::CDVSGeneralPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("VSFilter Property Page (global settings)"), pUnk, IDD_DVSGENERALPAGE, IDD_DVSGENERALPAGE) , m_HorExt(0) , m_VerExt(0) , m_ResX2(0) , m_ResX2minw(0) , m_ResX2minh(0) , m_LoadLevel(0) , m_fExternalLoad(true) , m_fWebLoad(true) , m_fEmbeddedLoad(true) { BindControl(IDC_VEREXTCOMBO, m_verext); BindControl(IDC_MOD32FIX, m_mod32fix); BindControl(IDC_RESX2COMBO, m_resx2); BindControl(IDC_SPIN3, m_resx2w); BindControl(IDC_SPIN4, m_resx2h); BindControl(IDC_LOADCOMBO, m_load); BindControl(IDC_EXTLOAD, m_extload); BindControl(IDC_WEBLOAD, m_webload); BindControl(IDC_EMBLOAD, m_embload); }
CDVSMainPPage::CDVSMainPPage(LPUNKNOWN pUnk, HRESULT* phr) : CDVSBasePPage(NAME("VSFilter Property Page (main)"), pUnk, IDD_DVSMAINPAGE, IDD_DVSMAINPAGE) , m_fn() , m_nLangs(0) , m_ppLangs(nullptr) , m_iSelectedLanguage(0) , m_fOverridePlacement(false) , m_PlacementXperc(50) , m_PlacementYperc(90) , m_fOnlyShowForcedVobSubs(false) , m_ePARCompensationType(CSimpleTextSubtitle::EPCTDisabled) { BindControl(IDC_FILENAME, m_fnedit); BindControl(IDC_LANGCOMBO, m_langs); BindControl(IDC_OVERRIDEPLACEMENT, m_oplacement); BindControl(IDC_SPIN1, m_subposx); BindControl(IDC_SPIN2, m_subposy); BindControl(IDC_FONT, m_font); BindControl(IDC_ONLYSHOWFORCEDSUBS, m_forcedsubs); BindControl(IDC_PARCOMBO, m_PARCombo); }
LRESULT CChooseUninstallDialog::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/){ CenterWindow(); // set icons HICON hIcon = AtlLoadIconImage(IDR_MAINFRAME, LR_DEFAULTCOLOR, ::GetSystemMetrics(SM_CXICON), ::GetSystemMetrics(SM_CYICON)); SetIcon(hIcon, TRUE); HICON hIconSmall = AtlLoadIconImage(IDR_MAINFRAME, LR_DEFAULTCOLOR, ::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON)); SetIcon(hIconSmall, FALSE); SetWindowText(UNINSTALL_TITLE); int w = BACKGROUND_SIZE_W + 1; int h = BACKGROUND_SIZE_HIDE_H + 1; SetWindowPos(HWND_TOP, 0, 0, w, h, SWP_NOMOVE); background_ = new CDialogBackground(m_hWnd); background_->SetStatu(LS_ChooseUninstall); //关闭按钮 close_image_button_ = CreateImageButton( IDB_PNG_CLOSE_NORMAL , IDB_PNG_CLOSE_HOVER , IDB_PNG_CLOSE_DOWN , IDB_PNG_CLOSE_NORMAL , GetDlgItem(IDC_BUTTON_CLOSE)); int close_button_h_interval = 10; int close_button_v_interval = 4; close_image_button_->SetWindowPos(HWND_TOP, w - close_button_h_interval - UNINSTALL_CLOSE_BTN_SIZE_W, close_button_v_interval, UNINSTALL_CLOSE_BTN_SIZE_W, UNINSTALL_CLOSE_BTN_SIZE_H, SWP_SHOWWINDOW); close_image_button_->SetBkgInfo(m_hWnd, background_->GetHDC()); //建议按钮 advice_button_ = CreateImageButton( IDB_PNG_ADVICE , IDB_PNG_ADVICE_HOVER , IDB_PNG_ADVICE_PRESSED , IDB_PNG_ADVICE , GetDlgItem(IDC_BUTTON_ADVICE)); int advice_button_h_interval = 124; int advice_button_v_interval = 46; int button_y = h - advice_button_v_interval - FEEDBACK_BTN_SIZE_H; advice_button_->SetWindowPos(HWND_BOTTOM , w - advice_button_h_interval - FEEDBACK_BTN_SIZE_W , button_y , FEEDBACK_BTN_SIZE_W , FEEDBACK_BTN_SIZE_H , NULL); advice_button_->SetBkgInfo(m_hWnd, background_->GetHDC()); //保留按钮 hold_yyexplore_button_ = CreateImageButton( IDB_PNG_HOLD_YYEXPLORE , IDB_PNG_HOLD_YYEXPLORE_HOVER , IDB_PNG_HOLD_YYEXPLORE_PRESSED , IDB_PNG_HOLD_YYEXPLORE , GetDlgItem(IDC_BUTTON_HOLD_EXPLORE)); hold_yyexplore_button_->SetWindowPos(HWND_TOP , advice_button_h_interval , button_y , FEEDBACK_BTN_SIZE_W , FEEDBACK_BTN_SIZE_H , SWP_SHOWWINDOW); hold_yyexplore_button_->SetBkgInfo(m_hWnd, background_->GetHDC()); int uninstall_button_interval = 10; uninstall_button_ = new CImageHandCursor(IDB_PNG_LINK_BG, IDB_PNG_LINK_BG, IDB_PNG_LINK_BG, IDB_PNG_LINK_BG); uninstall_button_->SubclassWindow(GetDlgItem(IDC_CHOOSE_BUTTON_UNINSTALL)); uninstall_button_->SetBkgInfo(m_hWnd, background_->GetHDC()); uninstall_button_->SetBtnTextColor(RGB(0x33, 0x99, 0xff)); HFONT m_hfont = ::CreateFont(14, 0, 0, 0, FW_NORMAL, 0, true, 0, DEFAULT_CHARSET, 0, 0, 0, 0, L""); uninstall_button_->SetFont(m_hfont); int uninstall_button_width = 80; int uninstall_button_height = 15; uninstall_button_->SetWindowPos(HWND_TOP , w - advice_button_h_interval - uninstall_button_width , button_y + FEEDBACK_BTN_SIZE_H + uninstall_button_interval , uninstall_button_width , uninstall_button_height , SWP_SHOWWINDOW); BindControl(); return true; }