Changeset 86557 in vbox for trunk/src/VBox/Frontends/VirtualBox
- Timestamp:
- Oct 13, 2020 1:58:00 PM (4 years ago)
- svn:sync-xref-src-repo-rev:
- 140902
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/extensions
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIRichTextLabel.cpp
r83523 r86557 27 27 QIRichTextLabel::QIRichTextLabel(QWidget *pParent) 28 28 : QWidget(pParent) 29 , m_pText Edit()29 , m_pTextBrowser() 30 30 , m_iMinimumTextWidth(0) 31 31 { … … 40 40 pMainLayout->setMargin(0); 41 41 42 /* Create text- edit: */43 m_pText Edit = new QTextEdit;44 if (m_pText Edit)42 /* Create text-browser: */ 43 m_pTextBrowser = new QTextBrowser; 44 if (m_pTextBrowser) 45 45 { 46 /* Configure text-edit: */ 47 m_pTextEdit->setReadOnly(true); 48 m_pTextEdit->setFocusPolicy(Qt::NoFocus); 49 m_pTextEdit->setFrameShape(QFrame::NoFrame); 50 m_pTextEdit->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); 51 m_pTextEdit->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored); 46 /* Configure text-browser: */ 47 m_pTextBrowser->setReadOnly(true); 48 m_pTextBrowser->setFocusPolicy(Qt::NoFocus); 49 m_pTextBrowser->setFrameShape(QFrame::NoFrame); 50 m_pTextBrowser->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); 51 m_pTextBrowser->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored); 52 m_pTextBrowser->setOpenExternalLinks(true); 52 53 53 /* Tune text- editviewport palette: */54 m_pText Edit->viewport()->setAutoFillBackground(false);55 QPalette pal = m_pText Edit->viewport()->palette();54 /* Tune text-browser viewport palette: */ 55 m_pTextBrowser->viewport()->setAutoFillBackground(false); 56 QPalette pal = m_pTextBrowser->viewport()->palette(); 56 57 pal.setColor(QPalette::Active, QPalette::Text, pal.color(QPalette::Active, QPalette::WindowText)); 57 58 pal.setColor(QPalette::Inactive, QPalette::Text, pal.color(QPalette::Inactive, QPalette::WindowText)); 58 59 pal.setColor(QPalette::Disabled, QPalette::Text, pal.color(QPalette::Disabled, QPalette::WindowText)); 59 m_pText Edit->viewport()->setPalette(pal);60 m_pTextBrowser->viewport()->setPalette(pal); 60 61 } 61 62 62 63 /* Add into layout: */ 63 pMainLayout->addWidget(m_pText Edit);64 pMainLayout->addWidget(m_pTextBrowser); 64 65 } 65 66 } … … 67 68 QString QIRichTextLabel::text() const 68 69 { 69 return m_pText Edit->toHtml();70 return m_pTextBrowser->toHtml(); 70 71 } 71 72 72 73 void QIRichTextLabel::registerImage(const QImage &image, const QString &strName) 73 74 { 74 m_pText Edit->document()->addResource(QTextDocument::ImageResource, QUrl(strName), QVariant(image));75 m_pTextBrowser->document()->addResource(QTextDocument::ImageResource, QUrl(strName), QVariant(image)); 75 76 } 76 77 77 78 QTextOption::WrapMode QIRichTextLabel::wordWrapMode() const 78 79 { 79 return m_pText Edit->wordWrapMode();80 return m_pTextBrowser->wordWrapMode(); 80 81 } 81 82 82 83 void QIRichTextLabel::setWordWrapMode(QTextOption::WrapMode policy) 83 84 { 84 m_pText Edit->setWordWrapMode(policy);85 m_pTextBrowser->setWordWrapMode(policy); 85 86 } 86 87 … … 88 89 { 89 90 QWidget::installEventFilter(pFilterObj); 90 m_pText Edit->installEventFilter(pFilterObj);91 m_pTextBrowser->installEventFilter(pFilterObj); 91 92 } 92 93 … … 97 98 98 99 /* Get corresponding QTextDocument: */ 99 QTextDocument *pTextDocument = m_pText Edit->document();100 QTextDocument *pTextDocument = m_pTextBrowser->document(); 100 101 /* Bug in QTextDocument (?) : setTextWidth doesn't work from the first time. */ 101 102 for (int iTry = 0; pTextDocument->textWidth() != m_iMinimumTextWidth && iTry < 3; ++iTry) … … 105 106 106 107 /* Resize to content size: */ 107 m_pText Edit->setMinimumSize(size);108 m_pTextBrowser->setMinimumSize(size); 108 109 layout()->activate(); 109 110 } … … 112 113 { 113 114 /* Set text: */ 114 m_pText Edit->setHtml(strText);115 m_pTextBrowser->setHtml(strText); 115 116 116 117 /* Get corresponding QTextDocument: */ 117 QTextDocument *pTextDocument = m_pText Edit->document();118 QTextDocument *pTextDocument = m_pTextBrowser->document(); 118 119 119 120 // WORKAROUND: -
trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIRichTextLabel.h
r82968 r86557 23 23 24 24 /* Qt includes: */ 25 #include <QText Edit>25 #include <QTextBrowser> 26 26 27 27 /* GUI includes: */ … … 29 29 30 30 /** QLabel analog to reflect rich-text, 31 ** based on private QText Editfunctionality. */31 ** based on private QTextBrowser functionality. */ 32 32 class SHARED_LIBRARY_STUFF QIRichTextLabel : public QWidget 33 33 { … … 64 64 private: 65 65 66 /** Holds the text- editor instance. */67 QText Edit *m_pTextEdit;66 /** Holds the text-browser instance. */ 67 QTextBrowser *m_pTextBrowser; 68 68 69 69 /** Holds the minimum text-width. */
Note:
See TracChangeset
for help on using the changeset viewer.