• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdesdk API Reference
  • KDE Home
  • Contact Us
 

lokalize

  • sources
  • kde-4.14
  • kdesdk
  • lokalize
  • src
  • catalog
catalogstorage.h
Go to the documentation of this file.
1 /*
2 Copyright 2008-2009 Nick Shaforostoff <shaforostoff@kde.ru>
3 
4 This program is free software; you can redistribute it and/or
5 modify it under the terms of the GNU General Public License as
6 published by the Free Software Foundation; either version 2 of
7 the License or (at your option) version 3 or any later version
8 accepted by the membership of KDE e.V. (or its successor approved
9 by the membership of KDE e.V.), which shall act as a proxy
10 defined in Section 14 of version 3 of the license.
11 
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
19 */
20 
21 
22 #ifndef CATALOGSTORAGE_H
23 #define CATALOGSTORAGE_H
24 
25 #include "pos.h"
26 #include "catalogstring.h"
27 #include "note.h"
28 #include "state.h"
29 #include "phase.h"
30 #include "alttrans.h"
31 #include "catalogcapabilities.h"
32 
33 #include <kurl.h>
34 #include <QStringList>
35 
36 
45 class CatalogStorage {
46 public:
47  CatalogStorage();
48  virtual ~CatalogStorage();
49 
50  virtual int capabilities() const=0;
51 
52  virtual int load(QIODevice* device)=0;
53  virtual bool save(QIODevice* device, bool belongsToProject=false)=0;
54 
55  virtual int size() const=0;
56  int numberOfEntries()const{return size();}
57  int numberOfPluralForms() const{return m_numberOfPluralForms;}
58 
64  virtual QString source(const DocPosition& pos) const=0;
65  virtual QString target(const DocPosition& pos) const=0;
66  virtual CatalogString sourceWithTags(DocPosition pos) const=0;
67  virtual CatalogString targetWithTags(DocPosition pos) const=0;
68  virtual CatalogString catalogString(const DocPosition& pos) const=0;
69 
73  virtual void targetDelete(const DocPosition& pos, int count)=0;
74  virtual void targetInsert(const DocPosition& pos, const QString& arg)=0;
75  virtual void setTarget(const DocPosition& pos, const QString& arg)=0;//called for mergeCatalog TODO switch to CatalogString
76  virtual void targetInsertTag(const DocPosition&, const InlineTag&){}
77  virtual InlineTag targetDeleteTag(const DocPosition&){return InlineTag();}
78  virtual Phase updatePhase(const Phase&){return Phase();}
79  virtual QList<Phase> allPhases() const{return QList<Phase>();}
80  virtual QMap<QString,Tool> allTools() const{return QMap<QString,Tool>();}
81 
83  virtual QStringList sourceAllForms(const DocPosition& pos, bool stripNewLines=false) const=0;
84  virtual QStringList targetAllForms(const DocPosition& pos, bool stripNewLines=false) const=0;
85 
86  virtual QVector<AltTrans> altTrans(const DocPosition& pos) const=0;
87  virtual QVector<Note> notes(const DocPosition& pos) const=0;
88  virtual Note setNote(DocPosition pos, const Note& note)=0;
89  virtual QStringList noteAuthors() const{return QStringList();}
90  virtual QVector<Note> developerNotes(const DocPosition& pos) const=0;
91  virtual QStringList sourceFiles(const DocPosition& pos) const=0;
92 
93  virtual QString setPhase(const DocPosition& pos, const QString& phase){Q_UNUSED(pos); Q_UNUSED(phase); return QString();}
94  virtual QString phase(const DocPosition& pos) const {Q_UNUSED(pos); return QString();}
95  virtual Phase phase(const QString& name) const{Q_UNUSED(name); return Phase();}
96  virtual QVector<Note> phaseNotes(const QString& phase) const{Q_UNUSED(phase); return QVector<Note>();}
97  virtual QVector<Note> setPhaseNotes(const QString& phase, QVector<Note> notes){Q_UNUSED(phase); Q_UNUSED(notes); return QVector<Note>();}
98 
99  //the result must be guaranteed to have at least 1 string
100  virtual QStringList context(const DocPosition&) const=0;
101  //DocPosition.form - number of <context>
102  //virtual QString context(const DocPosition&) const=0;
103  //virtual int contextCount(const DocPosition&) const=0;
104 
117  virtual QStringList matchData(const DocPosition&) const=0;
118 
124  virtual QString id(const DocPosition&) const=0;
125 
126  virtual bool isPlural(const DocPosition&) const=0;
127 
128  virtual bool isEmpty(const DocPosition&) const=0;
129 
130  virtual bool isEquivTrans(const DocPosition&) const{return true;}
131  virtual void setEquivTrans(const DocPosition&, bool equivTrans){Q_UNUSED(equivTrans);}
132 
133  virtual bool isApproved(const DocPosition&) const{return true;}
134  virtual void setApproved(const DocPosition&, bool approved){Q_UNUSED(approved);}
135  virtual TargetState state(const DocPosition&) const{return New;}
136  virtual TargetState setState(const DocPosition&, TargetState){return New;}
137 
138  virtual bool isObsolete(int entry) const{return false;}
139 
140  virtual int binUnitsCount() const {return 0;}
141  virtual int unitById(const QString& id) const {Q_UNUSED(id); return 0;}
142 
143  const KUrl& url() const {return m_url;}
144  void setUrl(const KUrl& u){m_url=u;}//TODO
145 
146  virtual QString mimetype() const=0;
147 
148  QString sourceLangCode() const{return m_sourceLangCode;}
149  QString targetLangCode() const{return m_targetLangCode;}
150 
151 protected:
152  KUrl m_url;
153  QString m_sourceLangCode;
154  QString m_targetLangCode;
155 
156  int m_numberOfPluralForms;
157 };
158 
159 inline CatalogStorage::CatalogStorage()
160  : m_sourceLangCode("en_US")
161  , m_numberOfPluralForms(0)
162 {
163 }
164 
165 inline CatalogStorage::~CatalogStorage()
166 {
167 }
168 
169 
170 
171 
172 
173 #endif
QIODevice
CatalogStorage::allPhases
virtual QList< Phase > allPhases() const
Definition: catalogstorage.h:79
catalogstring.h
CatalogStorage::targetInsert
virtual void targetInsert(const DocPosition &pos, const QString &arg)=0
CatalogStorage::source
virtual QString source(const DocPosition &pos) const =0
flat-model interface (ignores XLIFF grouping)
CatalogStorage::~CatalogStorage
virtual ~CatalogStorage()
Definition: catalogstorage.h:165
CatalogStorage::setState
virtual TargetState setState(const DocPosition &, TargetState)
Definition: catalogstorage.h:136
CatalogStorage::catalogString
virtual CatalogString catalogString(const DocPosition &pos) const =0
CatalogStorage::targetInsertTag
virtual void targetInsertTag(const DocPosition &, const InlineTag &)
Definition: catalogstorage.h:76
CatalogStorage::setApproved
virtual void setApproved(const DocPosition &, bool approved)
Definition: catalogstorage.h:134
phase.h
pos.h
QMap< QString, Tool >
CatalogStorage::notes
virtual QVector< Note > notes(const DocPosition &pos) const =0
Note
Definition: note.h:29
CatalogStorage::phase
virtual Phase phase(const QString &name) const
Definition: catalogstorage.h:95
CatalogStorage::m_numberOfPluralForms
int m_numberOfPluralForms
Definition: catalogstorage.h:156
CatalogStorage::target
virtual QString target(const DocPosition &pos) const =0
CatalogStorage::isObsolete
virtual bool isObsolete(int entry) const
Definition: catalogstorage.h:138
CatalogStorage::updatePhase
virtual Phase updatePhase(const Phase &)
Definition: catalogstorage.h:78
CatalogStorage::setTarget
virtual void setTarget(const DocPosition &pos, const QString &arg)=0
CatalogStorage::mimetype
virtual QString mimetype() const =0
New
Definition: state.h:32
alttrans.h
CatalogStorage::phase
virtual QString phase(const DocPosition &pos) const
Definition: catalogstorage.h:94
CatalogStorage::sourceFiles
virtual QStringList sourceFiles(const DocPosition &pos) const =0
CatalogStorage::CatalogStorage
CatalogStorage()
Definition: catalogstorage.h:159
CatalogStorage::m_url
KUrl m_url
Definition: catalogstorage.h:152
DocPosition
This struct represents a position in a catalog.
Definition: pos.h:38
CatalogStorage::phaseNotes
virtual QVector< Note > phaseNotes(const QString &phase) const
Definition: catalogstorage.h:96
CatalogStorage::sourceWithTags
virtual CatalogString sourceWithTags(DocPosition pos) const =0
CatalogStorage::targetLangCode
QString targetLangCode() const
Definition: catalogstorage.h:149
CatalogStorage::sourceLangCode
QString sourceLangCode() const
Definition: catalogstorage.h:148
CatalogStorage::isEquivTrans
virtual bool isEquivTrans(const DocPosition &) const
Definition: catalogstorage.h:130
CatalogStorage::targetWithTags
virtual CatalogString targetWithTags(DocPosition pos) const =0
CatalogStorage::developerNotes
virtual QVector< Note > developerNotes(const DocPosition &pos) const =0
CatalogStorage::sourceAllForms
virtual QStringList sourceAllForms(const DocPosition &pos, bool stripNewLines=false) const =0
all plural forms. pos.form doesn't matter
CatalogStorage::m_targetLangCode
QString m_targetLangCode
Definition: catalogstorage.h:154
CatalogStorage::binUnitsCount
virtual int binUnitsCount() const
Definition: catalogstorage.h:140
QString
QList< Phase >
CatalogStorage::url
const KUrl & url() const
Definition: catalogstorage.h:143
Phase
Definition: phase.h:34
CatalogStorage
Abstract interface for storage of translation file.
Definition: catalogstorage.h:45
CatalogStorage::unitById
virtual int unitById(const QString &id) const
Definition: catalogstorage.h:141
QStringList
CatalogStorage::targetAllForms
virtual QStringList targetAllForms(const DocPosition &pos, bool stripNewLines=false) const =0
CatalogStorage::setPhaseNotes
virtual QVector< Note > setPhaseNotes(const QString &phase, QVector< Note > notes)
Definition: catalogstorage.h:97
CatalogStorage::setEquivTrans
virtual void setEquivTrans(const DocPosition &, bool equivTrans)
Definition: catalogstorage.h:131
CatalogStorage::altTrans
virtual QVector< AltTrans > altTrans(const DocPosition &pos) const =0
CatalogStorage::save
virtual bool save(QIODevice *device, bool belongsToProject=false)=0
CatalogString
data structure used to pass info about inline elements a XLIFF tag is represented by a TAGRANGE_IMAGE...
Definition: catalogstring.h:128
state.h
QVector< AltTrans >
note.h
CatalogStorage::isEmpty
virtual bool isEmpty(const DocPosition &) const =0
CatalogStorage::isPlural
virtual bool isPlural(const DocPosition &) const =0
CatalogStorage::size
virtual int size() const =0
CatalogStorage::setNote
virtual Note setNote(DocPosition pos, const Note &note)=0
CatalogStorage::setUrl
void setUrl(const KUrl &u)
Definition: catalogstorage.h:144
CatalogStorage::numberOfEntries
int numberOfEntries() const
Definition: catalogstorage.h:56
CatalogStorage::noteAuthors
virtual QStringList noteAuthors() const
Definition: catalogstorage.h:89
CatalogStorage::m_sourceLangCode
QString m_sourceLangCode
Definition: catalogstorage.h:153
catalogcapabilities.h
CatalogStorage::targetDelete
virtual void targetDelete(const DocPosition &pos, int count)=0
edit operations used by undo/redo system and sync-mode
CatalogStorage::allTools
virtual QMap< QString, Tool > allTools() const
Definition: catalogstorage.h:80
CatalogStorage::load
virtual int load(QIODevice *device)=0
CatalogStorage::capabilities
virtual int capabilities() const =0
CatalogStorage::numberOfPluralForms
int numberOfPluralForms() const
Definition: catalogstorage.h:57
TargetState
TargetState
Definition: state.h:30
CatalogStorage::state
virtual TargetState state(const DocPosition &) const
Definition: catalogstorage.h:135
CatalogStorage::context
virtual QStringList context(const DocPosition &) const =0
CatalogStorage::targetDeleteTag
virtual InlineTag targetDeleteTag(const DocPosition &)
Definition: catalogstorage.h:77
InlineTag
data structure used to pass info about inline elements a XLIFF tag is represented by a TAGRANGE_IMAGE...
Definition: catalogstring.h:44
CatalogStorage::matchData
virtual QStringList matchData(const DocPosition &) const =0
user-invisible data for matching, e.g.
CatalogStorage::setPhase
virtual QString setPhase(const DocPosition &pos, const QString &phase)
Definition: catalogstorage.h:93
CatalogStorage::id
virtual QString id(const DocPosition &) const =0
entry id unique for this file
CatalogStorage::isApproved
virtual bool isApproved(const DocPosition &) const
Definition: catalogstorage.h:133
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:40:06 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

lokalize

Skip menu "lokalize"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdesdk API Reference

Skip menu "kdesdk API Reference"
  • kapptemplate
  • kcachegrind
  • kompare
  • lokalize
  • umbrello
  •   umbrello

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal