[GME-commit] GMESRC/Paradigms/MetaGME/BonExtension/Gui OptionsDlg.cpp,NONE,1.1 OptionsDlg.h,NONE,1.1 SelConf.cpp,1.4,1.5

gme-commit at list.isis.vanderbilt.edu gme-commit at list.isis.vanderbilt.edu
Wed Jun 16 14:35:09 CDT 2004


Update of /var/lib/gme/GMESRC/Paradigms/MetaGME/BonExtension/Gui
In directory braindrain:/tmp/cvs-serv25714/Gui

Modified Files:
	SelConf.cpp 
Added Files:
	OptionsDlg.cpp OptionsDlg.h 
Log Message:
Corrections:

-implementation inheritance mapping to C++ corrected.


Features:
-Options dialogue added

-template methods can be generated for ordering sets (as the user wishes)

-initialize and finalize generated if wanted



CVS User: zolmol

--- NEW FILE: OptionsDlg.cpp ---
// OptionsDlg.cpp : implementation file
//

#include "stdafx.h"
#include "OptionsDlg.h"
#include <afxdlgs.h>

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// OptionsDlg dialog


OptionsDlg::OptionsDlg(CWnd* pParent /*=NULL*/)
	: CDialog(OptionsDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(OptionsDlg)
	m_headerName = _T("");
	m_sourceName = _T("");
	m_visitorHeaderName = _T("");
	m_visitorSourceName = _T("");
	m_prevHeaderName = _T("");
	m_bVisitor = FALSE;
	m_bParse = FALSE;
	m_bInit = FALSE;
	m_bFinalize = FALSE;
	m_whichStyle = -1;
	m_version71 = FALSE;
	//}}AFX_DATA_INIT
}


void OptionsDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(OptionsDlg)
	DDX_Control(pDX, IDC_CHECKVERS71, m_ctrlVersion71);
	DDX_Control(pDX, IDC_BUTTON3, m_ctrlButton3);
	DDX_Control(pDX, IDC_BUTTON4, m_ctrlButton4);
	DDX_Control(pDX, IDC_EDIT4, m_ctrlVisitorSource);
	DDX_Control(pDX, IDC_EDIT3, m_ctrlVisitorHeader);
	DDX_Control(pDX, IDC_BUTTON5, m_ctrlButton5);
	DDX_Control(pDX, IDC_EDIT5, m_ctrlPrevHeaderName);
	DDX_Text(pDX, IDC_EDIT1, m_headerName);
	DDX_Text(pDX, IDC_EDIT2, m_sourceName);
	DDX_Text(pDX, IDC_EDIT3, m_visitorHeaderName);
	DDX_Text(pDX, IDC_EDIT4, m_visitorSourceName);
	DDX_Text(pDX, IDC_EDIT5, m_prevHeaderName);
	DDX_Check(pDX, IDC_CHECK34, m_bVisitor);
	DDX_Check(pDX, IDC_CHECK5, m_bParse);
	DDX_Check(pDX, IDC_CHECK2, m_bInit);
	DDX_Check(pDX, IDC_CHECK3, m_bFinalize);
	DDX_Radio(pDX, IDC_RADIO1, m_whichStyle);
	DDX_Check(pDX, IDC_CHECKVERS71, m_version71);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(OptionsDlg, CDialog)
	//{{AFX_MSG_MAP(OptionsDlg)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
	ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
	ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
	ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
	ON_BN_CLICKED(IDC_CHECK5, OnCheck5)
	ON_BN_CLICKED(IDC_CHECK34, OnCheck34)
	ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
	ON_BN_CLICKED(IDC_RADIO2, OnRadio2)
	ON_BN_CLICKED(IDC_RADIO3, OnRadio3)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// OptionsDlg message handlers

BOOL OptionsDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	m_headerName = m_defName + "BonX.h";
	m_sourceName = m_defName + "BonX.cpp";
	m_prevHeaderName = m_headerName + ".copy";

	//global_vars.output_directory_name = "";
	//global_vars.err_file_name = proj_name + "BONExt.log";

	m_visitorHeaderName = m_defName + "Visitor.h";
	m_visitorSourceName = m_defName + "Visitor.cpp";

	m_whichStyle = 0;
	m_version71 = 0;

	m_ctrlPrevHeaderName.EnableWindow( FALSE);
	m_ctrlButton5.EnableWindow( FALSE);

	m_ctrlVisitorHeader.EnableWindow( FALSE);
	m_ctrlVisitorSource.EnableWindow( FALSE);
	m_ctrlButton3.EnableWindow( FALSE);
	m_ctrlButton4.EnableWindow( FALSE);

	m_ctrlVersion71.EnableWindow( FALSE);

	UpdateData( FALSE);
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}


