From 100432dc9e16a7a43e8ff328e21c55cd7e295fa1 Mon Sep 17 00:00:00 2001 From: Gerald Schmidt Date: Tue, 18 Dec 2007 01:28:12 +0000 Subject: [PATCH] Corrected catalog-based DTD validation (hence 1.1.0.4 rel. 2). --- src/xmlcopyeditor.cpp | 18 ++++++++++++++---- src/xmlcopyeditorcopy.h | 2 +- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/xmlcopyeditor.cpp b/src/xmlcopyeditor.cpp index 2c31431..3359cb9 100755 --- a/src/xmlcopyeditor.cpp +++ b/src/xmlcopyeditor.cpp @@ -3590,7 +3590,6 @@ void MyFrame::OnUpdateClosePane ( wxUpdateUIEvent& event ) event.Enable ( i1.IsShown() || i2.IsShown() || i3.IsShown() ); } -/* void MyFrame::OnValidateDTD ( wxCommandEvent& event ) { statusProgress ( wxEmptyString ); @@ -3651,7 +3650,6 @@ void MyFrame::OnValidateDTD ( wxCommandEvent& event ) statusProgress ( wxEmptyString ); documentOk ( _ ( "valid" ) ); } -*/ void MyFrame::OnValidateRelaxNG ( wxCommandEvent& event ) { @@ -3772,6 +3770,17 @@ void MyFrame::OnValidateSchema ( wxCommandEvent& event ) if ( ( doc = getActiveDocument() ) == NULL ) return; + // branch: if no XML Schema found, use LibXML DTD parser instead + // so the catalog is read - switch when Xerces-C implements + // XMLCatalogResolver + std::string rawBuffer, schemaLocation; + getRawText ( doc, rawBuffer ); + auto_ptr xsl (new XmlSchemaLocator() ); + xsl->parse ( rawBuffer.c_str() ); + if ( ( xsl->getSchemaLocation() ) . empty() ) + OnValidateDTD ( event ); + // end of branch + wxString fileName; std::string tempFileNameLocal; fileName = doc->getFullFileName(); @@ -5417,6 +5426,7 @@ void MyFrame::statusProgress ( const wxString& s ) void MyFrame::messagePane ( const wxString& s, int iconType, bool forcePane ) { + statusProgress ( wxEmptyString ); wxString paneTitle; switch ( iconType ) { @@ -5884,8 +5894,8 @@ void MyFrame::loadBitmaps() internetBitmap = wxBITMAP ( stock_internet ); hyperlinkBitmap = wxBITMAP ( stock_hyperlink ); filtersBitmap = wxBITMAP ( stock_filters ); - checkWellformedBitmap = wxNullBitmap; - checkValidBitmap = wxNullBitmap; + checkWellformedBitmap = wxBITMAP ( stock_calc-accept ); + checkValidBitmap = wxBITMAP ( stock_calc-accept-green ); // menu icons new16Bitmap = wxBITMAP ( stock_new_16 ); diff --git a/src/xmlcopyeditorcopy.h b/src/xmlcopyeditorcopy.h index cff0698..5bb3704 100755 --- a/src/xmlcopyeditorcopy.h +++ b/src/xmlcopyeditorcopy.h @@ -41,5 +41,5 @@ "License along with this program; if not, write to the Free\n"\ "Software Foundation, Inc., 59 Temple Place, Suite 330,\n"\ "Boston, MA 02111-1307 USA.") -#define ABOUT_VERSION _T("1.1.0.3") +#define ABOUT_VERSION _T("1.1.0.4") #define XMLCE_VAR _T("XMLCE_VAR")