Doxygen
StyleData结构体 参考

#include <rtfstyle.h>

Public 成员函数

 StyleData ()=default
 
 StyleData (const std::string &reference, const std::string &definition)
 
bool setStyle (const std::string &command, const std::string &styleName)
 
const char * reference () const
 
const char * definition () const
 
uint index () const
 

Private 属性

uint m_index = 0
 
std::string m_reference
 
std::string m_definition
 

详细描述

在文件 rtfstyle.h48 行定义.

构造及析构函数说明

◆ StyleData() [1/2]

StyleData::StyleData ( )
default

◆ StyleData() [2/2]

StyleData::StyleData ( const std::string &  reference,
const std::string &  definition 
)

在文件 rtfstyle.cpp237 行定义.

238 {
241  {
242  m_index = static_cast<int>(std::stoul(match[1].str()));
243  }
244  else // error
245  {
246  m_index = 0;
247  }
250 }

引用了 definition(), m_definition, m_index, m_reference, reg::match(), reference(), s_clause , 以及 reg::search().

成员函数说明

◆ definition()

const char* StyleData::definition ( ) const
inline

在文件 rtfstyle.h60 行定义.

60 { return m_definition.c_str(); }

引用了 m_definition.

被这些函数引用 RTFGenerator::beginRTFDocument() , 以及 StyleData().

◆ index()

uint StyleData::index ( ) const
inline

在文件 rtfstyle.h61 行定义.

61 { return m_index; }

引用了 m_index.

被这些函数引用 setStyle().

◆ reference()

const char* StyleData::reference ( ) const
inline

在文件 rtfstyle.h59 行定义.

59 { return m_reference.c_str(); }

引用了 m_reference.

被这些函数引用 RTFGenerator::beginRTFDocument(), RTFDocVisitor::getStyle() , 以及 StyleData().

◆ setStyle()

bool StyleData::setStyle ( const std::string &  command,
const std::string &  styleName 
)

在文件 rtfstyle.cpp252 行定义.

253 {
255  if (!reg::search(command,match,s_clause))
256  {
257  err("Style sheet '%s' contains no '\\s' clause.\n{%s}", styleName.c_str(), command.c_str());
258  return false;
259  }
260  m_index = static_cast<int>(std::stoul(match[1].str()));
261 
262  size_t index = command.find("\\sbasedon");
263  if (index!=std::string::npos)
264  {
265  m_reference = command.substr(0,index);
266  m_definition = command.substr(index);
267  }
268 
269  return true;
270 }

引用了 err(), index(), m_definition, m_index, m_reference, reg::match(), s_clause , 以及 reg::search().

被这些函数引用 loadStylesheet().

类成员变量说明

◆ m_definition

std::string StyleData::m_definition
private

在文件 rtfstyle.h66 行定义.

被这些函数引用 definition(), setStyle() , 以及 StyleData().

◆ m_index

uint StyleData::m_index = 0
private

在文件 rtfstyle.h64 行定义.

被这些函数引用 index(), setStyle() , 以及 StyleData().

◆ m_reference

std::string StyleData::m_reference
private

在文件 rtfstyle.h65 行定义.

被这些函数引用 reference(), setStyle() , 以及 StyleData().


该结构体的文档由以下文件生成:
reg::match
bool match(const std::string &str, Match &match, const Ex &re)
Matches a given string str for a match against regular expression re.
Definition: regex.cpp:729
err
void err(const char *fmt,...)
Definition: message.cpp:203
StyleData::m_index
uint m_index
Definition: rtfstyle.h:64
StyleData::definition
const char * definition() const
Definition: rtfstyle.h:60
s_clause
static const reg::Ex s_clause(R"(\\s(\d+)\s*)")
reg::Match
Object representing the matching results.
Definition: regex.h:163
StyleData::index
uint index() const
Definition: rtfstyle.h:61
StyleData::m_reference
std::string m_reference
Definition: rtfstyle.h:65
reg::search
bool search(const std::string &str, Match &match, const Ex &re, size_t pos)
Search in a given string str starting at position pos for a match against regular expression re.
Definition: regex.cpp:718
StyleData::reference
const char * reference() const
Definition: rtfstyle.h:59
StyleData::m_definition
std::string m_definition
Definition: rtfstyle.h:66