void OptionsDlg::OnButton1()
{
	UpdateData( TRUE);
	// header file name selection
	try {
		CFileDialog dlg2(FALSE, "h", m_headerName,
			OFN_EXPLORER | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT
			,"C++ header files (*.h)|*.h|All Files (*.*)|*.*||");
		if( dlg2.DoModal() == IDOK) 
		{
			m_sourceName = m_headerName = dlg2.GetPathName();
			m_prevHeaderName = m_headerName + ".copy";

			int p = m_sourceName.ReverseFind( '.');
			if ( p != -1)
			{
				m_sourceName = m_sourceName.Left(p) + ".cpp";
			}
			else
			{
				m_sourceName = m_sourceName + ".cpp";
			}
			
		}
		else // IDCANCEL , using default name
		{
			return ;
		}
	}	catch (...)	{ }

	UpdateData( FALSE);
	/*if ( existsFile( global_vars.header_file_name.c_str())) // make a copy of the header
	{
		global_vars.header_backup_name = global_vars.header_file_name + ".copy";
		int res = makeFileCopy( global_vars.header_file_name.c_str(), global_vars.header_backup_name.c_str());
		if ( res == 2)
		{
			TO("During backup process could not read file: " + global_vars.header_file_name);
			return 2;
		}
		else if ( res == 3)
		{
			TO("Cannot create backup file: " + global_vars.header_backup_name);
			return 3;
		}

		CString msg = CString("A file with ") + global_vars.header_file_name.c_str() + " name already exists." +
			"\nWould you like the user part extracted from this file?";
		if ( AfxMessageBox( msg, MB_YESNO | MB_ICONQUESTION) != IDYES)
			global_vars.header_backup_name = ""; // notify the dumper NOT to search for UP (user part) declarations
	}*/
}

void OptionsDlg::OnButton2() 
{
	UpdateData( TRUE);
	// source file name selection
	try {
		CFileDialog dlg2(FALSE, "cpp", m_sourceName,
			OFN_EXPLORER | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT
			,"C++ source files (*.cpp)|*.cpp|All Files (*.*)|*.*||");
		if( dlg2.DoModal() == IDOK) 
		{
			m_sourceName = dlg2.GetPathName();
		}
		else // IDCANCEL , using default name
		{
			return ;
		}
	}	catch (...)	{ }

	UpdateData( FALSE);
}

void OptionsDlg::OnButton3() 
{
	UpdateData( TRUE);
	// visitor header file name selection
	try {
		CFileDialog dlg2(FALSE, "h", m_visitorHeaderName,
			OFN_EXPLORER | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT
			,"C++ header files (*.h)|*.h|All Files (*.*)|*.*||");

		if( dlg2.DoModal() == IDOK) 
		{
			m_visitorSourceName = m_visitorHeaderName = (LPCTSTR) dlg2.GetPathName();
			int p = m_visitorSourceName.ReverseFind( '.');

			if ( p != -1)
				m_visitorSourceName = m_visitorSourceName.Left( p) + ".cpp";
			else
				m_visitorSourceName = m_visitorSourceName + ".cpp";

		}
		else // IDCANCEL , using default name
		{
			return ;
		}
	}	catch (...)	{ }

	UpdateData( FALSE);
}

void OptionsDlg::OnButton4() 
{
	UpdateData( TRUE);
	// visitor source file name selection
	try {
		CFileDialog dlg2(FALSE, "cpp", m_visitorSourceName,
			OFN_EXPLORER | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT
			,"C++ source files (*.cpp)|*.cpp|All Files (*.*)|*.*||");
		if(dlg2.DoModal() == IDOK) 
		{
			m_visitorSourceName = dlg2.GetPathName();
		}
	}	catch (...)	{ }

	UpdateData( FALSE);
}

