
/***************************************************************************
**
**    $Header:   D:/ECB2S/SRC/LOG/SRCGRP.H__   1.2.1.4   17 Apr 1997 16:00:48   ZJRD  $
**
**    $Log:   D:/ECB2S/SRC/LOG/SRCGRP.H__  $
** 
**    Rev 1.2.1.4   17 Apr 1997 16:00:48   ZJRD
** No change.
** 
**    Rev 1.2.1.3   16 Apr 1997 10:33:54   ZJRD
** No change.
** 
**    Rev 1.2.1.2   10 Apr 1997 15:43:12   ZJRD
** No change.
** 
**    Rev 1.2.1.1   03 Apr 1997 15:21:52   ZJRD
** 2.09E
** 
**    Rev 1.2.1.0   28 Mar 1997 10:26:00   ZJRD
** easy pack sld 2.09d
** 
**    Rev 1.1   19 Mar 1997 11:35:54   ZJRD
** No change.
** 
**    Rev 1.0   12 Mar 1997 14:50:16   ZJRD
** Initial revision.
** 
**    Rev 1.7.1.0.1.2   09 Dec 1996 10:14:40   ZJRD
** EasyPack/SLD Version 2.0P
** 
**    Rev 1.7.1.0.1.0   11 Nov 1996 12:57:56   ZJRD
** EasyPack/SLD Version 2.01
** 
**    Rev 1.7.1.4   09 Sep 1996 13:14:36   ZJRD
** No change.
** 
**    Rev 1.7.1.3   05 Sep 1996 11:26:08   ZJRD
** No change.
** 
**    Rev 1.7.1.2   02 Sep 1996 09:53:16   ZJRD
** EasyPack/SLD Version 1.9d
** 
**    Rev 1.7.1.1   28 Aug 1996 15:46:52   ZJRD
** EasyPack/SLD Version 1.9b
** 
**    Rev 1.7   11 Jun 1996 10:26:06   ZJRD
** EasyPack/SLD Version 1.97
** 
**    Rev 1.5   05 Jun 1996 14:53:52   ZJRD
** No change.
** 
**    Rev 1.4   29 May 1996 09:29:14   ZJRD
** EasyPack/SLD Version 1.95
** 
**    Rev 1.2   10 May 1996 09:10:02   ZJRD
** EasyPack/SLD Version 1.93
** 
**    Rev 1.1   02 May 1996 10:29:58   ZJRD
** EasyPack/SLD Version 1.92
** 
**    Rev 1.31   18 Apr 1996 13:03:14   Shirley
** No change.
** 
**    Rev 1.30   12 Apr 1996 10:37:16   Shirley
** EasyPack/SLD Version 1.90
** 
**    Rev 1.28   15 Feb 1996 08:50:16   Shirley
** No change.
** 
**    Rev 1.27   12 Feb 1996 14:02:42   Shirley
** No change.
** 
**    Rev 1.26   06 Feb 1996 15:27:58   Shirley
** No change.
** 
**    Rev 1.25   06 Feb 1996 13:43:34   Shirley
** No change.
** 
**    Rev 1.24   01 Feb 1996 10:16:28   Shirley
** No change.
** 
**    Rev 1.23   26 Jan 1996 09:19:06   Shirley
** No change.
** 
**    Rev 1.22   25 Jan 1996 13:19:00   Shirley
** No change.
** 
**    Rev 1.21   24 Jan 1996 10:35:10   Shirley
** No change.
** 
**    Rev 1.20   23 Jan 1996 11:25:58   Shirley
** EasypPack/SLD Version 0.34c
** 
**    Rev 1.19   18 Jan 1996 10:10:20   Shirley
** No change.
** 
**    Rev 1.18   15 Jan 1996 16:17:36   Shirley
** EasyPack/SLD Version 0.34a
** 
**    Rev 1.17   04 Jan 1996 11:12:08   Shirley
** No change.
** 
**    Rev 1.16   30 Nov 1995 09:08:46   Shirley
** No change.
** 
**    Rev 1.15   28 Nov 1995 15:31:34   Shirley
** No change.
** 
**    Rev 1.14   21 Nov 1995 11:18:14   Shirley
** No change.
** 
**    Rev 1.13   13 Nov 1995 09:28:26   Shirley
** No change.
** 
**    Rev 1.12   12 Nov 1995 11:30:14   Shirley
** No change.
** 
**    Rev 1.11   08 Nov 1995 16:33:30   Shirley
** No change.
** 
**    Rev 1.10   08 Nov 1995 12:43:12   Shirley
** No change.
** 
**    Rev 1.9   02 Nov 1995 10:04:02   Shirley
** No change.
** 
**    Rev 1.8   27 Oct 1995 16:50:40   Shirley
** No change.
** 
**    Rev 1.7   27 Oct 1995 13:47:04   Shirley
** No change.
** 
**    Rev 1.6   25 Oct 1995 14:30:02   Shirley
** No change.
** 
**    Rev 1.5   18 Oct 1995 14:48:32   Shirley
** No change.
** 
**    Rev 1.4   13 Oct 1995 13:20:32   Shirley
** EasyPack/SLD Version 0.1d
** 
**    Rev 1.3   29 Sep 1995 09:48:40   Shirley
** No change.
** 
**    Rev 1.2   20 Sep 1995 10:55:14   Shirley
** EasyPack/SLD Version 0.1b
** 
**    Rev 1.1   15 Sep 1995 09:47:36   Shirley
** No change.
** 
**    Rev 1.0   07 Sep 1995 09:55:02   Shirley
** Initial revision.
**
****************************************************************************/

