Guitar
ImageViewWidget.h
Go to the documentation of this file.
1 #ifndef IMAGEVIEWWIDGET_H
2 #define IMAGEVIEWWIDGET_H
3 
4 #include <QMainWindow>
5 #include <QScrollBar>
6 #include <QWidget>
8 
9 class FileDiffWidget;
10 
12 
13 class ImageViewWidget : public QWidget {
14  Q_OBJECT
15 private:
16  struct Private;
18 
19  bool isValidImage() const;
20  QSize imageSize() const;
21 
22  QSizeF imageScrollRange() const;
23  void internalScrollImage(double x, double y);
24  void scrollImage(double x, double y);
25  void setImageScale(double scale);
27  bool hasFocus() const;
28  void setScrollBarRange(QScrollBar *h, QScrollBar *v);
29  void updateScrollBarRange();
30 protected:
31  QMainWindow *mainwindow();
32  void resizeEvent(QResizeEvent *) override;
33  void paintEvent(QPaintEvent *) override;
34  void mousePressEvent(QMouseEvent *event) override;
35  void mouseMoveEvent(QMouseEvent *event) override;
36  void wheelEvent(QWheelEvent *) override;
37 public:
38  explicit ImageViewWidget(QWidget *parent = nullptr);
39  ~ImageViewWidget() override;
40 
41  void bind(FileDiffWidget *filediffwidget, QScrollBar *vsb, QScrollBar *hsb);
42 
43  void clear();
44 
45  void setImage(std::string mimetype, QByteArray const &ba);
46 
47  void setLeftBorderVisible(bool f);
48 
49  void reflectScrollBar();
50 
51  static QString formatText(const Document::Line &line2);
52 signals:
53  void scrollByWheel(int lines);
54 };
55 
56 #endif // IMAGEVIEWWIDGET_H
Definition: FileDiffSliderWidget.h:20
The FileDiffWidget class サイドバイサイドで2つのファイルのdiffを表示するウィジェット
Definition: FileDiffWidget.h:41
Definition: ImageViewWidget.h:13
void setScrollBarRange(QScrollBar *h, QScrollBar *v)
Definition: ImageViewWidget.cpp:170
void scrollImage(double x, double y)
Definition: ImageViewWidget.cpp:102
bool hasFocus() const
Definition: ImageViewWidget.cpp:79
QMainWindow * mainwindow()
Definition: ImageViewWidget.cpp:188
static QString formatText(const Document::Line &line2)
Definition: ImageViewWidget.cpp:136
QSize imageSize() const
Definition: ImageViewWidget.cpp:210
bool isValidImage() const
Definition: ImageViewWidget.cpp:205
QSizeF imageScrollRange() const
Definition: ImageViewWidget.cpp:162
void setImageScale(double scale)
Definition: ImageViewWidget.cpp:336
void wheelEvent(QWheelEvent *) override
Definition: ImageViewWidget.cpp:343
void clear()
Definition: ImageViewWidget.cpp:128
void setImage(std::string mimetype, QByteArray const &ba)
Definition: ImageViewWidget.cpp:261
void paintEvent(QPaintEvent *) override
Definition: ImageViewWidget.cpp:217
void mouseMoveEvent(QMouseEvent *event) override
Definition: ImageViewWidget.cpp:318
void mousePressEvent(QMouseEvent *event) override
Definition: ImageViewWidget.cpp:308
void scrollByWheel(int lines)
void reflectScrollBar()
Definition: ImageViewWidget.cpp:118
void setLeftBorderVisible(bool f)
Definition: ImageViewWidget.cpp:85
void bind(FileDiffWidget *filediffwidget, QScrollBar *vsb, QScrollBar *hsb)
Definition: ImageViewWidget.cpp:72
void resizeEvent(QResizeEvent *) override
Definition: ImageViewWidget.cpp:256
void internalScrollImage(double x, double y)
Definition: ImageViewWidget.cpp:90
void updateScrollBarRange()
Definition: ImageViewWidget.cpp:183
ImageViewWidget(QWidget *parent=nullptr)
Definition: ImageViewWidget.cpp:52
Private * m
Definition: ImageViewWidget.h:16
QBrush getTransparentBackgroundBrush()
Definition: ImageViewWidget.cpp:193
~ImageViewWidget() override
Definition: ImageViewWidget.cpp:67
Definition: AbstractCharacterBasedApplication.h:86
Definition: ImageViewWidget.cpp:26