enum Gtk::InputPurpose

Overview

Describes primary purpose of the input widget.

This information is useful for on-screen keyboards and similar input methods to decide which keys should be presented to the user.

Note that the purpose is not meant to impose a totally strict rule about allowed characters, and does not replace input validation. It is fine for an on-screen keyboard to let the user override the character set restriction that is expressed by the purpose. The application is expected to validate the entry contents, even if it specified a purpose.

The difference between %GTK_INPUT_PURPOSE_DIGITS and %GTK_INPUT_PURPOSE_NUMBER is that the former accepts only digits while the latter also some punctuation (like commas or points, plus, minus) and “e” or “E” as in 3.14E+000.

This enumeration may be extended in the future; input methods should interpret unknown values as “free form”.

Defined in:

lib/gi-crystal/src/auto/gtk-4.0/gtk.cr

Enum Members

FreeForm = 0_u32

Allow any character

Alpha = 1_u32

Allow only alphabetic characters

Digits = 2_u32

Allow only digits

Number = 3_u32

Edited field expects numbers

Phone = 4_u32

Edited field expects phone number

Url = 5_u32

Edited field expects URL

Email = 6_u32

Edited field expects email address

Name = 7_u32

Edited field expects the name of a person

Password = 8_u32

Like %GTK_INPUT_PURPOSE_FREE_FORM, but characters are hidden

Pin = 9_u32

Like %GTK_INPUT_PURPOSE_DIGITS, but characters are hidden

Terminal = 10_u32

Allow any character, in addition to control codes

Class Method Summary

Instance Method Summary

Class methods inherited from struct Enum

g_type : UInt64 g_type

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


[View source]

Instance Method Detail

def alpha? #

[View source]
def digits? #

[View source]
def email? #

[View source]
def free_form? #

[View source]
def name? #

[View source]
def number? #

[View source]
def password? #

[View source]
def phone? #

[View source]
def pin? #

[View source]
def terminal? #

[View source]
def url? #

[View source]