QGIS API Documentation 3.41.0-Master (d5b93354e9c)
Loading...
Searching...
No Matches
qgslayoutpolylinewidget.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslayoutpolylinewidget.h
3 begin : March 2016
4 copyright : (C) 2016 Paul Blottiere, Oslandia
5 email : paul dot blottiere at oslandia dot com
6 ***************************************************************************/
7
8/***************************************************************************
9 * *
10 * This program is free software; you can redistribute it and/or modify *
11 * it under the terms of the GNU General Public License as published by *
12 * the Free Software Foundation; either version 2 of the License, or *
13 * (at your option) any later version. *
14 * *
15 ***************************************************************************/
16
17#ifndef QGSLAYOUTPOLYLINEWIDGET_H
18#define QGSLAYOUTPOLYLINEWIDGET_H
19
20// We don't want to expose this in the public API
21#define SIP_NO_FILE
22
23#include "qgis_gui.h"
24#include "ui_qgslayoutpolylinewidgetbase.h"
25#include "qgslayoutitemwidget.h"
27
35class GUI_EXPORT QgsLayoutPolylineWidget : public QgsLayoutItemBaseWidget, private Ui::QgsLayoutPolylineWidgetBase
36{
37 Q_OBJECT
38 public:
41 void setMasterLayout( QgsMasterLayoutInterface *masterLayout ) override;
42
43 protected:
44 bool setNewItem( QgsLayoutItem *item ) override;
45
46 private:
47 QPointer<QgsLayoutItemPolyline> mPolyline;
48 QgsLayoutItemPropertiesWidget *mItemPropertiesWidget = nullptr;
49
50 void enableStartSvgInputElements( bool enable );
51 void enableEndSvgInputElements( bool enable );
52
53 private slots:
54
56 void setGuiElementValues();
57
58 void symbolChanged();
59 void arrowStrokeWidthChanged( double d );
60 void arrowHeadWidthChanged( double d );
61 void arrowHeadFillColorChanged( const QColor &newColor );
62 void arrowHeadStrokeColorChanged( const QColor &newColor );
63 void startArrowHeadToggled( bool toggled );
64 void endArrowHeadToggled( bool toggled );
65 void startNoMarkerToggled( bool toggled );
66 void endNoMarkerToggled( bool toggled );
67 void startSvgMarkerToggled( bool toggled );
68 void endSvgMarkerToggled( bool toggled );
69 void mStartMarkerLineEdit_textChanged( const QString &text );
70 void mEndMarkerLineEdit_textChanged( const QString &text );
71 void mStartMarkerToolButton_clicked();
72 void mEndMarkerToolButton_clicked();
73};
74
75#endif // QGSLAYOUTPOLYLINEWIDGET_H
A base class for property widgets for layout items.
virtual bool setNewItem(QgsLayoutItem *item)
Attempts to update the widget to show the properties for the specified item.
virtual void setMasterLayout(QgsMasterLayoutInterface *masterLayout)
Sets the master layout associated with the item.
Layout item for node based polyline shapes.
A widget for controlling the common properties of layout items (e.g.
Base class for graphical items within a QgsLayout.
Input widget for QgsLayoutItemPolyline.
Interface for master layout type objects, such as print layouts and reports.