Added more editor mode support

This commit is contained in:
locka%iol.ie 1999-08-29 16:01:25 +00:00
Родитель 98f602bbcc
Коммит c7b8b1e1d9
5 изменённых файлов: 68 добавлений и 338 удалений

Просмотреть файл

@ -6,6 +6,7 @@
#include "cbrowse.h"
#include "CBrowseDlg.h"
#include "ControlEventSink.h"
#include "..\..\DHTMLCmdIds.h"
#ifdef _DEBUG
#define new DEBUG_NEW
@ -80,6 +81,9 @@ BEGIN_MESSAGE_MAP(CBrowseDlg, CDialog)
ON_WM_SIZE()
ON_BN_CLICKED(IDC_EDITMODE, OnEditMode)
//}}AFX_MSG_MAP
ON_COMMAND(IDB_BOLD, OnEditBold)
ON_COMMAND(IDB_ITALIC, OnEditItalic)
ON_COMMAND(IDB_UNDERLINE, OnEditUnderline)
END_MESSAGE_MAP()
#define IL_CLOSEDFOLDER 0
@ -87,6 +91,7 @@ END_MESSAGE_MAP()
#define IL_TEST 2
#define IL_TESTFAILED 3
#define IL_TESTPASSED 4
#define IL_TESTPARTIAL 5
#define IL_NODE IL_TEST
/////////////////////////////////////////////////////////////////////////////
@ -132,7 +137,12 @@ BOOL CBrowseDlg::OnInitDialog()
m_cImageList.Add(AfxGetApp()->LoadIcon(IDI_TEST));
m_cImageList.Add(AfxGetApp()->LoadIcon(IDI_TESTFAILED));
m_cImageList.Add(AfxGetApp()->LoadIcon(IDI_TESTPASSED));
m_cImageList.Add(AfxGetApp()->LoadIcon(IDI_TESTPARTIAL));
// Set up the editor bar
m_EditBar.Create(this);
m_EditBar.LoadToolBar(IDR_DHTMLEDIT);
m_EditBar.SetWindowPos(&wndTop, 0, 0, 400, 40, SWP_SHOWWINDOW);
// Set up some URLs. The first couple are internal
m_cmbURLs.AddString(m_szTestURL);
@ -689,7 +699,7 @@ void CBrowseDlg::OnDestroy()
delete this;
}
void CBrowseDlg::OnEditMode()
void CBrowseDlg::ExecOleCommand(const GUID *pguidGroup, DWORD nCmdId)
{
CComPtr<IUnknown> spUnkBrowser;
m_pControlSite->GetControlUnknown(&spUnkBrowser);
@ -697,12 +707,39 @@ void CBrowseDlg::OnEditMode()
CIPtr(IOleCommandTarget) spCommandTarget = spUnkBrowser;
if (spCommandTarget)
{
DWORD nCmdID = (m_btnEditMode.GetCheck()) ? IDM_EDITMODE : IDM_BROWSEMODE;
spCommandTarget->Exec(&CGID_MSHTML, nCmdID, 0, NULL, NULL);
HRESULT hr = spCommandTarget->Exec(&CGID_MSHTML, nCmdId, 0, NULL, NULL);
OutputString(_T("Exec(%d), returned %08x"), (int) nCmdId, hr);
}
else
{
OutputString(_T("Error: Browser does not support IOleCommandTarget"));
}
}
void CBrowseDlg::OnEditMode()
{
DWORD nCmdID = (m_btnEditMode.GetCheck()) ? IDM_EDITMODE : IDM_BROWSEMODE;
ExecOleCommand(&CGID_MSHTML, nCmdID);
// if (m_pControlSite)
// {
// m_pControlSite->SetAmbientUserMode((m_btnEditMode.GetCheck() == 0) ? FALSE : TRUE);
// }
}
void CBrowseDlg::OnEditBold()
{
ExecOleCommand(&CGID_MSHTML, IDM_BOLD);
}
void CBrowseDlg::OnEditItalic()
{
ExecOleCommand(&CGID_MSHTML, IDM_ITALIC);
}
void CBrowseDlg::OnEditUnderline()
{
ExecOleCommand(&CGID_MSHTML, IDM_UNDERLINE);
}

Просмотреть файл

@ -35,6 +35,7 @@ public:
void UpdateTest(HTREEITEM hItem, TestResult nResult);
void UpdateTestSet(HTREEITEM hItem);
void OutputString(const TCHAR *szMessage, ...);
void ExecOleCommand(const GUID *pguidGroup, DWORD nCmdId);
// Dialog Data
//{{AFX_DATA(CBrowseDlg)
@ -44,6 +45,7 @@ public:
BOOL m_bNewWindow;
//}}AFX_DATA
CToolBar m_EditBar;
CPropertySheet m_dlgPropSheet;
CTabMessages m_TabMessages;
CTabTests m_TabTests;
@ -80,6 +82,10 @@ protected:
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnEditMode();
//}}AFX_MSG
afx_msg void OnEditBold();
afx_msg void OnEditItalic();
afx_msg void OnEditUnderline();
DECLARE_MESSAGE_MAP()
};

