KiCad PCB EDA Suite
WX_HTML_REPORT_BOX Class Reference

WX_HTML_REPORT_BOX. More...

#include <wx_html_report_box.h>

Inheritance diagram for WX_HTML_REPORT_BOX:
REPORTER

Public Types

enum  LOCATION { LOC_HEAD = 0, LOC_BODY, LOC_TAIL }
 Location where the message is to be reported. More...
 

Public Member Functions

 WX_HTML_REPORT_BOX (wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(500, 300), long style=wxTAB_TRAVERSAL)
 
REPORTERReport (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED) override
 Function Report is a pure virtual function to override in the derived object. More...
 
bool HasMessage () const override
 Function HasMessage Returns true if the reporter client is non-empty. More...
 
void SetUnits (EDA_UNITS aUnits)
 
EDA_UNITS GetUnits () const override
 
void Flush ()
 
void Clear ()
 
REPORTERReport (const char *aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)
 
virtual REPORTERReportTail (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)
 Function ReportTail Places the report at the end of the list, for objects that support report ordering. More...
 
virtual REPORTERReportHead (const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)
 Function ReportHead Places the report at the beginning of the list for objects that support ordering. More...
 
REPORTERoperator<< (const wxString &aText)
 
REPORTERoperator<< (const wxChar *aText)
 
REPORTERoperator<< (wxChar aChar)
 
REPORTERoperator<< (const char *aText)
 

Private Member Functions

wxString addHeader (const wxString &aBody)
 
wxString generateHtml (const wxString &aLine)
 

Private Attributes

EDA_UNITS m_units
 
std::vector< wxString > m_messages
 

copy of the report, stored for filtering

More...
 

Detailed Description

WX_HTML_REPORT_BOX.

A slimmed down version of WX_HTML_REPORT_PANEL

Definition at line 33 of file wx_html_report_box.h.

Member Enumeration Documentation

◆ LOCATION

enum REPORTER::LOCATION
inherited

Location where the message is to be reported.

LOC_HEAD messages are printed before all others (typically intro messages) LOC_BODY messages are printed in the middle LOC_TAIL messages are printed after all others (typically status messages)

Enumerator
LOC_HEAD 
LOC_BODY 
LOC_TAIL 

Definition at line 73 of file reporter.h.

73  {
74  LOC_HEAD = 0,
75  LOC_BODY,
76  LOC_TAIL
77  };

Constructor & Destructor Documentation

◆ WX_HTML_REPORT_BOX()

WX_HTML_REPORT_BOX::WX_HTML_REPORT_BOX ( wxWindow *  parent,
wxWindowID  id = wxID_ANY,
const wxPoint pos = wxDefaultPosition,
const wxSize &  size = wxSize( 500,300 ),
long  style = wxTAB_TRAVERSAL 
)

Definition at line 26 of file wx_html_report_box.cpp.

27  :
28  wxHtmlWindow( parent, id, pos, size, style ),
30 {
31 }

References MILLIMETRES.

Member Function Documentation

◆ addHeader()

wxString WX_HTML_REPORT_BOX::addHeader ( const wxString &  aBody)
private

Definition at line 81 of file wx_html_report_box.cpp.

82 {
83  wxColour bgcolor = wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW );
84  wxColour fgcolor = wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT );
85 
86  return wxString::Format( wxT( "<html>"
87  " <body bgcolor='%s' text='%s'>"
88  " %s"
89  " </body>"
90  "</html>" ),
91  bgcolor.GetAsString( wxC2S_HTML_SYNTAX ),
92  fgcolor.GetAsString( wxC2S_HTML_SYNTAX ),
93  aBody );
94 }
void Format(OUTPUTFORMATTER *out, int aNestLevel, int aCtl, CPTREE &aTree)
Function Format outputs a PTREE into s-expression format via an OUTPUTFORMATTER derivative.
Definition: ptree.cpp:201

References Format().

Referenced by Flush().

◆ Clear()

void WX_HTML_REPORT_BOX::Clear ( )

Definition at line 103 of file wx_html_report_box.cpp.

104 {
105  m_messages.clear();
106 }
std::vector< wxString > m_messages
copy of the report, stored for filtering

References m_messages.

Referenced by PCB_INSPECTION_TOOL::InspectClearance(), and PANEL_SETUP_RULES::OnCompile().

◆ Flush()

void WX_HTML_REPORT_BOX::Flush ( )

Definition at line 65 of file wx_html_report_box.cpp.

66 {
67  wxString html;
68 
69  for( const wxString& line : m_messages )
70  html += generateHtml( line );
71 
72  SetPage( addHeader( html ) );
73 
74  wxFont font = wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT );
75  int minLineHeight = KiROUND( font.GetPixelSize().y * 1.3 );
76 
77  fixLinespacing( GetInternalRepresentation(), minLineHeight );
78 }
wxString addHeader(const wxString &aBody)
wxString fixLinespacing(wxHtmlCell *aCell, int aMinLinespacing)
std::vector< wxString > m_messages
copy of the report, stored for filtering
constexpr ret_type KiROUND(fp_type v)
Round a floating point number to an integer using "round halfway cases away from zero".
Definition: util.h:68
wxString generateHtml(const wxString &aLine)

References addHeader(), fixLinespacing(), generateHtml(), KiROUND(), and m_messages.

Referenced by PCB_INSPECTION_TOOL::InspectClearance(), and PANEL_SETUP_RULES::OnCompile().

◆ generateHtml()

wxString WX_HTML_REPORT_BOX::generateHtml ( const wxString &  aLine)
private

Definition at line 97 of file wx_html_report_box.cpp.

