Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
MaterialDialog.h
Go to the documentation of this file.
1 /* Project Magic 2.0
2  Destroyer Studios LLC
3  Copyright © 1997-2004. All Rights Reserved.
4 
5  SUBSYSTEM: Magic.exe
6  FILE: MaterialDialog.h
7  AUTHOR: John DiCamillo
8 
9 
10  OVERVIEW
11  ========
12  Material Editor Dialog interface file
13 */
14 
15 #if !defined(AFX_MATERIALDIALOG_H__DD978D83_EB03_479B_92A4_D1FCC333BECA__INCLUDED_)
16 #define AFX_MATERIALDIALOG_H__DD978D83_EB03_479B_92A4_D1FCC333BECA__INCLUDED_
17 
18 #if _MSC_VER > 1000
19 #pragma once
20 #endif
21 
22 // +--------------------------------------------------------------------+
23 
24 class MagicDoc;
25 class MagicView;
26 struct Material;
27 
28 // +--------------------------------------------------------------------+
29 // MaterialDialog dialog
30 // +--------------------------------------------------------------------+
31 
32 class MaterialDialog : public CDialog
33 {
34 // Construction
35 public:
36  MaterialDialog(MagicView* pParent = NULL);
37  virtual ~MaterialDialog();
38 
39 // Dialog Data
40  //{{AFX_DATA(MaterialDialog)
42  CComboBox mShadowList;
43  CComboBox mBlendModeList;
44  CListBox mMaterialList;
45  CStatic mMaterialThumb;
46  CStatic mSpecularColor;
47  CStatic mEmissiveColor;
48  CStatic mDiffuseColor;
49  CStatic mAmbientColor;
52  float mBumpValue;
55  CString mMaterialName;
56  float mPowerValue;
59  CString mDiffuseTexture;
60  CString mBumpTexture;
62  CString mMaterialShader;
63  //}}AFX_DATA
64 
65 
66 // Overrides
67  // ClassWizard generated virtual function overrides
68  //{{AFX_VIRTUAL(MaterialDialog)
69  protected:
70  virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
71  //}}AFX_VIRTUAL
72 
73 // Implementation
74 protected:
75  void UpdateMaterial();
76  void OnFileTexture(int type);
77  void ChangeFileTexture(char* fname, int type);
78 
82 
83  // Generated message map functions
84  //{{AFX_MSG(MaterialDialog)
85  virtual BOOL OnInitDialog();
86  afx_msg void OnPaint();
87  afx_msg void OnAmbientColor();
88  afx_msg void OnDiffuseColor();
89  afx_msg void OnEmissiveColor();
90  afx_msg void OnSpecularColor();
91  afx_msg void OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct);
92  afx_msg void OnChangeMaterialValue();
93  afx_msg void OnFileDiffuse();
94  afx_msg void OnFileSpecular();
95  afx_msg void OnFileEmissive();
96  afx_msg void OnFileBump();
97  afx_msg void OnChangeDiffuseTexture();
98  afx_msg void OnChangeSpecularTexture();
99  afx_msg void OnChangeEmissiveTexture();
100  afx_msg void OnChangeBumpTexture();
101  afx_msg void OnChangeMaterialName();
102  afx_msg void OnSelectMaterial();
103  afx_msg void OnSelectPolys();
104  afx_msg void OnNewMaterial();
105  afx_msg void OnDelMaterial();
106  afx_msg void OnSelectBlendMode();
107  afx_msg void OnSelectShadow();
108  virtual void OnOK();
109  afx_msg void OnChangeMaterialShader();
110  //}}AFX_MSG
111  DECLARE_MESSAGE_MAP()
112 };
113 
114 //{{AFX_INSERT_LOCATION}}
115 // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
116 
117 #endif