diff options
Diffstat (limited to 'src/translators/bibtexexporter.h')
-rw-r--r-- | src/translators/bibtexexporter.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/translators/bibtexexporter.h b/src/translators/bibtexexporter.h new file mode 100644 index 0000000..dccfde8 --- /dev/null +++ b/src/translators/bibtexexporter.h @@ -0,0 +1,63 @@ +/*************************************************************************** + copyright : (C) 2003-2006 by Robby Stephenson + email : robby@periapsis.org + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of version 2 of the GNU General Public License as * + * published by the Free Software Foundation; * + * * + ***************************************************************************/ + +#ifndef BIBTEXEXPORTER_H +#define BIBTEXEXPORTER_H + +class QCheckBox; +class KComboBox; + +#include "exporter.h" + +namespace Tellico { + namespace Export { + +/** + * The Bibtex exporter shows a list of possible Bibtex fields next to a combobox of all + * the current attributes in the collection. I had thought about the reverse - having a list + * of all the attributes, with comboboxes for each Bibtex field, but I think this way is more obvious. + * + * @author Robby Stephenson + */ +class BibtexExporter : public Exporter { +Q_OBJECT + +public: + BibtexExporter(); + + virtual bool exec(); + virtual QString formatString() const; + virtual QString fileFilter() const; + + virtual QWidget* widget(QWidget* parent, const char* name=0); + virtual void readOptions(KConfig*); + virtual void saveOptions(KConfig*); + +private: + void writeEntryText(QString& text, const Data::FieldVec& field, const Data::Entry& entry, + const QString& type, const QString& key); + + bool m_expandMacros; + bool m_packageURL; + bool m_skipEmptyKeys; + + QWidget* m_widget; + QCheckBox* m_checkExpandMacros; + QCheckBox* m_checkPackageURL; + QCheckBox* m_checkSkipEmpty; + KComboBox* m_cbBibtexStyle; +}; + + } // end namespace +} // end namespace +#endif |