98 {
99  return aLine + "<br>";
100 }

Referenced by Flush().

◆ GetUnits()

EDA_UNITS WX_HTML_REPORT_BOX::GetUnits ( ) const
inlineoverridevirtual

Reimplemented from REPORTER.

Definition at line 45 of file wx_html_report_box.h.

45 { return m_units; }

References m_units.

Referenced by PCB_INSPECTION_TOOL::InspectClearance().

◆ HasMessage()

bool WX_HTML_REPORT_BOX::HasMessage ( ) const
inlineoverridevirtual

Function HasMessage Returns true if the reporter client is non-empty.

Implements REPORTER.

Definition at line 42 of file wx_html_report_box.h.

42 { return !m_messages.empty(); }
std::vector< wxString > m_messages
copy of the report, stored for filtering

References m_messages.

◆ operator<<() [1/4]

REPORTER& REPORTER::operator<< ( const wxString &  aText)
inlineinherited

Definition at line 110 of file reporter.h.

110 { return Report( aText ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References REPORTER::Report().

◆ operator<<() [2/4]

REPORTER& REPORTER::operator<< ( const wxChar *  aText)
inlineinherited

Definition at line 111 of file reporter.h.

111 { return Report( wxString( aText ) ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References REPORTER::Report().

◆ operator<<() [3/4]

REPORTER& REPORTER::operator<< ( wxChar  aChar)
inlineinherited

Definition at line 112 of file reporter.h.

112 { return Report( wxString( aChar ) ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References REPORTER::Report().

◆ operator<<() [4/4]

REPORTER& REPORTER::operator<< ( const char *  aText)
inlineinherited

Definition at line 113 of file reporter.h.

113 { return Report( aText ); }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References REPORTER::Report().

◆ Report() [1/2]

REPORTER & WX_HTML_REPORT_BOX::Report ( const wxString &  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)
overridevirtual

Function Report is a pure virtual function to override in the derived object.

Parameters
aTextis the string to report.
aSeverityis an indicator ( RPT_UNDEFINED, RPT_INFO, RPT_WARNING, RPT_ERROR, RPT_ACTION ) used to filter and format messages

Implements REPORTER.

Definition at line 34 of file wx_html_report_box.cpp.

35 {
36  m_messages.push_back( aText );
37  return *this;
38 }
std::vector< wxString > m_messages
copy of the report, stored for filtering

References m_messages.

Referenced by PCB_INSPECTION_TOOL::InspectClearance().

◆ Report() [2/2]

REPORTER & REPORTER::Report ( const char *  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)
inherited

Definition at line 33 of file reporter.cpp.

34 {
35  Report( FROM_UTF8( aText ) );
36  return *this;
37 }
static wxString FROM_UTF8(const char *cstring)
function FROM_UTF8 converts a UTF8 encoded C string to a wxString for all wxWidgets build modes.
Definition: macros.h:114
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References FROM_UTF8(), and REPORTER::Report().

◆ ReportHead()

virtual REPORTER& REPORTER::ReportHead ( const wxString &  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)
inlinevirtualinherited

Function ReportHead Places the report at the beginning of the list for objects that support ordering.

Reimplemented in WX_HTML_PANEL_REPORTER.

Definition at line 103 of file reporter.h.

104  {
105  return Report( aText, aSeverity );
106  }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References REPORTER::Report().

Referenced by BACK_ANNOTATE::applyChangelist(), BACK_ANNOTATE::getPcbModulesFromString(), DIALOG_NETLIST::loadNetlist(), BACK_ANNOTATE::processNetNameChange(), and SCH_EDIT_FRAME::WriteNetListFile().

◆ ReportTail()

virtual REPORTER& REPORTER::ReportTail ( const wxString &  aText,
SEVERITY  aSeverity = RPT_SEVERITY_UNDEFINED 
)
inlinevirtualinherited

Function ReportTail Places the report at the end of the list, for objects that support report ordering.

Reimplemented in WX_HTML_PANEL_REPORTER.

Definition at line 94 of file reporter.h.

95  {
96  return Report( aText, aSeverity );
97  }
virtual REPORTER & Report(const wxString &aText, SEVERITY aSeverity=RPT_SEVERITY_UNDEFINED)=0
Function Report is a pure virtual function to override in the derived object.

References REPORTER::Report().

Referenced by SCH_EDIT_FRAME::AnnotateComponents(), BACK_ANNOTATE::BackAnnotateSymbols(), BACK_ANNOTATE::checkForUnusedSymbols(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), BACK_ANNOTATE::getChangeList(), GERBER_JOBFILE_READER::ReadGerberJobFile(), DIALOG_ERC::TestErc(), BOARD_NETLIST_UPDATER::UpdateNetlist(), SCH_SCREEN::UpdateSymbolLinks(), and SCH_EDIT_FRAME::WriteNetListFile().

◆ SetUnits()

void WX_HTML_REPORT_BOX::SetUnits ( EDA_UNITS  aUnits)
inline

Definition at line 44 of file wx_html_report_box.h.

44 { m_units = aUnits; }

References m_units.

Referenced by PCB_INSPECTION_TOOL::InspectClearance().

Member Data Documentation

◆ m_messages

std::vector<wxString> WX_HTML_REPORT_BOX::m_messages
private

copy of the report, stored for filtering

Definition at line 57 of file wx_html_report_box.h.

Referenced by Clear(), Flush(), HasMessage(), and Report().

◆ m_units

EDA_UNITS WX_HTML_REPORT_BOX::m_units
private

Definition at line 54 of file wx_html_report_box.h.

Referenced by GetUnits(), and SetUnits().


The documentation for this class was generated from the following files: