Ananas Library 0.9.5
Открытые члены | Защищенные члены | Защищенные данные | Полный список членов класса
Класс aOOTemplate

Класс определяет интерфейс для работы с шаблонами в формате OpenOffice. Наследует iTemplate. Подробнее...

#include <aootemplate.h>

Граф наследования:aOOTemplate:
iTemplate aCalcTemplate

Открытые члены

virtual bool open (const QString &fname)
 
virtual void close ()
 
virtual void clear ()
 
virtual QString getValue (const QString &name)
 
virtual void setValue (const QString &name, const QString &value)
 
virtual QString exec (const QString &sname)
 
virtual QString result ()
 
virtual bool save (const QString &fname)
 
virtual void setDir (const QString &dirName)
 
virtual QString getDir ()
 
virtual void cleanUpTags ()
 
virtual bool lineFeedRemove (const QString &filename)
 
- Открытые члены унаследованные от iTemplate
 iTemplate ()
 
virtual ~iTemplate ()
 
virtual bool open (const QString &fname)=0
 
virtual void close ()
 
virtual void clear ()
 
virtual QString getValue (const QString &name)
 
virtual void setValue (const QString &name, const QString &value)
 
virtual QString exec (const QString &sname)
 
virtual QString result ()
 
virtual bool save (const QString &fname)
 Сохраняет документ в файл с заданным именем. .
 
virtual void cleanUpTags ()
 
virtual void setDir (const QString &dir)
 
virtual QString getDir ()
 

Защищенные члены

void searchTags (QDomNode node, const QString &sname)
 
virtual bool getNodeTags (QDomNode node, const QString &tagname, bool params)
 
void insertRowValues (QDomNode node)
 
virtual void insertTagsValues (QDomNode node, const QString &tagName)
 
void clearTags (QDomNode node, bool section)
 
void clearRow (QDomNode node)
 

Защищенные данные

QString copyName
 
QString templateDir
 
QMap< QString, QString > values
 
QDomDocument docTpl
 
QDomDocument docStyle
 

Подробное описание

Класс определяет интерфейс для работы с шаблонами в формате OpenOffice. Наследует iTemplate.

Методы

◆ cleanUpTags()

void aOOTemplate::cleanUpTags ( )
virtual

Удаляет все теги из документа, а также строки, в которых содержится тег секции

Переопределяет метод предка iTemplate.

Перекрестные ссылки clearRow(), clearTags(), docStyle и docTpl.

◆ clear()

void aOOTemplate::clear ( )
virtual

Обнуляет внутренние переменные.

Переопределяет метод предка iTemplate.

◆ clearRow()

void aOOTemplate::clearRow ( QDomNode  node)
protected

Рекурсивная функция. Удаляет строки, содержащие тег секции

Аргументы
node- узел из которого нужно удалить строки

Перекрестные ссылки clearRow().

Используется в cleanUpTags() и clearRow().

◆ clearTags()

void aOOTemplate::clearTags ( QDomNode  node,
bool  section 
)
protected

Удаляет рекурсивно теги из node.

Аргументы
node- узел из которого нужно удалить теги
section- true, если надо удалить тег секции

Перекрестные ссылки clearTags().

Используется в cleanUpTags(), clearTags() и insertRowValues().

◆ close()

void aOOTemplate::close ( )
virtual

Закрывает шаблон. Удаляет временные файлы.

Переопределяет метод предка iTemplate.

Перекрестные ссылки copyName, docStyle и docTpl.

◆ exec()

QString aOOTemplate::exec ( const QString &  sname)
virtual

Выполняет подстановку значения параметра в шаблоне. Есть 2 типа тегов

  • обычные теги
  • секции - могут находиться ТОЛЬКО в строках таблицы.

