mirror of https://github.com/odrling/Aegisub
208 lines
5.6 KiB
C
208 lines
5.6 KiB
C
|
/*
|
||
|
* Copyright (C) 2003-2006 Gabest
|
||
|
* http://www.gabest.org
|
||
|
*
|
||
|
* This Program is free software; you can redistribute it and/or modify
|
||
|
* it under the terms of the GNU General Public License as published by
|
||
|
* the Free Software Foundation; either version 2, or (at your option)
|
||
|
* any later version.
|
||
|
*
|
||
|
* This Program is distributed in the hope that it will be useful,
|
||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
* GNU General Public License for more details.
|
||
|
*
|
||
|
* You should have received a copy of the GNU General Public License
|
||
|
* along with GNU Make; see the file COPYING. If not, write to
|
||
|
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
||
|
* http://www.gnu.org/copyleft/gpl.html
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include <afxcmn.h>
|
||
|
#include "IDirectVobSub.h"
|
||
|
|
||
|
class CDVSBasePPage : public CBasePropertyPage
|
||
|
{
|
||
|
public:
|
||
|
// we have to override these to use external, resource-only dlls
|
||
|
STDMETHODIMP GetPageInfo(LPPROPPAGEINFO pPageInfo);
|
||
|
STDMETHODIMP Activate(HWND hwndParent, LPCRECT pRect, BOOL fModal);
|
||
|
|
||
|
protected:
|
||
|
CComQIPtr<IDirectVobSub2> m_pDirectVobSub;
|
||
|
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) {return(false);}
|
||
|
virtual void UpdateObjectData(bool fSave) {}
|
||
|
virtual void UpdateControlData(bool fSave) {}
|
||
|
|
||
|
protected:
|
||
|
CDVSBasePPage(TCHAR* pName, LPUNKNOWN lpunk, int DialogId, int TitleId);
|
||
|
|
||
|
bool m_fDisableInstantUpdate;
|
||
|
|
||
|
private:
|
||
|
BOOL m_bIsInitialized;
|
||
|
|
||
|
HRESULT OnConnect(IUnknown* pUnknown), OnDisconnect(), OnActivate(), OnDeactivate(), OnApplyChanges();
|
||
|
BOOL OnReceiveMessage(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
|
||
|
private:
|
||
|
bool m_fAttached;
|
||
|
void AttachControls(), DetachControls();
|
||
|
|
||
|
CMap<UINT, UINT&, CWnd*, CWnd*> m_controls;
|
||
|
|
||
|
protected:
|
||
|
void BindControl(UINT id, CWnd& control);
|
||
|
};
|
||
|
|
||
|
[uuid("60765CF5-01C2-4ee7-A44B-C791CF25FEA0")]
|
||
|
class CDVSMainPPage : public CDVSBasePPage
|
||
|
{
|
||
|
void FreeLangs(), AllocLangs(int nLangs);
|
||
|
|
||
|
WCHAR m_fn[MAX_PATH];
|
||
|
int m_iSelectedLanguage, m_nLangs;
|
||
|
WCHAR** m_ppLangs;
|
||
|
bool m_fOverridePlacement;
|
||
|
int m_PlacementXperc, m_PlacementYperc;
|
||
|
STSStyle m_defStyle;
|
||
|
bool m_fOnlyShowForcedVobSubs;
|
||
|
|
||
|
CEdit m_fnedit;
|
||
|
CComboBox m_langs;
|
||
|
CButton m_oplacement;
|
||
|
CSpinButtonCtrl m_subposx, m_subposy;
|
||
|
CButton m_font, m_forcedsubs;
|
||
|
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
virtual void UpdateControlData(bool fSave);
|
||
|
virtual void UpdateObjectData(bool fSave);
|
||
|
|
||
|
public:
|
||
|
CDVSMainPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
virtual ~CDVSMainPPage();
|
||
|
};
|
||
|
|
||
|
[uuid("0180E49C-13BF-46db-9AFD-9F52292E1C22")]
|
||
|
class CDVSGeneralPPage : public CDVSBasePPage
|
||
|
{
|
||
|
int m_HorExt, m_VerExt, m_ResX2, m_ResX2minw, m_ResX2minh;
|
||
|
int m_LoadLevel;
|
||
|
bool m_fExternalLoad, m_fWebLoad, m_fEmbeddedLoad;
|
||
|
|
||
|
CComboBox m_verext;
|
||
|
CButton m_mod32fix;
|
||
|
CComboBox m_resx2;
|
||
|
CSpinButtonCtrl m_resx2w, m_resx2h;
|
||
|
CComboBox m_load;
|
||
|
CButton m_extload, m_webload, m_embload;
|
||
|
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
virtual void UpdateControlData(bool fSave);
|
||
|
virtual void UpdateObjectData(bool fSave);
|
||
|
|
||
|
public:
|
||
|
CDVSGeneralPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
};
|
||
|
|
||
|
[uuid("A8B25C0E-0894-4531-B668-AB1599FAF7F6")]
|
||
|
class CDVSMiscPPage : public CDVSBasePPage
|
||
|
{
|
||
|
bool m_fFlipPicture, m_fFlipSubtitles, m_fHideSubtitles, m_fOSD, m_fDoPreBuffering, m_fReloaderDisabled, m_fSaveFullPath;
|
||
|
|
||
|
CButton m_flippic, m_flipsub, m_hidesub, m_showosd, m_prebuff, m_autoreload, m_savefullpath, m_instupd;
|
||
|
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
virtual void UpdateControlData(bool fSave);
|
||
|
virtual void UpdateObjectData(bool fSave);
|
||
|
|
||
|
public:
|
||
|
CDVSMiscPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
};
|
||
|
|
||
|
[uuid("ACE4747B-35BD-4e97-9DD7-1D4245B0695C")]
|
||
|
class CDVSTimingPPage : public CDVSBasePPage
|
||
|
{
|
||
|
int m_SubtitleSpeedMul, m_SubtitleSpeedDiv, m_SubtitleDelay;
|
||
|
bool m_fMediaFPSEnabled;
|
||
|
double m_MediaFPS;
|
||
|
|
||
|
CButton m_modfps;
|
||
|
CEdit m_fps;
|
||
|
CSpinButtonCtrl m_subdelay, m_subspeedmul, m_subspeeddiv;
|
||
|
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
virtual void UpdateControlData(bool fSave);
|
||
|
virtual void UpdateObjectData(bool fSave);
|
||
|
|
||
|
public:
|
||
|
CDVSTimingPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
};
|
||
|
|
||
|
[uuid("F544E0F5-CA3C-47ea-A64D-35FCF1602396")]
|
||
|
class CDVSAboutPPage : public CDVSBasePPage
|
||
|
{
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
|
||
|
public:
|
||
|
CDVSAboutPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
};
|
||
|
|
||
|
[uuid("525F116F-04AD-40a2-AE2F-A0C4E1AFEF98")]
|
||
|
class CDVSZoomPPage : public CDVSBasePPage
|
||
|
{
|
||
|
NORMALIZEDRECT m_rect;
|
||
|
|
||
|
CSpinButtonCtrl m_posx, m_posy, m_scalex, m_scaley;
|
||
|
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
virtual void UpdateControlData(bool fSave);
|
||
|
virtual void UpdateObjectData(bool fSave);
|
||
|
|
||
|
public:
|
||
|
CDVSZoomPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
};
|
||
|
|
||
|
[uuid("C2D6D98F-09CA-4524-AF64-1049B5665C9C")]
|
||
|
class CDVSColorPPage : public CDVSBasePPage
|
||
|
{
|
||
|
CListBox m_preflist, m_dynchglist;
|
||
|
CButton m_forcergb;
|
||
|
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
virtual void UpdateControlData(bool fSave);
|
||
|
virtual void UpdateObjectData(bool fSave);
|
||
|
|
||
|
public:
|
||
|
CDVSColorPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
};
|
||
|
|
||
|
[uuid("CE77C59C-CFD2-429f-868C-8B04D23F94CA")]
|
||
|
class CDVSPathsPPage : public CDVSBasePPage
|
||
|
{
|
||
|
CStringArray m_paths;
|
||
|
|
||
|
CListBox m_pathlist;
|
||
|
CEdit m_path;
|
||
|
CButton m_browse, m_remove, m_add;
|
||
|
|
||
|
protected:
|
||
|
virtual bool OnMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||
|
virtual void UpdateControlData(bool fSave);
|
||
|
virtual void UpdateObjectData(bool fSave);
|
||
|
|
||
|
public:
|
||
|
CDVSPathsPPage(LPUNKNOWN lpunk, HRESULT* phr);
|
||
|
};
|