[GME-commit]
GMESRC/GME/Parser MgaDumper.cpp,1.20,1.21 MgaDumper.h,1.13,1.14
gme-commit at list.isis.vanderbilt.edu
gme-commit at list.isis.vanderbilt.edu
Thu Jan 13 15:13:49 CST 2005
Update of /var/lib/gme/GMESRC/GME/Parser
In directory braindrain:/tmp/cvs-serv4290/Parser
Modified Files:
MgaDumper.cpp MgaDumper.h
Log Message:
Making possible copy/paste operations for Annotations.
CVS User: zolmol
Index: MgaDumper.cpp
===================================================================
RCS file: /var/lib/gme/GMESRC/GME/Parser/MgaDumper.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -d -r1.20 -r1.21
*** MgaDumper.cpp 13 Oct 2004 15:17:55 -0000 1.20
--- MgaDumper.cpp 13 Jan 2005 21:13:47 -0000 1.21
***************
*** 156,160 ****
}
! STDMETHODIMP CMgaDumper::DumpFCOs(IMgaFCOs *p, IMgaFolders *f, BSTR xmlfile)
{
m_closureDump = false;
--- 156,160 ----
}
! STDMETHODIMP CMgaDumper::DumpFCOs(IMgaProject *proj, IMgaFCOs *p, IMgaFolders *f, IMgaRegNodes *r, BSTR xmlfile)
{
m_closureDump = false;
***************
*** 172,177 ****
if ( p) CopyTo(p, m_selFcos);
if ( f) CopyTo(f, m_selFolders);
! if( m_selFcos.empty() && m_selFolders.empty())
return S_OK;
--- 172,178 ----
if ( p) CopyTo(p, m_selFcos);
if ( f) CopyTo(f, m_selFolders);
+ if ( r) CopyTo(r, m_selRegNodes);
! if( m_selFcos.empty() && m_selFolders.empty() && m_selRegNodes.empty())
return S_OK;
***************
*** 182,192 ****
else if ( !m_selFolders.empty())
COMTHROW( m_selFolders.front()->get_Project( PutOut( project)) );
else
return S_OK;
InitDump(project, xmlfile);
ofs << "<!DOCTYPE clipboard SYSTEM \"mga.dtd\" [\n";
! ofs << "\t<!ELEMENT clipboard (folder|model|atom|reference|set|connection)*>\n";
ofs << "\t<!ATTLIST clipboard acceptingkind CDATA #IMPLIED>\n";
ofs << "]>\n\n";
--- 183,197 ----
else if ( !m_selFolders.empty())
COMTHROW( m_selFolders.front()->get_Project( PutOut( project)) );
+ else if ( !m_selRegNodes.empty()) // newly added
+ project = proj;
else
return S_OK;
+ if( !project) return S_OK;
+
InitDump(project, xmlfile);
ofs << "<!DOCTYPE clipboard SYSTEM \"mga.dtd\" [\n";
! ofs << "\t<!ELEMENT clipboard (folder|model|atom|reference|set|connection|regnode)*>\n";
ofs << "\t<!ATTLIST clipboard acceptingkind CDATA #IMPLIED>\n";
ofs << "]>\n\n";
***************
*** 217,221 ****
}
! removeInnerObjs();
for( fi = m_selFolders.begin(); fi != m_selFolders.end(); ++fi )
--- 222,226 ----
}
! if( m_selFolders.size() + m_selFcos.size() > 0) removeInnerObjs();
for( fi = m_selFolders.begin(); fi != m_selFolders.end(); ++fi )
***************
*** 224,228 ****
for( i = m_selFcos.begin(); i != m_selFcos.end(); ++i )
Dump ( *i);
!
EndElem();
--- 229,245 ----
for( i = m_selFcos.begin(); i != m_selFcos.end(); ++i )
Dump ( *i);
!
! if( !m_selRegNodes.empty())
! {
! StartElem("regnode");
! Attr("name", "annotations");
! StartElem("value");
! EndElem(); //value
!
! for( CComObjPtrVector<IMgaRegNode>::iterator ri = m_selRegNodes.begin(); ri != m_selRegNodes.end(); ++ri)
! Dump( *ri);
!
! EndElem(); // regnode of annotations
! }
EndElem();
***************
*** 1559,1563 ****
{
ofs << "<!DOCTYPE clipboard SYSTEM \"mgaclosure.dtd\" [\n";
! ofs << "\t<!ELEMENT clipboard (folder|model|atom|reference|set|connection)*>\n";
ofs << "\t<!ATTLIST clipboard\n";
ofs << "\t\tclosureversion CDATA #IMPLIED\n";
--- 1576,1580 ----
{
ofs << "<!DOCTYPE clipboard SYSTEM \"mgaclosure.dtd\" [\n";
! ofs << "\t<!ELEMENT clipboard (folder|model|atom|reference|set|connection|regnode)*>\n";
ofs << "\t<!ATTLIST clipboard\n";
ofs << "\t\tclosureversion CDATA #IMPLIED\n";
***************
*** 1645,1649 ****
ofs << "<!DOCTYPE clipboard SYSTEM \"mgaclosure.dtd\" [\n";
! ofs << "\t<!ELEMENT clipboard (folder|model|atom|reference|set|connection)*>\n";
ofs << "\t<!ATTLIST clipboard\n";
ofs << "\t\tclosureversion CDATA #IMPLIED\n";
--- 1662,1666 ----
ofs << "<!DOCTYPE clipboard SYSTEM \"mgaclosure.dtd\" [\n";
! ofs << "\t<!ELEMENT clipboard (folder|model|atom|reference|set|connection|regnode)*>\n";
ofs << "\t<!ATTLIST clipboard\n";
ofs << "\t\tclosureversion CDATA #IMPLIED\n";
Index: MgaDumper.h
===================================================================
RCS file: /var/lib/gme/GMESRC/GME/Parser/MgaDumper.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** MgaDumper.h 13 Oct 2004 15:17:55 -0000 1.13
--- MgaDumper.h 13 Jan 2005 21:13:47 -0000 1.14
***************
*** 66,70 ****
STDMETHOD(DumpProject)(IMgaProject *p, BSTR xmlfile);
! STDMETHOD(DumpFCOs)(IMgaFCOs *p, IMgaFolders *f, BSTR xmlfile);
STDMETHOD(DumpClos)( IMgaFCOs *sel_fco, IMgaFolders *sel_fold, BSTR xmlfile, int lib_stub);
STDMETHOD(DumpClosR)( IMgaFCOs *sel_fco, IMgaFolders *sel_fold, BSTR xmlfile, IMgaFCOs *top_fco, IMgaFolders *top_fold, int options, BSTR abspath, BSTR acceptingkinds);
--- 66,70 ----
STDMETHOD(DumpProject)(IMgaProject *p, BSTR xmlfile);
! STDMETHOD(DumpFCOs)(IMgaProject *proj, IMgaFCOs *p, IMgaFolders *f, IMgaRegNodes *r, BSTR xmlfile);
STDMETHOD(DumpClos)( IMgaFCOs *sel_fco, IMgaFolders *sel_fold, BSTR xmlfile, int lib_stub);
STDMETHOD(DumpClosR)( IMgaFCOs *sel_fco, IMgaFolders *sel_fold, BSTR xmlfile, IMgaFCOs *top_fco, IMgaFolders *top_fold, int options, BSTR abspath, BSTR acceptingkinds);
***************
*** 239,242 ****
--- 239,243 ----
CComObjPtrVector<IMgaFCO> m_selFcos; // selected objects for dump or closure
CComObjPtrVector<IMgaFolder> m_selFolders;
+ CComObjPtrVector<IMgaRegNode> m_selRegNodes;
void removeInnerObjs();
More information about the GME-commit
mailing list