edit operation on an annotation item
This is used for the item to return a representative geometry
of what the item would look like if the operation were to be
applied. It's used to generate a rubber band showing a preview
of the modification during interactive editing operations on
an annotation item.
edit operations on annotation layers, with initial implementation
as QgsAnnotationItemEditOperationMoveNode
This class encapsulates edit operations which apply to annotation
layers/items
This code corresponded to a "not a vector layer" error, which needlessly
prevents the QgsMapToolCapture class from being usable as a base class
for map tools which operate on non-vector layers.
There's no reason to restrict this call solely to vector layers
-- it's useful to have accessible for adding geometries associated
with other layer types too.
If we require all annotation item map tools to inherit from
QgsMapToolAdvancedDigitizing, then we lose the flexibility to
subclasss other map tools for annotation item creation (e.g.
QgsMapToolCapture)
* start to work on new branch for conditional statement
* adjust the layout
* some pseudocode
* start to design the type tFunct, that should lead to the conditional statement
* modify the raw with a smart pointer
* change the test method and some other parts in the tFunct type
* complete the conditional statement option and update the test
* change evaluation method
* some optimization in the evaluation method
* minor adjustment
* minor adjustmentto test method
* add the button to the ui and some change to the code
* add a comment
* modify the parser and lexer in order to let the raster calc work with case-insensitive IF/if/If/iF
* change some parts according to the review and simplify the test method
* minor changes
* modify comment
* minor changes to enum type (tFunction)
* add some parts to test toString() method
* add the possibility to use scalar condition in eveluationFunction() method and the corresponding test code
* update toString method
* update and optimize toString method
Co-authored-by: franc <Franc-Brs>
when we are editing annotation items, as properties of the item
which aren't exposed in the widget (e.g. it's geometry) may
have changed in the meantime and we don't want to lose those.
This class encapsulates the context in which a map layer config
widget is being shown (e.g. the corresponding map canvas, message
bar and other properties useful for the config widgets)
This registry is attached to QgsGui and handles registration of
functions which create widgets for modifying QgsAnnotationItems
Modeled heavily off the print layout API
This is the start of a map tool for interactive editing of items
in annotation layers. Currently it supports selecting items, and
pre-highlighting their nodes as the cursor is moved over the items.
(Not exposed in QGIS gui yet)