From d912c0e116080cf2583fc276fde2c530b9f8f956 Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期三, 11 十二月 2024 16:33:18 +0800
Subject: [PATCH] update
---
jrj/xframe/devloper/XDevEditDbmap.cpp | 16
jrj/xframe/kobject/kreport.hpp | 7
jrj/xframe/devloper/XDevEditXDV.cpp | 13
jrj/xframe/devloper/XDevEditXAction.cpp | 9
jrj/xframe/devloper/XDevEditXApp.cpp | 73 +++---
jrj/ext-jrj/ext-jrj.vcxproj | 56 ++--
jrj/xframe/devloper/XDevEditXFile.cpp | 12
jrj/xframe/devloper/XDevEditXRuler.cpp | 2
jrj/xframe/devloper/XDevEditXMSSQL.cpp | 42 ++-
jrj/xframe/kobject/kxml.hpp | 386 +++++++++++++++++++++++++++++++++++
jrj/xframe/devloper/XDevEditXML.cpp | 11
11 files changed, 518 insertions(+), 109 deletions(-)
diff --git a/jrj/ext-jrj/ext-jrj.vcxproj b/jrj/ext-jrj/ext-jrj.vcxproj
index 49ace90..1c5947d 100644
--- a/jrj/ext-jrj/ext-jrj.vcxproj
+++ b/jrj/ext-jrj/ext-jrj.vcxproj
@@ -1176,60 +1176,60 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditDbmap.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXAction.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXApp.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXDV.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXFile.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditFlow.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditHtml.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXLayer.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXML.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXMSSQL.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXOffice.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXPage.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXQuery.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXRuler.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
+ <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\xframe\devloper\XDevEditXWKDlg.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
diff --git a/jrj/xframe/devloper/XDevEditDbmap.cpp b/jrj/xframe/devloper/XDevEditDbmap.cpp
index 3b3cd2d..284b62f 100644
--- a/jrj/xframe/devloper/XDevEditDbmap.cpp
+++ b/jrj/xframe/devloper/XDevEditDbmap.cpp
@@ -5,13 +5,14 @@
#include <xcontrol/xtreeview.hpp>
#include <xcontrol/xlayersheet.hpp>
#include <xcontrol/xsedit.hpp>
+#include "XDevEditPage.hpp"
using xml = KXMLDOMDocument;
-class export XDevEditDbmap : public xwin
+class export XDevEditDbmap : public XDevEditPage
{
public:
- XDevEditDbmap(void* implPtr, HWND hWnd) :xwin(implPtr, hWnd) {}
+ XDevEditDbmap(void* implPtr, HWND hWnd) :XDevEditPage(implPtr, hWnd) {}
public:
static XDevEditDbmap* CreateInstance(void* implPtr, void* hWnd)
{
@@ -172,7 +173,7 @@
xml x;
if (!x.loadXML(content))
{
- KXMLDOMParseError pError = x.parseError;
+ KXMLDOMParseError pError = x.parseError();
if (pError)
{
xstring str = pError.srcText();
@@ -197,8 +198,8 @@
xstring sType = OnGetType();
if (sType ==L"xml.xsd")
{
- xstring sError;
- x.ValidSchema(content, &sError);
+ BSTR sError;
+ x.ValidSchema(content.c_str(), sError);
trace(sError);
}
}
@@ -237,7 +238,7 @@
if (content ==L"") return -1;
xwin w = GetFrameWindow();
xtreeview tv_folder = w.GetControl(L"DevExplorer");
- HTREEITEM hItem = GetWinParam();
+ HTREEITEM hItem = (HTREEITEM)GetWinParam();
KXMLDOMElement e = tv_folder.GetItemData(hItem);
//trace(e.xml);
xstring str = e.getAttribute(L"type");
@@ -261,7 +262,7 @@
xstring aurl =L"";
if (n)
{
- xstring tmp =L"" + n.text();
+ xstring tmp =n.text();
aurl =L"/sale/" + xtype +L"/" + tmp +L"/" + content;
}
else
@@ -296,6 +297,7 @@
//获取焦点事件,用于重置工具条
AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditDbmap::OnSetFocus);
//AttachEvent(L"content",L"WM_LBUTTONDOWN", (FEvent)&XDeveloper::OnLButtonDown);
+ return 1;
}
int OnInitial()
diff --git a/jrj/xframe/devloper/XDevEditXAction.cpp b/jrj/xframe/devloper/XDevEditXAction.cpp
index 2d29c07..4a4b0d1 100644
--- a/jrj/xframe/devloper/XDevEditXAction.cpp
+++ b/jrj/xframe/devloper/XDevEditXAction.cpp
@@ -7,12 +7,13 @@
#include <xcontrol/xdwgrid.hpp>
#include <xcontrol/xsedit.hpp>
#include <xcontrol/xcombobox.hpp>
+#include "XDevEditPage.hpp"
using xml = KXMLDOMDocument;
-class export XDevEditAction : public xwin
+class export XDevEditAction : public XDevEditPage
{
public:
- XDevEditAction(void* implPtr, HWND hWnd) :xwin(implPtr, hWnd) {}
+ XDevEditAction(void* implPtr, HWND hWnd) :XDevEditPage(implPtr, hWnd) {}
public:
static XDevEditAction* CreateInstance(void* implPtr, void* hWnd)
{
@@ -68,7 +69,7 @@
xstring v = e1.getAttribute(L"source");
xc.SetText(L"" + v);
xc = GetControl(L"linkname");
- xstring v = e1.getAttribute(L"link");
+ v = e1.getAttribute(L"link");
xc.SetText(L"" + v);
KXMLDOMElement e2 = e.selectSingleNode(L"paras");
@@ -176,6 +177,8 @@
AttachEvent(L"WM_XCOMMAND", (FEvent) & XDevEditAction::OnXCommand);
//获取焦点事件,用于重置工具条
AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditAction::OnSetFocus);
+
+ return 1;
}
int OnInitial()
diff --git a/jrj/xframe/devloper/XDevEditXApp.cpp b/jrj/xframe/devloper/XDevEditXApp.cpp
index d7f0152..c47e298 100644
--- a/jrj/xframe/devloper/XDevEditXApp.cpp
+++ b/jrj/xframe/devloper/XDevEditXApp.cpp
@@ -74,6 +74,8 @@
xstring p = L"<box name='image_view' width='22'><xtoolbutton caption='' image='" + xstring(j) + L"'/></box>";
SetAgentNode(anode,p);
}
+
+ return 1;
}
int onClare()
@@ -125,13 +127,15 @@
SendMessage(xc.GetHWND(), 0x014E, 0, 0);
OnCombSelChanged();
+
+ return 1;
}
xstring getTVData(HTREEITEM hitem)
{
xstring result = L"";
HTREEITEM citem = tv_folder.GetChildItem(hitem);
- while (citem > 0)
+ while (citem)
{
xstring str = (wchar_t*)tv_folder.GetItemData(citem);
xstring name = str.mid(1,str.find(L" ",0));
@@ -170,7 +174,7 @@
{
int index = s.toInt();
HTREEITEM h = tv_folder.GetChildItem(hitem);
- while (h > 0)
+ while (h)
{
xstring p = (wchar_t*)tv_folder.GetItemData(h);
xml x ;
@@ -205,6 +209,7 @@
copyNode(citem,h);
citem = tv_folder.GetNextItem(citem);
}
+ return 1;
}
//命令发布函数
@@ -420,44 +425,46 @@
}
}
xc = GetControl(L"image");
- xstring str = e.getAttribute(L"image");
+ str = e.getAttribute(L"image");
//xc.SetText(L""+str);
SendMessage(xc.GetHWND(), 0x014E, str.toInt(), 0);
xc = GetControl(L"index");
- xstring str = e.getAttribute(L"index");
+ str = e.getAttribute(L"index");
xc.SetText(L"" + str);
xc = GetControl(L"code");
- xstring str = e.getAttribute(L"code");
+ str = e.getAttribute(L"code");
xc.SetText(L"" + str);
xc = GetControl(L"name");
- xstring str = e.getAttribute(L"name");
+ str = e.getAttribute(L"name");
xc.SetText(L"" + str);
xc = GetControl(L"status");
- xstring str = e.getAttribute(L"status");
+ str = e.getAttribute(L"status");
xc.SetText(L"" + str);
OnCombSelChanged();
+
+ return 1;
}
- int OnTreeSelChanged(ref TNotifyEvent evt,int param)
+ int OnTreeSelChanged(TEvent* evt,LPARAM param)
{
- ref NMTREEVIEW nmtv = evt.pnmh;
- int hitem = nmtv.itemNew.hItem;
+ NMTREEVIEW& nmtv = *(NMTREEVIEW*)evt->notify.pnmh;
+ HTREEITEM hitem = nmtv.itemNew.hItem;
onClare();
m_mode = L"new";
if (hitem == tv_folder.GetRootItem()) return 0;
//IXMLDOMElement e = tv_folder.GetItemData(hitem);
//trace(e.xml);
- param p = tv_folder.GetItemData(hitem);
+ xstring p = (wchar_t*)tv_folder.GetItemData(hitem);
xml x ;
- x.loadXML(L"" + xstring(p));
- IXMLDOMElement e = x.documentElement;
- m_type = e.tagName;
+ x.loadXML(p);
+ KXMLDOMElement e = x.documentElement();
+ m_type = e.tagName();
if (m_type == L"file")
OnCmdDispatch(L"NewFile");
else
@@ -469,12 +476,14 @@
int OnAttachEvent()
{
//绑定工具条点击事件
- AttachEvent(L"WM_XCOMMAND",OnXCommand);
+ AttachEvent(L"WM_XCOMMAND", (FEvent)&XDevEditXApp::OnXCommand);
//获取焦点事件,用于重置工具条
- AttachEvent(L"WM_SETFOCUS",OnSetFocus);
- AttachEvent(L"image", L"CBN_SELCHANGE",OnCombSelChanged);
- AttachEvent(L"tv_folder", L"TVN_ENDDRAG",OnTreeDrag);
- AttachEvent(L"tv_folder", L"TVN_SELCHANGED",OnTreeSelChanged);
+ AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditXApp::OnSetFocus);
+ AttachEvent(L"image", L"CBN_SELCHANGE", (FEvent)&XDevEditXApp::OnCombSelChanged);
+ AttachEvent(L"tv_folder", L"TVN_ENDDRAG", (FEvent)&XDevEditXApp::OnTreeDrag);
+ AttachEvent(L"tv_folder", L"TVN_SELCHANGED", (FEvent)&XDevEditXApp::OnTreeSelChanged);
+
+ return 1;
}
int OnInitial()
@@ -487,7 +496,7 @@
int i;
for (i = 0; i < 35; i++)
{
- SendMessage(xc.GetHWND(), 0x0143, 0, i.toString());
+ SendMessage(xc.GetHWND(), 0x0143, 0, (LPARAM)xstring(i).c_str());
//param p=i.toString();
//SendMessage(xc.GetHWND(), 0x0151, i, p);
}
@@ -496,21 +505,19 @@
return 1;
}
- int OnTreeAdd(int hitem, IXMLDOMElement e)
+ int OnTreeAdd(HTREEITEM hitem, KXMLDOMElement e)
{
auto list = e.selectNodes(L"*");
int i;
- int s = list.length;
+ int s = list.length();
for (i = 0; i < s; i++)
{
- IXMLDOMElement ele = list.item(i);
+ KXMLDOMElement ele = list.item(i);
xstring name = ele.getAttribute(L"caption");
xstring image = ele.getAttribute(L"image");
- image = L"" + image;
- xstring data = ele.xml;
+ xstring data = ele.xml();
data = data.mid(0,data.find(L">",1)) + L"/>";
- param p = data;
- int j = tv_folder.InsertChildItem(hitem,name,p,image.toInt());
+ HTREEITEM j = tv_folder.InsertChildItem(hitem,name.c_str(), (LPARAM)data.c_str(true), image.toInt());
OnTreeAdd(j,ele);
}
return 1;
@@ -529,13 +536,13 @@
OnCmdDispatch(L"NewFolder");
m_mode = L"new";
- if (!GetParam()) return 1;
+ if (!GetWinParam()) return 1;
xwin w = GetFrameWindow();
- xtree tv = w.GetControl(L"DevExplorer");
- int hItem = GetParam();
- IXMLDOMElement e = tv.GetItemData(hItem);
+ xtreeview tv = w.GetControl(L"DevExplorer");
+ HTREEITEM hItem = (HTREEITEM)GetWinParam();
+ KXMLDOMElement e = tv.GetItemData(hItem);
xstring name = e.getAttribute(L"caption");
- int root = tv_folder.InsertItem(L"" + name,e,17);
+ HTREEITEM root = tv_folder.InsertItem(name.c_str(), e, 17);
xstring content = GetData();
if (content != L"")
{
@@ -543,7 +550,7 @@
xml x ;
if (x.loadXML(content))
{
- OnTreeAdd(root,x.documentElement);
+ OnTreeAdd(root,x.documentElement());
tv_folder.ExpandItemEx(root);
}
}
diff --git a/jrj/xframe/devloper/XDevEditXDV.cpp b/jrj/xframe/devloper/XDevEditXDV.cpp
index 621b492..73adc40 100644
--- a/jrj/xframe/devloper/XDevEditXDV.cpp
+++ b/jrj/xframe/devloper/XDevEditXDV.cpp
@@ -7,12 +7,13 @@
#include <xcontrol/xdwgrid.hpp>
#include <xcontrol/xsedit.hpp>
#include <xcontrol/xcombobox.hpp>
+#include "XDevEditPage.hpp"
using xml = KXMLDOMDocument;
-class export XDevEditXDV : public xwin
+class export XDevEditXDV : public XDevEditPage
{
public:
- XDevEditXDV(void* implPtr, HWND hWnd) :xwin(implPtr, hWnd) {}
+ XDevEditXDV(void* implPtr, HWND hWnd) :XDevEditPage(implPtr, hWnd) {}
public:
static XDevEditXDV* CreateInstance(void* implPtr, void* hWnd)
{
@@ -86,7 +87,7 @@
xml x;
if (!x.loadXML(content))
{
- KXMLDOMParseError pError = x.parseError;
+ KXMLDOMParseError pError = x.parseError();
if (pError)
{
xstring str = pError.srcText();
@@ -111,8 +112,8 @@
xstring sType = OnGetType();
if (sType == L"xml.xsd")
{
- xstring sError;
- x.ValidSchema(content, &sError);
+ BSTR sError;
+ x.ValidSchema((const wchar_t*)content.c_str(), sError);
trace(sError);
}
xutil::RestoreCursor(hCursor);
@@ -142,6 +143,8 @@
AttachEvent(L"WM_XCOMMAND",(FEvent)&XDevEditXDV::OnXCommand);
//获取焦点事件,用于重置工具条
AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditXDV::OnSetFocus);
+
+ return 1;
}
/*
diff --git a/jrj/xframe/devloper/XDevEditXFile.cpp b/jrj/xframe/devloper/XDevEditXFile.cpp
index 8ec2265..a5e7e9d 100644
--- a/jrj/xframe/devloper/XDevEditXFile.cpp
+++ b/jrj/xframe/devloper/XDevEditXFile.cpp
@@ -181,8 +181,8 @@
xstring sType = OnGetType();
if (sType == L"xml.xsd")
{
- xstring sError;
- x.ValidSchema(content, &sError);
+ BSTR sError= nullptr;
+ x.ValidSchema((const wchar_t* )content.c_str(), sError);
trace(sError);
}
}
@@ -211,7 +211,7 @@
else if (sType == L"xml.xsd")
{
xml doc;
- x.GetSchemaXml(content,doc);
+ x.GetSchemaXml((LPTSTR)content.c_str(), doc);
//trace(doc.xml());
auto e = doc.selectSingleNode(L"root/schema");
if (e) {
@@ -244,7 +244,7 @@
{
HTREEITEM hP2Item = 0;
HTREEITEM hDomainItem = 0;
- if (tv_folder.GetParentItem(hItem) <= 0)
+ if (!tv_folder.GetParentItem(hItem))
{
hDomainItem = hItem;
}
@@ -302,7 +302,7 @@
{
xstring xsd = GetXSD(L"" + filename);
xml x;
- x.GetSchemaXml(xsd,x);
+ x.GetSchemaXml((LPTSTR)xsd.c_str(), x);
trace(x.xml());
/* xml x = new xml;
@@ -337,6 +337,8 @@
//获取焦点事件,用于重置工具条
AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditXFile::OnSetFocus);
AttachEvent(L"xreport",L"DWV_DOUBLECLICKED", (FEvent)&XDevEditXFile::OnDoubleClicked);
+
+ return 1;
}
int LoadData()
diff --git a/jrj/xframe/devloper/XDevEditXML.cpp b/jrj/xframe/devloper/XDevEditXML.cpp
index 1467847..4c0bdae 100644
--- a/jrj/xframe/devloper/XDevEditXML.cpp
+++ b/jrj/xframe/devloper/XDevEditXML.cpp
@@ -7,12 +7,13 @@
#include <xcontrol/xdwgrid.hpp>
#include <xcontrol/xsedit.hpp>
#include <xcontrol/xcombobox.hpp>
+#include "XDevEditPage.hpp"
using xml = KXMLDOMDocument;
-class export XDevEditXML : public xwin
+class export XDevEditXML : public XDevEditPage
{
public:
- XDevEditXML(void* implPtr, HWND hWnd) :xwin(implPtr, hWnd) {}
+ XDevEditXML(void* implPtr, HWND hWnd) :XDevEditPage(implPtr, hWnd) {}
public:
static XDevEditXML* CreateInstance(void* implPtr, void* hWnd)
{
@@ -129,8 +130,8 @@
xstring sType = OnGetType();
if (sType == L"xml.xsd")
{
- xstring sError;
- x.ValidSchema(content, &sError);
+ BSTR sError;
+ x.ValidSchema(content.c_str(), sError);
trace(sError);
}
}
@@ -227,6 +228,8 @@
//获取焦点事件,用于重置工具条
AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditXML::OnSetFocus);
//AttachEvent(L"content",L"WM_LBUTTONDOWN", ,(FEvent)&XDevEditXML::OnLButtonDown);
+
+ return 1;
}
int OnInitial()
diff --git a/jrj/xframe/devloper/XDevEditXMSSQL.cpp b/jrj/xframe/devloper/XDevEditXMSSQL.cpp
index d17d8bc..74bfb29 100644
--- a/jrj/xframe/devloper/XDevEditXMSSQL.cpp
+++ b/jrj/xframe/devloper/XDevEditXMSSQL.cpp
@@ -53,7 +53,7 @@
xstring getLink(HTREEITEM item)
{
HTREEITEM p = tv_db.GetParentItem(item);
- while (tv_db.GetParentItem(p) > 0)
+ while (tv_db.GetParentItem(p))
{
item = tv_db.GetParentItem(item);
p = tv_db.GetParentItem(item);
@@ -139,7 +139,7 @@
int onShow()
{
- while (tv_db.GetRootItem() > 0)
+ while (tv_db.GetRootItem())
tv_db.DeleteItem(tv_db.GetRootItem());
xsedit xs = GetControl(L"xcontent");
xstring content;
@@ -158,13 +158,13 @@
xstring name = ele.getAttribute(L"name");
xstring link = ele.getAttribute(L"link");
HTREEITEM k = tv_db.InsertChildItem(root,L"" + name,L"" + link,15);
- HTREEITEM j = tv_db.InsertChildItem(k,L"表",L"table",22);
+ HTREEITEM j = tv_db.InsertChildItem(k,L"表",(LPARAM)L"table",22);
tv_db.SetItemChild1(j,1);
- j = tv_db.InsertChildItem(k,L"视图",L"view",23);
+ j = tv_db.InsertChildItem(k,L"视图", (LPARAM)L"view",23);
tv_db.SetItemChild1(j,1);
- j = tv_db.InsertChildItem(k,L"存储过程",L"procedure",24);
+ j = tv_db.InsertChildItem(k,L"存储过程", (LPARAM)L"procedure",24);
tv_db.SetItemChild1(j,1);
- j = tv_db.InsertChildItem(k,L"自定义函数",L"function",25);
+ j = tv_db.InsertChildItem(k,L"自定义函数", (LPARAM)L"function",25);
tv_db.SetItemChild1(j,1);
}
tv_db.ExpandItem(root);
@@ -227,7 +227,7 @@
}
else if (comdid == L"xmQuery")
{
- xstring guid = win32::GetGuid();
+ xstring guid = publiccode::GetGuid();
xstring caption = L"Query_" + guid.mid(1,8);
if (OnOpen(caption,L"query") == 0) return 0;
xsedit xs = GetControl(L"sql_" + caption);
@@ -302,7 +302,7 @@
{
NMTREEVIEW& nmtv = *(NMTREEVIEW*)evt->notify.pnmh;
HTREEITEM item = nmtv.itemNew.hItem;
- if (tv_db.GetChildItem(item) > 0) return 0;
+ if (tv_db.GetChildItem(item)) return 0;
OnTreeExpand(item);
return 1;
}
@@ -331,13 +331,13 @@
{
tv_db.ExpandItemEx(item);
HTREEITEM gitem = tv_db.GetChildItem(item);
- while (gitem > 0)
+ while (gitem)
{
xstring data = L"" + tv_db.GetItemData(gitem);
if (data.left(6) != L"group@") break;
gitem = tv_db.GetNextItem(gitem);
}
- xstring guid = win32::GetGuid();
+ xstring guid = publiccode::GetGuid();
if (OnGroupAction(guid,L"",L"group.update") != 1) return 0;
HTREEITEM j = tv_db.InsertItem(item,gitem,L"",L"group@" + guid,25);
tv_db.ItemEdit(j);
@@ -370,7 +370,7 @@
int OnRefresh(HTREEITEM item)
{
- while (tv_db.GetChildItem(item) > 0)
+ while (tv_db.GetChildItem(item))
tv_db.DeleteItem(tv_db.GetChildItem(item));
OnTreeExpand(item);
return 1;
@@ -498,7 +498,7 @@
OnDesign(caption);
else if (popup == L"新建表")
{
- xstring guid = win32::GetGuid();
+ xstring guid = publiccode::GetGuid();
xstring text = L"Table_" + guid.mid(1,8);
OnDesign(text);
}
@@ -558,17 +558,19 @@
int OnAttachEvent()
{
//绑定工具条点击事件
- AttachEvent(L"WM_XCOMMAND",(FEvent)XDevEditXMSSQL::OnXCommand);
+ AttachEvent(L"WM_XCOMMAND",(FEvent)&XDevEditXMSSQL::OnXCommand);
//获取焦点事件,用于重置工具条
- AttachEvent(L"WM_SETFOCUS", (FEvent)XDevEditXMSSQL::OnSetFocus);
+ AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditXMSSQL::OnSetFocus);
//获得树的展开事件
- AttachEvent(L"tv_db", L"TVN_ITEMEXPANDING", (FEvent)XDevEditXMSSQL::OnTreeExpanding);
+ AttachEvent(L"tv_db", L"TVN_ITEMEXPANDING", (FEvent)&XDevEditXMSSQL::OnTreeExpanding);
//获得树的选择事件
- //AttachEvent(L"tv_db", L"TVN_SELCHANGED",(FEvent)XDevEditXMSSQL::OnTreeSelChanged);
- AttachEvent(L"tv_db", L"TVN_RCLICK", (FEvent)XDevEditXMSSQL::OnTreeRClick);
- AttachEvent(L"tv_db", L"TVN_BEGINDRAG", (FEvent)XDevEditXMSSQL::OnTreeBeginDrag);
- AttachEvent(L"tv_db", L"TVN_ENDDRAG", (FEvent)XDevEditXMSSQL::OnTreeEndDrag);
- AttachEvent(L"tv_db", L"TVN_ENDLABELEDIT", (FEvent)XDevEditXMSSQL::OnTreeEndEdit);
+ //AttachEvent(L"tv_db", L"TVN_SELCHANGED",(FEvent)&XDevEditXMSSQL::OnTreeSelChanged);
+ AttachEvent(L"tv_db", L"TVN_RCLICK", (FEvent)&XDevEditXMSSQL::OnTreeRClick);
+ AttachEvent(L"tv_db", L"TVN_BEGINDRAG", (FEvent)&XDevEditXMSSQL::OnTreeBeginDrag);
+ AttachEvent(L"tv_db", L"TVN_ENDDRAG", (FEvent)&XDevEditXMSSQL::OnTreeEndDrag);
+ AttachEvent(L"tv_db", L"TVN_ENDLABELEDIT", (FEvent)&XDevEditXMSSQL::OnTreeEndEdit);
+
+ return 1;
}
int LoadData()
diff --git a/jrj/xframe/devloper/XDevEditXRuler.cpp b/jrj/xframe/devloper/XDevEditXRuler.cpp
index a62cce0..1187c36 100644
--- a/jrj/xframe/devloper/XDevEditXRuler.cpp
+++ b/jrj/xframe/devloper/XDevEditXRuler.cpp
@@ -141,6 +141,8 @@
AttachEvent(L"WM_XCOMMAND", (FEvent)&XDevEditXRuler::OnXCommand);
//获取焦点事件,用于重置工具条
AttachEvent(L"WM_SETFOCUS", (FEvent)&XDevEditXRuler::OnSetFocus);
+
+ return 1;
}
int OnInitial()
diff --git a/jrj/xframe/kobject/kreport.hpp b/jrj/xframe/kobject/kreport.hpp
index b8ccd85..716af38 100644
--- a/jrj/xframe/kobject/kreport.hpp
+++ b/jrj/xframe/kobject/kreport.hpp
@@ -1,13 +1,14 @@
#pragma once
#include "kcontrol.hpp"
+#include "kdwview.hpp"
namespace Hxsoft{ namespace XFrame{ namespace XOffice {namespace XReport
{
- class IXReport : public IXFControl
+ class IXReport : public IDwView //public IXFControl
{
public:
- enum RowStatus{rs_new=0,rs_newmodified,rs_datamodified,rs_datanotmodified};
- enum DWBuffer{dbuf_normal=0,dbuf_filter,dbuf_delete};
+ //enum RowStatus{rs_new=0,rs_newmodified,rs_datamodified,rs_datanotmodified};
+ //enum DWBuffer{dbuf_normal=0,dbuf_filter,dbuf_delete};
public:
int GetRow_();
diff --git a/jrj/xframe/kobject/kxml.hpp b/jrj/xframe/kobject/kxml.hpp
index 8606072..a41b9fc 100644
--- a/jrj/xframe/kobject/kxml.hpp
+++ b/jrj/xframe/kobject/kxml.hpp
@@ -1,6 +1,8 @@
#pragma once
typedef wchar_t* BSTR ;
+
+#if 1
namespace Hxsoft { namespace XFrame
{
class KXMLDOMNode;
@@ -14,6 +16,8 @@
class KXMLDOMProcessingInstruction;
class KXMLDOMNodeList;
class KXMLDOMParseError;
+ class KXMLDOMParseError;
+ class KXMLDOMSchemaCollection;
enum KDOMNodeType
{
@@ -212,6 +216,13 @@
wchar_t* transformNode(KXMLDOMNode);
KXMLDOMNode transformNodeToObject(KXMLDOMNode);
+ public:
+ KXMLDOMParseError parseError();
+
+ public:
+ KXMLDOMSchemaCollection namespaces();
+ KXMLDOMSchemaCollection schemas();
+ bool setSchemas(KXMLDOMSchemaCollection collection);
KXMLDOMParseError validate();
//bool validateNode();
public:
@@ -226,6 +237,12 @@
{
if (documentElement())removeChild(documentElement());
}
+ public:
+ static bool ValidSchema(const wchar_t* pSchema, BSTR& errText);
+ static bool ValidSchema(KXMLDOMDocument xml, KXMLDOMDocument schema, BSTR& errText);
+ public:
+ static int GetSchemaXml(LPTSTR pSchema, KXMLDOMDocument& x);
+
};
class KXMLDOMAttribute : public KXMLDOMNode
@@ -275,6 +292,38 @@
KXMLDOMDocumentFragment(void* impl) :KXMLDOMNode(impl) {}
};
+ class KXMLDOMParseError : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMParseError(KXMLDOMNode& v);
+ KXMLDOMParseError(void* impl) :KXMLDOMNode(impl) {}
+ public:
+ int errorCode();
+ int filepos();
+ int line();
+ int linepos();
+ BSTR reason();
+ BSTR srcText();
+ BSTR url();
+ };
+
+ class KXMLDOMSchemaCollection
+ {
+ public:
+ protected:
+ void* impl;
+ public:
+ KXMLDOMSchemaCollection(void* impl);
+ KXMLDOMSchemaCollection();
+ KXMLDOMSchemaCollection(LPARAM p);
+ ~KXMLDOMSchemaCollection();
+ public:
+ KXMLDOMSchemaCollection(const KXMLDOMSchemaCollection& rhs);
+ const KXMLDOMSchemaCollection& operator =(const KXMLDOMSchemaCollection& rhs);
+ public:
+ void* getImpl();
+ };
+
}}
@@ -283,7 +332,10 @@
using KXMLDOMNode=Hxsoft::XFrame::KXMLDOMNode;
using KXMLDOMElement=Hxsoft::XFrame::KXMLDOMElement;
using KXMLDOMNodeList = Hxsoft::XFrame::KXMLDOMNodeList;
+using KXMLDOMParseError = Hxsoft::XFrame::KXMLDOMParseError;
+using KXMLDOMSchemaCollection = Hxsoft::XFrame::KXMLDOMSchemaCollection;
+/*
class KXMLDOMParseError : public KXMLDOMNode
{
public:
@@ -298,7 +350,7 @@
BSTR srcText();
BSTR url();
};
-
+*/
class KXMLDOMElementPtr
{
private:
@@ -315,3 +367,335 @@
KXMLDOMElement* operator -> () { return m_pElement; }
};
+#endif
+
+#if 0
+namespace Hxsoft {
+ namespace XFrame
+ {
+ class KXMLDOMNode;
+ class KXMLDOMAttribute;
+ class KXMLDOMElement;
+ class KXMLDOMCDATASection;
+ class KXMLDOMDocumentFragment;
+ class KXMLDOMComment;
+ class KXMLDOMEntityReference;
+ class KXMLDOMTextNode;
+ class KXMLDOMProcessingInstruction;
+ class KXMLDOMNodeList;
+ class KXMLDOMParseError;
+ class KXMLDOMSchemaCollection;
+
+ enum KDOMNodeType
+ {
+ KNODE_INVALID = 0,
+ KNODE_ELEMENT = (KNODE_INVALID + 1),
+ KNODE_ATTRIBUTE = (KNODE_ELEMENT + 1),
+ KNODE_TEXT = (KNODE_ATTRIBUTE + 1),
+ KNODE_CDATA_SECTION = (KNODE_TEXT + 1),
+ KNODE_ENTITY_REFERENCE = (KNODE_CDATA_SECTION + 1),
+ KNODE_ENTITY = (KNODE_ENTITY_REFERENCE + 1),
+ KNODE_PROCESSING_INSTRUCTION = (KNODE_ENTITY + 1),
+ KNODE_COMMENT = (KNODE_PROCESSING_INSTRUCTION + 1),
+ KNODE_DOCUMENT = (KNODE_COMMENT + 1),
+ KNODE_DOCUMENT_TYPE = (KNODE_DOCUMENT + 1),
+ KNODE_DOCUMENT_FRAGMENT = (KNODE_DOCUMENT_TYPE + 1),
+ KNODE_NOTATION = (KNODE_DOCUMENT_FRAGMENT + 1)
+ };
+
+ class KXMLDOMNodeList
+ {
+ public:
+ long length();
+ bool length(long&);
+ bool length(long*);
+ bool get_length(long* v) { return length(v); }
+ KXMLDOMNode item(int index);
+ bool item(int index, KXMLDOMNode& node);
+ bool item(int index, KXMLDOMNode* node);
+ bool get_item(int index, KXMLDOMNode* node) { return item(index, node); }
+ private:
+ void* impl;
+ public:
+ void* getImpl();
+ public:
+ KXMLDOMNodeList(void* impl);
+ KXMLDOMNodeList() :impl(nullptr) {}
+ ~KXMLDOMNodeList();
+ public:
+ operator bool() { return impl ? true : false; }
+ public:
+ KXMLDOMNodeList(const KXMLDOMNodeList& rhs);
+ const KXMLDOMNodeList& operator =(const KXMLDOMNodeList& rhs);
+ };
+
+ class KXMLDOMElement;
+ class KXMLDOMAttribute;
+ class KXMLDOMDocument;
+ class KXMLDOMNode {
+ public:
+ // attributes
+ // baseName
+ KXMLDOMNodeList childNodes();
+ // dataType
+ // definition
+ KXMLDOMNode firstChild();
+ KXMLDOMNode lastChild();
+ // namespaceURI
+ // namespaceURI
+ KXMLDOMNode nextSibling();
+ const wchar_t* nodeName();
+ KDOMNodeType nodeType();
+ KDOMNodeType get_nodeType() { return nodeType(); }
+ // nodeTypedValue
+ // nodeTypeString
+ // nodeValue
+ KXMLDOMDocument ownerDocument();
+ KXMLDOMNode parentNode();
+ // parsed
+ // prefix
+ KXMLDOMNode previousSibling();
+ // specified
+ const wchar_t* tagName();
+ const wchar_t* text();
+ const wchar_t* xml();
+
+ bool get_tagName(BSTR& str);
+ bool get_text(BSTR& str);
+ bool get_xml(BSTR& str);
+ bool get_tagName(BSTR* str) { return get_tagName(*str); }
+ bool get_text(BSTR* str) { return get_text(*str); }
+ bool get_xml(BSTR* str) { return get_xml(*str); }
+ bool settext(const wchar_t* txt);
+ bool put_text(const wchar_t* txt) { return settext(txt); }
+
+
+ bool appendChild(KXMLDOMNode);
+ KXMLDOMNode cloneNode(bool);
+ wchar_t* getAttribute(const wchar_t* name);
+ void getAttribute(const wchar_t* name, void* vt);
+ KXMLDOMAttribute getAttributeNode(const wchar_t* name);
+ KXMLDOMNodeList getElementsByTagName(const wchar_t* name);
+ bool hasChildNodes();
+ bool insertBefore(KXMLDOMNode newnode, KXMLDOMNode at);
+ void normalize();
+ bool removeAttribute(const wchar_t* name);
+ bool removeAttributeNode(KXMLDOMNode attr);
+ bool removeChild(KXMLDOMNode val);
+ bool replaceChild(KXMLDOMNode newChild, KXMLDOMNode oldChild);
+ KXMLDOMNodeList selectNodes(const wchar_t*);
+ KXMLDOMNode selectSingleNode(const wchar_t*);
+ bool selectNodes(const wchar_t*, KXMLDOMNodeList& pNodeList);
+ bool selectSingleNode(const wchar_t*, KXMLDOMNode& pNode);
+ bool selectNodes(const wchar_t*, KXMLDOMNodeList* pNodeList);
+ bool selectSingleNode(const wchar_t*, KXMLDOMNode* pNode);
+ void setAttribute(const wchar_t* name, const wchar_t* value);
+ void setAttribute(const wchar_t* name, long val);
+ void setAttribute(const wchar_t* name, int val);
+ void setAttribute(const wchar_t* name, double val);
+ wchar_t* transformNode(KXMLDOMNode stylesheet);
+ KXMLDOMNode transformNodeToObject(KXMLDOMNode);
+ protected:
+ void* impl;
+ public:
+ KXMLDOMNode(void* impl);
+ KXMLDOMNode() :KXMLDOMNode(nullptr) {}
+ ~KXMLDOMNode();
+ KXMLDOMNode(LPARAM p) :KXMLDOMNode((void*)p) {
+ AddRef();
+ }
+ public:
+ KXMLDOMNode(const KXMLDOMNode& rhs);
+ const KXMLDOMNode& operator =(const KXMLDOMNode& rhs);
+ public:
+ operator bool() { return impl ? true : false; }
+ public:
+ void* getImpl();
+ public:
+ unsigned long AddRef();
+ unsigned long Release();
+ public:
+ bool operator !=(KXMLDOMNode& rhs) { return rhs.getImpl() != getImpl(); }
+ bool operator ==(KXMLDOMNode& rhs) { return rhs.getImpl() == getImpl(); }
+ };
+
+ class KXMLDOMElement : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMElement(KXMLDOMNode v);
+ KXMLDOMElement(void* impl) :KXMLDOMNode(impl) {}
+ KXMLDOMElement() :KXMLDOMNode() {}
+ public:
+ KXMLDOMElement(LPARAM p) :KXMLDOMNode(p) {}
+
+ };
+ class KXMLDOMAttribute : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMAttribute(KXMLDOMNode& v);
+ KXMLDOMAttribute(void* impl) :KXMLDOMNode(impl) {}
+ };
+ class KXMLDOMCDATASection : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMCDATASection(KXMLDOMNode& v);
+ KXMLDOMCDATASection(void* impl) :KXMLDOMNode(impl) {}
+ };
+
+
+ class KXMLDOMDocument : public KXMLDOMNode
+ {
+ public:
+ bool operator !()
+ {
+ return !impl || !documentElement();
+ }
+ public:
+ const wchar_t* text();
+ const wchar_t* url();
+ const wchar_t* xml();
+ KXMLDOMElement documentElement();
+ bool documentElement(KXMLDOMElement* pDoc);
+ bool get_documentElement(KXMLDOMElement* pDoc) { return documentElement(pDoc); }
+ public:
+ KXMLDOMParseError parseError();
+ public:
+ bool appendChild(KXMLDOMNode);
+ KXMLDOMAttribute createAttribute(const wchar_t*);
+ KXMLDOMCDATASection createCDATASection(const wchar_t*);
+ KXMLDOMComment createComment(const wchar_t*);
+ KXMLDOMDocumentFragment createDocumentFragment();
+ KXMLDOMElement createElement(const wchar_t*);
+ bool createElement(const wchar_t*, KXMLDOMElement* ele);
+ KXMLDOMEntityReference createEntityReference(const wchar_t*);
+ KXMLDOMNode createNode(KDOMNodeType ty, const wchar_t* name, const wchar_t* ns);
+ KXMLDOMProcessingInstruction createProcessingInstruction(const wchar_t* target, const wchar_t* data);
+ KXMLDOMTextNode createTextNode(const wchar_t*);
+
+ KXMLDOMNodeList getElementsByTagName(const wchar_t*);
+ wchar_t* getProperty(const wchar_t*);
+ bool setProperty(const wchar_t* prop, const wchar_t* val);
+ bool setProperty(const wchar_t* prop, bool val);
+ bool hasChildNodes();
+ bool importNode(KXMLDOMNode);
+ bool insertBefore(KXMLDOMNode newnode, KXMLDOMNode at);
+ bool load(const wchar_t*);
+ bool loadXML(const wchar_t*);
+ KXMLDOMNode nodeFromID(const wchar_t*);
+ bool removeChild(KXMLDOMNode);
+ bool replaceChild(KXMLDOMNode newChild, KXMLDOMNode oldChild);
+ bool save(const wchar_t*);
+ KXMLDOMNodeList selectNodes(const wchar_t*);
+ KXMLDOMNode selectSingleNode(const wchar_t*);
+ bool selectNodes(const wchar_t*, KXMLDOMNodeList& pNodeList);
+ bool selectSingleNode(const wchar_t*, KXMLDOMNode& pNode);
+ bool selectNodes(const wchar_t*, KXMLDOMNodeList* pNodeList);
+ bool selectSingleNode(const wchar_t*, KXMLDOMNode* pNode);
+
+ wchar_t* transformNode(KXMLDOMNode);
+ KXMLDOMNode transformNodeToObject(KXMLDOMNode);
+
+ public:
+ KXMLDOMSchemaCollection namespaces();
+ KXMLDOMSchemaCollection schemas();
+ bool setSchemas(KXMLDOMSchemaCollection collection);
+ KXMLDOMParseError validate();
+ //bool validateNode();
+ public:
+ KXMLDOMDocument(void* impl);
+ KXMLDOMDocument();
+ ~KXMLDOMDocument();
+ public:
+ const KXMLDOMDocument& operator =(const KXMLDOMDocument& rhs);
+ KXMLDOMDocument(const KXMLDOMDocument& rhs);
+ public:
+ void Reset()
+ {
+ if (documentElement())removeChild(documentElement());
+ }
+ public:
+ static bool ValidSchema(const wchar_t* pSchema, BSTR& errText);
+ static bool ValidSchema(KXMLDOMDocument xml, KXMLDOMDocument schema, BSTR& errText);
+ public:
+ static int GetSchemaXml(LPTSTR pSchema, KXMLDOMDocument& x);
+ };
+
+
+ class KXMLDOMComment : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMComment(KXMLDOMNode& v);
+ KXMLDOMComment(void* impl) :KXMLDOMNode(impl) {}
+ };
+
+ class KXMLDOMEntityReference : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMEntityReference(KXMLDOMNode& v);
+ KXMLDOMEntityReference(void* impl) :KXMLDOMNode(impl) {}
+ };
+
+ class KXMLDOMTextNode : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMTextNode(KXMLDOMNode& v);
+ KXMLDOMTextNode(void* impl) :KXMLDOMNode(impl) {}
+ };
+
+ class KXMLDOMProcessingInstruction : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMProcessingInstruction(KXMLDOMNode& v);
+ KXMLDOMProcessingInstruction(void* impl) :KXMLDOMNode(impl) {}
+ };
+ class KXMLDOMDocumentFragment : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMDocumentFragment(KXMLDOMNode& v);
+ KXMLDOMDocumentFragment(void* impl) :KXMLDOMNode(impl) {}
+ };
+
+ class KXMLDOMParseError : public KXMLDOMNode
+ {
+ public:
+ KXMLDOMParseError(KXMLDOMNode& v);
+ KXMLDOMParseError(void* impl) :KXMLDOMNode(impl) {}
+ public:
+ int errorCode();
+ int filepos();
+ int line();
+ int linepos();
+ BSTR reason();
+ BSTR srcText();
+ BSTR url();
+ };
+
+ class KXMLDOMSchemaCollection
+ {
+ public:
+ protected:
+ void* impl;
+ public:
+ KXMLDOMSchemaCollection(void* impl);
+ KXMLDOMSchemaCollection();
+ KXMLDOMSchemaCollection(LPARAM p);
+ ~KXMLDOMSchemaCollection();
+ public:
+ KXMLDOMSchemaCollection(const KXMLDOMSchemaCollection& rhs);
+ const KXMLDOMSchemaCollection& operator =(const KXMLDOMSchemaCollection& rhs);
+ public:
+ void* getImpl();
+ };
+
+ }
+}
+
+using KXMLDOMDocument = Hxsoft::XFrame::KXMLDOMDocument;
+using KXMLDOMNode = Hxsoft::XFrame::KXMLDOMNode;
+using KXMLDOMElement = Hxsoft::XFrame::KXMLDOMElement;
+using KXMLDOMNodeList = Hxsoft::XFrame::KXMLDOMNodeList;
+using KXMLDOMParseError = Hxsoft::XFrame::KXMLDOMParseError;
+using KXMLDOMSchemaCollection = Hxsoft::XFrame::KXMLDOMSchemaCollection;
+
+#endif
+
--
Gitblit v1.9.3