1 #pragma warning disable CS1591
3 using System.Runtime.InteropServices;
4 using System.Collections.Generic;
6 using System.Threading;
7 using System.ComponentModel;
10 /// <summary>Policy identifiers.</summary>
13 /// <summary>under which circumstances the application should quit automatically. See also <see cref="Elm.Policy.Quit"/>.</summary>
15 /// <summary>defines elm_exit() behaviour. See also <see cref="Elm.Policy.Exit"/>.
16 /// (Since EFL 1.8)</summary>
18 /// <summary>defines how throttling should work. See also <see cref="Elm.Policy.Throttle"/>
19 /// (Since EFL 1.8)</summary>
21 /// <summary>Sentinel value to indicate last enum field during iteration</summary>
29 /// <summary>Possible values for the <see cref="Elm.Policy.Quit"/> policy</summary>
30 public enum PolicyQuit
32 /// <summary>never quit the application automatically</summary>
34 /// <summary>quit when the application's last window is closed</summary>
36 /// <summary>quit when the application's last window is hidden
37 /// (Since EFL 1.14)</summary>
45 /// <summary>Possible values for the <see cref="Elm.Policy.Exit"/> policy.
46 /// (Since EFL 1.8)</summary>
47 public enum PolicyExit
49 /// <summary>just quit the main loop on elm_exit()</summary>
51 /// <summary>delete all the windows after quitting the main loop</summary>
59 /// <summary>Possible values for the <see cref="Elm.Policy.Throttle"/> policy.
60 /// (Since EFL 1.8)</summary>
61 public enum PolicyThrottle
63 /// <summary>do whatever elementary config is configured to do</summary>
65 /// <summary>always throttle when all windows are no longer visible</summary>
67 /// <summary>never throttle when windows are all hidden, regardless of config settings</summary>
77 /// <summary>Possible values for the #ELM_OBJECT_SELECT_MODE policy.
78 /// (Since EFL 1.7)</summary>
79 public enum SelectMode
81 /// <summary>default select mode. Once an item is selected, it would stay highlighted and not going to call selected callback again even it was clicked. Items can get focus.</summary>
83 /// <summary>always select mode. Item selected callbacks will be called every time for click events, even after the item was already selected. Items can get focus.</summary>
85 /// <summary>no select mode. Items will never be highlighted and selected but the size will be adjusted by the finger size configuration. Items can't get focus.</summary>
87 /// <summary>no select mode with no finger size rule. Items will never be highlighted and selected and ignore the finger size. So the item size can be reduced below than the finger size configuration. Items can't get focus.</summary>
89 /// <summary>canary value: any value greater or equal to ELM_OBJECT_SELECT_MODE_MAX is forbidden.</summary>
101 /// <summary>Possible values for the #ELM_OBJECT_MULTI_SELECT_MODE policy.
102 /// (Since EFL 1.8)</summary>
103 public enum MultiSelectMode
105 /// <summary>default multiple select mode</summary>
107 /// <summary>disallow mutiple selection when clicked without control key pressed</summary>
109 /// <summary>canary value: any value greater or equal to ELM_OBJECT_MULTI_SELECT_MODE_MAX is forbidden.</summary>
121 /// <summary>Line wrapping types. Type of word or character wrapping to use.
122 /// See also @ref elm_entry_line_wrap_set, @ref elm_popup_content_text_wrap_type_set, @ref elm_label_line_wrap_set.</summary>
125 /// <summary>No wrap - value is zero.</summary>
127 /// <summary>Char wrap - wrap between characters.</summary>
129 /// <summary>Word wrap - wrap in allowed wrapping points (as defined in the unicode standard).</summary>
131 /// <summary>Mixed wrap - Word wrap, and if that fails, char wrap.</summary>
133 /// <summary>Sentinel value to indicate last enum field during iteration</summary>
145 /// <summary>Elementary icon types</summary>
148 /// <summary>Icon has no type set</summary>
150 /// <summary>Icon is of type file</summary>
152 /// <summary>Icon is of type standard</summary>
162 /// <summary>Text Format types.</summary>
163 public enum TextFormat
165 /// <summary>Plain UTF8 type</summary>
167 /// <summary>Markup UTF8 type</summary>
179 /// <summary>Input panel (virtual keyboard) layout types. Type of input panel (virtual keyboard) to use - this is a hint and may not provide exactly what is desired.</summary>
182 /// <summary>Default layout.</summary>
184 /// <summary>Number layout.</summary>
186 /// <summary>Email layout.</summary>
188 /// <summary>URL layout.</summary>
190 /// <summary>Phone Number layout.</summary>
192 /// <summary>IP layout.</summary>
194 /// <summary>Month layout.</summary>
196 /// <summary>Number Only layout.</summary>
198 /// <summary>Never use this.</summary>
200 /// <summary>Hexadecimal layout.</summary>
202 /// <summary>Command-line terminal layout including esc, alt, ctrl key, so on (no auto-correct, no auto-capitalization).</summary>
204 /// <summary>Like normal, but no auto-correct, no auto-capitalization etc.</summary>
206 /// <summary>Date and time layout
207 /// (Since EFL 1.8)</summary>
209 /// <summary>Emoticon layout
210 /// (Since EFL 1.10)</summary>
212 /// <summary>Voice layout, but if the IME does not support voice layout, then normal layout will be shown.
213 /// (Since EFL 1.19)</summary>
229 /// <summary>Input panel (virtual keyboard) language modes.</summary>
232 /// <summary>Automatic</summary>
234 /// <summary>Alphabet</summary>
246 namespace Autocapital {
248 /// <summary>Autocapitalization Types. Choose method of auto-capitalization.</summary>
251 /// <summary>No auto-capitalization when typing.</summary>
253 /// <summary>Autocapitalize each word typed.</summary>
255 /// <summary>Autocapitalize the start of each sentence.</summary>
257 /// <summary>Autocapitalize all letters.</summary>
271 namespace ReturnKey {
273 /// <summary>"Return" Key types on the input panel (virtual keyboard).</summary>
276 /// <summary>Default.</summary>
278 /// <summary>Done.</summary>
280 /// <summary>Go.</summary>
282 /// <summary>Join.</summary>
284 /// <summary>Login.</summary>
286 /// <summary>Next.</summary>
288 /// <summary>Search string or magnifier icon.</summary>
290 /// <summary>Send.</summary>
293 /// (Since EFL 1.8)</summary>
309 /// <summary>Enumeration that defines the types of Input Hints.
310 /// (Since EFL 1.12)</summary>
313 /// <summary>No active hints
314 /// (Since EFL 1.12)</summary>
316 /// <summary>Suggest word auto completion
317 /// (Since EFL 1.12)</summary>
319 /// <summary>Typed text should not be stored.
320 /// (Since EFL 1.12)</summary>
322 /// <summary>Autofill hint for a credit card expiration date
323 /// (Since EFL 1.21)</summary>
324 AutofillCreditCardExpirationDate = 256,
325 /// <summary>Autofill hint for a credit card expiration day
326 /// (Since EFL 1.21)</summary>
327 AutofillCreditCardExpirationDay = 512,
328 /// <summary>Autofill hint for a credit card expiration month
329 /// (Since EFL 1.21)</summary>
330 AutofillCreditCardExpirationMonth = 768,
331 /// <summary>Autofill hint for a credit card expiration year
332 /// (Since EFL 1.21)</summary>
333 AutofillCreditCardExpirationYear = 1024,
334 /// <summary>Autofill hint for a credit card number
335 /// (Since EFL 1.21)</summary>
336 AutofillCreditCardNumber = 1280,
337 /// <summary>Autofill hint for an email address
338 /// (Since EFL 1.21)</summary>
339 AutofillEmailAddress = 1536,
340 /// <summary>Autofill hint for a user's real name
341 /// (Since EFL 1.21)</summary>
343 /// <summary>Autofill hint for a phone number
344 /// (Since EFL 1.21)</summary>
345 AutofillPhone = 2048,
346 /// <summary>Autofill hint for a postal address
347 /// (Since EFL 1.21)</summary>
348 AutofillPostalAddress = 2304,
349 /// <summary>Autofill hint for a postal code
350 /// (Since EFL 1.21)</summary>
351 AutofillPostalCode = 2560,
352 /// <summary>Autofill hint for a user's ID
353 /// (Since EFL 1.21)</summary>
363 /// <summary>Enum of entry's copy & paste policy.</summary>
366 /// <summary>copy & paste text with markup tag</summary>
368 /// <summary>copy & paste text without item(image) tag</summary>
370 /// <summary>copy & paste text without markup tag</summary>
382 /// <summary>Defines if the item is of any special type (has subitems or it's the index of a group), or is just a simple item.</summary>
385 /// <summary>Simple item.</summary>
387 /// <summary>This may be expanded and have child items.</summary>
389 /// <summary>An index item of a group of items. this item can have child items.</summary>
391 /// <summary>Sentinel value to indicate last enum field during iteration</summary>
407 /// <summary>Defines the type of the item part Used while updating item's parts It can be used at updating multi fields.</summary>
408 public enum FieldType
410 /// <summary>Type all</summary>
412 /// <summary>Type text</summary>
414 /// <summary>Type content</summary>
416 /// <summary>Type state</summary>
432 /// <summary>Defines where to position the item in the genlist.</summary>
433 public enum ScrolltoType
435 /// <summary>Nothing will happen, Don't use this value.</summary>
437 /// <summary>To the nearest viewport.</summary>
439 /// <summary>To the top of viewport.</summary>
441 /// <summary>To the middle of viewport.</summary>
443 /// <summary>To the bottom of viewport.</summary>
459 /// <summary>Defines where to position the item in the genlist.</summary>
460 public enum ScrolltoType
462 /// <summary>No scrollto.</summary>
464 /// <summary>To the nearest viewport.</summary>
466 /// <summary>To the top of viewport.</summary>
468 /// <summary>To the middle of viewport.</summary>
470 /// <summary>To the bottom of viewport.</summary>
486 /// <summary>Defines the type of the item part Used while updating item's parts. It can be used at updating multi fields.</summary>
487 public enum FieldType
489 /// <summary>Type all</summary>
491 /// <summary>Type text</summary>
493 /// <summary>Type content</summary>
495 /// <summary>Type state</summary>
509 /// <summary>Set list's resizing behavior, transverse axis scrolling and items cropping. See each mode's description for more details.
510 /// Note: Default value is <see cref="Elm.List.Mode.Scroll"/>.
512 /// Values here don't work as bitmasks -- only one can be chosen at a time.</summary>
515 /// <summary>The list won't set any of its size hints to inform how a possible container should resize it. Then, if it's not created as a "resize object", it might end with zeroed dimensions. The list will respect the container's geometry and, if any of its items won't fit into its transverse axis, one won't be able to scroll it in that direction.</summary>
517 /// <summary>Default value. This is the same as #ELM_LIST_COMPRESS, with the exception that if any of its items won't fit into its transverse axis, one will be able to scroll it in that direction.</summary>
519 /// <summary>Sets a minimum size hint on the list object, so that containers may respect it (and resize itself to fit the child properly). More specifically, a minimum size hint will be set for its transverse axis, so that the largest item in that direction fits well. This is naturally bound by the list object's maximum size hints, set externally.</summary>
521 /// <summary>Besides setting a minimum size on the transverse axis, just like on <see cref="Elm.List.Mode.Limit"/>, the list will set a minimum size on the longitudinal axis, trying to reserve space to all its children to be visible at a time. . This is naturally bound by the list object's maximum size hints, set externally.</summary>
523 /// <summary>Indicates error if returned by elm_list_mode_get().</summary>
535 /// <summary>Data on the event when an Elementary policy has changed</summary>
536 [StructLayout(LayoutKind.Sequential)]
537 public struct PolicyChanged
539 /// <summary>the policy identifier</summary>
541 /// <summary>value the policy had before the change</summary>
542 public int New_value;
543 /// <summary>new value the policy got</summary>
544 public int Old_value;
545 ///<summary>Constructor for PolicyChanged.</summary>
546 public PolicyChanged(
547 uint Policy = default(uint),
548 int New_value = default(int),
549 int Old_value = default(int) )
551 this.Policy = Policy;
552 this.New_value = New_value;
553 this.Old_value = Old_value;
556 public static implicit operator PolicyChanged(IntPtr ptr)
558 var tmp = (PolicyChanged.NativeStruct)Marshal.PtrToStructure(ptr, typeof(PolicyChanged.NativeStruct));
562 ///<summary>Internal wrapper for struct PolicyChanged.</summary>
563 [StructLayout(LayoutKind.Sequential)]
564 public struct NativeStruct
569 public int New_value;
571 public int Old_value;
572 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
573 public static implicit operator PolicyChanged.NativeStruct(PolicyChanged _external_struct)
575 var _internal_struct = new PolicyChanged.NativeStruct();
576 _internal_struct.Policy = _external_struct.Policy;
577 _internal_struct.New_value = _external_struct.New_value;
578 _internal_struct.Old_value = _external_struct.Old_value;
579 return _internal_struct;
582 ///<summary>Implicit conversion to the managed representation.</summary>
583 public static implicit operator PolicyChanged(PolicyChanged.NativeStruct _internal_struct)
585 var _external_struct = new PolicyChanged();
586 _external_struct.Policy = _internal_struct.Policy;
587 _external_struct.New_value = _internal_struct.New_value;
588 _external_struct.Old_value = _internal_struct.Old_value;
589 return _external_struct;
600 /// <summary>Elementary gen item</summary>
601 [StructLayout(LayoutKind.Sequential)]
602 public struct ElmGenItem
604 ///<summary>Placeholder field</summary>
606 public static implicit operator ElmGenItem(IntPtr ptr)
608 var tmp = (ElmGenItem.NativeStruct)Marshal.PtrToStructure(ptr, typeof(ElmGenItem.NativeStruct));
612 ///<summary>Internal wrapper for struct ElmGenItem.</summary>
613 [StructLayout(LayoutKind.Sequential)]
614 public struct NativeStruct
616 internal IntPtr field;
617 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
618 public static implicit operator ElmGenItem.NativeStruct(ElmGenItem _external_struct)
620 var _internal_struct = new ElmGenItem.NativeStruct();
621 return _internal_struct;
624 ///<summary>Implicit conversion to the managed representation.</summary>
625 public static implicit operator ElmGenItem(ElmGenItem.NativeStruct _internal_struct)
627 var _external_struct = new ElmGenItem();
628 return _external_struct;
637 /// <summary>Efl access action data</summary>
638 [StructLayout(LayoutKind.Sequential)]
639 public struct EflAccessActionData
641 ///<summary>Placeholder field</summary>
643 public static implicit operator EflAccessActionData(IntPtr ptr)
645 var tmp = (EflAccessActionData.NativeStruct)Marshal.PtrToStructure(ptr, typeof(EflAccessActionData.NativeStruct));
649 ///<summary>Internal wrapper for struct EflAccessActionData.</summary>
650 [StructLayout(LayoutKind.Sequential)]
651 public struct NativeStruct
653 internal IntPtr field;
654 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
655 public static implicit operator EflAccessActionData.NativeStruct(EflAccessActionData _external_struct)
657 var _internal_struct = new EflAccessActionData.NativeStruct();
658 return _internal_struct;
661 ///<summary>Implicit conversion to the managed representation.</summary>
662 public static implicit operator EflAccessActionData(EflAccessActionData.NativeStruct _internal_struct)
664 var _external_struct = new EflAccessActionData();
665 return _external_struct;
676 /// <summary>Data for the elm_validator_regexp_helper()</summary>
677 [StructLayout(LayoutKind.Sequential)]
678 public struct ValidateContent
680 ///<summary>Placeholder field</summary>
682 public static implicit operator ValidateContent(IntPtr ptr)
684 var tmp = (ValidateContent.NativeStruct)Marshal.PtrToStructure(ptr, typeof(ValidateContent.NativeStruct));
688 ///<summary>Internal wrapper for struct ValidateContent.</summary>
689 [StructLayout(LayoutKind.Sequential)]
690 public struct NativeStruct
692 internal IntPtr field;
693 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
694 public static implicit operator ValidateContent.NativeStruct(ValidateContent _external_struct)
696 var _internal_struct = new ValidateContent.NativeStruct();
697 return _internal_struct;
700 ///<summary>Implicit conversion to the managed representation.</summary>
701 public static implicit operator ValidateContent(ValidateContent.NativeStruct _internal_struct)
703 var _external_struct = new ValidateContent();
704 return _external_struct;
715 /// <summary>The info sent in the callback for the "anchor,clicked" signals emitted by entries.</summary>
716 [StructLayout(LayoutKind.Sequential)]
717 public struct EntryAnchorInfo
719 ///<summary>Placeholder field</summary>
721 public static implicit operator EntryAnchorInfo(IntPtr ptr)
723 var tmp = (EntryAnchorInfo.NativeStruct)Marshal.PtrToStructure(ptr, typeof(EntryAnchorInfo.NativeStruct));
727 ///<summary>Internal wrapper for struct EntryAnchorInfo.</summary>
728 [StructLayout(LayoutKind.Sequential)]
729 public struct NativeStruct
731 internal IntPtr field;
732 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
733 public static implicit operator EntryAnchorInfo.NativeStruct(EntryAnchorInfo _external_struct)
735 var _internal_struct = new EntryAnchorInfo.NativeStruct();
736 return _internal_struct;
739 ///<summary>Implicit conversion to the managed representation.</summary>
740 public static implicit operator EntryAnchorInfo(EntryAnchorInfo.NativeStruct _internal_struct)
742 var _external_struct = new EntryAnchorInfo();
743 return _external_struct;
754 /// <summary>The info sent in the callback for "anchor,hover" signals emitted by the Anchor_Hover widget</summary>
755 [StructLayout(LayoutKind.Sequential)]
756 public struct EntryAnchorHoverInfo
758 ///<summary>Placeholder field</summary>
760 public static implicit operator EntryAnchorHoverInfo(IntPtr ptr)
762 var tmp = (EntryAnchorHoverInfo.NativeStruct)Marshal.PtrToStructure(ptr, typeof(EntryAnchorHoverInfo.NativeStruct));
766 ///<summary>Internal wrapper for struct EntryAnchorHoverInfo.</summary>
767 [StructLayout(LayoutKind.Sequential)]
768 public struct NativeStruct
770 internal IntPtr field;
771 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
772 public static implicit operator EntryAnchorHoverInfo.NativeStruct(EntryAnchorHoverInfo _external_struct)
774 var _internal_struct = new EntryAnchorHoverInfo.NativeStruct();
775 return _internal_struct;
778 ///<summary>Implicit conversion to the managed representation.</summary>
779 public static implicit operator EntryAnchorHoverInfo(EntryAnchorHoverInfo.NativeStruct _internal_struct)
781 var _external_struct = new EntryAnchorHoverInfo();
782 return _external_struct;
793 /// <summary>This corresponds to Edje_Entry_Change_Info. Includes information about a change in the entry</summary>
794 [StructLayout(LayoutKind.Sequential)]
795 public struct EntryChangeInfo
797 ///<summary>Placeholder field</summary>
799 public static implicit operator EntryChangeInfo(IntPtr ptr)
801 var tmp = (EntryChangeInfo.NativeStruct)Marshal.PtrToStructure(ptr, typeof(EntryChangeInfo.NativeStruct));
805 ///<summary>Internal wrapper for struct EntryChangeInfo.</summary>
806 [StructLayout(LayoutKind.Sequential)]
807 public struct NativeStruct
809 internal IntPtr field;
810 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
811 public static implicit operator EntryChangeInfo.NativeStruct(EntryChangeInfo _external_struct)
813 var _internal_struct = new EntryChangeInfo.NativeStruct();
814 return _internal_struct;
817 ///<summary>Implicit conversion to the managed representation.</summary>
818 public static implicit operator EntryChangeInfo(EntryChangeInfo.NativeStruct _internal_struct)
820 var _external_struct = new EntryChangeInfo();
821 return _external_struct;