summaryrefslogtreecommitdiff
path: root/src/plugins/cpaster/columnindicatortextedit.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2010-03-29 14:54:25 +0200
committerFriedemann Kleint <Friedemann.Kleint@nokia.com>2010-03-29 14:54:25 +0200
commit6903f13bf3f5e929c265310c67023090590daba0 (patch)
tree034fdc373f9bab6fdd43d2b349a9e76473930038 /src/plugins/cpaster/columnindicatortextedit.cpp
parent7a1546d48575d0cb5d63c77d14258ce524c0365a (diff)
downloadqt-creator-6903f13bf3f5e929c265310c67023090590daba0.tar.gz
CPaster: Revive pastebin.com
-Pass simplified type based on mimetype to paste for highlighting. -Remove QHttp from CodePaster and pastebin.com in favour of QNetwork. -Implement new pastebin.com protocol -Implement listing via parsing the HTML-page for pastebin.com
Diffstat (limited to 'src/plugins/cpaster/columnindicatortextedit.cpp')
-rw-r--r--src/plugins/cpaster/columnindicatortextedit.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/plugins/cpaster/columnindicatortextedit.cpp b/src/plugins/cpaster/columnindicatortextedit.cpp
new file mode 100644
index 0000000000..9b7ce3fc74
--- /dev/null
+++ b/src/plugins/cpaster/columnindicatortextedit.cpp
@@ -0,0 +1,66 @@
+/**************************************************************************
+**
+** This file is part of Qt Creator
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+**
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** Commercial Usage
+**
+** Licensees holding valid Qt Commercial licenses may use this file in
+** accordance with the Qt Commercial License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Nokia.
+**
+** GNU Lesser General Public License Usage
+**
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** If you are unsure which license is appropriate for your use, please
+** contact the sales department at http://qt.nokia.com/contact.
+**
+**************************************************************************/
+
+#include "columnindicatortextedit.h"
+
+#include <QtGui/QPainter>
+#include <QtGui/QScrollBar>
+
+namespace CodePaster {
+
+ColumnIndicatorTextEdit::ColumnIndicatorTextEdit(QWidget *parent) :
+ QTextEdit(parent), m_columnIndicator(0)
+{
+ QFont font;
+ font.setFamily(QString::fromUtf8("Courier New"));
+ setFont(font);
+ setReadOnly(true);
+ QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+ sizePolicy.setVerticalStretch(3);
+ setSizePolicy(sizePolicy);
+ int cmx = 0, cmy = 0, cmw = 0, cmh = 0;
+ getContentsMargins(&cmx, &cmy, &cmw, &cmh);
+ m_columnIndicator = QFontMetrics(font).width('W') * 100 + cmx + 1;
+ m_columnIndicatorFont.setFamily(QString::fromUtf8("Times"));
+ m_columnIndicatorFont.setPointSizeF(7.0);
+}
+
+void ColumnIndicatorTextEdit::paintEvent(QPaintEvent *event)
+{
+ QTextEdit::paintEvent(event);
+
+ QPainter p(viewport());
+ p.setFont(m_columnIndicatorFont);
+ p.setPen(QPen(QColor(0xa0, 0xa0, 0xa0, 0xa0)));
+ p.drawLine(m_columnIndicator, 0, m_columnIndicator, viewport()->height());
+ int yOffset = verticalScrollBar()->value();
+ p.drawText(m_columnIndicator + 1, m_columnIndicatorFont.pointSize() - yOffset, "100");
+}
+
+} // namespace CodePaster