1enum Efl.Ui.Alert_Popup_Button {
2   [[Defines the type of the alert button. @since 1.23]]
3   positive = 0, [[Button having positive meaning. E.g. "Yes".]]
4   negative, [[Button having negative meaning. E.g. "No".]]
5   user [[Button having user-defined meaning. E.g. "More information".]]
6}
7
8struct Efl.Ui.Alert_Popup_Button_Clicked_Event {
9   [[Information for @[Efl.Ui.Alert_Popup.button,clicked] event. @since 1.23]]
10   button_type: Efl.Ui.Alert_Popup_Button; [[Clicked button type.]]
11}
12
13class Efl.Ui.Alert_Popup extends Efl.Ui.Popup
14{
15   [[A variant of @Efl.Ui.Popup which uses a layout containing a content object and
16     a variable number of buttons (up to 3 total).
17
18     An Alert_Popup is a popup which can be used when an application requires user interaction. It provides
19     functionality for easily creating button objects on the popup and passing information about
20     which button has been pressed to the button event callback.
21
22     @since 1.23
23   ]]
24   methods {
25      @property button {
26         [[This property changes the text and icon for the specified button object.
27
28           When set, the Alert_Popup will create a button for the specified type if it does not yet
29           exist. The button's content and text will be set using the passed values.
30
31           Exactly one button may exist for each @Efl.Ui.Alert_Popup_Button type. Repeated calls to
32           set values for the same button type will overwrite previous values.
33
34           By default, no buttons are created. Once a button is added to the Popup using this property
35           it cannot be removed.
36         ]]
37         set {
38         }
39         keys {
40            type: Efl.Ui.Alert_Popup_Button; [[Alert_Popup button type.]]
41         }
42         values {
43            text: string; [[Text of the specified button type.]]
44            icon: Efl.Canvas.Object; [[Visual to use as an icon for the specified button type.]]
45         }
46      }
47   }
48   parts {
49      title : Efl.Ui.Alert_Popup_Part_Title; [[The title text of Alert Popup.]]
50   }
51   implements {
52      Efl.Object.constructor;
53      Efl.Object.destructor;
54      Efl.Part.part_get;
55   }
56   events {
57      button,clicked: Efl.Ui.Alert_Popup_Button_Clicked_Event; [[Called when an Alert_Popup button was clicked.]]
58   }
59}
60