CTK  0.1.0
The Common Toolkit is a community effort to provide support code for medical image analysis, surgical navigation, and related projects.
ctkFittedTextBrowser.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Library: CTK
4 
5  Copyright (c) Kitware Inc.
6 
7  Licensed under the Apache License, Version 2.0 (the "License");
8  you may not use this file except in compliance with the License.
9  You may obtain a copy of the License at
10 
11  http://www.apache.org/licenses/LICENSE-2.0.txt
12 
13  Unless required by applicable law or agreed to in writing, software
14  distributed under the License is distributed on an "AS IS" BASIS,
15  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  See the License for the specific language governing permissions and
17  limitations under the License.
18 
19 =========================================================================*/
20 
21 #ifndef __ctkFittedTextBrowser_h
22 #define __ctkFittedTextBrowser_h
23 
24 // Qt includes
25 #include <QTextBrowser>
26 
27 // CTK includes
28 #include "ctkWidgetsExport.h"
29 class ctkFittedTextBrowserPrivate;
30 
42 class CTK_WIDGETS_EXPORT ctkFittedTextBrowser : public QTextBrowser
43 {
44  Q_OBJECT
45  Q_PROPERTY(bool collapsed READ collapsed WRITE setCollapsed)
46  Q_PROPERTY(QString showDetailsText READ showDetailsText WRITE setShowDetailsText)
47  Q_PROPERTY(QString hideDetailsText READ hideDetailsText WRITE setHideDetailsText)
48 
49 
50 public:
51  ctkFittedTextBrowser(QWidget* parent = 0);
53 
56  void setCollapsed(bool collapsed);
58  bool collapsed() const;
59 
62  void setShowDetailsText(const QString &text);
64  QString showDetailsText()const;
65 
68  void setHideDetailsText(const QString &text);
70  QString hideDetailsText()const;
71 
73  Q_INVOKABLE QString collapsibleText() const;
74 
76  virtual QSize sizeHint() const;
78  virtual QSize minimumSizeHint() const;
80  virtual int heightForWidth(int width) const;
81 
82 public Q_SLOTS:
83 
95  void setCollapsibleText(const QString &text);
96 
97 #ifndef QT_NO_TEXTHTMLPARSER
100  void setCollapsibleHtml(const QString &text);
101 #endif
102 
105  void setCollapsiblePlainText(const QString &text);
106 
107 protected Q_SLOTS:
109  void anchorClicked(const QUrl &url);
110 
111 protected:
112  QScopedPointer<ctkFittedTextBrowserPrivate> d_ptr;
113 
114  virtual void resizeEvent(QResizeEvent* e);
115 
116 private:
117  Q_DECLARE_PRIVATE(ctkFittedTextBrowser);
118  Q_DISABLE_COPY(ctkFittedTextBrowser);
119 };
120 
121 #endif
void heightForWidthMayHaveChanged()
virtual int heightForWidth(int width) const
Reimplemented for internal reasons.
void setHideDetailsText(const QString &text)
QScopedPointer< ctkFittedTextBrowserPrivate > d_ptr
void setCollapsibleHtml(const QString &text)
void setShowDetailsText(const QString &text)
void anchorClicked(const QUrl &url)
virtual QSize sizeHint() const
Reimplemented for internal reasons.
ctkFittedTextBrowser(QWidget *parent=0)
void setCollapsed(bool collapsed)
void setCollapsibleText(const QString &text)
QString hideDetailsText() const
Text that is displayed at the end of non-collapsed text.
virtual ~ctkFittedTextBrowser()
QString showDetailsText() const
Text that is displayed at the end of collapsed text.
void setCollapsiblePlainText(const QString &text)
bool collapsed() const
Show only first line/the full text.
Q_INVOKABLE QString collapsibleText() const
Return text set by setCollapsibleText.
virtual QSize minimumSizeHint() const
Reimplemented for internal reasons.
virtual void resizeEvent(QResizeEvent *e)