Click here to Skip to main content
15,896,557 members
Articles / Desktop Programming / MFC

A simple XML Parser

Rate me:
Please Sign up or sign in to vote.
4.69/5 (13 votes)
28 Jan 2002CPOL 362.8K   5.8K   70  
A class to read and write non validated XML files
// XmlViewerDlg.h : header file
//

#if !defined(AFX_XMLVIEWERDLG_H__286D3FCF_7CE7_11D4_A09D_00A024838B6B__INCLUDED_)
#define AFX_XMLVIEWERDLG_H__286D3FCF_7CE7_11D4_A09D_00A024838B6B__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "GridCtrl_src/GridCtrl.h"
/////////////////////////////////////////////////////////////////////////////
// CXmlViewerDlg dialog

class CXmlViewerDlg : public CDialog
{
// Construction
public:
	void LoadArray(CXML *element,  HTREEITEM hParent);
	CXmlViewerDlg(CWnd* pParent = NULL);	// standard constructor

// Dialog Data
	//{{AFX_DATA(CXmlViewerDlg)
	enum { IDD = IDD_XMLVIEWER_DIALOG };
	CTreeCtrl	m_ElementTree;
	CString	m_FileName;
	CString	m_Tag;
	//}}AFX_DATA
	CGridCtrl m_AttrGrid;
	CXML m_xmlRoot;
	CTypedPtrArray<CPtrArray,CXML*> m_XmlPtrArray;
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CXmlViewerDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	HICON m_hIcon;

	// Generated message map functions
	//{{AFX_MSG(CXmlViewerDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnClickElementTree(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnReadButton();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_XMLVIEWERDLG_H__286D3FCF_7CE7_11D4_A09D_00A024838B6B__INCLUDED_)

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Retired
United States United States
Began programming in 1968 on a Wang 720. Move to Fortran and began developing FEM (finite element model) applications on an IBM 360 in 1973. Developed custom FEM editors for most of my career until 1995.

Comments and Discussions