/////////////////////////////////////////////////////////////////////////////
//
//  File name:  SRCGRP.H
//
//  Description:The header file for the class: CSourceGroup
//
//  Author:     HuWei
//
//  Date:       5/4/96
//
//  Modification:
//
//      1. 06/24/95, Initial version 
//
//
//  Copyright (C) 1995 Microtek International. All rights reserved.
//
/////////////////////////////////////////////////////////////////////////////

#ifndef _SRCGRP_
#define _SRCGRP_

/////////////////////////////////////////////////////////////////////////////
// CSourceGroup dialog
/////////////////////////////////////////////////////////////////////////////

class CSourceGroup : public CDialog
{
// Construction
public:
    CSourceGroup(int nTab, CWnd* pParent = NULL, BOOL bBrowse=FALSE); // standard constructor

// Dialog Data
    //{{AFX_DATA(CSourceGroup)
	enum { IDD = IDD_SRCGRP };
	CComboBox	m_cmbDrv_3;
    CEdit   m_edAddr1_6;
    CVBControl* m_vbxTab;
    BOOL        m_isCode_1;
    BOOL        m_isCpp_1;
    BOOL        m_isDemand_1;
    BOOL        m_isStatus_1;
    BOOL        m_isSymbol_1;
    BOOL        m_isWarn_1;
    CString     m_strInfo_2;
    CString     m_strMdl_2;
    CListBox    m_ListMdl_2;
    CListBox    m_ListInfo_2;
    CString     m_strPath_3;
    CListBox    m_ListPath_3;
    CVBControl* m_vbxDir_3;
    int         m_nCR_4;
    CString     m_strHist_4;
    CString     m_strTab_4;
    CListBox    m_List_5;
    CString     m_strAddr_6;
    CString     m_strList_6;
    CString     m_strMdl_6;
    CComboBox   m_cmbMdl_6;
    CListBox    m_List_6;
    CComboBox   m_CmbAddr_6;
	//}}AFX_DATA
                        
    int         m_nTab;
    BOOL        m_bBrowse;
    int         m_nCRSave_4;
// Implementation
protected:
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
    void ShowTabCtrl(int nTab, BOOL isShow);
    void EnableTabCtrl(int nTab, BOOL isEnable);
    void ShowModuleInfo(int nIdx);
    void SetBPEditText(void);

    // Generated message map functions
    //{{AFX_MSG(CSourceGroup)
    virtual BOOL OnInitDialog();
    afx_msg void OnTabpageactivateSrctab(UINT, int, CWnd*, LPVOID);
    afx_msg void OnTabpageshownSrctab(UINT, int, CWnd*, LPVOID);
    afx_msg void OnChangeSrcgrp3Dir(UINT, int, CWnd*, LPVOID);
    afx_msg void OnSrcgrp3Add();
    afx_msg void OnSrcgrp3Remove();
    afx_msg void OnSrcgrp1Symbol();
    afx_msg void OnSrcgrp5Remove();
    virtual void OnOK();
    afx_msg void OnSrcgrp5Add();
    afx_msg void OnSrcgrp5Edit();
    afx_msg void OnSelchangeSrcgrp2Mdl();
    afx_msg void OnSrcgrp6Add();
    afx_msg void OnSrcgrp6Del();
    afx_msg void OnSrcgrp6Delall();
    afx_msg void OnSelchangeSrcgrp6Mdl();
    afx_msg void OnSrcgrp6Enable();
    afx_msg void OnSrcgrp6Disable();
    afx_msg void OnSelchangeSrcgrp6List();
    afx_msg void OnSelchangeSrcgrp6Addr();
    afx_msg void OnSrcgrp6Save();
    afx_msg void OnSrcgrp6Restore();
	afx_msg void OnSelchangeSrcgrp3Drv1();
	//}}AFX_MSG
    DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////
// CExtNameDialog dialog
/////////////////////////////////////////////////////////////////////////////

class CExtNameDialog : public CDialog
{
// Construction
public:
    CExtNameDialog(BOOL isEdit, const char * str, CWnd* pParent = NULL); 

