ShaderEditorDlg.h
上传用户:tangyu_668
上传日期:2014-02-27
资源大小:678k
文件大小:2k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. #pragma once
  2. #include "....subpicISubPic.h"
  3. #include "LineNumberEdit.h"
  4. #include "ShaderAutoCompleteDlg.h"
  5. #include "mplayerc.h"
  6. // Q174667
  7. class CShaderLabelComboBox : public CComboBox
  8. {
  9. public:
  10.     CEdit m_edit;
  11. DECLARE_MESSAGE_MAP()
  12. afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
  13. afx_msg void OnDestroy();
  14. };
  15. class CShaderEdit : public CLineNumberEdit
  16. {
  17. int m_nEndChar;
  18. UINT m_nIDEvent;
  19. public:
  20. CShaderEdit();
  21. ~CShaderEdit();
  22. CShaderAutoCompleteDlg m_acdlg;
  23. DECLARE_MESSAGE_MAP()
  24. afx_msg void OnUpdate();
  25. afx_msg void OnKillFocus(CWnd* pNewWnd);
  26. afx_msg void OnTimer(UINT nIDEvent);
  27. virtual BOOL PreTranslateMessage(MSG* pMsg);
  28. };
  29. // CShaderEditorDlg dialog
  30. class CPixelShaderCompiler;
  31. class CShaderEditorDlg : public CResizableDialog
  32. {
  33. private:
  34. UINT m_nIDEventShader;
  35. bool m_fSplitterGrabbed;
  36. bool HitTestSplitter(CPoint p);
  37. CPixelShaderCompiler* m_pPSC;
  38. AppSettings::Shader* m_pShader;
  39. public:
  40. CShaderEditorDlg();   // standard constructor
  41. virtual ~CShaderEditorDlg();
  42. BOOL Create(CWnd* pParent = NULL);
  43. // Dialog Data
  44. enum { IDD = IDD_SHADEREDITOR_DLG };
  45. CShaderLabelComboBox m_labels;
  46. CComboBox m_targets;
  47. CShaderEdit m_srcdata;
  48. CEdit m_output;
  49. protected:
  50. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  51. virtual BOOL PreTranslateMessage(MSG* pMsg);
  52. virtual void OnOK() {}
  53. virtual void OnCancel() {}
  54. DECLARE_MESSAGE_MAP()
  55. public:
  56. afx_msg void OnCbnSelchangeCombo1();
  57. afx_msg void OnBnClickedButton2();
  58. afx_msg void OnTimer(UINT nIDEvent);
  59. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  60. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  61. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  62. afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
  63. afx_msg void OnKillFocus(CWnd* pNewWnd);
  64. };