• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • krita API Reference
  • KDE Home
  • Contact Us
 

KritaWidgets

  • sources
  • kfour-appscomplete
  • krita
  • libs
  • widgets
KoToolBoxDocker.cpp
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2005-2009 Thomas Zander <[email protected]>
3  * SPDX-FileCopyrightText: 2009 Peter Simonsson <[email protected]>
4  * SPDX-FileCopyrightText: 2010 Cyrille Berger <[email protected]>
5  *
6  * SPDX-License-Identifier: LGPL-2.0-or-later
7  */
8 
9 #include "KoToolBoxDocker_p.h"
10 #include "KoToolBox_p.h"
11 #include "KoToolBoxScrollArea_p.h"
12 #include "KoDockRegistry.h"
13 #include <KoDockWidgetTitleBar.h>
14 #include <klocalizedstring.h>
15 #include <QLabel>
16 #include <QFontMetrics>
17 #include <QFrame>
18 
19 KoToolBoxDocker::KoToolBoxDocker(KoToolBox *toolBox)
20  : QDockWidget(i18n("Toolbox"))
21  , m_toolBox(toolBox)
22  , m_scrollArea(new KoToolBoxScrollArea(toolBox, this))
23 {
24  setWidget(m_scrollArea);
25 
26  KoDockWidgetTitleBar* titleBar = new KoDockWidgetTitleBar(this);
27  titleBar->setTextVisibilityMode(KoDockWidgetTitleBar::TextCanBeInvisible);
28  titleBar->setToolTip(i18n("Tools"));
29  setTitleBarWidget(titleBar);
30 
31  connect(this, SIGNAL(dockLocationChanged(Qt::DockWidgetArea)),
32  this, SLOT(updateToolBoxOrientation(Qt::DockWidgetArea)));
33  connect(this, SIGNAL(topLevelChanged(bool)),
34  this, SLOT(updateFloating(bool)));
35 }
36 
37 void KoToolBoxDocker::setCanvas(KoCanvasBase *canvas)
38 {
39  Q_UNUSED(canvas);
40 }
41 
42 void KoToolBoxDocker::unsetCanvas()
43 {
44 }
45 
46 void KoToolBoxDocker::resizeEvent(QResizeEvent *event)
47 {
48  QDockWidget::resizeEvent(event);
49  if (isFloating()) {
50  if (m_scrollArea->width() > m_scrollArea->height()) {
51  m_scrollArea->setOrientation(Qt::Horizontal);
52  } else {
53  m_scrollArea->setOrientation(Qt::Vertical);
54  }
55  }
56 }
57 
58 void KoToolBoxDocker::updateToolBoxOrientation(Qt::DockWidgetArea area)
59 {
60  if (area == Qt::TopDockWidgetArea || area == Qt::BottomDockWidgetArea) {
61  m_scrollArea->setOrientation(Qt::Horizontal);
62  } else {
63  m_scrollArea->setOrientation(Qt::Vertical);
64  }
65 }
66 
67 void KoToolBoxDocker::updateFloating(bool v)
68 {
69  m_toolBox->setFloating(v);
70 }
QDockWidget::isFloating
bool isFloating() const
QWidget::resizeEvent
virtual void resizeEvent(QResizeEvent *event)
KoToolBox
KoToolBox is a dock widget that can order tools according to type and priority.
Definition: KoToolBox_p.h:37
KoToolBox_p.h
KoToolBoxDocker_p.h
QDockWidget::setWidget
void setWidget(QWidget *widget)
QObject::connect
bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
QDockWidget::event
virtual bool event(QEvent *event)
KoDockWidgetTitleBar::TextCanBeInvisible
Definition: KoDockWidgetTitleBar.h:29
KoDockWidgetTitleBar::setTextVisibilityMode
void setTextVisibilityMode(TextVisibilityMode textVisibilityMode)
Define whether the minimal width should ensure that the full text is visible.
Definition: KoDockWidgetTitleBar.cpp:225
KoDockWidgetTitleBar
A custom title bar for dock widgets.
Definition: KoDockWidgetTitleBar.h:19
KoToolBox::setFloating
void setFloating(bool v)
Definition: KoToolBox.cpp:254
QDockWidget::dockLocationChanged
void dockLocationChanged(Qt::DockWidgetArea area)
QDockWidget
KoToolBoxScrollArea::setOrientation
void setOrientation(Qt::Orientation orientation)
Definition: KoToolBoxScrollArea_p.h:64
QDockWidget::topLevelChanged
void topLevelChanged(bool topLevel)
KoToolBoxDocker::updateToolBoxOrientation
void updateToolBoxOrientation(Qt::DockWidgetArea area)
Definition: KoToolBoxDocker.cpp:58
KoDockWidgetTitleBar.h
QDockWidget::setTitleBarWidget
void setTitleBarWidget(QWidget *widget)
QWidget::height
height
QWidget::setToolTip
void setToolTip(const QString &)
QResizeEvent
KoToolBoxDocker::updateFloating
void updateFloating(bool)
Definition: KoToolBoxDocker.cpp:67
KoToolBoxDocker::resizeEvent
void resizeEvent(QResizeEvent *event) override
Definition: KoToolBoxDocker.cpp:46
KoToolBoxScrollArea_p.h
KoToolBoxDocker::KoToolBoxDocker
KoToolBoxDocker(KoToolBox *toolBox)
Definition: KoToolBoxDocker.cpp:19
QWidget::width
width
KoToolBoxDocker::unsetCanvas
void unsetCanvas() override
Definition: KoToolBoxDocker.cpp:42
KoToolBoxDocker::setCanvas
void setCanvas(KoCanvasBase *canvas) override
reimplemented from KoCanvasObserverBase
Definition: KoToolBoxDocker.cpp:37
KoToolBoxScrollArea
Definition: KoToolBoxScrollArea_p.h:20
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Sat Jan 23 2021 11:48:23 by doxygen 1.8.16 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KritaWidgets

Skip menu "KritaWidgets"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

krita API Reference

Skip menu "krita API Reference"
  • libs
  •   KritaBasicFlakes
  •   brush
  •   KritaUndo2
  •   KritaFlake
  •   image
  •   KritaPlugin
  •   Krita
  •   KritaPigment
  •   KritaResources
  •   KritaStore
  •   ui
  •   KritaWidgets
  •   KritaWidgetUtils
  • plugins
  •   Assitants
  •   Extensions
  •   Filters
  •   Generators
  •   Formats
  •           src
  •   PaintOps
  •     libpaintop

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal