Warning, file /sdk/lokalize/src/binunitsview.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 This file is part of Lokalize 0003 0004 SPDX-FileCopyrightText: 2009 Nick Shaforostoff <shafff@ukr.net> 0005 SPDX-FileCopyrightText: 2018-2019 Simon Depiets <sdepiets@gmail.com> 0006 0007 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0008 */ 0009 0010 #ifndef BINUNITSVIEW_H 0011 #define BINUNITSVIEW_H 0012 0013 class Catalog; 0014 class BinUnitsModel; 0015 class MyTreeView; 0016 0017 #include "pos.h" 0018 0019 #include <QHash> 0020 #include <QDockWidget> 0021 #include <QAbstractListModel> 0022 0023 class BinUnitsView: public QDockWidget 0024 { 0025 Q_OBJECT 0026 public: 0027 explicit BinUnitsView(Catalog* catalog, QWidget *parent); 0028 0029 public Q_SLOTS: 0030 void selectUnit(const QString& id); 0031 0032 private: 0033 void contextMenuEvent(QContextMenuEvent *event) override; 0034 private Q_SLOTS: 0035 void mouseDoubleClicked(const QModelIndex&); 0036 void fileLoaded(); 0037 0038 private: 0039 Catalog* m_catalog; 0040 BinUnitsModel* m_model; 0041 MyTreeView* m_view; 0042 }; 0043 0044 0045 class BinUnitsModel: public QAbstractListModel 0046 { 0047 Q_OBJECT 0048 public: 0049 enum BinUnitsModelColumns { 0050 SourceFilePath = 0, 0051 TargetFilePath, 0052 Approved, 0053 ColumnCount 0054 }; 0055 0056 BinUnitsModel(Catalog* catalog, QObject* parent); 0057 ~BinUnitsModel() override = default; 0058 0059 int rowCount(const QModelIndex& parent = QModelIndex()) const override; 0060 int columnCount(const QModelIndex& parent = QModelIndex()) const override 0061 { 0062 Q_UNUSED(parent); 0063 return ColumnCount; 0064 } 0065 QVariant data(const QModelIndex&, int role = Qt::DisplayRole) const override; 0066 QVariant headerData(int section, Qt::Orientation, int role = Qt::DisplayRole) const override; 0067 0068 void setTargetFilePath(int row, const QString&); 0069 0070 private Q_SLOTS: 0071 void fileLoaded(); 0072 void entryModified(const DocPosition&); 0073 void updateFile(QString path); 0074 0075 private: 0076 Catalog* m_catalog; 0077 mutable QHash<QString, QImage> m_imageCache; 0078 0079 }; 0080 0081 #endif // BINUNITSVIEW_H