    BOOL    m_isEdit;
// Dialog Data
    //{{AFX_DATA(CExtNameDialog)
    enum { IDD = IDD_EXTNAME };
    CString m_strEdit;
    //}}AFX_DATA
// Implementation
protected:
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support

    // Generated message map functions
    //{{AFX_MSG(CExtNameDialog)
    virtual void OnOK();
    virtual BOOL OnInitDialog();
    //}}AFX_MSG
    DECLARE_MESSAGE_MAP()
};

#endif


/////////////////////////////////////////////////////////////////////////////
// CPropertyDlg
class CPropertyDlg : public CPropertyPage
{
public:
   CPropertyDlg(UINT IDD);
   virtual BOOL ExitDlg();
   ~CPropertyDlg();
};

/////////////////////////////////////////////////////////////////////////////
// CSrcLoadOpt dialog

class CSrcLoadOpt : public CPropertyDlg
{
// Construction
public:
	CSrcLoadOpt();	// standard constructor

// Dialog Data
	//{{AFX_DATA(CSrcLoadOpt)
	enum { IDD = IDD_SRC_LOADOPT };
	BOOL	m_nLoadSystem;
	//}}AFX_DATA

//attribe
protected:
    BOOL        m_isCode_1;
//    BOOL        m_isCpp_1;
    BOOL        m_isDemand_1;
    BOOL        m_isStatus_1;
    BOOL        m_isSymbol_1;
    BOOL        m_isWarn_1;


// Implementation
protected:
    virtual BOOL OnInitDialog();
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	virtual BOOL OnSetActive();
    void OnOK();
	// Generated message map functions
	//{{AFX_MSG(CSrcLoadOpt)
	afx_msg void OnSrcgrp1Symbol();
	afx_msg void OnSrcgrp1Bankinit();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};


/////////////////////////////////////////////////////////////////////////////
// CSrcExtName dialog

class CSrcExtName : public CPropertyDlg
{
// Construction
public:
	CSrcExtName();	// standard constructor

// Dialog Data
	//{{AFX_DATA(CSrcExtName)
	enum { IDD = IDD_SRC_ENAME };
		// NOTE: the ClassWizard will add data members here
	//}}AFX_DATA
    
//ATTRIBE
public:
    CListBox    m_List_5;

// Implementation
protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
    void OnOK();
    virtual BOOL OnInitDialog();
    virtual BOOL OnSetActive();

	// Generated message map functions
	//{{AFX_MSG(CSrcExtName)
    afx_msg void OnSrcgrp5Remove();
    afx_msg void OnSrcgrp5Add();
    afx_msg void OnSrcgrp5Edit();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
// CSrcOpt dialog

class CSrcOpt : public CPropertyDlg
{
// Construction
public:
	CSrcOpt();	// standard constructor

// Dialog Data
	//{{AFX_DATA(CSrcOpt)
	enum { IDD = IDD_SRC_OPT };
		// NOTE: the ClassWizard will add data members here
	//}}AFX_DATA
    virtual BOOL ExitDlg();
    
//ATTRIBE
public:
    int         m_nCR_4;
    CString     m_strHist_4;
    CString     m_strTab_4;
    int         m_nCRSave_4;
// Implementation
protected:                      
    virtual BOOL OnInitDialog();
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	virtual BOOL OnSetActive();
    void OnOK();

	// Generated message map functions
	//{{AFX_MSG(CSrcOpt)
		// NOTE: the ClassWizard will add member functions here
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////
// CSrcBrowse dialog

class CSrcBrowse : public CPropertyDlg
{
// Construction
public:
	CSrcBrowse();	// standard constructor

// Dialog Data
	//{{AFX_DATA(CSrcBrowse)
	enum { IDD = IDD_SRC_BROWSE };
		// NOTE: the ClassWizard will add data members here
	//}}AFX_DATA
	
//attribe
public:
    CString     m_strInfo_2;
    CString     m_strMdl_2;
    CListBox    m_ListMdl_2;
    CListBox    m_ListInfo_2;

//operator    
protected:    
    int		m_nBank;
    void ShowModuleInfo(int nIdx);

// Implementation
protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	virtual BOOL OnInitDialog();
	virtual BOOL OnSetActive();
  	void OnOK();            // ok or apply now pressed -- KillActive is called first