Просмотреть файл

@ -1,323 +0,0 @@
# Microsoft Developer Studio Project File - Name="cbrowse" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Application" 0x0101
CFG=cbrowse - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "cbrowse.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "cbrowse.mak" CFG="cbrowse - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "cbrowse - Win32 Release" (based on "Win32 (x86) Application")
!MESSAGE "cbrowse - Win32 Debug" (based on "Win32 (x86) Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "cbrowse - Win32 Release"
# PROP BASE Use_MFC 6
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 6
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
# ADD MTL /nologo /D "NDEBUG" /o "NUL" /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"
# ADD RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:windows /machine:I386
# ADD LINK32 /nologo /subsystem:windows /machine:I386
!ELSEIF "$(CFG)" == "cbrowse - Win32 Debug"
# PROP BASE Use_MFC 6
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 6
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /FR /Yu"stdafx.h" /FD /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
# ADD MTL /nologo /D "_DEBUG" /o "NUL" /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL"
# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
# ADD LINK32 /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
!ENDIF
# Begin Target
# Name "cbrowse - Win32 Release"
# Name "cbrowse - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\ActiveScriptSite.cpp
# End Source File
# Begin Source File
SOURCE=.\cbrowse.cpp
# End Source File
# Begin Source File
SOURCE=.\Cbrowse.idl
# ADD MTL /h "Cbrowse_i.h" /iid "Cbrowse_i.c" /Oicf
# End Source File
# Begin Source File
SOURCE=.\cbrowse.rc
# End Source File
# Begin Source File
SOURCE=.\CBrowseDlg.cpp
# End Source File
# Begin Source File
SOURCE=.\CBrowserCtlSite.cpp
# End Source File
# Begin Source File
SOURCE=.\ControlEventSink.cpp
# End Source File
# Begin Source File
SOURCE=..\..\ControlSite.cpp
# End Source File
# Begin Source File
SOURCE=..\..\ControlSiteIPFrame.cpp
# End Source File
# Begin Source File
SOURCE=.\EditToolBar.cpp
# End Source File
# Begin Source File
SOURCE=..\..\MozActiveX.java
# End Source File
# Begin Source File
SOURCE=.\PickerDlg.cpp
# End Source File
# Begin Source File
SOURCE=..\..\PropertyBag.cpp
# End Source File
# Begin Source File
SOURCE=.\StdAfx.cpp
# ADD CPP /Yc"stdafx.h"
# End Source File
# Begin Source File
SOURCE=.\TabDOM.cpp
# End Source File
# Begin Source File
SOURCE=.\TabMessages.cpp
# End Source File
# Begin Source File
SOURCE=.\TabTests.cpp
# End Source File
# Begin Source File
SOURCE=.\Tests.cpp
# End Source File
# Begin Source File
SOURCE=.\TestScriptHelper.cpp
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\..\ActiveScriptSite.h
# End Source File
# Begin Source File
SOURCE=.\cbrowse.h
# End Source File
# Begin Source File
SOURCE=.\Cbrowse_i.h
# End Source File
# Begin Source File
SOURCE=.\CBrowseDlg.h
# End Source File
# Begin Source File
SOURCE=.\CBrowserCtlSite.h
# End Source File
# Begin Source File
SOURCE=.\ControlEventSink.h
# End Source File
# Begin Source File
SOURCE=..\..\ControlSite.h
# End Source File
# Begin Source File
SOURCE=..\..\ControlSiteIPFrame.h
# End Source File
# Begin Source File
SOURCE=.\EditToolBar.h
# End Source File
# Begin Source File
SOURCE=.\PickerDlg.h
# End Source File
# Begin Source File
SOURCE=.\Resource.h
# End Source File
# Begin Source File
SOURCE=.\StdAfx.h
# End Source File
# Begin Source File
SOURCE=.\TabDOM.h
# End Source File
# Begin Source File
SOURCE=.\TabMessages.h
# End Source File
# Begin Source File
SOURCE=.\TabTests.h
# End Source File
# Begin Source File
SOURCE=.\Tests.h
# End Source File
# Begin Source File
SOURCE=.\TestScriptHelper.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
# Begin Source File
SOURCE=.\res\cbrowse.ico
# End Source File
# Begin Source File
SOURCE=.\res\cbrowse.rc2
# End Source File
# Begin Source File
SOURCE=.\res\closedfolder.ico
# End Source File
# Begin Source File
SOURCE=.\res\openfold.ico
# End Source File
# Begin Source File
SOURCE=.\res\openfolder.ico
# End Source File
# Begin Source File
SOURCE=.\res\test.ico
# End Source File
# Begin Source File
SOURCE=.\res\testfailed.ico
# End Source File
# Begin Source File
SOURCE=.\res\testpassed.ico
# End Source File
# Begin Source File
SOURCE=.\res\toolbar1.bmp
# End Source File
# End Group
# Begin Group "Scripts"
# PROP Default_Filter "js;vbs"
# Begin Source File
SOURCE=.\Scripts\Basic.vbs
# End Source File
# Begin Source File
SOURCE=.\Scripts\NewWindow.vbs
# End Source File
# Begin Source File
SOURCE=.\Scripts\Post.vbs
# End Source File
# End Group
# Begin Source File
SOURCE=.\Cbrowse.rgs
# End Source File
# Begin Source File
SOURCE=.\CBrowserCtlSite.rgs
# End Source File
# Begin Source File
SOURCE=.\ControlEventSink.rgs
# End Source File
# Begin Source File
SOURCE=.\ReadMe.txt
# End Source File
# Begin Source File
SOURCE=.\TestScriptHelper.rgs
# End Source File
# End Target
# End Project
# Section cbrowse : {10404710-0021-001E-1B00-1B00EAA80000}
# 1:11:IDR_CBROWSE:103
# End Section

Просмотреть файл

@ -32,6 +32,7 @@ IDI_CLOSEDFOLDER ICON DISCARDABLE "res\\closedfolder.ico"
IDI_OPENFOLDER ICON DISCARDABLE "res\\openfolder.ico"
IDI_TESTPASSED ICON DISCARDABLE "res\\testpassed.ico"
IDI_TESTFAILED ICON DISCARDABLE "res\\testfailed.ico"
IDI_TESTPARTIAL ICON DISCARDABLE "res\\testpartial.ico"
#endif // Neutral resources
/////////////////////////////////////////////////////////////////////////////
@ -103,18 +104,18 @@ CAPTION "CBrowse"
FONT 8, "MS Sans Serif"
BEGIN
CONTROL "",IDC_TAB_MARKER,"Static",SS_BLACKFRAME,7,223,279,89
RTEXT "&URL:",IDC_STATIC,6,13,18,8
DEFPUSHBUTTON "&Go",IDC_GO,134,11,25,13
CONTROL "",IDC_BROWSER_MARKER,"Static",SS_BLACKFRAME,7,29,279,
187
COMBOBOX IDC_URL,26,11,106,52,CBS_DROPDOWN | CBS_AUTOHSCROLL |
RTEXT "&URL:",IDC_STATIC,7,26,18,8
DEFPUSHBUTTON "&Go",IDC_GO,135,24,25,13
CONTROL "",IDC_BROWSER_MARKER,"Static",SS_BLACKFRAME,7,42,279,
174
COMBOBOX IDC_URL,27,24,106,52,CBS_DROPDOWN | CBS_AUTOHSCROLL |
WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "<",IDC_BACKWARD,162,11,14,13
PUSHBUTTON ">",IDC_FORWARD,178,11,14,13
PUSHBUTTON "<",IDC_BACKWARD,163,24,14,13
PUSHBUTTON ">",IDC_FORWARD,179,24,14,13
CONTROL "&New window",IDC_NEWWINDOW,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,199,7,53,10
WS_TABSTOP,200,20,53,10
CONTROL "&Edit mode",IDC_EDITMODE,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,199,17,47,10
WS_TABSTOP,200,30,47,10
END
@ -370,6 +371,13 @@ BEGIN
IDD_TAB_DOM "DOM"
END
STRINGTABLE DISCARDABLE
BEGIN
IDB_BOLD "Bold"
IDB_ITALIC "Italic"
IDB_UNDERLINE "Underline"
END
#endif // English (U.K.) resources
/////////////////////////////////////////////////////////////////////////////

Просмотреть файл

@ -19,6 +19,7 @@
#define IDD_TAB_TESTS 136
#define IDD_TAB_DOM 137
#define IDR_DHTMLEDIT 138
#define IDI_TESTPARTIAL 140
#define IDC_URL 1000
#define IDC_GO 1001
#define IDC_BROWSER_MARKER 1002
@ -41,6 +42,7 @@
#define IDC_CHECK1 1021
#define IDC_EDIT1 1022
#define IDC_EDITMODE 1023
#define IDC_BUTTON1 1024
#define IDB_BOLD 32771
#define IDB_ITALIC 32772
#define IDB_UNDERLINE 32773
@ -54,9 +56,9 @@
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 140
#define _APS_NEXT_RESOURCE_VALUE 141
#define _APS_NEXT_COMMAND_VALUE 32779
#define _APS_NEXT_CONTROL_VALUE 1024
#define _APS_NEXT_CONTROL_VALUE 1025
#define _APS_NEXT_SYMED_VALUE 107
#endif
#endif