• 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
  • ts
tsstorage.h
Go to the documentation of this file.
1 /*
2 Copyright 2008-2012 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 TSSTORAGE_H
23 #define TSSTORAGE_H
24 
25 #include "catalogstorage.h"
26 #include <QDomNodeList>
27 #include <QDomDocument>
28 #include <QVector>
29 #include <QMap>
30 // class QDomDocument;
31 
32 class TsStorage: public CatalogStorage
33 {
34 public:
35  TsStorage();
36  ~TsStorage();
37 
38  int capabilities() const;
39 
40  int load(QIODevice* device);
41  bool save(QIODevice* device, bool belongsToProject=false);
42 
43  int size() const;
44  bool isEmpty() const;
45 
46  //flat-model interface (ignores TS grouping)
47  QString source(const DocPosition& pos) const;
48  QString target(const DocPosition& pos) const;
49  CatalogString targetWithTags(DocPosition pos) const;
50  CatalogString sourceWithTags(DocPosition pos) const;
51  CatalogString catalogString(const DocPosition& pos) const;
52 
54  QStringList sourceAllForms(const DocPosition& pos, bool stripNewLines=false) const{Q_UNUSED(pos); return QStringList();}
55  QStringList targetAllForms(const DocPosition& pos, bool stripNewLines=false) const{Q_UNUSED(pos); return QStringList();}
56 
57  void targetDelete(const DocPosition& pos, int count);
58  void targetInsert(const DocPosition& pos, const QString& arg);
59  void setTarget(const DocPosition& pos, const QString& arg);//called for mergeCatalog
60 
61  QStringList sourceFiles(const DocPosition& pos) const;
62  QVector<AltTrans> altTrans(const DocPosition& pos) const;
63 
65  Note setNote(DocPosition pos, const Note& note);
66  QVector<Note> notes(const DocPosition& pos) const;
67  QVector<Note> developerNotes(const DocPosition& pos) const;
68 
69  QStringList context(const DocPosition& pos) const;
70 
71  QStringList matchData(const DocPosition& pos) const;
72  QString id(const DocPosition& pos) const;
73 
74  bool isPlural(const DocPosition& pos) const;
75  bool isEmpty(const DocPosition& pos) const;
76 
77  bool isEquivTrans(const DocPosition& pos) const;
78  void setEquivTrans(const DocPosition& pos, bool equivTrans);
79 
80  bool isApproved(const DocPosition& pos) const;
81  void setApproved(const DocPosition& pos, bool approved);
82 
83  bool isObsolete(int entry) const;
84 
85  QString mimetype()const{return "application/x-linguist";}
86 
87 private:
88  QDomElement unitForPos(int pos) const;
89  QDomElement targetForPos(DocPosition pos) const;
90  QDomElement sourceForPos(int pos) const;
91  CatalogString catalogString(QDomElement contentElement) const;
92 
93 private:
94  mutable QDomDocument m_doc;
95 
96  QDomNodeList entries;
97 
98 };
99 
100 #endif
QIODevice
TsStorage::mimetype
QString mimetype() const
Definition: tsstorage.h:85
TsStorage::load
int load(QIODevice *device)
Definition: tsstorage.cpp:70
TsStorage::sourceFiles
QStringList sourceFiles(const DocPosition &pos) const
Definition: tsstorage.cpp:339
QDomNodeList
TsStorage::~TsStorage
~TsStorage()
Definition: tsstorage.cpp:59
catalogstorage.h
Note
Definition: note.h:29
TsStorage::setApproved
void setApproved(const DocPosition &pos, bool approved)
Definition: tsstorage.cpp:472
TsStorage::matchData
QStringList matchData(const DocPosition &pos) const
user-invisible data for matching, e.g.
Definition: tsstorage.cpp:449
TsStorage::isEmpty
bool isEmpty() const
DocPosition
This struct represents a position in a catalog.
Definition: pos.h:38
TsStorage::isApproved
bool isApproved(const DocPosition &pos) const
Definition: tsstorage.cpp:484
TsStorage::save
bool save(QIODevice *device, bool belongsToProject=false)
Definition: tsstorage.cpp:107
TsStorage
Definition: tsstorage.h:32
TsStorage::notes
QVector< Note > notes(const DocPosition &pos) const
Definition: tsstorage.cpp:358
TsStorage::isEquivTrans
bool isEquivTrans(const DocPosition &pos) const
Definition: tsstorage.cpp:502
TsStorage::isObsolete
bool isObsolete(int entry) const
Definition: tsstorage.cpp:490
TsStorage::source
QString source(const DocPosition &pos) const
flat-model interface (ignores XLIFF grouping)
Definition: tsstorage.cpp:279
TsStorage::isPlural
bool isPlural(const DocPosition &pos) const
Definition: tsstorage.cpp:465
QString
TsStorage::target
QString target(const DocPosition &pos) const
Definition: tsstorage.cpp:283
TsStorage::targetWithTags
CatalogString targetWithTags(DocPosition pos) const
Definition: tsstorage.cpp:270
CatalogStorage
Abstract interface for storage of translation file.
Definition: catalogstorage.h:45
TsStorage::catalogString
CatalogString catalogString(const DocPosition &pos) const
Definition: tsstorage.cpp:265
QStringList
TsStorage::TsStorage
TsStorage()
Definition: tsstorage.cpp:54
TsStorage::sourceAllForms
QStringList sourceAllForms(const DocPosition &pos, bool stripNewLines=false) const
all plural forms. pos.form doesn't matter TODO
Definition: tsstorage.h:54
QDomDocument
TsStorage::setNote
Note setNote(DocPosition pos, const Note &note)
pos.form is note number
Definition: tsstorage.cpp:390
TsStorage::setEquivTrans
void setEquivTrans(const DocPosition &pos, bool equivTrans)
Definition: tsstorage.cpp:507
CatalogString
data structure used to pass info about inline elements a XLIFF tag is represented by a TAGRANGE_IMAGE...
Definition: catalogstring.h:128
TsStorage::capabilities
int capabilities() const
Definition: tsstorage.cpp:63
TsStorage::size
int size() const
Definition: tsstorage.cpp:117
TsStorage::targetAllForms
QStringList targetAllForms(const DocPosition &pos, bool stripNewLines=false) const
Definition: tsstorage.h:55
QVector< AltTrans >
TsStorage::context
QStringList context(const DocPosition &pos) const
Definition: tsstorage.cpp:432
TsStorage::developerNotes
QVector< Note > developerNotes(const DocPosition &pos) const
Definition: tsstorage.cpp:374
TsStorage::targetInsert
void targetInsert(const DocPosition &pos, const QString &arg)
Definition: tsstorage.cpp:295
TsStorage::setTarget
void setTarget(const DocPosition &pos, const QString &arg)
Definition: tsstorage.cpp:319
TsStorage::sourceWithTags
CatalogString sourceWithTags(DocPosition pos) const
Definition: tsstorage.cpp:274
TsStorage::id
QString id(const DocPosition &pos) const
entry id unique for this file
Definition: tsstorage.cpp:455
QDomElement
TsStorage::altTrans
QVector< AltTrans > altTrans(const DocPosition &pos) const
Definition: tsstorage.cpp:327
TsStorage::targetDelete
void targetDelete(const DocPosition &pos, int count)
edit operations used by undo/redo system and sync-mode
Definition: tsstorage.cpp:289
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:40:07 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