|
From: <got...@us...> - 2010-02-10 23:06:02
|
Revision: 583
http://scstudio.svn.sourceforge.net/scstudio/?rev=583&view=rev
Author: gotthardp
Date: 2010-02-10 23:05:56 +0000 (Wed, 10 Feb 2010)
Log Message:
-----------
New feature: Verification report can print multiple error results. Visio reporting functions refactored.
Modified Paths:
--------------
trunk/src/view/visio/addon/document.cpp
trunk/src/view/visio/addon/icon_select_instances.ico
trunk/src/view/visio/addon/icon_select_messages.ico
trunk/src/view/visio/addon/reportview.cpp
trunk/src/view/visio/addon/reportview.h
trunk/src/view/visio/addon/scstudio.vcproj
Added Paths:
-----------
trunk/src/view/visio/addon/reportmessage.cpp
trunk/src/view/visio/addon/reportmessage.h
Modified: trunk/src/view/visio/addon/document.cpp
===================================================================
--- trunk/src/view/visio/addon/document.cpp 2010-02-10 20:46:58 UTC (rev 582)
+++ trunk/src/view/visio/addon/document.cpp 2010-02-10 23:05:56 UTC (rev 583)
@@ -736,7 +736,7 @@
SRChannelMapperPtr srm(new SRChannelMapper());
- MscPtr result = NULL;
+ std::list<MscPtr> result;
bool result_set = false;
BMscPtr bmsc = boost::dynamic_pointer_cast<BMsc>(msc);
@@ -756,15 +756,13 @@
try
{
- std::list<BMscPtr> lresult = bmsc_checker->check(bmsc, srm);
- BMscPtr bresult;
- if(lresult.size() > 0)
- bresult = lresult.back();
- else
- bresult = NULL;
+ std::list<BMscPtr> bresult = bmsc_checker->check(bmsc, srm);
- // note: the explicit cast is a workaround for a bug in Visual Studio .NET
- result = boost::dynamic_pointer_cast<Msc>(bresult);
+ for(std::list<BMscPtr>::const_iterator bpos = bresult.begin();
+ bpos != bresult.end(); bpos++)
+ {
+ result.push_back(boost::dynamic_pointer_cast<Msc>(*bpos));
+ }
result_set = true;
}
catch(std::exception &exc)
@@ -792,13 +790,13 @@
try
{
- std::list<HMscPtr> lresult = hmsc_checker->check(hmsc, srm);
- HMscPtr hresult;
- if(lresult.size() > 0)
- hresult = lresult.back();
- else
- hresult = NULL;
- result = boost::dynamic_pointer_cast<Msc>(hresult);
+ std::list<HMscPtr> hresult = hmsc_checker->check(hmsc, srm);
+
+ for(std::list<HMscPtr>::const_iterator hpos = hresult.begin();
+ hpos != hresult.end(); hpos++)
+ {
+ result.push_back(boost::dynamic_pointer_cast<Msc>(*hpos));
+ }
result_set = true;
}
catch(std::exception &exc)
@@ -814,7 +812,7 @@
// checker is not compatible with the drawing
status[*cpos].executed = false;
}
- else if(result != NULL)
+ else if(!result.empty())
{
// check failed
status[*cpos].executed = true;
Modified: trunk/src/view/visio/addon/icon_select_instances.ico
===================================================================
(Binary files differ)
Modified: trunk/src/view/visio/addon/icon_select_messages.ico
===================================================================
(Binary files differ)
Added: trunk/src/view/visio/addon/reportmessage.cpp
===================================================================
--- trunk/src/view/visio/addon/reportmessage.cpp (rev 0)
+++ trunk/src/view/visio/addon/reportmessage.cpp 2010-02-10 23:05:56 UTC (rev 583)
@@ -0,0 +1,38 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2007-2010 Petr Gotthard <pet...@ce...>
+ *
+ * $Id$
+ */
+
+#include "stdafx.h"
+#include "document.h"
+#include "reportmessage.h"
+
+void ShapesReference::OnClick(CDocumentMonitor *monitor) const
+{
+ monitor->SelectShapes(m_shapes);
+}
+
+void DrawingReference::OnClick(CDocumentMonitor *monitor) const
+{
+ monitor->DisplayDocument(m_drawing);
+}
+
+void HelpReference::OnClick(CDocumentMonitor *monitor) const
+{
+ monitor->InvokeHelp(m_help);
+}
+
+// $Id$
Property changes on: trunk/src/view/visio/addon/reportmessage.cpp
___________________________________________________________________
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Added: trunk/src/view/visio/addon/reportmessage.h
===================================================================
--- trunk/src/view/visio/addon/reportmessage.h (rev 0)
+++ trunk/src/view/visio/addon/reportmessage.h 2010-02-10 23:05:56 UTC (rev 583)
@@ -0,0 +1,228 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2007-2010 Petr Gotthard <pet...@ce...>
+ *
+ * $Id$
+ */
+
+#pragma once
+
+#include <vector>
+#include <boost/shared_ptr.hpp>
+
+#include <richedit.h>
+
+#include "data/msc.h"
+#include "data/reporter.h"
+
+class CDocumentMonitor;
+
+class ReportReference
+{
+public:
+ ReportReference()
+ {
+ m_position.cpMin = 0;
+ m_position.cpMax = 0;
+ }
+
+ virtual ~ReportReference() {}
+ virtual void OnClick(CDocumentMonitor *monitor) const = 0;
+
+ bool Coincide(const CHARRANGE& range)
+ {
+ return (range.cpMin < m_position.cpMax && range.cpMax > m_position.cpMin);
+ }
+
+ CHARRANGE m_position;
+};
+
+typedef boost::shared_ptr<ReportReference> ReportReferencePtr;
+typedef std::vector<ReportReferencePtr> ReportReferencePtrList;
+
+struct shapelist
+{
+ shapelist & operator << (Visio::IVShapePtr shape)
+ {
+ _bstr_t reference = shape->UniqueID[visGetOrMakeGUID];
+ m_v.push_back(reference);
+ return *this;
+ }
+
+ // note: must not return reference
+ operator const std::vector<_bstr_t>() const
+ {
+ return m_v;
+ }
+
+private:
+ std::vector<_bstr_t> m_v;
+};
+
+struct ReportMessage
+{
+ ReportMessage()
+ : m_length(0)
+ { }
+
+ class Highlight
+ {
+ public:
+ Highlight(TReportSeverity severity)
+ : m_severity(severity)
+ { }
+
+ TReportSeverity m_severity;
+ };
+
+ ReportMessage& operator << (const Highlight &op)
+ {
+ // depending on severity, change the text style
+ switch(op.m_severity)
+ {
+ case RS_REPORT:
+ default:
+ m_text << "\\b0\\cf0 ";
+ break;
+ case RS_NOTICE:
+ m_text << "\\b ";
+ break;
+ case RS_WARNING:
+ m_text << "\\cf1 ";
+ break;
+ case RS_ERROR:
+ m_text << "\\cf1\\b ";
+ break;
+ }
+ return *this;
+ }
+
+ ReportMessage& operator << (const std::string &text)
+ {
+ m_text << text;
+ m_length += text.length();
+ return *this;
+ }
+
+ ReportMessage& operator << (const std::wstring &text)
+ {
+ for(std::wstring::const_iterator pos = text.begin();
+ pos != text.end(); pos++)
+ {
+ if(*pos < 128)
+ m_text << (char)*pos;
+ else
+ m_text << "\\u" << int(*pos) << ";";
+ }
+
+ m_length += text.length();
+ return *this;
+ }
+
+ void AppendLink(const std::string &text, const ReportReferencePtr& reference)
+ {
+ ReportReferencePtr ref = reference;
+ ref->m_position.cpMin = m_length;
+
+ m_text << text;
+ m_length += text.length();
+
+ ref->m_position.cpMax = m_length;
+ m_references.push_back(ref);
+ }
+
+ // note: must not return reference
+ std::string get_text() const
+ {
+ return m_text.str();
+ }
+
+ size_t get_length() const
+ {
+ return m_length;
+ }
+
+ const ReportReferencePtrList& get_references() const
+ {
+ return m_references;
+ }
+
+private:
+ std::stringstream m_text; // RTF text
+ size_t m_length; // length of plaintext
+
+ ReportReferencePtrList m_references;
+};
+
+class ShapesReference : public ReportReference
+{
+public:
+ ShapesReference(const std::vector<_bstr_t>& shapes)
+ : m_shapes(shapes)
+ { }
+
+ virtual void OnClick(CDocumentMonitor *monitor) const;
+ std::vector<_bstr_t> m_shapes; // shapes to select
+};
+
+class DrawingReference : public ReportReference
+{
+public:
+ DrawingReference(const MscPtr& drawing)
+ : m_drawing(drawing)
+ { }
+
+ virtual void OnClick(CDocumentMonitor *monitor) const;
+ MscPtr m_drawing; // drawing to display
+};
+
+class HelpReference : public ReportReference
+{
+public:
+ HelpReference(const std::wstring& help)
+ : m_help(help)
+ { }
+
+ virtual void OnClick(CDocumentMonitor *monitor) const;
+ std::wstring m_help; // help to display
+};
+
+class ReportLink
+{
+public:
+ ReportLink(const std::string &text, const std::vector<_bstr_t>& value)
+ : m_text(text), m_reference(new ShapesReference(value))
+ { }
+
+ ReportLink(const std::string &text, const MscPtr& value)
+ : m_text(text), m_reference(new DrawingReference(value))
+ { }
+
+ ReportLink(const std::string &text, const std::wstring& value)
+ : m_text(text), m_reference(new HelpReference(value))
+ { }
+
+ friend ReportMessage&
+ operator<<(ReportMessage& report, const ReportLink& link)
+ {
+ report.AppendLink(link.m_text, link.m_reference);
+ return report;
+ }
+
+private:
+ std::string m_text;
+ ReportReferencePtr m_reference;
+};
+
+// $Id$
Property changes on: trunk/src/view/visio/addon/reportmessage.h
___________________________________________________________________
Added: svn:keywords
+ Id
Added: svn:eol-style
+ native
Modified: trunk/src/view/visio/addon/reportview.cpp
===================================================================
--- trunk/src/view/visio/addon/reportview.cpp 2010-02-10 20:46:58 UTC (rev 582)
+++ trunk/src/view/visio/addon/reportview.cpp 2010-02-10 23:05:56 UTC (rev 583)
@@ -47,7 +47,11 @@
int line = LineFromChar(ch);
TRACE("CRichList::OnLButtonDblClk() called at line " << line);
- return m_reporter->OnLineShow(line);
+ CHARRANGE range;
+ range.cpMin = LineIndex(line);
+ range.cpMax = range.cpMin+LineLength(line)-1;
+
+ return m_reporter->OnClick(range);
}
LRESULT CRichList::OnHelp(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
@@ -58,14 +62,17 @@
int line = LineFromChar((ch1+ch2)/2);
TRACE("CRichList::OnHelp() called at line " << line);
- return m_reporter->OnLineHelp(line);
+ CHARRANGE range;
+ range.cpMin = LineIndex(line);
+ range.cpMax = range.cpMin+LineLength(line)-1;
+
+ return m_reporter->OnClick(range);
}
CReportView::CReportView(CDocumentMonitor *monitor)
: m_edit(this)
{
m_documentMonitor = monitor;
- memset(m_statistics, 0, sizeof(m_statistics));
}
void CReportView::Reset()
@@ -78,7 +85,6 @@
}
// reset the internal data
- memset(m_statistics, 0, sizeof(m_statistics));
m_references.clear();
}
@@ -101,35 +107,9 @@
return 0;
}
-class UNICODE_TEXT
+void SetSelection(CRichList& edit, int startChar, int endChar)
{
-public:
- UNICODE_TEXT(const std::wstring &text)
- : m_text(text)
- { }
-
- friend std::ostream&
- operator<<(std::ostream& os, const UNICODE_TEXT& value)
- {
- for(std::wstring::const_iterator pos = value.m_text.begin();
- pos != value.m_text.end(); pos++)
- {
- if(*pos < 128)
- os << char(*pos);
- else
- os << "\\u" << int(*pos) << ";";
- }
-
- return os;
- }
-
-private:
- std::wstring m_text;
-};
-
-void SetSelection(CRichList& edit, const std::pair<int,int>& pos)
-{
- edit.SetSel(pos.first, pos.second);
+ edit.SetSel(startChar, endChar);
CHARFORMAT2 cf;
cf.cbSize = sizeof(cf);
cf.dwMask = CFM_LINK;
@@ -137,77 +117,41 @@
edit.SetSelectionCharFormat(cf);
}
-int CReportView::__Print(Reference& reference,
- TReportSeverity severity, const std::wstring& message)
+int CReportView::Print(const ReportMessage& msg)
{
// display the report view
m_documentMonitor->ShowReportView();
- static const char *rtfPrefix =
- "{\\rtf1\\ansi"
- "{\\colortbl;\\red255\\green0\\blue0;}"
- "{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\fs16";
- static const char *rtfSuffix =
- "}";
-
- m_statistics[severity]++;
-
long pos = m_edit.GetWindowTextLength();
// put caret after the last character
m_edit.SetSel(pos, pos);
- std::stringstream sstr;
- sstr << rtfPrefix;
- // depending on severity, change the text style
- switch(severity)
- {
- case RS_REPORT:
- default:
- sstr << UNICODE_TEXT(message);
- break;
- case RS_NOTICE:
- sstr << "\\b " << UNICODE_TEXT(message) << "\\b0 ";
- break;
- case RS_WARNING:
- sstr << "\\cf1 " << UNICODE_TEXT(message) << "\\cf0 ";
- break;
- case RS_ERROR:
- sstr << "\\cf1\\b " << UNICODE_TEXT(message) << "\\b0\\cf0 ";
- break;
- }
+ std::string pstr =
+ "{\\rtf1\\ansi"
+ "{\\colortbl;\\red255\\green0\\blue0;}"
+ "{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\fs16";
+ pstr += msg.get_text();
+ pstr +=
+ "\\line}";
- // determine what hyperlinks to display
- bool hasShow = !reference.shapes.empty() || reference.drawing != NULL;
- bool hasHelp = !reference.help.empty();
-
- if(hasShow)
- sstr << " [show]";
- if(hasHelp)
- sstr << " [?]";
-
- sstr << "\\line" << rtfSuffix;
-
- std::string pstr = sstr.str();
const char *cstr = pstr.c_str();
EDITSTREAM es = {(DWORD_PTR)&cstr, 0, EditStreamCallBack};
// append RTF to the list
long res = m_edit.StreamIn(SF_RTF | SFF_SELECTION, es);
- // position after the last character
- int cpos = m_edit.GetTextLengthEx(GTL_NUMCHARS)-1;
+ // position of the first character
+ int cpos = m_edit.GetTextLengthEx(GTL_NUMCHARS)-msg.get_length()-1;
- if(hasHelp)
+ for(ReportReferencePtrList::const_iterator rpos = msg.get_references().begin();
+ rpos != msg.get_references().end(); rpos++)
{
- reference.help_pos = std::make_pair<int,int>(cpos-2, cpos-1);
- SetSelection(m_edit, reference.help_pos);
- cpos -= 4; // length of " [?]"
- }
+ ReportReferencePtr ref = *rpos;
+ ref->m_position.cpMin += cpos;
+ ref->m_position.cpMax += cpos;
- if(hasShow)
- {
- reference.show_pos = std::make_pair<int,int>(cpos-5, cpos-1);
- SetSelection(m_edit, reference.show_pos);
+ SetSelection(m_edit, ref->m_position.cpMin, ref->m_position.cpMax);
+ m_references.push_back(ref);
}
m_edit.LineScroll(1);
@@ -217,51 +161,80 @@
int CReportView::Print(TReportSeverity severity, const std::wstring& message,
const std::wstring& help)
{
- Reference reference;
- reference.help = help;
+ ReportMessage msg;
+ msg << ReportMessage::Highlight(severity) << message << ReportMessage::Highlight(RS_REPORT);
- __Print(reference, severity, message);
+ if(!help.empty())
+ msg << " [" << ReportLink("?", help) << "]";
- m_references.push_back(reference);
+ Print(msg);
return 0;
}
int CReportView::Print(TReportSeverity severity, const std::wstring& message,
const std::vector<_bstr_t>& shapelist, const std::wstring& help)
{
- Reference reference;
- reference.shapes = shapelist;
- reference.help = help;
+ ReportMessage msg;
+ msg << ReportMessage::Highlight(severity) << message << ReportMessage::Highlight(RS_REPORT);
- __Print(reference, severity, message);
+ if(!shapelist.empty())
+ msg << " [" << ReportLink("show", shapelist) << "]";
- m_references.push_back(reference);
+ if(!help.empty())
+ msg << " [" << ReportLink("?", help) << "]";
+
+ Print(msg);
return 0;
}
int CReportView::Print(TReportSeverity severity, const std::wstring& message,
const MscPtr& msc, const std::wstring& help)
{
- Reference reference;
- reference.drawing = msc;
- reference.help = help;
+ ReportMessage msg;
+ msg << ReportMessage::Highlight(severity) << message << ReportMessage::Highlight(RS_REPORT);
- __Print(reference, severity, message);
+ if(msc)
+ msg << " [" << ReportLink("show", msc) << "]";
- m_references.push_back(reference);
+ if(!help.empty())
+ msg << " [" << ReportLink("?", help) << "]";
+
+ Print(msg);
return 0;
}
-int CReportView::print(TReportSeverity severity, const std::wstring& message)
+int CReportView::Print(TReportSeverity severity, const std::wstring& message,
+ const std::list<MscPtr>& msclist, const std::wstring& help)
{
- Reference reference;
+ ReportMessage msg;
+ msg << ReportMessage::Highlight(severity) << message << ReportMessage::Highlight(RS_REPORT);
- __Print(reference, severity, message);
+ if(msclist.size() > 1)
+ {
+ int i = 0;
+ msg << " show";
+ for(std::list<MscPtr>::const_iterator mpos = msclist.begin();
+ mpos != msclist.end(); mpos++)
+ {
+ msg << " [" << ReportLink(basic_stringize<char>() << ++i, *mpos) << "]";
+ }
+ }
+ else if(msclist.size() == 1)
+ msg << " [" << ReportLink("show", msclist.front()) << "]";
- m_references.push_back(reference);
+ if(!help.empty())
+ msg << " [" << ReportLink("?", help) << "]";
+
+ Print(msg);
return 0;
}
+int CReportView::print(TReportSeverity severity, const std::wstring& message)
+{
+ Print(ReportMessage() << message);
+ return 0;
+}
+
LRESULT CReportView::OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
LRESULT lRet = DefWindowProc(uMsg, wParam, lParam);
@@ -295,52 +268,32 @@
int line = m_edit.LineFromChar(link->chrg.cpMin);
TRACE("CReportView::OnLink() called on line " << line);
- if(link->chrg.cpMin >= m_references[line].show_pos.first &&
- link->chrg.cpMax <= m_references[line].show_pos.second)
- {
- OnLineShow(line);
- }
- else if(link->chrg.cpMin >= m_references[line].help_pos.first &&
- link->chrg.cpMax <= m_references[line].help_pos.second)
- {
- OnLineHelp(line);
- }
+ OnClick(link->chrg);
}
return 0;
}
-LRESULT CReportView::OnLineShow(size_t line)
+LRESULT CReportView::OnClick(const CHARRANGE& range)
{
- // the user might have clicked beyond the last line
- if(line >= m_references.size())
- return 0;
+ for(ReportReferencePtrList::const_iterator rpos = m_references.begin();
+ rpos != m_references.end(); rpos++)
+ {
+ if((*rpos)->Coincide(range))
+ {
+ (*rpos)->OnClick(m_documentMonitor);
+ return 0;
+ }
+ }
- if(m_references[line].shapes.size() > 0)
- m_documentMonitor->SelectShapes(m_references[line].shapes);
-
- if(m_references[line].drawing != 0)
- m_documentMonitor->DisplayDocument(m_references[line].drawing);
-
return 0;
}
-LRESULT CReportView::OnLineHelp(size_t line)
-{
- if(line >= m_references.size())
- return 0;
-
- m_documentMonitor->InvokeHelp(m_references[line].help);
- return 0;
-}
-
void CReportView::OnFinalMessage(HWND hWnd)
{
TRACE("CReportView::OnFinalMessage() called");
m_references.clear();
- memset(m_statistics, 0, sizeof(m_statistics));
-
m_documentMonitor->OnHideReportView();
}
Modified: trunk/src/view/visio/addon/reportview.h
===================================================================
--- trunk/src/view/visio/addon/reportview.h 2010-02-10 20:46:58 UTC (rev 582)
+++ trunk/src/view/visio/addon/reportview.h 2010-02-10 23:05:56 UTC (rev 583)
@@ -17,6 +17,7 @@
*/
#pragma once
+#include "reportmessage.h"
#include "resource.h"
// Include libraries from the Windows Template Library (WTL).
@@ -24,13 +25,7 @@
#include <atlctrls.h>
#include <atlwin.h>
-#include <vector>
-
-#include "data/msc.h"
-#include "data/reporter.h"
-
class CReportView;
-class CDocumentMonitor;
class CRichList
: public ATL::CWindowImpl<CRichList, CRichEditCtrl>
@@ -58,25 +53,6 @@
CReportView *m_reporter;
};
-struct shapelist
-{
- shapelist & operator << (Visio::IVShapePtr shape)
- {
- _bstr_t reference = shape->UniqueID[visGetOrMakeGUID];
- m_v.push_back(reference);
- return *this;
- }
-
- // note: must not return reference
- operator const std::vector<_bstr_t>() const
- {
- return m_v;
- }
-
-private:
- std::vector<_bstr_t> m_v;
-};
-
class CReportView : public ReportPrinter,
public ATL::CWindowImpl<CReportView, ATL::CWindow, ATL::CNullTraits>
{
@@ -84,6 +60,8 @@
CReportView(CDocumentMonitor *monitor);
void Reset();
+ int Print(const ReportMessage& msg);
+
int Print(TReportSeverity severity, const std::wstring& message,
const std::wstring& help = std::wstring());
int Print(TReportSeverity severity, const std::wstring& message,
@@ -92,6 +70,9 @@
int Print(TReportSeverity severity, const std::wstring& message,
const MscPtr& msc,
const std::wstring& help = std::wstring());
+ int Print(TReportSeverity severity, const std::wstring& message,
+ const std::list<MscPtr>& msclist,
+ const std::wstring& help = std::wstring());
virtual int print(TReportSeverity severity, const std::wstring& message);
@@ -111,38 +92,15 @@
LRESULT OnSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnLink(int idCtrl, LPNMHDR pnmh, BOOL& bHandled);
+ LRESULT OnClick(const CHARRANGE& range);
- LRESULT OnLineShow(size_t line);
- LRESULT OnLineHelp(size_t line);
void OnFinalMessage(HWND hWnd);
private:
CDocumentMonitor *m_documentMonitor;
- CRichList m_edit;
- int m_statistics[__RS_LAST];
-
- struct Reference
- {
- Reference()
- {
- show_pos = std::make_pair<int,int>(0, 0);
- help_pos = std::make_pair<int,int>(0, 0);
- }
-
- std::vector<_bstr_t> shapes; // shapes to select
- MscPtr drawing; // drawing to display
- std::wstring help; // help to display
-
- std::pair<int,int> show_pos;
- std::pair<int,int> help_pos;
- };
-
- int __Print(Reference& reference, TReportSeverity severity, const std::wstring& message);
-
- typedef std::vector<Reference> ReferenceList;
- // UniqueID's of shapes referenced by lines in this report
- ReferenceList m_references;
+ CRichList m_edit; // text of the report
+ ReportReferencePtrList m_references; // hyperlinks
};
// $Id$
Modified: trunk/src/view/visio/addon/scstudio.vcproj
===================================================================
--- trunk/src/view/visio/addon/scstudio.vcproj 2010-02-10 20:46:58 UTC (rev 582)
+++ trunk/src/view/visio/addon/scstudio.vcproj 2010-02-10 23:05:56 UTC (rev 583)
@@ -316,6 +316,14 @@
>
</File>
<File
+ RelativePath=".\reportmessage.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\reportmessage.h"
+ >
+ </File>
+ <File
RelativePath=".\reportview.cpp"
>
</File>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|