#if !defined(AFX_OBJECTLISTDIALOG_H__3DEE8311_972E_11D1_BFC6_00A0C94B8467__INCLUDED_) #define AFX_OBJECTLISTDIALOG_H__3DEE8311_972E_11D1_BFC6_00A0C94B8467__INCLUDED_ #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000 // ObjectListDialog.h : header file // ///////////////////////////////////////////////////////////////////////////// // CObjectListDialog dialog #define CLIPBOARD_LEAF 0 #define POWERUP_LEAF 1 #define ROBOT_LEAF 2 #define BUILDING_LEAF 3 #define DOOR_LEAF 4 #define PLAYER_LEAF 5 #define CLUTTER_LEAF 6 #define CAMERA_LEAF 7 #define SOUNDSOURCE_LEAF 8 #define MISC_LEAF 9 #define MAX_OBJ_LEAFS 10 struct object; class CObjectListDialog : public CDialog { // Construction public: CObjectListDialog(CWnd* pParent = NULL); // standard constructor void Refresh(); void ClearTree(); int GetObjectSelected() const; // Dialog Data //{{AFX_DATA(CObjectListDialog) enum { IDD = IDD_OBJTREEDLG }; // NOTE: the ClassWizard will add data members here //}}AFX_DATA // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CObjectListDialog) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: // Generated message map functions //{{AFX_MSG(CObjectListDialog) virtual BOOL OnInitDialog(); afx_msg void OnDestroy(); afx_msg void OnSelchangedObjtree(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnGoto(); afx_msg void OnDelete(); afx_msg void OnClear(); //}}AFX_MSG DECLARE_MESSAGE_MAP() private: typedef struct tObjNode { HTREEITEM hItem; int handle; } tObjNode; tObjNode *m_Leafs[MAX_OBJ_LEAFS]; HTREEITEM hClipboardTree; HTREEITEM hRobotTree; HTREEITEM hPowerupTree; HTREEITEM hBuildingTree; HTREEITEM hDoorTree; HTREEITEM hPlayerTree; HTREEITEM hClutterTree; HTREEITEM hCameraTree; HTREEITEM hSoundSourceTree; HTREEITEM hMiscTree; int m_ObjectHandle; // current object handle selected. int nclipboard, npowerup, nrobot, nbuilding, nclutter, ndoor, nplayer, ncamera, nsndsrc, nmisc; private: void MakeInfoStr(object *obj, char *str); int GetObjHandleFromItem(HTREEITEM hItem); }; // modeless implementation of object fialog. class CObjectListModeless: public CObjectListDialog { public: CObjectListModeless(CWnd* pParent = NULL); BOOL Create(); // Dialog Data //{{AFX_DATA(CObjectListModeless) enum { IDD = IDD_OBJTREEDLG }; // NOTE: the ClassWizard will add data members here //}}AFX_DATA // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CObjectListModeless) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support virtual void PostNcDestroy(); //}}AFX_VIRTUAL // Implementation protected: // Generated message map functions //{{AFX_MSG(CObjectListModeless) afx_msg void OnMove(int x, int y); virtual void OnCancel(); virtual BOOL OnInitDialog(); //}}AFX_MSG DECLARE_MESSAGE_MAP() private: CWnd *m_wndParent; }; //{{AFX_INSERT_LOCATION}} // Microsoft Developer Studio will insert additional declarations immediately before the previous line. #endif // !defined(AFX_OBJECTLISTDIALOG_H__3DEE8311_972E_11D1_BFC6_00A0C94B8467__INCLUDED_)