summaryrefslogtreecommitdiffstats
path: root/chalk/plugins/tools/defaulttools/kis_tool_text.cc
diff options
context:
space:
mode:
authorMichele Calgaro <[email protected]>2021-05-23 20:48:35 +0900
committerMichele Calgaro <[email protected]>2021-05-29 15:16:28 +0900
commit8b78a8791bc539bcffe7159f9d9714d577cb3d7d (patch)
tree1328291f966f19a22d7b13657d3f01a588eb1083 /chalk/plugins/tools/defaulttools/kis_tool_text.cc
parent95834e2bdc5e01ae1bd21ac0dfa4fa1d2417fae9 (diff)
downloadkoffice-8b78a8791bc539bcffe7159f9d9714d577cb3d7d.tar.gz
koffice-8b78a8791bc539bcffe7159f9d9714d577cb3d7d.zip
Renaming of files in preparation for code style tools.
Signed-off-by: Michele Calgaro <[email protected]>
Diffstat (limited to 'chalk/plugins/tools/defaulttools/kis_tool_text.cc')
-rw-r--r--chalk/plugins/tools/defaulttools/kis_tool_text.cc198
1 files changed, 0 insertions, 198 deletions
diff --git a/chalk/plugins/tools/defaulttools/kis_tool_text.cc b/chalk/plugins/tools/defaulttools/kis_tool_text.cc
deleted file mode 100644
index 1a2687f1..00000000
--- a/chalk/plugins/tools/defaulttools/kis_tool_text.cc
+++ /dev/null
@@ -1,198 +0,0 @@
-/*
- * Copyright (c) 2004 Bart Coppens <[email protected]>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include <tqfont.h>
-#include <tqrect.h>
-#include <tqimage.h>
-#include <tqlayout.h>
-#include <tqwidget.h>
-#include <tqstring.h>
-#include <tqpixmap.h>
-#include <tqpainter.h>
-#include <tqpushbutton.h>
-#include <tqfontmetrics.h>
-#include <tqhbox.h>
-
-#include <tdeaction.h>
-#include <kinputdialog.h>
-#include <tdelocale.h>
-#include <tdefontdialog.h>
-#include <ksqueezedtextlabel.h>
-
-#include <tqcolor.h>
-
-#include "kis_point.h"
-#include "kis_image.h"
-#include "kis_layer.h"
-#include "kis_group_layer.h"
-#include "kis_paint_layer.h"
-#include "kis_cursor.h"
-#include "kis_tool_text.h"
-#include "kis_paint_device.h"
-#include "kis_canvas_subject.h"
-#include "kis_button_press_event.h"
-#include "kis_button_release_event.h"
-#include "kis_color.h"
-#include "kis_undo_adapter.h"
-
-KisToolText::KisToolText()
- : super(i18n("Text"))
- , m_wasPressed( false )
- , m_windowIsBeingShown( false )
-{
- setName("tool_text");
- m_subject = 0;
- setCursor(KisCursor::load("tool_text_cursor.png", 6, 6));
-}
-
-KisToolText::~KisToolText()
-{
-}
-
-void KisToolText::update(KisCanvasSubject *subject)
-{
- m_subject = subject;
- super::update(subject);
-}
-
-void KisToolText::buttonPress(KisButtonPressEvent *e)
-{
- if (m_subject && e->button() == Qt::LeftButton) {
- m_wasPressed = true;
- }
-}
-
-void KisToolText::buttonRelease(KisButtonReleaseEvent *e)
-{
- if ( m_windowIsBeingShown ) return;
-
- if (m_subject && e->button() == Qt::LeftButton) {
- if(!m_wasPressed) return;
- m_wasPressed = false;
- KisImageSP img = m_subject->currentImg();
-
- m_windowIsBeingShown = true;
- bool ok;
- TQString text = KInputDialog::getText(i18n("Font Tool"), i18n("Enter text:"),
- TQString(), &ok);
- if (!ok) {
- m_windowIsBeingShown = false;
- return;
- }
-
- KisUndoAdapter *undoAdapter = img->undoAdapter();
- if (undoAdapter) {
- undoAdapter->beginMacro(i18n("Text"));
- }
-
- TQFontMetrics metrics(m_font);
- TQRect boundingRect = TQT_TQRECT_OBJECT(metrics.boundingRect(text)).normalize();
- int xB = - boundingRect.x();
- int yB = - boundingRect.y();
-
- if (boundingRect.x() < 0 || boundingRect.y() < 0)
- boundingRect.moveBy(- boundingRect.x(), - boundingRect.y());
-
- TQPixmap pixels(boundingRect.width(), boundingRect.height());
- {
- TQPainter paint(&pixels);
- paint.fillRect(boundingRect, TQt::white);
- paint.setFont(m_font);
- paint.setBrush(TQBrush(TQt::black));
- paint.drawText(xB, yB, text);
- }
- TQImage image = pixels.convertToImage();
-
- TQ_INT32 height = boundingRect.height();
- TQ_INT32 width = boundingRect.width();
- KisPaintLayer *layer = new KisPaintLayer(img, '"' + text + '"', OPACITY_OPAQUE);
- KisGroupLayerSP parent = img->rootLayer();
- if (img->activeLayer())
- parent = img->activeLayer()->parent();
- img->addLayer(layer, parent, img->activeLayer());
- for (int y = 0; y < height; y++) {
- for (int x = 0; x < width; x++) {
- TQRgb pixel = image.pixel(x, y);
- // use the 'blackness' as alpha :)
- TQ_UINT8 alpha = 255 - tqRed(pixel) * OPACITY_OPAQUE / 255;
- TQColor c = m_subject->fgColor().toTQColor();
- layer->paintDevice()->setPixel(x, y, c, alpha);
- }
- }
-
- layer->setOpacity(m_opacity);
- layer->setCompositeOp(m_compositeOp);
-
- layer->setVisible(false);
- TQ_INT32 x = TQMAX(0, static_cast<int>(e->x() - width/2));
- TQ_INT32 y = TQMAX(0, static_cast<int>(e->y() - height/2));
- layer->setX(x);
- layer->setY(y);
- layer->setVisible(true);
- layer->setDirty();
-
- if (undoAdapter) {
- undoAdapter->endMacro();
- }
-
- m_windowIsBeingShown = false;
- }
-}
-
-void KisToolText::setFont() {
- TDEFontDialog::getFont( m_font, false/*, TQWidget* parent! */ );
- m_lbFontName->setText(TQString(m_font.family() + ", %1").arg(m_font.pointSize()));
-}
-
-TQWidget* KisToolText::createOptionWidget(TQWidget* parent)
-{
- TQWidget *widget = super::createOptionWidget(parent);
-
- m_lbFont = new TQLabel(i18n("Font: "), widget);
-
- TQHBox *fontBox = new TQHBox(widget);
- m_lbFontName = new KSqueezedTextLabel(TQString(m_font.family() + ", %1")
- .arg(m_font.pointSize()), fontBox);
- m_btnMoreFonts = new TQPushButton("...", fontBox);
-
- connect(m_btnMoreFonts, TQT_SIGNAL(released()), this, TQT_SLOT(setFont()));
-
- addOptionWidgetOption(fontBox, m_lbFont);
-
- return widget;
-}
-
-void KisToolText::setup(TDEActionCollection *collection)
-{
- m_action = static_cast<TDERadioAction *>(collection->action(name()));
-
- if (m_action == 0) {
- m_action = new TDERadioAction(i18n("T&ext"),
- "tool_text",
- TQt::SHIFT+TQt::Key_T,
- this,
- TQT_SLOT(activate()),
- collection,
- name());
- m_action->setExclusiveGroup("tools");
- m_action->setToolTip(i18n("Text"));
- m_ownAction = true;
- }
-}
-
-#include "kis_tool_text.moc"