Skip to content

Commit 069f1a6

Browse files
committedMar 20, 2023
Add language capabilities
1 parent be004f5 commit 069f1a6

File tree

3 files changed

+39
-0
lines changed

3 files changed

+39
-0
lines changed
 

‎python/core/auto_additions/qgis.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2589,6 +2589,13 @@
25892589
# --
25902590
Qgis.ScriptLanguage.baseClass = Qgis
25912591
# monkey patching scoped based enum
2592+
Qgis.ScriptLanguageCapability.Reformat.__doc__ = "Language supports automatic code reformatting"
2593+
Qgis.ScriptLanguageCapability.__doc__ = 'Script language capabilities.\n\nThe flags reflect the support capabilities of a scripting language.\n\n.. versionadded:: 3.32\n\n' + '* ``Reformat``: ' + Qgis.ScriptLanguageCapability.Reformat.__doc__
2594+
# --
2595+
Qgis.ScriptLanguageCapability.baseClass = Qgis
2596+
Qgis.ScriptLanguageCapabilities.baseClass = Qgis
2597+
ScriptLanguageCapabilities = Qgis # dirty hack since SIP seems to introduce the flags in module
2598+
# monkey patching scoped based enum
25922599
Qgis.LayerTreeInsertionMethod.AboveInsertionPoint.__doc__ = "Layers are added in the tree above the insertion point"
25932600
Qgis.LayerTreeInsertionMethod.TopOfTree.__doc__ = "Layers are added at the top of the layer tree"
25942601
Qgis.LayerTreeInsertionMethod.OptimalInInsertionGroup.__doc__ = "Layers are added at optimal locations across the insertion point's group"

‎python/core/auto_generated/qgis.sip.in

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1589,6 +1589,14 @@ The development version
15891589
Unknown,
15901590
};
15911591

1592+
enum class ScriptLanguageCapability
1593+
{
1594+
Reformat,
1595+
};
1596+
1597+
typedef QFlags<Qgis::ScriptLanguageCapability> ScriptLanguageCapabilities;
1598+
1599+
15921600
enum class LayerTreeInsertionMethod
15931601
{
15941602
AboveInsertionPoint,
@@ -2012,6 +2020,8 @@ QFlags<Qgis::RelationshipCapability> operator|(Qgis::RelationshipCapability f1,
20122020

20132021
QFlags<Qgis::SettingsTreeNodeOption> operator|(Qgis::SettingsTreeNodeOption f1, QFlags<Qgis::SettingsTreeNodeOption> f2);
20142022

2023+
QFlags<Qgis::ScriptLanguageCapability> operator|(Qgis::ScriptLanguageCapability f1, QFlags<Qgis::ScriptLanguageCapability> f2);
2024+
20152025

20162026

20172027

‎src/core/qgis.h

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2725,6 +2725,27 @@ class CORE_EXPORT Qgis
27252725
};
27262726
Q_ENUM( ScriptLanguage )
27272727

2728+
/**
2729+
* Script language capabilities.
2730+
*
2731+
* The flags reflect the support capabilities of a scripting language.
2732+
*
2733+
* \since QGIS 3.32
2734+
*/
2735+
enum class ScriptLanguageCapability : int
2736+
{
2737+
Reformat = 1 << 0, //!< Language supports automatic code reformatting
2738+
};
2739+
Q_ENUM( ScriptLanguageCapability )
2740+
2741+
/**
2742+
* Script language capabilities.
2743+
*
2744+
* \since QGIS 3.32
2745+
*/
2746+
Q_DECLARE_FLAGS( ScriptLanguageCapabilities, ScriptLanguageCapability )
2747+
Q_FLAG( ScriptLanguageCapabilities )
2748+
27282749
/**
27292750
* Layer tree insertion methods
27302751
*
@@ -3372,6 +3393,7 @@ Q_DECLARE_OPERATORS_FOR_FLAGS( Qgis::MapLayerActionTargets )
33723393
Q_DECLARE_OPERATORS_FOR_FLAGS( Qgis::MapLayerActionFlags )
33733394
Q_DECLARE_OPERATORS_FOR_FLAGS( Qgis::RelationshipCapabilities )
33743395
Q_DECLARE_OPERATORS_FOR_FLAGS( Qgis::SettingsTreeNodeOptions )
3396+
Q_DECLARE_OPERATORS_FOR_FLAGS( Qgis::ScriptLanguageCapabilities )
33753397

33763398

33773399
// hack to workaround warnings when casting void pointers

0 commit comments

Comments
 (0)
Please sign in to comment.