StyleEditorDialog.h

00001 /* 
00002  *      Copyright (C) 2003-2005 Gabest
00003  *      http://www.gabest.org
00004  *
00005  *  This Program is free software; you can redistribute it and/or modify
00006  *  it under the terms of the GNU General Public License as published by
00007  *  the Free Software Foundation; either version 2, or (at your option)
00008  *  any later version.
00009  *   
00010  *  This Program is distributed in the hope that it will be useful,
00011  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00013  *  GNU General Public License for more details.
00014  *   
00015  *  You should have received a copy of the GNU General Public License
00016  *  along with GNU Make; see the file COPYING.  If not, write to
00017  *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. 
00018  *  http://www.gnu.org/copyleft/gpl.html
00019  *
00020  */
00021 
00022 #pragma once
00023 #include "resource.h"
00024 #include "afxwin.h"
00025 #include "afxcmn.h"
00026 #include "..\..\..\subtitles\STS.h"
00027 
00028 // CColorStatic dialog
00029 
00030 class CColorStatic : public CStatic
00031 {
00032         DECLARE_DYNAMIC(CColorStatic)
00033 
00034         COLORREF* m_pColor;
00035 
00036 public:
00037         CColorStatic(CWnd* pParent = NULL) : m_pColor(NULL) {}
00038         virtual ~CColorStatic() {}
00039 
00040         void SetColorPtr(COLORREF* pColor) {m_pColor = pColor;}
00041 
00042         DECLARE_MESSAGE_MAP()
00043 
00044 protected:
00045         virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
00046         {
00047                 CRect r;
00048                 GetClientRect(r);
00049                 CDC::FromHandle(lpDrawItemStruct->hDC)->FillSolidRect(r, m_pColor ? *m_pColor : ::GetSysColor(COLOR_BTNFACE));
00050         }
00051 };
00052 
00053 // CStyleEditorDialog dialog
00054 
00055 class CStyleEditorDialog : public CDialog
00056 {
00057         DECLARE_DYNAMIC(CStyleEditorDialog)
00058 
00059         CString m_title;
00060         CWnd* m_pParent;
00061 
00062         void UpdateControlData(bool fSave);
00063         void AskColor(int i);
00064 
00065 public:
00066         CStyleEditorDialog(CString title, STSStyle* pstss, CWnd* pParent = NULL);   // standard constructor
00067         virtual ~CStyleEditorDialog();
00068 
00069 // Dialog Data
00070         enum { IDD = IDD_STYLEDIALOG };
00071 
00072         STSStyle m_stss;
00073 
00074 protected:
00075         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
00076         virtual BOOL OnInitDialog();
00077         virtual void OnOK();
00078 
00079         DECLARE_MESSAGE_MAP()
00080 
00081 public:
00082         CButton m_font;
00083         int m_iCharset;
00084         CComboBox m_charset;
00085         int m_spacing;
00086         CSpinButtonCtrl m_spacingspin;
00087         int m_angle;
00088         CSpinButtonCtrl m_anglespin;
00089         int m_scalex;
00090         CSpinButtonCtrl m_scalexspin;
00091         int m_scaley;
00092         CSpinButtonCtrl m_scaleyspin;
00093         int m_borderstyle;
00094         int m_borderwidth;
00095         CSpinButtonCtrl m_borderwidthspin;
00096         int m_shadowdepth;
00097         CSpinButtonCtrl m_shadowdepthspin;
00098         int m_screenalignment;
00099         CRect m_margin;
00100         CSpinButtonCtrl m_marginleftspin;
00101         CSpinButtonCtrl m_marginrightspin;
00102         CSpinButtonCtrl m_margintopspin;
00103         CSpinButtonCtrl m_marginbottomspin;
00104         CColorStatic m_color[4];
00105         int m_alpha[4];
00106         CSliderCtrl m_alphasliders[4];
00107         BOOL m_linkalphasliders;
00108 
00109         afx_msg void OnBnClickedButton1();
00110         afx_msg void OnStnClickedColorpri();
00111         afx_msg void OnStnClickedColorsec();
00112         afx_msg void OnStnClickedColoroutl();
00113         afx_msg void OnStnClickedColorshad();
00114         afx_msg void OnBnClickedCheck1();
00115         afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
00116 };

Generated on Tue Dec 13 14:47:52 2005 for guliverkli by  doxygen 1.4.5