~ubuntu-branches/ubuntu/natty/unity-2d/natty-updates

« back to all changes in this revision

Viewing changes to libunity-2d-private/src/gettexttranslator.h

  • Committer: Bazaar Package Importer
  • Author(s): Oliver Grawert
  • Date: 2011-02-24 13:45:27 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20110224134527-d2lk3qu3sxe9a8z0
Tags: 3.6.0-0ubuntu1
New Upstream version

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * This file is part of unity-2d
 
3
 *
 
4
 * Copyright 2011 Canonical Ltd.
 
5
 *
 
6
 * Authors:
 
7
 * - Aurélien Gâteau <aurelien.gateau@canonical.com>
 
8
 *
 
9
 * This program is free software; you can redistribute it and/or modify
 
10
 * it under the terms of the GNU General Public License as published by
 
11
 * the Free Software Foundation; version 3.
 
12
 *
 
13
 * This program is distributed in the hope that it will be useful,
 
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
16
 * GNU General Public License for more details.
 
17
 *
 
18
 * You should have received a copy of the GNU General Public License
 
19
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
20
 */
 
21
#ifndef GETTEXTTRANSLATOR_H
 
22
#define GETTEXTTRANSLATOR_H
 
23
 
 
24
// Local
 
25
 
 
26
// Qt
 
27
#include <QTranslator>
 
28
 
 
29
struct GettextTranslatorPrivate;
 
30
/**
 
31
 * A QTranslator which uses gettext
 
32
 */
 
33
class GettextTranslator : public QTranslator
 
34
{
 
35
    Q_OBJECT
 
36
public:
 
37
    GettextTranslator(QObject* parent = 0);
 
38
    ~GettextTranslator();
 
39
 
 
40
    /**
 
41
     * Reimplemented. Note that context is ignored.
 
42
     */
 
43
    QString translate(const char* context, const char* sourceText, const char* disambiguation=0) const;
 
44
 
 
45
    /**
 
46
     * Initialize the translator.
 
47
     * Translations are then loaded from:
 
48
     * $directory/$lang/locale/LC_MESSAGES/$domainName.mo
 
49
     */
 
50
    bool init(const QString& domainName, const QString& directory);
 
51
 
 
52
private:
 
53
    Q_DISABLE_COPY(GettextTranslator)
 
54
    GettextTranslatorPrivate* const d;
 
55
 
 
56
    // Hide "load" methods because they are used to load .qm
 
57
    bool load(const QString& filename, const QString& directory = QString(), const QString& search_delimiters = QString(), const QString& suffix = QString());
 
58
    bool load(const uchar* data, int len);
 
59
};
 
60
 
 
61
#endif /* GETTEXTTRANSLATOR_H */