Для подстановки значений обычных тегов необходимо выполнить setValue() где name = PARAM (сейчас #define PARAM "param") а value - значение для подстановки. Потом выполнить exec() с параметром = имени тега. Для подстановки секций необходимо задать нужные параметры, используя setValue() а потом выполнить exec() с именем секции. exec может вызываться нужное число раз как для обычных тегов, так и для секций

Переопределяет метод предка iTemplate.

Перекрестные ссылки docStyle, docTpl, getValue(), searchTags() и setValue().

◆ getDir()

QString aOOTemplate::getDir ( )
virtual

Возвращает рабочую директорию

Переопределяет метод предка iTemplate.

◆ getNodeTags()

bool aOOTemplate::getNodeTags ( QDomNode  node,
const QString &  tagname,
bool  params 
)
protectedvirtual

Возвращает истину, когда текст ноды содержит тег с заданным именем.

Аргументы
node- узел, с которого осуществляется поиск.
sname- имя тега для поиска
params- true, если ищется обычный тег и false, если ищется тег секции

Переопределяется в aCalcTemplate.

Используется в searchTags().

◆ getValue()

QString aOOTemplate::getValue ( const QString &  name)
virtual

Возвращает значение параметра по его имени.

Переопределяет метод предка iTemplate.

Перекрестные ссылки aLog::print().

Используется в exec(), aCalcTemplate::insertTagsValues() и insertTagsValues().

◆ insertRowValues()

void aOOTemplate::insertRowValues ( QDomNode  node)
protected

Вставляет новую строку в таблицу, заменяет теги на значения, удаляет тег секции из строки таблицы. Выполняет рекурсивный поиск узла, содержащего строку таблицы. У этого узла в OpenOffic'е есть специальное имя, которое распознается функцией. После того, как узел найден, строка строка дублируется, а из текущей строки удаляются все теги секции, чтобы избежать мнократного размножения строк таблицы.

См. также
searchTags()

Перекрестные ссылки clearTags() и searchTags().

Используется в searchTags().

◆ insertTagsValues()

void aOOTemplate::insertTagsValues ( QDomNode  node,
const QString &  tagName 
)
protectedvirtual

Добавляет к тегу значение параметра tagName. После вызова этой функции тег не исчезает, и к нему можно добавить еще значения, которые добавятся к концу текста, содержащего тег.

Аргументы
node- узел к которому добавляется значение
sname- имя тега

Переопределяется в aCalcTemplate.

Перекрестные ссылки getValue().

Используется в searchTags().

◆ lineFeedRemove()

bool aOOTemplate::lineFeedRemove ( const QString &  filename)
virtual

Удаляет из файла переносы строк

Перекрестные ссылки aLog::print().

Используется в save().

◆ open()

bool aOOTemplate::open ( const QString &  fname)
virtual

Открывает шаблон. Распаковывает его во временный каталог в директории /tmp

Аргументы
fnameимя шаблона

Замещает iTemplate.

Перекрестные ссылки copyName, docStyle, docTpl, aLog::print() и templateDir.

◆ result()

QString aOOTemplate::result ( )
virtual

Возвращает результат, т.е. шаблон в текстовом виде. Включена в интерфейс временно.

Переопределяет метод предка iTemplate.

Перекрестные ссылки docTpl.

◆ save()

bool aOOTemplate::save ( const QString &  fname)
virtual

Сохраняет шаблон в файл с заданным именем. Перед сохранением необходимо выполнить функцию cleanUpTags() чтобы удалить тэги из сохраняемого документа.

Переопределяет метод предка iTemplate.

Перекрестные ссылки copyName, docStyle, docTpl, lineFeedRemove(), aLog::print() и templateDir.

◆ searchTags()

void aOOTemplate::searchTags ( QDomNode  node,
const QString &  sname 
)
protected

Рекурсивная функция поиска и замены тегов на их значения в node. Не заменяет теги, а дописывает значения в конец. Для удаления тэгов используйте функцию cleanUpTags()

Аргументы
node- узел, с которого осуществляется поиск.
sname- имя тега для поиска
См. также
cleanUpTags() getNodeTags() insertRowValues()

Перекрестные ссылки getNodeTags(), insertRowValues(), insertTagsValues() и searchTags().

Используется в exec(), insertRowValues() и searchTags().

◆ setDir()

void aOOTemplate::setDir ( const QString &  dir)
virtual

Устанавливает рабочую директорию

Переопределяет метод предка iTemplate.

Перекрестные ссылки templateDir.

◆ setValue()

void aOOTemplate::setValue ( const QString &  name,
const QString &  value 
)
virtual

Устанавливает значение параметра по его имени.

Переопределяет метод предка iTemplate.

Используется в exec().

Данные класса

◆ copyName

QString aOOTemplate::copyName
protected

Имя директории для распаковки

Используется в close(), open() и save().

◆ docStyle

QDomDocument aOOTemplate::docStyle
protected

Переменная для хранения стилей (колонтитулы в т.ч.) распакованного шаблона.

Используется в cleanUpTags(), close(), exec(), open() и save().

◆ docTpl

QDomDocument aOOTemplate::docTpl
protected

Переменная для хранения содержимого распакованного шаблона.

Используется в cleanUpTags(), close(), exec(), open(), result() и save().

◆ templateDir

QString aOOTemplate::templateDir
protected

Имя директории шаблонов

Используется в open(), save() и setDir().


Объявления и описания членов классов находятся в файлах: