зеркало из https://github.com/mozilla/pjs.git
New tab dialogs
This commit is contained in:
Родитель
a08d912154
Коммит
ec1b6fdff8
|
@ -0,0 +1,66 @@
|
||||||
|
// TabDOM.cpp : implementation file
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "stdafx.h"
|
||||||
|
#include "cbrowse.h"
|
||||||
|
#include "TabDOM.h"
|
||||||
|
#include "CBrowseDlg.h"
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
#define new DEBUG_NEW
|
||||||
|
#undef THIS_FILE
|
||||||
|
static char THIS_FILE[] = __FILE__;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// CTabDOM property page
|
||||||
|
|
||||||
|
IMPLEMENT_DYNCREATE(CTabDOM, CPropertyPage)
|
||||||
|
|
||||||
|
CTabDOM::CTabDOM() : CPropertyPage(CTabDOM::IDD, CTabDOM::IDD)
|
||||||
|
{
|
||||||
|
//{{AFX_DATA_INIT(CTabDOM)
|
||||||
|
// NOTE: the ClassWizard will add member initialization here
|
||||||
|
//}}AFX_DATA_INIT
|
||||||
|
}
|
||||||
|
|
||||||
|
CTabDOM::~CTabDOM()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void CTabDOM::DoDataExchange(CDataExchange* pDX)
|
||||||
|
{
|
||||||
|
CPropertyPage::DoDataExchange(pDX);
|
||||||
|
//{{AFX_DATA_MAP(CTabDOM)
|
||||||
|
DDX_Control(pDX, IDC_DOMLIST, m_tcDOM);
|
||||||
|
//}}AFX_DATA_MAP
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN_MESSAGE_MAP(CTabDOM, CPropertyPage)
|
||||||
|
//{{AFX_MSG_MAP(CTabDOM)
|
||||||
|
ON_BN_CLICKED(IDC_REFRESHDOM, OnRefreshDOM)
|
||||||
|
//}}AFX_MSG_MAP
|
||||||
|
END_MESSAGE_MAP()
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// CTabDOM message handlers
|
||||||
|
|
||||||
|
void CTabDOM::OnRefreshDOM()
|
||||||
|
{
|
||||||
|
if (m_pBrowseDlg)
|
||||||
|
{
|
||||||
|
m_pBrowseDlg->OnRefreshDOM();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL CTabDOM::OnInitDialog()
|
||||||
|
{
|
||||||
|
CPropertyPage::OnInitDialog();
|
||||||
|
|
||||||
|
// Create the DOM tree
|
||||||
|
m_tcDOM.SetImageList(&m_pBrowseDlg->m_cImageList, TVSIL_NORMAL);
|
||||||
|
|
||||||
|
return TRUE; // return TRUE unless you set the focus to a control
|
||||||
|
// EXCEPTION: OCX Property Pages should return FALSE
|
||||||
|
}
|
|
@ -0,0 +1,46 @@
|
||||||
|
// TabMessages.cpp : implementation file
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "stdafx.h"
|
||||||
|
#include "cbrowse.h"
|
||||||
|
#include "TabMessages.h"
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
#define new DEBUG_NEW
|
||||||
|
#undef THIS_FILE
|
||||||
|
static char THIS_FILE[] = __FILE__;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// CTabMessages property page
|
||||||
|
|
||||||
|
IMPLEMENT_DYNCREATE(CTabMessages, CPropertyPage)
|
||||||
|
|
||||||
|
CTabMessages::CTabMessages() : CPropertyPage(CTabMessages::IDD, CTabMessages::IDD)
|
||||||
|
{
|
||||||
|
//{{AFX_DATA_INIT(CTabMessages)
|
||||||
|
// NOTE: the ClassWizard will add member initialization here
|
||||||
|
//}}AFX_DATA_INIT
|
||||||
|
}
|
||||||
|
|
||||||
|
CTabMessages::~CTabMessages()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void CTabMessages::DoDataExchange(CDataExchange* pDX)
|
||||||
|
{
|
||||||
|
CPropertyPage::DoDataExchange(pDX);
|
||||||
|
//{{AFX_DATA_MAP(CTabMessages)
|
||||||
|
DDX_Control(pDX, IDC_OUTPUT, m_lbMessages);
|
||||||
|
//}}AFX_DATA_MAP
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN_MESSAGE_MAP(CTabMessages, CPropertyPage)
|
||||||
|
//{{AFX_MSG_MAP(CTabMessages)
|
||||||
|
// NOTE: the ClassWizard will add message map macros here
|
||||||
|
//}}AFX_MSG_MAP
|
||||||
|
END_MESSAGE_MAP()
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// CTabMessages message handlers
|
|
@ -0,0 +1,53 @@
|
||||||
|
#if !defined(AFX_TABMESSAGES_H__33D0A350_12E1_11D3_9407_000000000000__INCLUDED_)
|
||||||
|
#define AFX_TABMESSAGES_H__33D0A350_12E1_11D3_9407_000000000000__INCLUDED_
|
||||||
|
|
||||||
|
#if _MSC_VER > 1000
|
||||||
|
#pragma once
|
||||||
|
#endif // _MSC_VER > 1000
|
||||||
|
// TabMessages.h : header file
|
||||||
|
//
|
||||||
|
|
||||||
|
class CBrowseDlg;
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// CTabMessages dialog
|
||||||
|
|
||||||
|
class CTabMessages : public CPropertyPage
|
||||||
|
{
|
||||||
|
DECLARE_DYNCREATE(CTabMessages)
|
||||||
|
|
||||||
|
// Construction
|
||||||
|
public:
|
||||||
|
CTabMessages();
|
||||||
|
~CTabMessages();
|
||||||
|
|
||||||
|
CBrowseDlg *m_pBrowseDlg;
|
||||||
|
|
||||||
|
// Dialog Data
|
||||||
|
//{{AFX_DATA(CTabMessages)
|
||||||
|
enum { IDD = IDD_TAB_MESSAGES };
|
||||||
|
CListBox m_lbMessages;
|
||||||
|
//}}AFX_DATA
|
||||||
|
|
||||||
|
|
||||||
|
// Overrides
|
||||||
|
// ClassWizard generate virtual function overrides
|
||||||
|
//{{AFX_VIRTUAL(CTabMessages)
|
||||||
|
protected:
|
||||||
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
||||||
|
//}}AFX_VIRTUAL
|
||||||
|
|
||||||
|
// Implementation
|
||||||
|
protected:
|
||||||
|
// Generated message map functions
|
||||||
|
//{{AFX_MSG(CTabMessages)
|
||||||
|
// NOTE: the ClassWizard will add member functions here
|
||||||
|
//}}AFX_MSG
|
||||||
|
DECLARE_MESSAGE_MAP()
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
//{{AFX_INSERT_LOCATION}}
|
||||||
|
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||||
|
|
||||||
|
#endif // !defined(AFX_TABMESSAGES_H__33D0A350_12E1_11D3_9407_000000000000__INCLUDED_)
|
|
@ -0,0 +1,110 @@
|
||||||
|
// TabTests.cpp : implementation file
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "stdafx.h"
|
||||||
|
#include "cbrowse.h"
|
||||||
|
#include "TabTests.h"
|
||||||
|
#include "CBrowseDlg.h"
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
#define new DEBUG_NEW
|
||||||
|
#undef THIS_FILE
|
||||||
|
static char THIS_FILE[] = __FILE__;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// CTabTests property page
|
||||||
|
|
||||||
|
IMPLEMENT_DYNCREATE(CTabTests, CPropertyPage)
|
||||||
|
|
||||||
|
CTabTests::CTabTests() : CPropertyPage(CTabTests::IDD, CTabTests::IDD)
|
||||||
|
{
|
||||||
|
//{{AFX_DATA_INIT(CTabTests)
|
||||||
|
m_szTestDescription = _T("");
|
||||||
|
//}}AFX_DATA_INIT
|
||||||
|
}
|
||||||
|
|
||||||
|
CTabTests::~CTabTests()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void CTabTests::DoDataExchange(CDataExchange* pDX)
|
||||||
|
{
|
||||||
|
CPropertyPage::DoDataExchange(pDX);
|
||||||
|
//{{AFX_DATA_MAP(CTabTests)
|
||||||
|
DDX_Control(pDX, IDC_RUNTEST, m_btnRunTest);
|
||||||
|
DDX_Control(pDX, IDC_TESTLIST, m_tcTests);
|
||||||
|
DDX_Text(pDX, IDC_TESTDESCRIPTION, m_szTestDescription);
|
||||||
|
//}}AFX_DATA_MAP
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BEGIN_MESSAGE_MAP(CTabTests, CPropertyPage)
|
||||||
|
//{{AFX_MSG_MAP(CTabTests)
|
||||||
|
ON_BN_CLICKED(IDC_RUNTEST, OnRunTest)
|
||||||
|
ON_NOTIFY(TVN_SELCHANGED, IDC_TESTLIST, OnSelchangedTestlist)
|
||||||
|
ON_NOTIFY(NM_DBLCLK, IDC_TESTLIST, OnDblclkTestlist)
|
||||||
|
//}}AFX_MSG_MAP
|
||||||
|
END_MESSAGE_MAP()
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// CTabTests message handlers
|
||||||
|
|
||||||
|
void CTabTests::OnRunTest()
|
||||||
|
{
|
||||||
|
m_pBrowseDlg->OnRunTest();
|
||||||
|
}
|
||||||
|
|
||||||
|
void CTabTests::OnSelchangedTestlist(NMHDR* pNMHDR, LRESULT* pResult)
|
||||||
|
{
|
||||||
|
NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
|
||||||
|
|
||||||
|
BOOL bItemSelected = FALSE;
|
||||||
|
m_szTestDescription.Empty();
|
||||||
|
|
||||||
|
HTREEITEM hItem = m_tcTests.GetNextItem(NULL, TVGN_FIRSTVISIBLE);
|
||||||
|
while (hItem)
|
||||||
|
{
|
||||||
|
UINT nState;
|
||||||
|
|
||||||
|
nState = m_tcTests.GetItemState(hItem, TVIS_SELECTED);
|
||||||
|
if (nState & TVIS_SELECTED)
|
||||||
|
{
|
||||||
|
bItemSelected = TRUE;
|
||||||
|
if (m_tcTests.ItemHasChildren(hItem))
|
||||||
|
{
|
||||||
|
TestSet *pTestSet = (TestSet *) m_tcTests.GetItemData(hItem);
|
||||||
|
m_szTestDescription = pTestSet->szDesc;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Test *pTest = (Test *) m_tcTests.GetItemData(hItem);
|
||||||
|
m_szTestDescription = pTest->szDesc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
hItem = m_tcTests.GetNextItem(hItem, TVGN_NEXTVISIBLE);
|
||||||
|
}
|
||||||
|
|
||||||
|
UpdateData(FALSE);
|
||||||
|
m_btnRunTest.EnableWindow(bItemSelected);
|
||||||
|
|
||||||
|
*pResult = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void CTabTests::OnDblclkTestlist(NMHDR* pNMHDR, LRESULT* pResult)
|
||||||
|
{
|
||||||
|
OnRunTest();
|
||||||
|
*pResult = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL CTabTests::OnInitDialog()
|
||||||
|
{
|
||||||
|
CPropertyPage::OnInitDialog();
|
||||||
|
|
||||||
|
m_pBrowseDlg->PopulateTests();
|
||||||
|
|
||||||
|
return TRUE; // return TRUE unless you set the focus to a control
|
||||||
|
// EXCEPTION: OCX Property Pages should return FALSE
|
||||||
|
}
|
Загрузка…
Ссылка в новой задаче