Bladeren bron

Added get_popup() method to ColorPickerButton. This allows to check if the picker is open or not using Popup signals.
Ammend: Added docs for the method.

RaXaR 7 jaren geleden
bovenliggende
commit
d6d0df4ba6
3 gewijzigde bestanden met toevoegingen van 13 en 0 verwijderingen
  1. 7 0
      doc/classes/ColorPickerButton.xml
  2. 5 0
      scene/gui/color_picker.cpp
  3. 1 0
      scene/gui/color_picker.h

+ 7 - 0
doc/classes/ColorPickerButton.xml

@@ -17,6 +17,13 @@
 			<description>
 			</description>
 		</method>
+		<method name="get_popup">
+			<return type="PopupPanel">
+			</return>
+			<description>
+			Returns the control's [PopupPanel] which allows you to connect to Popup Signals. This allows you to handle events when the ColorPicker is shown or hidden.
+			</description>
+		</method>
 	</methods>
 	<members>
 		<member name="color" type="Color" setter="set_pick_color" getter="get_pick_color">

+ 5 - 0
scene/gui/color_picker.cpp

@@ -664,11 +664,16 @@ ColorPicker *ColorPickerButton::get_picker() {
 	return picker;
 }
 
+PopupPanel *ColorPickerButton::get_popup() {
+	return popup;
+}
+
 void ColorPickerButton::_bind_methods() {
 
 	ClassDB::bind_method(D_METHOD("set_pick_color", "color"), &ColorPickerButton::set_pick_color);
 	ClassDB::bind_method(D_METHOD("get_pick_color"), &ColorPickerButton::get_pick_color);
 	ClassDB::bind_method(D_METHOD("get_picker"), &ColorPickerButton::get_picker);
+	ClassDB::bind_method(D_METHOD("get_popup"), &ColorPickerButton::get_popup);
 	ClassDB::bind_method(D_METHOD("set_edit_alpha", "show"), &ColorPickerButton::set_edit_alpha);
 	ClassDB::bind_method(D_METHOD("is_editing_alpha"), &ColorPickerButton::is_editing_alpha);
 	ClassDB::bind_method(D_METHOD("_color_changed"), &ColorPickerButton::_color_changed);

+ 1 - 0
scene/gui/color_picker.h

@@ -130,6 +130,7 @@ public:
 	bool is_editing_alpha() const;
 
 	ColorPicker *get_picker();
+	PopupPanel *get_popup();
 
 	ColorPickerButton();
 };