16 #ifndef QGSPROCESSINGMAPLAYERCOMBOBOX_H
17 #define QGSPROCESSINGMAPLAYERCOMBOBOX_H
43 class GUI_EXPORT QgsProcessingMapLayerComboBox :
public QWidget
54 ~QgsProcessingMapLayerComboBox()
override;
81 QString currentText();
95 QVariant value()
const;
109 void setEditable(
bool editable );
117 bool isEditable()
const;
128 void dragEnterEvent( QDragEnterEvent *event )
override;
129 void dragLeaveEvent( QDragLeaveEvent *event )
override;
130 void dropEvent( QDropEvent *event )
override;
136 void showSourceOptions();
137 void selectFromFile();
138 void browseForLayer();
141 std::unique_ptr< QgsProcessingParameterDefinition > mParameter;
143 QToolButton *mSelectButton =
nullptr;
144 QToolButton *mIterateButton =
nullptr;
145 QToolButton *mSettingsButton =
nullptr;
146 QCheckBox *mUseSelectionCheckBox =
nullptr;
147 bool mDragActive =
false;
148 long long mFeatureLimit = -1;
149 bool mIsOverridingDefaultGeometryCheck =
false;
151 QPointer< QgsMapLayer> mPrevLayer;
152 int mBlockChangedSignal = 0;
156 QMenu *mFeatureSourceMenu =
nullptr;
157 QgsMapLayer *compatibleMapLayerFromMimeData(
const QMimeData *data,
bool &incompatibleLayerSelected )
const;
158 QString compatibleUriFromMimeData(
const QMimeData *data )
const;
162 #endif // QGSPROCESSINGMAPLAYERCOMBOBOX_H