	// Generated message map functions
	//{{AFX_MSG(CSrcBrowse)
		// NOTE: the ClassWizard will add member functions here
	afx_msg void OnSelchangeSrcgrp2Mdl();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
// CSrcPath dialog

class CSrcPath : public CPropertyDlg
{
// Construction
public:
	CSrcPath();	// standard constructor

// Dialog Data
	//{{AFX_DATA(CSrcPath)
	enum { IDD = IDD_SRC_PATH };
	CString	m_strFocusPath;
	//}}AFX_DATA
    
//attribe
public:
	CListBox  m_List_Dir;
	CListBox  m_List;
	CComboBox m_Drv;
	CStatic   m_Path;

	int       m_nSpec;
	int       m_nDrv;

    CString     m_strPath_3;
    CListBox    m_ListPath_3;
    CString     m_strAddPath;
    
    void GetDrv();           
    void OnShowDir(LPCSTR);
    CString JustifySpec(CString strPath);
// Implementation
protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
    void OnOK();
    virtual BOOL OnSetActive(); 
    virtual BOOL OnInitDialog();
	// Generated message map functions
	//{{AFX_MSG(CSrcPath)
    afx_msg void OnSrcgrp3Add();
    afx_msg void OnSrcgrp3Remove();
	afx_msg void OnSelchangeComboDrv();
	afx_msg void OnDblclkListDir();
	afx_msg void OnSelchangeSrcgrp3Dir();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////
// CSrcSetBP dialog

class CSrcSetBP : public CPropertyDlg
{
// Construction
public:
	CSrcSetBP();	// standard constructor

// Dialog Data
	//{{AFX_DATA(CSrcSetBP)
	enum { IDD = IDD_SRC_BP };
		// NOTE: the ClassWizard will add data members here
	//}}AFX_DATA
    
//attribe
public:
    CString     m_strAddr_6;
    CString     m_strList_6;
    CString     m_strMdl_6;
    CComboBox   m_cmbMdl_6;
    CListBox    m_List_6;
    CComboBox   m_CmbAddr_6;
    CEdit       m_edAddr1_6;
    void SetBPEditText(void);
    void OnSrcgrp6Save();
    void OnSrcgrp6Restore();

// Implementation
protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
    virtual BOOL OnInitDialog();
    virtual BOOL OnSetActive();
    virtual BOOL OnKillActive();
    
	// Generated message map functions
	//{{AFX_MSG(CSrcSetBP)
    afx_msg void OnSrcgrp6Add();
    afx_msg void OnSrcgrp6Del();
    afx_msg void OnSrcgrp6Delall();
    afx_msg void OnSelchangeSrcgrp6Mdl();
    afx_msg void OnSrcgrp6Enable();
    afx_msg void OnSrcgrp6Disable();
    afx_msg void OnSelchangeSrcgrp6List();
    afx_msg void OnSelchangeSrcgrp6Addr();
	afx_msg void OnShowWindow(BOOL bShow, UINT nStatus);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
// CSrcGrpDlg

class CSrcGrpDlg : public CPropertySheet
{
public:

    CSrcGrpDlg(int tab, CWnd* pParent, BOOL bBrowse=NULL);
    ~CSrcGrpDlg(){};

private:
	
// Attributes 
    CSrcSetBP    m_SrcSetBp;
    CSrcExtName  m_SrcExtName;
    CSrcLoadOpt  m_SrcLoadOpt;
    CSrcOpt      m_SrcOpt;
    CSrcBrowse   m_SrcBrowse;
    CSrcPath     m_SrcPath; 
    BOOL         m_bBrowse;    

public:
    void ShowBtn(BOOL bShow);
protected:
    //{{AFX_MSG(CSrcGrpDlg)
    afx_msg void OnOK();
    afx_msg int  OnCreate(LPCREATESTRUCT lpCreateStruct);
    afx_msg void OnDestroy();
    afx_msg LRESULT OnTabChanged(WPARAM, LPARAM);
	afx_msg void OnSize(UINT nType, int cx, int cy);    	
	afx_msg void OnClose();
    afx_msg void OnSrcgrp6Save();
    afx_msg void OnSrcgrp6Restore();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	//}}AFX_MSG
    DECLARE_MESSAGE_MAP()

};       