void OptionsDlg::OnButton5() 
{
	UpdateData( TRUE);
	// previous header file name selection
	try {
		CFileDialog dlg2(TRUE, "h.copy", "",
			OFN_EXPLORER | OFN_HIDEREADONLY //| OFN_OVERWRITEPROMPT
			,"Previously generated header files (*.h.copy)|*.h.copy|C++ header files (*.h)|*.h|All Files (*.*)|*.*||");
		if( dlg2.DoModal() == IDOK) 
		{
			m_prevHeaderName = dlg2.GetPathName();
		}
		else // IDCANCEL , using default name
		{
			return ;
		}
	}	catch (...)	{
	}

	UpdateData( FALSE);
}

void OptionsDlg::OnCheck5() 
{
	UpdateData( TRUE);
	m_ctrlPrevHeaderName.EnableWindow( m_bParse);
	m_ctrlButton5.EnableWindow( m_bParse);
	UpdateData( FALSE);
}

void OptionsDlg::OnCheck34() 
{
	UpdateData( TRUE);
	m_ctrlVisitorHeader.EnableWindow( m_bVisitor);
	m_ctrlVisitorSource.EnableWindow( m_bVisitor);
	m_ctrlButton3.EnableWindow( m_bVisitor);
	m_ctrlButton4.EnableWindow( m_bVisitor);
	UpdateData( FALSE);
}

void OptionsDlg::OnRadio1() 
{
	m_ctrlVersion71.EnableWindow( FALSE);
}

void OptionsDlg::OnRadio2() 
{
	m_ctrlVersion71.EnableWindow( TRUE);
}

void OptionsDlg::OnRadio3() 
{
	m_ctrlVersion71.EnableWindow( TRUE);
}

--- NEW FILE: OptionsDlg.h ---
#if !defined(AFX_OPTIONSDLG_H__0A217994_9D2A_429E_B244_4CD2D8F74A26__INCLUDED_)
#define AFX_OPTIONSDLG_H__0A217994_9D2A_429E_B244_4CD2D8F74A26__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// OptionsDlg.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// OptionsDlg dialog
#include "resource.h"

class OptionsDlg : public CDialog
{
// Construction
public:
	OptionsDlg(CWnd* pParent = NULL);   // standard constructor
	CString m_defName;

// Dialog Data
	//{{AFX_DATA(OptionsDlg)
	enum { IDD = IDD_DIALOG2 };
	CButton	m_ctrlVersion71;
	CButton	m_ctrlButton3;
	CButton	m_ctrlButton4;
	CEdit	m_ctrlVisitorSource;
	CEdit	m_ctrlVisitorHeader;
	CButton	m_ctrlButton5;
	CEdit	m_ctrlPrevHeaderName;
	CString	m_headerName;
	CString	m_sourceName;
	CString	m_visitorHeaderName;
	CString	m_visitorSourceName;
	CString	m_prevHeaderName;
	BOOL	m_bVisitor;
	BOOL	m_bParse;
	BOOL	m_bInit;
	BOOL	m_bFinalize;
	int		m_whichStyle;
	BOOL	m_version71;
	//}}AFX_DATA


// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(OptionsDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:

	// Generated message map functions
	//{{AFX_MSG(OptionsDlg)
	afx_msg void OnButton1();
	afx_msg void OnButton2();
	afx_msg void OnButton3();
	afx_msg void OnButton4();
	afx_msg void OnButton5();
	virtual BOOL OnInitDialog();
	afx_msg void OnCheck5();
	afx_msg void OnCheck34();
	afx_msg void OnRadio1();
	afx_msg void OnRadio2();
	afx_msg void OnRadio3();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

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

#endif // !defined(AFX_OPTIONSDLG_H__0A217994_9D2A_429E_B244_4CD2D8F74A26__INCLUDED_)

Index: SelConf.cpp
===================================================================
RCS file: /var/lib/gme/GMESRC/Paradigms/MetaGME/BonExtension/Gui/SelConf.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** SelConf.cpp	17 Mar 2004 20:39:07 -0000	1.4
--- SelConf.cpp	16 Jun 2004 18:35:02 -0000	1.5
***************
*** 276,280 ****
  		if ( any_ptr && any_ptr->isFCO())
  		{
! 			FCO * fco_ptr = static_cast<FCO*>( any_ptr);
  			if( fco_ptr)
  			{
--- 276,280 ----
  		if ( any_ptr && any_ptr->isFCO())
  		{
! 			FCO * fco_ptr = dynamic_cast<FCO*>( any_ptr);
  			if( fco_ptr)
  			{



More information about the GME-commit mailing list