Fix incorrect cast to double in shapeburst fill header
Merge pull request #1695 from nyalldawson/fix_api

Fix incorrect cast to double in shapeburst fill header
fix warnings
more cleaning of redundant and same shortcuts
[processing] add hypsometric curves calculation algorithm
[processing] add open script action to script editor
[processing] correctly handle editable and non-editable fixed tables (fix #11602)
[processing] repair non-working random extract algorithms (fix #11571)
Boost coverage of raster fill unit tests

Also add missing sip bindings for GUI widget
update translation
widgetParametersPanel.ui: fix header
[ci skip]
Add hasDefaultValues method to QgsDataDefined, add some tests
[layout] Add layout measurement and size classes

These classes are used for storing measurements for a layout
(QgsLayoutMeasurement) and sizes for a layout (QgsLayoutSize).
They support storing a measurement unit alongside a measurement
length/size. A new class QgsLayoutMeasurementConverter handles
conversion between different units, including converting to and
from pixels via a specified DPI property.
[layout] Create a page size registry for layout

Adds a new QgsPageSize class and QgsPageSizeRegistry singleton,
which stores and manages known page sizes
[layout] Add base classes for layout
[layout] Add measurement unit handling to QgsLayout
Start porting page items
Work on moving/resizing with units
[layout] Split unit classes into their own files
[layout] Ensure that moving/resizing items respects reference point