28 #include "../../idlib/precompiled.h"
33 #define PROP_TREE_VIEW "PropTreeView"
47 MaterialPropTreeView::MaterialPropTreeView() {
48 registry.Init(
"Software\\id Software\\DOOM3\\Tools\\MaterialEditor\\PropertySettings");
49 internalChange =
false;
80 for(
int i = 0;
i < propList->
Num();
i++) {
81 switch((*propList)[
i]->type) {
85 pCurrentNode = pCurrentGroup;
96 pCurrentNode = pCheck;
160 switch(propItem->
type) {
203 for(
int i = 0;
i <
c;
i++) {
223 for(
int i = 0;
i < propList->
Num();
i++) {
224 switch((*propList)[
i]->type) {
View that displays material and stage properties and allows the user to edit the properties.
virtual ~MaterialPropTreeView()
Destructor for MaterialPropTreeView.
CONST PIXELFORMATDESCRIPTOR UINT
MaterialDefList * currentPropDefs
void SetPropertyListType(int listType, int stageNum=-1)
Initializes the list of properties based on the type (material, stage, special stage).
rvRegistryOptions registry
void SaveSettings()
Saves the property view settings to the registry.
afx_msg void OnPropertyItemExpanding(NMHDR *nmhdr, LRESULT *lresult)
Changes the property setting of a group when is expanding.
void SetLabelText(LPCTSTR sLabel)
MaterialDef * FindDefForTreeID(UINT treeID)
Returns the MeterialDef for a given property tree item.
int Icmp(const char *text) const
virtual LPARAM GetItemValue()
Represents a single attribute in a material.
void LoadSettings()
Loads the property view settings from the registry.
void SetAttribute(int stage, const char *attribName, const char *value, bool addUndo=true)
Sets an attribute string in the material or a stage.
Responsible for managing a single material that is being viewed and/or edited.
void SetBool(const char *name, bool v)
virtual void SetItemValue(LPARAM lParam)
#define PTN_ITEMEXPANDING
void Expand(BOOL bExpand=TRUE)
void SetAttributeBool(int stage, const char *attribName, bool value, bool addUndo=true)
Sets an attribute bool in the material or a stage.
const char * GetAttribute(int stage, const char *attribName, const char *defaultString="")
Returns an attribute string from the material or a stage.
afx_msg void OnPropertyChangeNotification(NMHDR *nmhdr, LRESULT *lresult)
Updated the material when an attribute has been changed.
void SetInfoText(LPCTSTR sInfo)
virtual void MV_OnMaterialChange(MaterialDoc *pMaterial)
Called when the material has changed but not applied.
IMPLEMENT_DYNCREATE(CCamWnd, CWnd)
bool GetAttributeBool(int stage, const char *attribName, const char *defaultString="0")
Returns an attribute bool from the material or a stage.
MaterialDocManager * materialDocManager
bool GetBool(const char *name)
const char * c_str(void) const
CPropTreeItem * FindItem(const POINT &pt)
CPropTreeItem * InsertItem(CPropTreeItem *pItem, CPropTreeItem *pParent=NULL)
static MaterialDefList * GetMaterialDefs(int type)
Returns the MaterialDefList for the specified attribute grouping.
void RefreshProperties()
Initializes the property tree with the data from the currently selected material. ...
char * va(const char *fmt,...)
MaterialDoc * GetCurrentMaterialDoc()
void SetCheckState(BOOL state)