Module: Gdk

Defined in:
gdk3/lib/gdk3.rb

Overview

Version:

  • 3.0

Defined Under Namespace

Modules: AnchorHints, AxisFlags, AxisUse, ByteOrder, CrossingMode, CursorType, DevicePad, DevicePadFeature, DeviceToolType, DeviceType, DragAction, DragCancelReason, DragProtocol, EventMask, EventType, FilterReturn, FrameClockPhase, FullscreenMode, GLError, GrabOwnership, GrabStatus, Gravity, InputMode, InputSource, ModifierIntent, ModifierType, NotifyType, OwnerChange, PropMode, PropertyState, ScrollDirection, SeatCapabilities, SettingAction, Status, SubpixelLayout, TouchpadGesturePhase, VisibilityState, VisualType, WMDecoration, WMFunction, WindowAttributesType, WindowEdge, WindowHints, WindowState, WindowType, WindowTypeHint, WindowWindowClass Classes: AppLaunchContext, Cursor, Device, DeviceManager, DeviceTool, Display, DisplayManager, DragContext, DrawingContext, Error, FrameClock, GLContext, Keymap, Monitor, Screen, Seat, Visual, Window

Constant Summary collapse

BUTTON_MIDDLE =

The middle button.

2
BUTTON_PRIMARY =

The primary button. This is typically the left mouse button, or the right button in a left-handed setup.

1
BUTTON_SECONDARY =

The secondary button. This is typically the right mouse button, or the left button in a left-handed setup.

3
CURRENT_TIME =

Represents the current time, and can be used anywhere a time is expected.

0
EVENT_PROPAGATE =

Use this macro as the return value for continuing the propagation of an event handler.

false
EVENT_STOP =

Use this macro as the return value for stopping the propagation of an event handler.

true
KEY_0 =
48
KEY_1 =
49
KEY_2 =
50
KEY_3 =
51
KEY_3270_AltCursor =
64784
KEY_3270_Attn =
64782
KEY_3270_BackTab =
64773
KEY_3270_ChangeScreen =
64793
KEY_3270_Copy =
64789
64783
KEY_3270_CursorSelect =
64796
KEY_3270_DeleteWord =
64794
KEY_3270_Duplicate =
64769
KEY_3270_Enter =
64798
KEY_3270_EraseEOF =
64774
KEY_3270_EraseInput =
64775
KEY_3270_ExSelect =
64795
KEY_3270_FieldMark =
64770
KEY_3270_Ident =
64787
KEY_3270_Jump =
64786
KEY_3270_KeyClick =
64785
KEY_3270_Left2 =
64772
KEY_3270_PA1 =
64778
KEY_3270_PA2 =
64779
KEY_3270_PA3 =
64780
KEY_3270_Play =
64790
KEY_3270_PrintScreen =
64797
KEY_3270_Quit =
64777
KEY_3270_Record =
64792
KEY_3270_Reset =
64776
KEY_3270_Right2 =
64771
KEY_3270_Rule =
64788
KEY_3270_Setup =
64791
KEY_3270_Test =
64781
KEY_4 =
52
KEY_5 =
53
KEY_6 =
54
KEY_7 =
55
KEY_8 =
56
KEY_9 =
57
KEY_A =
65
KEY_AE =
198
KEY_Aacute =
193
KEY_Abelowdot =
16785056
KEY_Abreve =
451
KEY_Abreveacute =
16785070
KEY_Abrevebelowdot =
16785078
KEY_Abrevegrave =
16785072
KEY_Abrevehook =
16785074
KEY_Abrevetilde =
16785076
KEY_AccessX_Enable =
65136
KEY_AccessX_Feedback_Enable =
65137
KEY_Acircumflex =
194
KEY_Acircumflexacute =
16785060
KEY_Acircumflexbelowdot =
16785068
KEY_Acircumflexgrave =
16785062
KEY_Acircumflexhook =
16785064
KEY_Acircumflextilde =
16785066
KEY_AddFavorite =
269025081
KEY_Adiaeresis =
196
KEY_Agrave =
192
KEY_Ahook =
16785058
KEY_Alt_L =
65513
KEY_Alt_R =
65514
KEY_Amacron =
960
KEY_Aogonek =
417
KEY_ApplicationLeft =
269025104
KEY_ApplicationRight =
269025105
KEY_Arabic_0 =
16778848
KEY_Arabic_1 =
16778849
KEY_Arabic_2 =
16778850
KEY_Arabic_3 =
16778851
KEY_Arabic_4 =
16778852
KEY_Arabic_5 =
16778853
KEY_Arabic_6 =
16778854
KEY_Arabic_7 =
16778855
KEY_Arabic_8 =
16778856
KEY_Arabic_9 =
16778857
KEY_Arabic_ain =
1497
KEY_Arabic_alef =
1479
KEY_Arabic_alefmaksura =
1513
KEY_Arabic_beh =
1480
KEY_Arabic_comma =
1452
KEY_Arabic_dad =
1494
KEY_Arabic_dal =
1487
KEY_Arabic_damma =
1519
KEY_Arabic_dammatan =
1516
KEY_Arabic_ddal =
16778888
KEY_Arabic_farsi_yeh =
16778956
KEY_Arabic_fatha =
1518
KEY_Arabic_fathatan =
1515
KEY_Arabic_feh =
1505
KEY_Arabic_fullstop =
16778964
KEY_Arabic_gaf =
16778927
KEY_Arabic_ghain =
1498
KEY_Arabic_ha =
1511
KEY_Arabic_hah =
1485
KEY_Arabic_hamza =
1473
KEY_Arabic_hamza_above =
16778836
KEY_Arabic_hamza_below =
16778837
KEY_Arabic_hamzaonalef =
1475
KEY_Arabic_hamzaonwaw =
1476
KEY_Arabic_hamzaonyeh =
1478
KEY_Arabic_hamzaunderalef =
1477
KEY_Arabic_heh =
1511
KEY_Arabic_heh_doachashmee =
16778942
KEY_Arabic_heh_goal =
16778945
KEY_Arabic_jeem =
1484
KEY_Arabic_jeh =
16778904
KEY_Arabic_kaf =
1507
KEY_Arabic_kasra =
1520
KEY_Arabic_kasratan =
1517
KEY_Arabic_keheh =
16778921
KEY_Arabic_khah =
1486
KEY_Arabic_lam =
1508
KEY_Arabic_madda_above =
16778835
KEY_Arabic_maddaonalef =
1474
KEY_Arabic_meem =
1509
KEY_Arabic_noon =
1510
KEY_Arabic_noon_ghunna =
16778938
KEY_Arabic_peh =
16778878
KEY_Arabic_percent =
16778858
KEY_Arabic_qaf =
1506
KEY_Arabic_question_mark =
1471
KEY_Arabic_ra =
1489
KEY_Arabic_rreh =
16778897
KEY_Arabic_sad =
1493
KEY_Arabic_seen =
1491
KEY_Arabic_semicolon =
1467
KEY_Arabic_shadda =
1521
KEY_Arabic_sheen =
1492
KEY_Arabic_sukun =
1522
KEY_Arabic_superscript_alef =
16778864
KEY_Arabic_switch =
65406
KEY_Arabic_tah =
1495
KEY_Arabic_tatweel =
1504
KEY_Arabic_tcheh =
16778886
KEY_Arabic_teh =
1482
KEY_Arabic_tehmarbuta =
1481
KEY_Arabic_thal =
1488
KEY_Arabic_theh =
1483
KEY_Arabic_tteh =
16778873
KEY_Arabic_veh =
16778916
KEY_Arabic_waw =
1512
KEY_Arabic_yeh =
1514
KEY_Arabic_yeh_baree =
16778962
KEY_Arabic_zah =
1496
KEY_Arabic_zain =
1490
KEY_Aring =
197
KEY_Armenian_AT =
16778552
KEY_Armenian_AYB =
16778545
KEY_Armenian_BEN =
16778546
KEY_Armenian_CHA =
16778569
KEY_Armenian_DA =
16778548
KEY_Armenian_DZA =
16778561
KEY_Armenian_E =
16778551
KEY_Armenian_FE =
16778582
KEY_Armenian_GHAT =
16778562
KEY_Armenian_GIM =
16778547
KEY_Armenian_HI =
16778565
KEY_Armenian_HO =
16778560
KEY_Armenian_INI =
16778555
KEY_Armenian_JE =
16778571
KEY_Armenian_KE =
16778580
KEY_Armenian_KEN =
16778559
KEY_Armenian_KHE =
16778557
KEY_Armenian_LYUN =
16778556
KEY_Armenian_MEN =
16778564
KEY_Armenian_NU =
16778566
KEY_Armenian_O =
16778581
KEY_Armenian_PE =
16778570
KEY_Armenian_PYUR =
16778579
KEY_Armenian_RA =
16778572
KEY_Armenian_RE =
16778576
KEY_Armenian_SE =
16778573
KEY_Armenian_SHA =
16778567
KEY_Armenian_TCHE =
16778563
KEY_Armenian_TO =
16778553
KEY_Armenian_TSA =
16778558
KEY_Armenian_TSO =
16778577
KEY_Armenian_TYUN =
16778575
KEY_Armenian_VEV =
16778574
KEY_Armenian_VO =
16778568
KEY_Armenian_VYUN =
16778578
KEY_Armenian_YECH =
16778549
KEY_Armenian_ZA =
16778550
KEY_Armenian_ZHE =
16778554
KEY_Armenian_accent =
16778587
KEY_Armenian_amanak =
16778588
KEY_Armenian_apostrophe =
16778586
KEY_Armenian_at =
16778600
KEY_Armenian_ayb =
16778593
KEY_Armenian_ben =
16778594
KEY_Armenian_but =
16778589
KEY_Armenian_cha =
16778617
KEY_Armenian_da =
16778596
KEY_Armenian_dza =
16778609
KEY_Armenian_e =
16778599
KEY_Armenian_exclam =
16778588
KEY_Armenian_fe =
16778630
KEY_Armenian_full_stop =
16778633
KEY_Armenian_ghat =
16778610
KEY_Armenian_gim =
16778595
KEY_Armenian_hi =
16778613
KEY_Armenian_ho =
16778608
KEY_Armenian_hyphen =
16778634
KEY_Armenian_ini =
16778603
KEY_Armenian_je =
16778619
KEY_Armenian_ke =
16778628
KEY_Armenian_ken =
16778607
KEY_Armenian_khe =
16778605
KEY_Armenian_ligature_ew =
16778631
KEY_Armenian_lyun =
16778604
KEY_Armenian_men =
16778612
KEY_Armenian_nu =
16778614
KEY_Armenian_o =
16778629
KEY_Armenian_paruyk =
16778590
KEY_Armenian_pe =
16778618
KEY_Armenian_pyur =
16778627
KEY_Armenian_question =
16778590
KEY_Armenian_ra =
16778620
KEY_Armenian_re =
16778624
KEY_Armenian_se =
16778621
KEY_Armenian_separation_mark =
16778589
KEY_Armenian_sha =
16778615
KEY_Armenian_shesht =
16778587
KEY_Armenian_tche =
16778611
KEY_Armenian_to =
16778601
KEY_Armenian_tsa =
16778606
KEY_Armenian_tso =
16778625
KEY_Armenian_tyun =
16778623
KEY_Armenian_verjaket =
16778633
KEY_Armenian_vev =
16778622
KEY_Armenian_vo =
16778616
KEY_Armenian_vyun =
16778626
KEY_Armenian_yech =
16778597
KEY_Armenian_yentamna =
16778634
KEY_Armenian_za =
16778598
KEY_Armenian_zhe =
16778602
KEY_Atilde =
195
KEY_AudibleBell_Enable =
65146
KEY_AudioCycleTrack =
269025179
KEY_AudioForward =
269025175
KEY_AudioLowerVolume =
269025041
KEY_AudioMedia =
269025074
KEY_AudioMicMute =
269025202
KEY_AudioMute =
269025042
KEY_AudioNext =
269025047
KEY_AudioPause =
269025073
KEY_AudioPlay =
269025044
KEY_AudioPrev =
269025046
KEY_AudioRaiseVolume =
269025043
KEY_AudioRandomPlay =
269025177
KEY_AudioRecord =
269025052
KEY_AudioRepeat =
269025176
KEY_AudioRewind =
269025086
KEY_AudioStop =
269025045
KEY_Away =
269025165
KEY_B =
66
KEY_Babovedot =
16784898
KEY_Back =
269025062
KEY_BackForward =
269025087
KEY_BackSpace =
65288
KEY_Battery =
269025171
KEY_Begin =
65368
KEY_Blue =
269025190
KEY_Bluetooth =
269025172
KEY_Book =
269025106
KEY_BounceKeys_Enable =
65140
KEY_Break =
65387
KEY_BrightnessAdjust =
269025083
KEY_Byelorussian_SHORTU =
1726
KEY_Byelorussian_shortu =
1710
KEY_C =
67
KEY_CD =
269025107
KEY_CH =
65186
KEY_C_H =
65189
KEY_C_h =
65188
KEY_Cabovedot =
709
KEY_Cacute =
454
KEY_Calculator =
269025053
KEY_Calendar =
269025056
KEY_Cancel =
65385
KEY_Caps_Lock =
65509
KEY_Ccaron =
456
KEY_Ccedilla =
199
KEY_Ccircumflex =
710
KEY_Ch =
65185
KEY_Clear =
65291
KEY_ClearGrab =
269024801
KEY_Close =
269025110
KEY_Codeinput =
65335
KEY_ColonSign =
16785569
KEY_Community =
269025085
KEY_ContrastAdjust =
269025058
KEY_Control_L =
65507
KEY_Control_R =
65508
KEY_Copy =
269025111
KEY_CruzeiroSign =
16785570
KEY_Cut =
269025112
KEY_CycleAngle =
269025180
KEY_Cyrillic_A =
1761
KEY_Cyrillic_BE =
1762
KEY_Cyrillic_CHE =
1790
KEY_Cyrillic_CHE_descender =
16778422
KEY_Cyrillic_CHE_vertstroke =
16778424
KEY_Cyrillic_DE =
1764
KEY_Cyrillic_DZHE =
1727
KEY_Cyrillic_E =
1788
KEY_Cyrillic_EF =
1766
KEY_Cyrillic_EL =
1772
KEY_Cyrillic_EM =
1773
KEY_Cyrillic_EN =
1774
KEY_Cyrillic_EN_descender =
16778402
KEY_Cyrillic_ER =
1778
KEY_Cyrillic_ES =
1779
KEY_Cyrillic_GHE =
1767
KEY_Cyrillic_GHE_bar =
16778386
KEY_Cyrillic_HA =
1768
KEY_Cyrillic_HARDSIGN =
1791
KEY_Cyrillic_HA_descender =
16778418
KEY_Cyrillic_I =
1769
KEY_Cyrillic_IE =
1765
KEY_Cyrillic_IO =
1715
KEY_Cyrillic_I_macron =
16778466
KEY_Cyrillic_JE =
1720
KEY_Cyrillic_KA =
1771
KEY_Cyrillic_KA_descender =
16778394
KEY_Cyrillic_KA_vertstroke =
16778396
KEY_Cyrillic_LJE =
1721
KEY_Cyrillic_NJE =
1722
KEY_Cyrillic_O =
1775
KEY_Cyrillic_O_bar =
16778472
KEY_Cyrillic_PE =
1776
KEY_Cyrillic_SCHWA =
16778456
KEY_Cyrillic_SHA =
1787
KEY_Cyrillic_SHCHA =
1789
KEY_Cyrillic_SHHA =
16778426
KEY_Cyrillic_SHORTI =
1770
KEY_Cyrillic_SOFTSIGN =
1784
KEY_Cyrillic_TE =
1780
KEY_Cyrillic_TSE =
1763
KEY_Cyrillic_U =
1781
KEY_Cyrillic_U_macron =
16778478
KEY_Cyrillic_U_straight =
16778414
KEY_Cyrillic_U_straight_bar =
16778416
KEY_Cyrillic_VE =
1783
KEY_Cyrillic_YA =
1777
KEY_Cyrillic_YERU =
1785
KEY_Cyrillic_YU =
1760
KEY_Cyrillic_ZE =
1786
KEY_Cyrillic_ZHE =
1782
KEY_Cyrillic_ZHE_descender =
16778390
KEY_Cyrillic_a =
1729
KEY_Cyrillic_be =
1730
KEY_Cyrillic_che =
1758
KEY_Cyrillic_che_descender =
16778423
KEY_Cyrillic_che_vertstroke =
16778425
KEY_Cyrillic_de =
1732
KEY_Cyrillic_dzhe =
1711
KEY_Cyrillic_e =
1756
KEY_Cyrillic_ef =
1734
KEY_Cyrillic_el =
1740
KEY_Cyrillic_em =
1741
KEY_Cyrillic_en =
1742
KEY_Cyrillic_en_descender =
16778403
KEY_Cyrillic_er =
1746
KEY_Cyrillic_es =
1747
KEY_Cyrillic_ghe =
1735
KEY_Cyrillic_ghe_bar =
16778387
KEY_Cyrillic_ha =
1736
KEY_Cyrillic_ha_descender =
16778419
KEY_Cyrillic_hardsign =
1759
KEY_Cyrillic_i =
1737
KEY_Cyrillic_i_macron =
16778467
KEY_Cyrillic_ie =
1733
KEY_Cyrillic_io =
1699
KEY_Cyrillic_je =
1704
KEY_Cyrillic_ka =
1739
KEY_Cyrillic_ka_descender =
16778395
KEY_Cyrillic_ka_vertstroke =
16778397
KEY_Cyrillic_lje =
1705
KEY_Cyrillic_nje =
1706
KEY_Cyrillic_o =
1743
KEY_Cyrillic_o_bar =
16778473
KEY_Cyrillic_pe =
1744
KEY_Cyrillic_schwa =
16778457
KEY_Cyrillic_sha =
1755
KEY_Cyrillic_shcha =
1757
KEY_Cyrillic_shha =
16778427
KEY_Cyrillic_shorti =
1738
KEY_Cyrillic_softsign =
1752
KEY_Cyrillic_te =
1748
KEY_Cyrillic_tse =
1731
KEY_Cyrillic_u =
1749
KEY_Cyrillic_u_macron =
16778479
KEY_Cyrillic_u_straight =
16778415
KEY_Cyrillic_u_straight_bar =
16778417
KEY_Cyrillic_ve =
1751
KEY_Cyrillic_ya =
1745
KEY_Cyrillic_yeru =
1753
KEY_Cyrillic_yu =
1728
KEY_Cyrillic_ze =
1754
KEY_Cyrillic_zhe =
1750
KEY_Cyrillic_zhe_descender =
16778391
KEY_D =
68
KEY_DOS =
269025114
KEY_Dabovedot =
16784906
KEY_Dcaron =
463
KEY_Delete =
65535
KEY_Display =
269025113
KEY_Documents =
269025115
KEY_DongSign =
16785579
KEY_Down =
65364
KEY_Dstroke =
464
KEY_E =
69
KEY_ENG =
957
KEY_ETH =
208
KEY_EZH =
16777655
KEY_Eabovedot =
972
KEY_Eacute =
201
KEY_Ebelowdot =
16785080
KEY_Ecaron =
460
KEY_Ecircumflex =
202
KEY_Ecircumflexacute =
16785086
KEY_Ecircumflexbelowdot =
16785094
KEY_Ecircumflexgrave =
16785088
KEY_Ecircumflexhook =
16785090
KEY_Ecircumflextilde =
16785092
KEY_EcuSign =
16785568
KEY_Ediaeresis =
203
KEY_Egrave =
200
KEY_Ehook =
16785082
KEY_Eisu_Shift =
65327
KEY_Eisu_toggle =
65328
KEY_Eject =
269025068
KEY_Emacron =
938
KEY_End =
65367
KEY_Eogonek =
458
KEY_Escape =
65307
KEY_Eth =
208
KEY_Etilde =
16785084
KEY_EuroSign =
8364
KEY_Excel =
269025116
KEY_Execute =
65378
KEY_Explorer =
269025117
KEY_F =
70
KEY_F1 =
65470
KEY_F10 =
65479
KEY_F11 =
65480
KEY_F12 =
65481
KEY_F13 =
65482
KEY_F14 =
65483
KEY_F15 =
65484
KEY_F16 =
65485
KEY_F17 =
65486
KEY_F18 =
65487
KEY_F19 =
65488
KEY_F2 =
65471
KEY_F20 =
65489
KEY_F21 =
65490
KEY_F22 =
65491
KEY_F23 =
65492
KEY_F24 =
65493
KEY_F25 =
65494
KEY_F26 =
65495
KEY_F27 =
65496
KEY_F28 =
65497
KEY_F29 =
65498
KEY_F3 =
65472
KEY_F30 =
65499
KEY_F31 =
65500
KEY_F32 =
65501
KEY_F33 =
65502
KEY_F34 =
65503
KEY_F35 =
65504
KEY_F4 =
65473
KEY_F5 =
65474
KEY_F6 =
65475
KEY_F7 =
65476
KEY_F8 =
65477
KEY_F9 =
65478
KEY_FFrancSign =
16785571
KEY_Fabovedot =
16784926
KEY_Farsi_0 =
16778992
KEY_Farsi_1 =
16778993
KEY_Farsi_2 =
16778994
KEY_Farsi_3 =
16778995
KEY_Farsi_4 =
16778996
KEY_Farsi_5 =
16778997
KEY_Farsi_6 =
16778998
KEY_Farsi_7 =
16778999
KEY_Farsi_8 =
16779000
KEY_Farsi_9 =
16779001
KEY_Farsi_yeh =
16778956
KEY_Favorites =
269025072
KEY_Finance =
269025084
KEY_Find =
65384
KEY_First_Virtual_Screen =
65232
KEY_Forward =
269025063
KEY_FrameBack =
269025181
KEY_FrameForward =
269025182
KEY_G =
71
KEY_Gabovedot =
725
KEY_Game =
269025118
KEY_Gbreve =
683
KEY_Gcaron =
16777702
KEY_Gcedilla =
939
KEY_Gcircumflex =
728
KEY_Georgian_an =
16781520
KEY_Georgian_ban =
16781521
KEY_Georgian_can =
16781546
KEY_Georgian_char =
16781549
KEY_Georgian_chin =
16781545
KEY_Georgian_cil =
16781548
KEY_Georgian_don =
16781523
KEY_Georgian_en =
16781524
KEY_Georgian_fi =
16781558
KEY_Georgian_gan =
16781522
KEY_Georgian_ghan =
16781542
KEY_Georgian_hae =
16781552
KEY_Georgian_har =
16781556
KEY_Georgian_he =
16781553
KEY_Georgian_hie =
16781554
KEY_Georgian_hoe =
16781557
KEY_Georgian_in =
16781528
KEY_Georgian_jhan =
16781551
KEY_Georgian_jil =
16781547
KEY_Georgian_kan =
16781529
KEY_Georgian_khar =
16781541
KEY_Georgian_las =
16781530
KEY_Georgian_man =
16781531
KEY_Georgian_nar =
16781532
KEY_Georgian_on =
16781533
KEY_Georgian_par =
16781534
KEY_Georgian_phar =
16781540
KEY_Georgian_qar =
16781543
KEY_Georgian_rae =
16781536
KEY_Georgian_san =
16781537
KEY_Georgian_shin =
16781544
KEY_Georgian_tan =
16781527
KEY_Georgian_tar =
16781538
KEY_Georgian_un =
16781539
KEY_Georgian_vin =
16781525
KEY_Georgian_we =
16781555
KEY_Georgian_xan =
16781550
KEY_Georgian_zen =
16781526
KEY_Georgian_zhar =
16781535
KEY_Go =
269025119
KEY_Greek_ALPHA =
1985
KEY_Greek_ALPHAaccent =
1953
KEY_Greek_BETA =
1986
KEY_Greek_CHI =
2007
KEY_Greek_DELTA =
1988
KEY_Greek_EPSILON =
1989
KEY_Greek_EPSILONaccent =
1954
KEY_Greek_ETA =
1991
KEY_Greek_ETAaccent =
1955
KEY_Greek_GAMMA =
1987
KEY_Greek_IOTA =
1993
KEY_Greek_IOTAaccent =
1956
KEY_Greek_IOTAdiaeresis =
1957
KEY_Greek_IOTAdieresis =
1957
KEY_Greek_KAPPA =
1994
KEY_Greek_LAMBDA =
1995
KEY_Greek_LAMDA =
1995
KEY_Greek_MU =
1996
KEY_Greek_NU =
1997
KEY_Greek_OMEGA =
2009
KEY_Greek_OMEGAaccent =
1963
KEY_Greek_OMICRON =
1999
KEY_Greek_OMICRONaccent =
1959
KEY_Greek_PHI =
2006
KEY_Greek_PI =
2000
KEY_Greek_PSI =
2008
KEY_Greek_RHO =
2001
KEY_Greek_SIGMA =
2002
KEY_Greek_TAU =
2004
KEY_Greek_THETA =
1992
KEY_Greek_UPSILON =
2005
KEY_Greek_UPSILONaccent =
1960
KEY_Greek_UPSILONdieresis =
1961
KEY_Greek_XI =
1998
KEY_Greek_ZETA =
1990
KEY_Greek_accentdieresis =
1966
KEY_Greek_alpha =
2017
KEY_Greek_alphaaccent =
1969
KEY_Greek_beta =
2018
KEY_Greek_chi =
2039
KEY_Greek_delta =
2020
KEY_Greek_epsilon =
2021
KEY_Greek_epsilonaccent =
1970
KEY_Greek_eta =
2023
KEY_Greek_etaaccent =
1971
KEY_Greek_finalsmallsigma =
2035
KEY_Greek_gamma =
2019
KEY_Greek_horizbar =
1967
KEY_Greek_iota =
2025
KEY_Greek_iotaaccent =
1972
KEY_Greek_iotaaccentdieresis =
1974
KEY_Greek_iotadieresis =
1973
KEY_Greek_kappa =
2026
KEY_Greek_lambda =
2027
KEY_Greek_lamda =
2027
KEY_Greek_mu =
2028
KEY_Greek_nu =
2029
KEY_Greek_omega =
2041
KEY_Greek_omegaaccent =
1979
KEY_Greek_omicron =
2031
KEY_Greek_omicronaccent =
1975
KEY_Greek_phi =
2038
KEY_Greek_pi =
2032
KEY_Greek_psi =
2040
KEY_Greek_rho =
2033
KEY_Greek_sigma =
2034
KEY_Greek_switch =
65406
KEY_Greek_tau =
2036
KEY_Greek_theta =
2024
KEY_Greek_upsilon =
2037
KEY_Greek_upsilonaccent =
1976
KEY_Greek_upsilonaccentdieresis =
1978
KEY_Greek_upsilondieresis =
1977
KEY_Greek_xi =
2030
KEY_Greek_zeta =
2022
KEY_Green =
269025188
KEY_H =
72
KEY_Hangul =
65329
KEY_Hangul_A =
3775
KEY_Hangul_AE =
3776
KEY_Hangul_AraeA =
3830
KEY_Hangul_AraeAE =
3831
KEY_Hangul_Banja =
65337
KEY_Hangul_Cieuc =
3770
KEY_Hangul_Codeinput =
65335
KEY_Hangul_Dikeud =
3751
KEY_Hangul_E =
3780
KEY_Hangul_EO =
3779
KEY_Hangul_EU =
3793
KEY_Hangul_End =
65331
KEY_Hangul_Hanja =
65332
KEY_Hangul_Hieuh =
3774
KEY_Hangul_I =
3795
KEY_Hangul_Ieung =
3767
KEY_Hangul_J_Cieuc =
3818
KEY_Hangul_J_Dikeud =
3802
KEY_Hangul_J_Hieuh =
3822
KEY_Hangul_J_Ieung =
3816
KEY_Hangul_J_Jieuj =
3817
KEY_Hangul_J_Khieuq =
3819
KEY_Hangul_J_Kiyeog =
3796
KEY_Hangul_J_KiyeogSios =
3798
KEY_Hangul_J_KkogjiDalrinIeung =
3833
KEY_Hangul_J_Mieum =
3811
KEY_Hangul_J_Nieun =
3799
KEY_Hangul_J_NieunHieuh =
3801
KEY_Hangul_J_NieunJieuj =
3800
KEY_Hangul_J_PanSios =
3832
KEY_Hangul_J_Phieuf =
3821
KEY_Hangul_J_Pieub =
3812
KEY_Hangul_J_PieubSios =
3813
KEY_Hangul_J_Rieul =
3803
KEY_Hangul_J_RieulHieuh =
3810
KEY_Hangul_J_RieulKiyeog =
3804
KEY_Hangul_J_RieulMieum =
3805
KEY_Hangul_J_RieulPhieuf =
3809
KEY_Hangul_J_RieulPieub =
3806
KEY_Hangul_J_RieulSios =
3807
KEY_Hangul_J_RieulTieut =
3808
KEY_Hangul_J_Sios =
3814
KEY_Hangul_J_SsangKiyeog =
3797
KEY_Hangul_J_SsangSios =
3815
KEY_Hangul_J_Tieut =
3820
KEY_Hangul_J_YeorinHieuh =
3834
KEY_Hangul_Jamo =
65333
KEY_Hangul_Jeonja =
65336
KEY_Hangul_Jieuj =
3768
KEY_Hangul_Khieuq =
3771
KEY_Hangul_Kiyeog =
3745
KEY_Hangul_KiyeogSios =
3747
KEY_Hangul_KkogjiDalrinIeung =
3827
KEY_Hangul_Mieum =
3761
KEY_Hangul_MultipleCandidate =
65341
KEY_Hangul_Nieun =
3748
KEY_Hangul_NieunHieuh =
3750
KEY_Hangul_NieunJieuj =
3749
KEY_Hangul_O =
3783
KEY_Hangul_OE =
3786
KEY_Hangul_PanSios =
3826
KEY_Hangul_Phieuf =
3773
KEY_Hangul_Pieub =
3762
KEY_Hangul_PieubSios =
3764
KEY_Hangul_PostHanja =
65339
KEY_Hangul_PreHanja =
65338
KEY_Hangul_PreviousCandidate =
65342
KEY_Hangul_Rieul =
3753
KEY_Hangul_RieulHieuh =
3760
KEY_Hangul_RieulKiyeog =
3754
KEY_Hangul_RieulMieum =
3755
KEY_Hangul_RieulPhieuf =
3759
KEY_Hangul_RieulPieub =
3756
KEY_Hangul_RieulSios =
3757
KEY_Hangul_RieulTieut =
3758
KEY_Hangul_RieulYeorinHieuh =
3823
KEY_Hangul_Romaja =
65334
KEY_Hangul_SingleCandidate =
65340
KEY_Hangul_Sios =
3765
KEY_Hangul_Special =
65343
KEY_Hangul_SsangDikeud =
3752
KEY_Hangul_SsangJieuj =
3769
KEY_Hangul_SsangKiyeog =
3746
KEY_Hangul_SsangPieub =
3763
KEY_Hangul_SsangSios =
3766
KEY_Hangul_Start =
65330
KEY_Hangul_SunkyeongeumMieum =
3824
KEY_Hangul_SunkyeongeumPhieuf =
3828
KEY_Hangul_SunkyeongeumPieub =
3825
KEY_Hangul_Tieut =
3772
KEY_Hangul_U =
3788
KEY_Hangul_WA =
3784
KEY_Hangul_WAE =
3785
KEY_Hangul_WE =
3790
KEY_Hangul_WEO =
3789
KEY_Hangul_WI =
3791
KEY_Hangul_YA =
3777
KEY_Hangul_YAE =
3778
KEY_Hangul_YE =
3782
KEY_Hangul_YEO =
3781
KEY_Hangul_YI =
3794
KEY_Hangul_YO =
3787
KEY_Hangul_YU =
3792
KEY_Hangul_YeorinHieuh =
3829
KEY_Hangul_switch =
65406
KEY_Hankaku =
65321
KEY_Hcircumflex =
678
KEY_Hebrew_switch =
65406
KEY_Help =
65386
KEY_Henkan =
65315
KEY_Henkan_Mode =
65315
KEY_Hibernate =
269025192
KEY_Hiragana =
65317
KEY_Hiragana_Katakana =
65319
KEY_History =
269025079
KEY_Home =
65360
KEY_HomePage =
269025048
269025082
KEY_Hstroke =
673
KEY_Hyper_L =
65517
KEY_Hyper_R =
65518
KEY_I =
73
KEY_ISO_Center_Object =
65075
KEY_ISO_Continuous_Underline =
65072
KEY_ISO_Discontinuous_Underline =
65073
KEY_ISO_Emphasize =
65074
KEY_ISO_Enter =
65076
KEY_ISO_Fast_Cursor_Down =
65071
KEY_ISO_Fast_Cursor_Left =
65068
KEY_ISO_Fast_Cursor_Right =
65069
KEY_ISO_Fast_Cursor_Up =
65070
KEY_ISO_First_Group =
65036
KEY_ISO_First_Group_Lock =
65037
KEY_ISO_Group_Latch =
65030
KEY_ISO_Group_Lock =
65031
KEY_ISO_Group_Shift =
65406
KEY_ISO_Last_Group =
65038
KEY_ISO_Last_Group_Lock =
65039
KEY_ISO_Left_Tab =
65056
KEY_ISO_Level2_Latch =
65026
KEY_ISO_Level3_Latch =
65028
KEY_ISO_Level3_Lock =
65029
KEY_ISO_Level3_Shift =
65027
KEY_ISO_Level5_Latch =
65042
KEY_ISO_Level5_Lock =
65043
KEY_ISO_Level5_Shift =
65041
KEY_ISO_Lock =
65025
KEY_ISO_Move_Line_Down =
65058
KEY_ISO_Move_Line_Up =
65057
KEY_ISO_Next_Group =
65032
KEY_ISO_Next_Group_Lock =
65033
KEY_ISO_Partial_Line_Down =
65060
KEY_ISO_Partial_Line_Up =
65059
KEY_ISO_Partial_Space_Left =
65061
KEY_ISO_Partial_Space_Right =
65062
KEY_ISO_Prev_Group =
65034
KEY_ISO_Prev_Group_Lock =
65035
KEY_ISO_Release_Both_Margins =
65067
KEY_ISO_Release_Margin_Left =
65065
KEY_ISO_Release_Margin_Right =
65066
KEY_ISO_Set_Margin_Left =
65063
KEY_ISO_Set_Margin_Right =
65064
KEY_Iabovedot =
681
KEY_Iacute =
205
KEY_Ibelowdot =
16785098
KEY_Ibreve =
16777516
KEY_Icircumflex =
206
KEY_Idiaeresis =
207
KEY_Igrave =
204
KEY_Ihook =
16785096
KEY_Imacron =
975
KEY_Insert =
65379
KEY_Iogonek =
967
KEY_Itilde =
933
KEY_J =
74
KEY_Jcircumflex =
684
KEY_K =
75
KEY_KP_0 =
65456
KEY_KP_1 =
65457
KEY_KP_2 =
65458
KEY_KP_3 =
65459
KEY_KP_4 =
65460
KEY_KP_5 =
65461
KEY_KP_6 =
65462
KEY_KP_7 =
65463
KEY_KP_8 =
65464
KEY_KP_9 =
65465
KEY_KP_Add =
65451
KEY_KP_Begin =
65437
KEY_KP_Decimal =
65454
KEY_KP_Delete =
65439
KEY_KP_Divide =
65455
KEY_KP_Down =
65433
KEY_KP_End =
65436
KEY_KP_Enter =
65421
KEY_KP_Equal =
65469
KEY_KP_F1 =
65425
KEY_KP_F2 =
65426
KEY_KP_F3 =
65427
KEY_KP_F4 =
65428
KEY_KP_Home =
65429
KEY_KP_Insert =
65438
KEY_KP_Left =
65430
KEY_KP_Multiply =
65450
KEY_KP_Next =
65435
KEY_KP_Page_Down =
65435
KEY_KP_Page_Up =
65434
KEY_KP_Prior =
65434
KEY_KP_Right =
65432
KEY_KP_Separator =
65452
KEY_KP_Space =
65408
KEY_KP_Subtract =
65453
KEY_KP_Tab =
65417
KEY_KP_Up =
65431
KEY_Kana_Lock =
65325
KEY_Kana_Shift =
65326
KEY_Kanji =
65313
KEY_Kanji_Bangou =
65335
KEY_Katakana =
65318
KEY_KbdBrightnessDown =
269025030
KEY_KbdBrightnessUp =
269025029
KEY_KbdLightOnOff =
269025028
KEY_Kcedilla =
979
KEY_Korean_Won =
3839
KEY_L =
76
KEY_L1 =
65480
KEY_L10 =
65489
KEY_L2 =
65481
KEY_L3 =
65482
KEY_L4 =
65483
KEY_L5 =
65484
KEY_L6 =
65485
KEY_L7 =
65486
KEY_L8 =
65487
KEY_L9 =
65488
KEY_Lacute =
453
KEY_Last_Virtual_Screen =
65236
KEY_Launch0 =
269025088
KEY_Launch1 =
269025089
KEY_Launch2 =
269025090
KEY_Launch3 =
269025091
KEY_Launch4 =
269025092
KEY_Launch5 =
269025093
KEY_Launch6 =
269025094
KEY_Launch7 =
269025095
KEY_Launch8 =
269025096
KEY_Launch9 =
269025097
KEY_LaunchA =
269025098
KEY_LaunchB =
269025099
KEY_LaunchC =
269025100
KEY_LaunchD =
269025101
KEY_LaunchE =
269025102
KEY_LaunchF =
269025103
KEY_Lbelowdot =
16784950
KEY_Lcaron =
421
KEY_Lcedilla =
934
KEY_Left =
65361
KEY_LightBulb =
269025077
KEY_Linefeed =
65290
KEY_LiraSign =
16785572
KEY_LogGrabInfo =
269024805
KEY_LogOff =
269025121
KEY_LogWindowTree =
269024804
KEY_Lstroke =
419
KEY_M =
77
KEY_Mabovedot =
16784960
KEY_Macedonia_DSE =
1717
KEY_Macedonia_GJE =
1714
KEY_Macedonia_KJE =
1724
KEY_Macedonia_dse =
1701
KEY_Macedonia_gje =
1698
KEY_Macedonia_kje =
1708
KEY_Mae_Koho =
65342
KEY_Mail =
269025049
KEY_MailForward =
269025168
KEY_Market =
269025122
KEY_Massyo =
65324
KEY_Meeting =
269025123
KEY_Memo =
269025054
KEY_Menu =
65383
KEY_MenuKB =
269025125
KEY_MenuPB =
269025126
KEY_Messenger =
269025166
KEY_Meta_L =
65511
KEY_Meta_R =
65512
KEY_MillSign =
16785573
KEY_ModeLock =
269025025
KEY_Mode_switch =
65406
KEY_MonBrightnessDown =
269025027
KEY_MonBrightnessUp =
269025026
KEY_MouseKeys_Accel_Enable =
65143
KEY_MouseKeys_Enable =
65142
KEY_Muhenkan =
65314
KEY_Multi_key =
65312
KEY_MultipleCandidate =
65341
KEY_Music =
269025170
KEY_MyComputer =
269025075
KEY_MySites =
269025127
KEY_N =
78
KEY_Nacute =
465
KEY_NairaSign =
16785574
KEY_Ncaron =
466
KEY_Ncedilla =
977
KEY_New =
269025128
KEY_NewSheqelSign =
16785578
KEY_News =
269025129
KEY_Next =
65366
KEY_Next_VMode =
269024802
KEY_Next_Virtual_Screen =
65234
KEY_Ntilde =
209
KEY_Num_Lock =
65407
KEY_O =
79
KEY_OE =
5052
KEY_Oacute =
211
KEY_Obarred =
16777631
KEY_Obelowdot =
16785100
KEY_Ocaron =
16777681
KEY_Ocircumflex =
212
KEY_Ocircumflexacute =
16785104
KEY_Ocircumflexbelowdot =
16785112
KEY_Ocircumflexgrave =
16785106
KEY_Ocircumflexhook =
16785108
KEY_Ocircumflextilde =
16785110
KEY_Odiaeresis =
214
KEY_Odoubleacute =
469
KEY_OfficeHome =
269025130
KEY_Ograve =
210
KEY_Ohook =
16785102
KEY_Ohorn =
16777632
KEY_Ohornacute =
16785114
KEY_Ohornbelowdot =
16785122
KEY_Ohorngrave =
16785116
KEY_Ohornhook =
16785118
KEY_Ohorntilde =
16785120
KEY_Omacron =
978
KEY_Ooblique =
216
KEY_Open =
269025131
KEY_OpenURL =
269025080
KEY_Option =
269025132
KEY_Oslash =
216
KEY_Otilde =
213
KEY_Overlay1_Enable =
65144
KEY_Overlay2_Enable =
65145
KEY_P =
80
KEY_Pabovedot =
16784982
KEY_Page_Down =
65366
KEY_Page_Up =
65365
KEY_Paste =
269025133
KEY_Pause =
65299
KEY_PesetaSign =
16785575
KEY_Phone =
269025134
KEY_Pictures =
269025169
KEY_Pointer_Accelerate =
65274
KEY_Pointer_Button1 =
65257
KEY_Pointer_Button2 =
65258
KEY_Pointer_Button3 =
65259
KEY_Pointer_Button4 =
65260
KEY_Pointer_Button5 =
65261
KEY_Pointer_Button_Dflt =
65256
KEY_Pointer_DblClick1 =
65263
KEY_Pointer_DblClick2 =
65264
KEY_Pointer_DblClick3 =
65265
KEY_Pointer_DblClick4 =
65266
KEY_Pointer_DblClick5 =
65267
KEY_Pointer_DblClick_Dflt =
65262
KEY_Pointer_DfltBtnNext =
65275
KEY_Pointer_DfltBtnPrev =
65276
KEY_Pointer_Down =
65251
KEY_Pointer_DownLeft =
65254
KEY_Pointer_DownRight =
65255
KEY_Pointer_Drag1 =
65269
KEY_Pointer_Drag2 =
65270
KEY_Pointer_Drag3 =
65271
KEY_Pointer_Drag4 =
65272
KEY_Pointer_Drag5 =
65277
KEY_Pointer_Drag_Dflt =
65268
KEY_Pointer_EnableKeys =
65273
KEY_Pointer_Left =
65248
KEY_Pointer_Right =
65249
KEY_Pointer_Up =
65250
KEY_Pointer_UpLeft =
65252
KEY_Pointer_UpRight =
65253
KEY_PowerDown =
269025057
KEY_PowerOff =
269025066
KEY_Prev_VMode =
269024803
KEY_Prev_Virtual_Screen =
65233
KEY_PreviousCandidate =
65342
KEY_Print =
65377
KEY_Prior =
65365
KEY_Q =
81
KEY_R =
82
KEY_R1 =
65490
KEY_R10 =
65499
KEY_R11 =
65500
KEY_R12 =
65501
KEY_R13 =
65502
KEY_R14 =
65503
KEY_R15 =
65504
KEY_R2 =
65491
KEY_R3 =
65492
KEY_R4 =
65493
KEY_R5 =
65494
KEY_R6 =
65495
KEY_R7 =
65496
KEY_R8 =
65497
KEY_R9 =
65498
KEY_Racute =
448
KEY_Rcaron =
472
KEY_Rcedilla =
931
KEY_Red =
269025187
KEY_Redo =
65382
KEY_Refresh =
269025065
KEY_Reload =
269025139
KEY_RepeatKeys_Enable =
65138
KEY_Reply =
269025138
KEY_Return =
65293
KEY_Right =
65363
KEY_RockerDown =
269025060
KEY_RockerEnter =
269025061
KEY_RockerUp =
269025059
KEY_Romaji =
65316
KEY_RotateWindows =
269025140
KEY_RotationKB =
269025142
KEY_RotationPB =
269025141
KEY_RupeeSign =
16785576
KEY_S =
83
KEY_SCHWA =
16777615
KEY_Sabovedot =
16784992
KEY_Sacute =
422
KEY_Save =
269025143
KEY_Scaron =
425
KEY_Scedilla =
426
KEY_Scircumflex =
734
KEY_ScreenSaver =
269025069
KEY_ScrollClick =
269025146
KEY_ScrollDown =
269025145
KEY_ScrollUp =
269025144
KEY_Scroll_Lock =
65300
KEY_Search =
269025051
KEY_Select =
65376
KEY_SelectButton =
269025184
KEY_Send =
269025147
KEY_Serbian_DJE =
1713
KEY_Serbian_DZE =
1727
KEY_Serbian_JE =
1720
KEY_Serbian_LJE =
1721
KEY_Serbian_NJE =
1722
KEY_Serbian_TSHE =
1723
KEY_Serbian_dje =
1697
KEY_Serbian_dze =
1711
KEY_Serbian_je =
1704
KEY_Serbian_lje =
1705
KEY_Serbian_nje =
1706
KEY_Serbian_tshe =
1707
KEY_Shift_L =
65505
KEY_Shift_Lock =
65510
KEY_Shift_R =
65506
KEY_Shop =
269025078
KEY_SingleCandidate =
65340
KEY_Sinh_a =
16780677
KEY_Sinh_aa =
16780678
KEY_Sinh_aa2 =
16780751
KEY_Sinh_ae =
16780679
KEY_Sinh_ae2 =
16780752
KEY_Sinh_aee =
16780680
KEY_Sinh_aee2 =
16780753
KEY_Sinh_ai =
16780691
KEY_Sinh_ai2 =
16780763
KEY_Sinh_al =
16780746
KEY_Sinh_au =
16780694
KEY_Sinh_au2 =
16780766
KEY_Sinh_ba =
16780726
KEY_Sinh_bha =
16780727
KEY_Sinh_ca =
16780704
KEY_Sinh_cha =
16780705
KEY_Sinh_dda =
16780713
KEY_Sinh_ddha =
16780714
KEY_Sinh_dha =
16780719
KEY_Sinh_dhha =
16780720
KEY_Sinh_e =
16780689
KEY_Sinh_e2 =
16780761
KEY_Sinh_ee =
16780690
KEY_Sinh_ee2 =
16780762
KEY_Sinh_fa =
16780742
KEY_Sinh_ga =
16780700
KEY_Sinh_gha =
16780701
KEY_Sinh_h2 =
16780675
KEY_Sinh_ha =
16780740
KEY_Sinh_i =
16780681
KEY_Sinh_i2 =
16780754
KEY_Sinh_ii =
16780682
KEY_Sinh_ii2 =
16780755
KEY_Sinh_ja =
16780706
KEY_Sinh_jha =
16780707
KEY_Sinh_jnya =
16780709
KEY_Sinh_ka =
16780698
KEY_Sinh_kha =
16780699
KEY_Sinh_kunddaliya =
16780788
KEY_Sinh_la =
16780733
KEY_Sinh_lla =
16780741
KEY_Sinh_lu =
16780687
KEY_Sinh_lu2 =
16780767
KEY_Sinh_luu =
16780688
KEY_Sinh_luu2 =
16780787
KEY_Sinh_ma =
16780728
KEY_Sinh_mba =
16780729
KEY_Sinh_na =
16780721
KEY_Sinh_ndda =
16780716
KEY_Sinh_ndha =
16780723
KEY_Sinh_ng =
16780674
KEY_Sinh_ng2 =
16780702
KEY_Sinh_nga =
16780703
KEY_Sinh_nja =
16780710
KEY_Sinh_nna =
16780715
KEY_Sinh_nya =
16780708
KEY_Sinh_o =
16780692
KEY_Sinh_o2 =
16780764
KEY_Sinh_oo =
16780693
KEY_Sinh_oo2 =
16780765
KEY_Sinh_pa =
16780724
KEY_Sinh_pha =
16780725
KEY_Sinh_ra =
16780731
KEY_Sinh_ri =
16780685
KEY_Sinh_rii =
16780686
KEY_Sinh_ru2 =
16780760
KEY_Sinh_ruu2 =
16780786
KEY_Sinh_sa =
16780739
KEY_Sinh_sha =
16780737
KEY_Sinh_ssha =
16780738
KEY_Sinh_tha =
16780717
KEY_Sinh_thha =
16780718
KEY_Sinh_tta =
16780711
KEY_Sinh_ttha =
16780712
KEY_Sinh_u =
16780683
KEY_Sinh_u2 =
16780756
KEY_Sinh_uu =
16780684
KEY_Sinh_uu2 =
16780758
KEY_Sinh_va =
16780736
KEY_Sinh_ya =
16780730
KEY_Sleep =
269025071
KEY_SlowKeys_Enable =
65139
KEY_Spell =
269025148
KEY_SplitScreen =
269025149
KEY_Standby =
269025040
KEY_Start =
269025050
KEY_StickyKeys_Enable =
65141
KEY_Stop =
269025064
KEY_Subtitle =
269025178
KEY_Super_L =
65515
KEY_Super_R =
65516
KEY_Support =
269025150
KEY_Suspend =
269025191
KEY_Switch_VT_1 =
269024769
KEY_Switch_VT_10 =
269024778
KEY_Switch_VT_11 =
269024779
KEY_Switch_VT_12 =
269024780
KEY_Switch_VT_2 =
269024770
KEY_Switch_VT_3 =
269024771
KEY_Switch_VT_4 =
269024772
KEY_Switch_VT_5 =
269024773
KEY_Switch_VT_6 =
269024774
KEY_Switch_VT_7 =
269024775
KEY_Switch_VT_8 =
269024776
KEY_Switch_VT_9 =
269024777
KEY_Sys_Req =
65301
KEY_T =
84
KEY_THORN =
222
KEY_Tab =
65289
KEY_Tabovedot =
16785002
KEY_TaskPane =
269025151
KEY_Tcaron =
427
KEY_Tcedilla =
478
KEY_Terminal =
269025152
KEY_Terminate_Server =
65237
KEY_Thai_baht =
3551
KEY_Thai_bobaimai =
3514
KEY_Thai_chochan =
3496
KEY_Thai_chochang =
3498
KEY_Thai_choching =
3497
KEY_Thai_chochoe =
3500
KEY_Thai_dochada =
3502
KEY_Thai_dodek =
3508
KEY_Thai_fofa =
3517
KEY_Thai_fofan =
3519
KEY_Thai_hohip =
3531
KEY_Thai_honokhuk =
3534
KEY_Thai_khokhai =
3490
KEY_Thai_khokhon =
3493
KEY_Thai_khokhuat =
3491
KEY_Thai_khokhwai =
3492
KEY_Thai_khorakhang =
3494
KEY_Thai_kokai =
3489
KEY_Thai_lakkhangyao =
3557
KEY_Thai_lekchet =
3575
KEY_Thai_lekha =
3573
KEY_Thai_lekhok =
3574
KEY_Thai_lekkao =
3577
KEY_Thai_leknung =
3569
KEY_Thai_lekpaet =
3576
KEY_Thai_leksam =
3571
KEY_Thai_leksi =
3572
KEY_Thai_leksong =
3570
KEY_Thai_leksun =
3568
KEY_Thai_lochula =
3532
KEY_Thai_loling =
3525
KEY_Thai_lu =
3526
KEY_Thai_maichattawa =
3563
KEY_Thai_maiek =
3560
KEY_Thai_maihanakat =
3537
KEY_Thai_maihanakat_maitho =
3550
KEY_Thai_maitaikhu =
3559
KEY_Thai_maitho =
3561
KEY_Thai_maitri =
3562
KEY_Thai_maiyamok =
3558
KEY_Thai_moma =
3521
KEY_Thai_ngongu =
3495
KEY_Thai_nikhahit =
3565
KEY_Thai_nonen =
3507
KEY_Thai_nonu =
3513
KEY_Thai_oang =
3533
KEY_Thai_paiyannoi =
3535
KEY_Thai_phinthu =
3546
KEY_Thai_phophan =
3518
KEY_Thai_phophung =
3516
KEY_Thai_phosamphao =
3520
KEY_Thai_popla =
3515
KEY_Thai_rorua =
3523
KEY_Thai_ru =
3524
KEY_Thai_saraa =
3536
KEY_Thai_saraaa =
3538
KEY_Thai_saraae =
3553
KEY_Thai_saraaimaimalai =
3556
KEY_Thai_saraaimaimuan =
3555
KEY_Thai_saraam =
3539
KEY_Thai_sarae =
3552
KEY_Thai_sarai =
3540
KEY_Thai_saraii =
3541
KEY_Thai_sarao =
3554
KEY_Thai_sarau =
3544
KEY_Thai_saraue =
3542
KEY_Thai_sarauee =
3543
KEY_Thai_sarauu =
3545
KEY_Thai_sorusi =
3529
KEY_Thai_sosala =
3528
KEY_Thai_soso =
3499
KEY_Thai_sosua =
3530
KEY_Thai_thanthakhat =
3564
KEY_Thai_thonangmontho =
3505
KEY_Thai_thophuthao =
3506
KEY_Thai_thothahan =
3511
KEY_Thai_thothan =
3504
KEY_Thai_thothong =
3512
KEY_Thai_thothung =
3510
KEY_Thai_topatak =
3503
KEY_Thai_totao =
3509
KEY_Thai_wowaen =
3527
KEY_Thai_yoyak =
3522
KEY_Thai_yoying =
3501
KEY_Thorn =
222
KEY_Time =
269025183
KEY_ToDoList =
269025055
KEY_Tools =
269025153
KEY_TopMenu =
269025186
KEY_TouchpadOff =
269025201
KEY_TouchpadOn =
269025200
KEY_TouchpadToggle =
269025193
KEY_Touroku =
65323
KEY_Travel =
269025154
KEY_Tslash =
940
KEY_U =
85
KEY_UWB =
269025174
KEY_Uacute =
218
KEY_Ubelowdot =
16785124
KEY_Ubreve =
733
KEY_Ucircumflex =
219
KEY_Udiaeresis =
220
KEY_Udoubleacute =
475
KEY_Ugrave =
217
KEY_Uhook =
16785126
KEY_Uhorn =
16777647
KEY_Uhornacute =
16785128
KEY_Uhornbelowdot =
16785136
KEY_Uhorngrave =
16785130
KEY_Uhornhook =
16785132
KEY_Uhorntilde =
16785134
KEY_Ukrainian_GHE_WITH_UPTURN =
1725
KEY_Ukrainian_I =
1718
KEY_Ukrainian_IE =
1716
KEY_Ukrainian_YI =
1719
KEY_Ukrainian_ghe_with_upturn =
1709
KEY_Ukrainian_i =
1702
KEY_Ukrainian_ie =
1700
KEY_Ukrainian_yi =
1703
KEY_Ukranian_I =
1718
KEY_Ukranian_JE =
1716
KEY_Ukranian_YI =
1719
KEY_Ukranian_i =
1702
KEY_Ukranian_je =
1700
KEY_Ukranian_yi =
1703
KEY_Umacron =
990
KEY_Undo =
65381
KEY_Ungrab =
269024800
KEY_Uogonek =
985
KEY_Up =
65362
KEY_Uring =
473
KEY_User1KB =
269025157
KEY_User2KB =
269025158
KEY_UserPB =
269025156
KEY_Utilde =
989
KEY_V =
86
KEY_VendorHome =
269025076
KEY_Video =
269025159
KEY_View =
269025185
KEY_VoidSymbol =
16777215
KEY_W =
87
KEY_WLAN =
269025173
KEY_WWW =
269025070
KEY_Wacute =
16785026
KEY_WakeUp =
269025067
KEY_Wcircumflex =
16777588
KEY_Wdiaeresis =
16785028
KEY_WebCam =
269025167
KEY_Wgrave =
16785024
KEY_WheelButton =
269025160
KEY_WindowClear =
269025109
KEY_WonSign =
16785577
KEY_Word =
269025161
KEY_X =
88
KEY_Xabovedot =
16785034
KEY_Xfer =
269025162
KEY_Y =
89
KEY_Yacute =
221
KEY_Ybelowdot =
16785140
KEY_Ycircumflex =
16777590
KEY_Ydiaeresis =
5054
KEY_Yellow =
269025189
KEY_Ygrave =
16785138
KEY_Yhook =
16785142
KEY_Ytilde =
16785144
KEY_Z =
90
KEY_Zabovedot =
431
KEY_Zacute =
428
KEY_Zcaron =
430
KEY_Zen_Koho =
65341
KEY_Zenkaku =
65320
KEY_Zenkaku_Hankaku =
65322
KEY_ZoomIn =
269025163
KEY_ZoomOut =
269025164
KEY_Zstroke =
16777653
KEY_a =
97
KEY_aacute =
225
KEY_abelowdot =
16785057
KEY_abovedot =
511
KEY_abreve =
483
KEY_abreveacute =
16785071
KEY_abrevebelowdot =
16785079
KEY_abrevegrave =
16785073
KEY_abrevehook =
16785075
KEY_abrevetilde =
16785077
KEY_acircumflex =
226
KEY_acircumflexacute =
16785061
KEY_acircumflexbelowdot =
16785069
KEY_acircumflexgrave =
16785063
KEY_acircumflexhook =
16785065
KEY_acircumflextilde =
16785067
KEY_acute =
180
KEY_adiaeresis =
228
KEY_ae =
230
KEY_agrave =
224
KEY_ahook =
16785059
KEY_amacron =
992
KEY_ampersand =
38
KEY_aogonek =
433
KEY_apostrophe =
39
KEY_approxeq =
16785992
KEY_approximate =
2248
KEY_aring =
229
KEY_asciicircum =
94
KEY_asciitilde =
126
KEY_asterisk =
42
KEY_at =
64
KEY_atilde =
227
KEY_b =
98
KEY_babovedot =
16784899
KEY_backslash =
92
KEY_ballotcross =
2804
KEY_bar =
124
KEY_because =
16785973
KEY_blank =
2527
KEY_botintegral =
2213
KEY_botleftparens =
2220
KEY_botleftsqbracket =
2216
KEY_botleftsummation =
2226
KEY_botrightparens =
2222
KEY_botrightsqbracket =
2218
KEY_botrightsummation =
2230
KEY_bott =
2550
KEY_botvertsummationconnector =
2228
KEY_braceleft =
123
KEY_braceright =
125
KEY_bracketleft =
91
KEY_bracketright =
93
KEY_braille_blank =
16787456
KEY_braille_dot_1 =
65521
KEY_braille_dot_10 =
65530
KEY_braille_dot_2 =
65522
KEY_braille_dot_3 =
65523
KEY_braille_dot_4 =
65524
KEY_braille_dot_5 =
65525
KEY_braille_dot_6 =
65526
KEY_braille_dot_7 =
65527
KEY_braille_dot_8 =
65528
KEY_braille_dot_9 =
65529
KEY_braille_dots_1 =
16787457
KEY_braille_dots_12 =
16787459
KEY_braille_dots_123 =
16787463
KEY_braille_dots_1234 =
16787471
KEY_braille_dots_12345 =
16787487
KEY_braille_dots_123456 =
16787519
KEY_braille_dots_1234567 =
16787583
KEY_braille_dots_12345678 =
16787711
KEY_braille_dots_1234568 =
16787647
KEY_braille_dots_123457 =
16787551
KEY_braille_dots_1234578 =
16787679
KEY_braille_dots_123458 =
16787615
KEY_braille_dots_12346 =
16787503
KEY_braille_dots_123467 =
16787567
KEY_braille_dots_1234678 =
16787695
KEY_braille_dots_123468 =
16787631
KEY_braille_dots_12347 =
16787535
KEY_braille_dots_123478 =
16787663
KEY_braille_dots_12348 =
16787599
KEY_braille_dots_1235 =
16787479
KEY_braille_dots_12356 =
16787511
KEY_braille_dots_123567 =
16787575
KEY_braille_dots_1235678 =
16787703
KEY_braille_dots_123568 =
16787639
KEY_braille_dots_12357 =
16787543
KEY_braille_dots_123578 =
16787671
KEY_braille_dots_12358 =
16787607
KEY_braille_dots_1236 =
16787495
KEY_braille_dots_12367 =
16787559
KEY_braille_dots_123678 =
16787687
KEY_braille_dots_12368 =
16787623
KEY_braille_dots_1237 =
16787527
KEY_braille_dots_12378 =
16787655
KEY_braille_dots_1238 =
16787591
KEY_braille_dots_124 =
16787467
KEY_braille_dots_1245 =
16787483
KEY_braille_dots_12456 =
16787515
KEY_braille_dots_124567 =
16787579
KEY_braille_dots_1245678 =
16787707
KEY_braille_dots_124568 =
16787643
KEY_braille_dots_12457 =
16787547
KEY_braille_dots_124578 =
16787675
KEY_braille_dots_12458 =
16787611
KEY_braille_dots_1246 =
16787499
KEY_braille_dots_12467 =
16787563
KEY_braille_dots_124678 =
16787691
KEY_braille_dots_12468 =
16787627
KEY_braille_dots_1247 =
16787531
KEY_braille_dots_12478 =
16787659
KEY_braille_dots_1248 =
16787595
KEY_braille_dots_125 =
16787475
KEY_braille_dots_1256 =
16787507
KEY_braille_dots_12567 =
16787571
KEY_braille_dots_125678 =
16787699
KEY_braille_dots_12568 =
16787635
KEY_braille_dots_1257 =
16787539
KEY_braille_dots_12578 =
16787667
KEY_braille_dots_1258 =
16787603
KEY_braille_dots_126 =
16787491
KEY_braille_dots_1267 =
16787555
KEY_braille_dots_12678 =
16787683
KEY_braille_dots_1268 =
16787619
KEY_braille_dots_127 =
16787523
KEY_braille_dots_1278 =
16787651
KEY_braille_dots_128 =
16787587
KEY_braille_dots_13 =
16787461
KEY_braille_dots_134 =
16787469
KEY_braille_dots_1345 =
16787485
KEY_braille_dots_13456 =
16787517
KEY_braille_dots_134567 =
16787581
KEY_braille_dots_1345678 =
16787709
KEY_braille_dots_134568 =
16787645
KEY_braille_dots_13457 =
16787549
KEY_braille_dots_134578 =
16787677
KEY_braille_dots_13458 =
16787613
KEY_braille_dots_1346 =
16787501
KEY_braille_dots_13467 =
16787565
KEY_braille_dots_134678 =
16787693
KEY_braille_dots_13468 =
16787629
KEY_braille_dots_1347 =
16787533
KEY_braille_dots_13478 =
16787661
KEY_braille_dots_1348 =
16787597
KEY_braille_dots_135 =
16787477
KEY_braille_dots_1356 =
16787509
KEY_braille_dots_13567 =
16787573
KEY_braille_dots_135678 =
16787701
KEY_braille_dots_13568 =
16787637
KEY_braille_dots_1357 =
16787541
KEY_braille_dots_13578 =
16787669
KEY_braille_dots_1358 =
16787605
KEY_braille_dots_136 =
16787493
KEY_braille_dots_1367 =
16787557
KEY_braille_dots_13678 =
16787685
KEY_braille_dots_1368 =
16787621
KEY_braille_dots_137 =
16787525
KEY_braille_dots_1378 =
16787653
KEY_braille_dots_138 =
16787589
KEY_braille_dots_14 =
16787465
KEY_braille_dots_145 =
16787481
KEY_braille_dots_1456 =
16787513
KEY_braille_dots_14567 =
16787577
KEY_braille_dots_145678 =
16787705
KEY_braille_dots_14568 =
16787641
KEY_braille_dots_1457 =
16787545
KEY_braille_dots_14578 =
16787673
KEY_braille_dots_1458 =
16787609
KEY_braille_dots_146 =
16787497
KEY_braille_dots_1467 =
16787561
KEY_braille_dots_14678 =
16787689
KEY_braille_dots_1468 =
16787625
KEY_braille_dots_147 =
16787529
KEY_braille_dots_1478 =
16787657
KEY_braille_dots_148 =
16787593
KEY_braille_dots_15 =
16787473
KEY_braille_dots_156 =
16787505
KEY_braille_dots_1567 =
16787569
KEY_braille_dots_15678 =
16787697
KEY_braille_dots_1568 =
16787633
KEY_braille_dots_157 =
16787537
KEY_braille_dots_1578 =
16787665
KEY_braille_dots_158 =
16787601
KEY_braille_dots_16 =
16787489
KEY_braille_dots_167 =
16787553
KEY_braille_dots_1678 =
16787681
KEY_braille_dots_168 =
16787617
KEY_braille_dots_17 =
16787521
KEY_braille_dots_178 =
16787649
KEY_braille_dots_18 =
16787585
KEY_braille_dots_2 =
16787458
KEY_braille_dots_23 =
16787462
KEY_braille_dots_234 =
16787470
KEY_braille_dots_2345 =
16787486
KEY_braille_dots_23456 =
16787518
KEY_braille_dots_234567 =
16787582
KEY_braille_dots_2345678 =
16787710
KEY_braille_dots_234568 =
16787646
KEY_braille_dots_23457 =
16787550
KEY_braille_dots_234578 =
16787678
KEY_braille_dots_23458 =
16787614
KEY_braille_dots_2346 =
16787502
KEY_braille_dots_23467 =
16787566
KEY_braille_dots_234678 =
16787694
KEY_braille_dots_23468 =
16787630
KEY_braille_dots_2347 =
16787534
KEY_braille_dots_23478 =
16787662
KEY_braille_dots_2348 =
16787598
KEY_braille_dots_235 =
16787478
KEY_braille_dots_2356 =
16787510
KEY_braille_dots_23567 =
16787574
KEY_braille_dots_235678 =
16787702
KEY_braille_dots_23568 =
16787638
KEY_braille_dots_2357 =
16787542
KEY_braille_dots_23578 =
16787670
KEY_braille_dots_2358 =
16787606
KEY_braille_dots_236 =
16787494
KEY_braille_dots_2367 =
16787558
KEY_braille_dots_23678 =
16787686
KEY_braille_dots_2368 =
16787622
KEY_braille_dots_237 =
16787526
KEY_braille_dots_2378 =
16787654
KEY_braille_dots_238 =
16787590
KEY_braille_dots_24 =
16787466
KEY_braille_dots_245 =
16787482
KEY_braille_dots_2456 =
16787514
KEY_braille_dots_24567 =
16787578
KEY_braille_dots_245678 =
16787706
KEY_braille_dots_24568 =
16787642
KEY_braille_dots_2457 =
16787546
KEY_braille_dots_24578 =
16787674
KEY_braille_dots_2458 =
16787610
KEY_braille_dots_246 =
16787498
KEY_braille_dots_2467 =
16787562
KEY_braille_dots_24678 =
16787690
KEY_braille_dots_2468 =
16787626
KEY_braille_dots_247 =
16787530
KEY_braille_dots_2478 =
16787658
KEY_braille_dots_248 =
16787594
KEY_braille_dots_25 =
16787474
KEY_braille_dots_256 =
16787506
KEY_braille_dots_2567 =
16787570
KEY_braille_dots_25678 =
16787698
KEY_braille_dots_2568 =
16787634
KEY_braille_dots_257 =
16787538
KEY_braille_dots_2578 =
16787666
KEY_braille_dots_258 =
16787602
KEY_braille_dots_26 =
16787490
KEY_braille_dots_267 =
16787554
KEY_braille_dots_2678 =
16787682
KEY_braille_dots_268 =
16787618
KEY_braille_dots_27 =
16787522
KEY_braille_dots_278 =
16787650
KEY_braille_dots_28 =
16787586
KEY_braille_dots_3 =
16787460
KEY_braille_dots_34 =
16787468
KEY_braille_dots_345 =
16787484
KEY_braille_dots_3456 =
16787516
KEY_braille_dots_34567 =
16787580
KEY_braille_dots_345678 =
16787708
KEY_braille_dots_34568 =
16787644
KEY_braille_dots_3457 =
16787548
KEY_braille_dots_34578 =
16787676
KEY_braille_dots_3458 =
16787612
KEY_braille_dots_346 =
16787500
KEY_braille_dots_3467 =
16787564
KEY_braille_dots_34678 =
16787692
KEY_braille_dots_3468 =
16787628
KEY_braille_dots_347 =
16787532
KEY_braille_dots_3478 =
16787660
KEY_braille_dots_348 =
16787596
KEY_braille_dots_35 =
16787476
KEY_braille_dots_356 =
16787508
KEY_braille_dots_3567 =
16787572
KEY_braille_dots_35678 =
16787700
KEY_braille_dots_3568 =
16787636
KEY_braille_dots_357 =
16787540
KEY_braille_dots_3578 =
16787668
KEY_braille_dots_358 =
16787604
KEY_braille_dots_36 =
16787492
KEY_braille_dots_367 =
16787556
KEY_braille_dots_3678 =
16787684
KEY_braille_dots_368 =
16787620
KEY_braille_dots_37 =
16787524
KEY_braille_dots_378 =
16787652
KEY_braille_dots_38 =
16787588
KEY_braille_dots_4 =
16787464
KEY_braille_dots_45 =
16787480
KEY_braille_dots_456 =
16787512
KEY_braille_dots_4567 =
16787576
KEY_braille_dots_45678 =
16787704
KEY_braille_dots_4568 =
16787640
KEY_braille_dots_457 =
16787544
KEY_braille_dots_4578 =
16787672
KEY_braille_dots_458 =
16787608
KEY_braille_dots_46 =
16787496
KEY_braille_dots_467 =
16787560
KEY_braille_dots_4678 =
16787688
KEY_braille_dots_468 =
16787624
KEY_braille_dots_47 =
16787528
KEY_braille_dots_478 =
16787656
KEY_braille_dots_48 =
16787592
KEY_braille_dots_5 =
16787472
KEY_braille_dots_56 =
16787504
KEY_braille_dots_567 =
16787568
KEY_braille_dots_5678 =
16787696
KEY_braille_dots_568 =
16787632
KEY_braille_dots_57 =
16787536
KEY_braille_dots_578 =
16787664
KEY_braille_dots_58 =
16787600
KEY_braille_dots_6 =
16787488
KEY_braille_dots_67 =
16787552
KEY_braille_dots_678 =
16787680
KEY_braille_dots_68 =
16787616
KEY_braille_dots_7 =
16787520
KEY_braille_dots_78 =
16787648
KEY_braille_dots_8 =
16787584
KEY_breve =
418
KEY_brokenbar =
166
KEY_c =
99
KEY_c_h =
65187
KEY_cabovedot =
741
KEY_cacute =
486
KEY_careof =
2744
KEY_caret =
2812
KEY_caron =
439
KEY_ccaron =
488
KEY_ccedilla =
231
KEY_ccircumflex =
742
KEY_cedilla =
184
KEY_cent =
162
KEY_ch =
65184
KEY_checkerboard =
2529
KEY_checkmark =
2803
KEY_circle =
3023
KEY_club =
2796
KEY_colon =
58
KEY_comma =
44
KEY_containsas =
16785931
169
KEY_cr =
2532
KEY_crossinglines =
2542
KEY_cuberoot =
16785947
KEY_currency =
164
KEY_cursor =
2815
KEY_d =
100
KEY_dabovedot =
16784907
KEY_dagger =
2801
KEY_dcaron =
495
KEY_dead_A =
65153
KEY_dead_E =
65155
KEY_dead_I =
65157
KEY_dead_O =
65159
KEY_dead_U =
65161
KEY_dead_a =
65152
KEY_dead_abovecomma =
65124
KEY_dead_abovedot =
65110
KEY_dead_abovereversedcomma =
65125
KEY_dead_abovering =
65112
KEY_dead_acute =
65105
KEY_dead_belowbreve =
65131
KEY_dead_belowcircumflex =
65129
KEY_dead_belowcomma =
65134
KEY_dead_belowdiaeresis =
65132
KEY_dead_belowdot =
65120
KEY_dead_belowmacron =
65128
KEY_dead_belowring =
65127
KEY_dead_belowtilde =
65130
KEY_dead_breve =
65109
KEY_dead_capital_schwa =
65163
KEY_dead_caron =
65114
KEY_dead_cedilla =
65115
KEY_dead_circumflex =
65106
KEY_dead_currency =
65135
KEY_dead_dasia =
65125
KEY_dead_diaeresis =
65111
KEY_dead_doubleacute =
65113
KEY_dead_doublegrave =
65126
KEY_dead_e =
65154
KEY_dead_grave =
65104
KEY_dead_greek =
65164
KEY_dead_hook =
65121
KEY_dead_horn =
65122
KEY_dead_i =
65156
KEY_dead_invertedbreve =
65133
KEY_dead_iota =
65117
KEY_dead_macron =
65108
KEY_dead_o =
65158
KEY_dead_ogonek =
65116
KEY_dead_perispomeni =
65107
KEY_dead_psili =
65124
KEY_dead_semivoiced_sound =
65119
KEY_dead_small_schwa =
65162
KEY_dead_stroke =
65123
KEY_dead_tilde =
65107
KEY_dead_u =
65160
KEY_dead_voiced_sound =
65118
KEY_decimalpoint =
2749
KEY_degree =
176
KEY_diaeresis =
168
KEY_diamond =
2797
KEY_digitspace =
2725
KEY_dintegral =
16785964
KEY_division =
247
KEY_dollar =
36
KEY_doubbaselinedot =
2735
KEY_doubleacute =
445
KEY_doubledagger =
2802
KEY_doublelowquotemark =
2814
KEY_downarrow =
2302
KEY_downcaret =
2984
KEY_downshoe =
3030
KEY_downstile =
3012
KEY_downtack =
3010
KEY_dstroke =
496
KEY_e =
101
KEY_eabovedot =
1004
KEY_eacute =
233
KEY_ebelowdot =
16785081
KEY_ecaron =
492
KEY_ecircumflex =
234
KEY_ecircumflexacute =
16785087
KEY_ecircumflexbelowdot =
16785095
KEY_ecircumflexgrave =
16785089
KEY_ecircumflexhook =
16785091
KEY_ecircumflextilde =
16785093
KEY_ediaeresis =
235
KEY_egrave =
232
KEY_ehook =
16785083
KEY_eightsubscript =
16785544
KEY_eightsuperior =
16785528
KEY_elementof =
16785928
KEY_ellipsis =
2734
KEY_em3space =
2723
KEY_em4space =
2724
KEY_emacron =
954
KEY_emdash =
2729
KEY_emfilledcircle =
2782
KEY_emfilledrect =
2783
KEY_emopencircle =
2766
KEY_emopenrectangle =
2767
KEY_emptyset =
16785925
KEY_emspace =
2721
KEY_endash =
2730
KEY_enfilledcircbullet =
2790
KEY_enfilledsqbullet =
2791
KEY_eng =
959
KEY_enopencircbullet =
2784
KEY_enopensquarebullet =
2785
KEY_enspace =
2722
KEY_eogonek =
490
KEY_equal =
61
KEY_eth =
240
KEY_etilde =
16785085
KEY_exclam =
33
KEY_exclamdown =
161
KEY_ezh =
16777874
KEY_f =
102
KEY_fabovedot =
16784927
KEY_femalesymbol =
2808
KEY_ff =
2531
KEY_figdash =
2747
KEY_filledlefttribullet =
2780
KEY_filledrectbullet =
2779
KEY_filledrighttribullet =
2781
KEY_filledtribulletdown =
2793
KEY_filledtribulletup =
2792
KEY_fiveeighths =
2757
KEY_fivesixths =
2743
KEY_fivesubscript =
16785541
KEY_fivesuperior =
16785525
KEY_fourfifths =
2741
KEY_foursubscript =
16785540
KEY_foursuperior =
16785524
KEY_fourthroot =
16785948
KEY_function =
2294
KEY_g =
103
KEY_gabovedot =
757
KEY_gbreve =
699
KEY_gcaron =
16777703
KEY_gcedilla =
955
KEY_gcircumflex =
760
KEY_grave =
96
KEY_greater =
62
KEY_greaterthanequal =
2238
KEY_guillemotleft =
171
KEY_guillemotright =
187
KEY_h =
104
KEY_hairspace =
2728
KEY_hcircumflex =
694
KEY_heart =
2798
KEY_hebrew_aleph =
3296
KEY_hebrew_ayin =
3314
KEY_hebrew_bet =
3297
KEY_hebrew_beth =
3297
KEY_hebrew_chet =
3303
KEY_hebrew_dalet =
3299
KEY_hebrew_daleth =
3299
KEY_hebrew_doublelowline =
3295
KEY_hebrew_finalkaph =
3306
KEY_hebrew_finalmem =
3309
KEY_hebrew_finalnun =
3311
KEY_hebrew_finalpe =
3315
KEY_hebrew_finalzade =
3317
KEY_hebrew_finalzadi =
3317
KEY_hebrew_gimel =
3298
KEY_hebrew_gimmel =
3298
KEY_hebrew_he =
3300
KEY_hebrew_het =
3303
KEY_hebrew_kaph =
3307
KEY_hebrew_kuf =
3319
KEY_hebrew_lamed =
3308
KEY_hebrew_mem =
3310
KEY_hebrew_nun =
3312
KEY_hebrew_pe =
3316
KEY_hebrew_qoph =
3319
KEY_hebrew_resh =
3320
KEY_hebrew_samech =
3313
KEY_hebrew_samekh =
3313
KEY_hebrew_shin =
3321
KEY_hebrew_taf =
3322
KEY_hebrew_taw =
3322
KEY_hebrew_tet =
3304
KEY_hebrew_teth =
3304
KEY_hebrew_waw =
3301
KEY_hebrew_yod =
3305
KEY_hebrew_zade =
3318
KEY_hebrew_zadi =
3318
KEY_hebrew_zain =
3302
KEY_hebrew_zayin =
3302
KEY_hexagram =
2778
KEY_horizconnector =
2211
KEY_horizlinescan1 =
2543
KEY_horizlinescan3 =
2544
KEY_horizlinescan5 =
2545
KEY_horizlinescan7 =
2546
KEY_horizlinescan9 =
2547
KEY_hstroke =
689
KEY_ht =
2530
KEY_hyphen =
173
KEY_i =
105
KEY_iTouch =
269025120
KEY_iacute =
237
KEY_ibelowdot =
16785099
KEY_ibreve =
16777517
KEY_icircumflex =
238
KEY_identical =
2255
KEY_idiaeresis =
239
KEY_idotless =
697
KEY_ifonlyif =
2253
KEY_igrave =
236
KEY_ihook =
16785097
KEY_imacron =
1007
KEY_implies =
2254
KEY_includedin =
2266
KEY_includes =
2267
KEY_infinity =
2242
KEY_integral =
2239
KEY_intersection =
2268
KEY_iogonek =
999
KEY_itilde =
949
KEY_j =
106
KEY_jcircumflex =
700
KEY_jot =
3018
KEY_k =
107
KEY_kana_A =
1201
KEY_kana_CHI =
1217
KEY_kana_E =
1204
KEY_kana_FU =
1228
KEY_kana_HA =
1226
KEY_kana_HE =
1229
KEY_kana_HI =
1227
KEY_kana_HO =
1230
KEY_kana_HU =
1228
KEY_kana_I =
1202
KEY_kana_KA =
1206
KEY_kana_KE =
1209
KEY_kana_KI =
1207
KEY_kana_KO =
1210
KEY_kana_KU =
1208
KEY_kana_MA =
1231
KEY_kana_ME =
1234
KEY_kana_MI =
1232
KEY_kana_MO =
1235
KEY_kana_MU =
1233
KEY_kana_N =
1245
KEY_kana_NA =
1221
KEY_kana_NE =
1224
KEY_kana_NI =
1222
KEY_kana_NO =
1225
KEY_kana_NU =
1223
KEY_kana_O =
1205
KEY_kana_RA =
1239
KEY_kana_RE =
1242
KEY_kana_RI =
1240
KEY_kana_RO =
1243
KEY_kana_RU =
1241
KEY_kana_SA =
1211
KEY_kana_SE =
1214
KEY_kana_SHI =
1212
KEY_kana_SO =
1215
KEY_kana_SU =
1213
KEY_kana_TA =
1216
KEY_kana_TE =
1219
KEY_kana_TI =
1217
KEY_kana_TO =
1220
KEY_kana_TSU =
1218
KEY_kana_TU =
1218
KEY_kana_U =
1203
KEY_kana_WA =
1244
KEY_kana_WO =
1190
KEY_kana_YA =
1236
KEY_kana_YO =
1238
KEY_kana_YU =
1237
KEY_kana_a =
1191
KEY_kana_closingbracket =
1187
KEY_kana_comma =
1188
KEY_kana_conjunctive =
1189
KEY_kana_e =
1194
KEY_kana_fullstop =
1185
KEY_kana_i =
1192
KEY_kana_middledot =
1189
KEY_kana_o =
1195
KEY_kana_openingbracket =
1186
KEY_kana_switch =
65406
KEY_kana_tsu =
1199
KEY_kana_tu =
1199
KEY_kana_u =
1193
KEY_kana_ya =
1196
KEY_kana_yo =
1198
KEY_kana_yu =
1197
KEY_kappa =
930
KEY_kcedilla =
1011
KEY_kra =
930
KEY_l =
108
KEY_lacute =
485
KEY_latincross =
2777
KEY_lbelowdot =
16784951
KEY_lcaron =
437
KEY_lcedilla =
950
KEY_leftanglebracket =
2748
KEY_leftarrow =
2299
KEY_leftcaret =
2979
KEY_leftdoublequotemark =
2770
KEY_leftmiddlecurlybrace =
2223
KEY_leftopentriangle =
2764
KEY_leftpointer =
2794
KEY_leftradical =
2209
KEY_leftshoe =
3034
KEY_leftsinglequotemark =
2768
KEY_leftt =
2548
KEY_lefttack =
3036
KEY_less =
60
KEY_lessthanequal =
2236
KEY_lf =
2533
KEY_logicaland =
2270
KEY_logicalor =
2271
KEY_lowleftcorner =
2541
KEY_lowrightcorner =
2538
KEY_lstroke =
435
KEY_m =
109
KEY_mabovedot =
16784961
KEY_macron =
175
KEY_malesymbol =
2807
KEY_maltesecross =
2800
KEY_marker =
2751
KEY_masculine =
186
KEY_minus =
45
KEY_minutes =
2774
KEY_mu =
181
KEY_multiply =
215
KEY_musicalflat =
2806
KEY_musicalsharp =
2805
KEY_n =
110
KEY_nabla =
2245
KEY_nacute =
497
KEY_ncaron =
498
KEY_ncedilla =
1009
KEY_ninesubscript =
16785545
KEY_ninesuperior =
16785529
KEY_nl =
2536
KEY_nobreakspace =
160
KEY_notapproxeq =
16785991
KEY_notelementof =
16785929
KEY_notequal =
2237
KEY_notidentical =
16786018
KEY_notsign =
172
KEY_ntilde =
241
KEY_numbersign =
35
KEY_numerosign =
1712
KEY_o =
111
KEY_oacute =
243
KEY_obarred =
16777845
KEY_obelowdot =
16785101
KEY_ocaron =
16777682
KEY_ocircumflex =
244
KEY_ocircumflexacute =
16785105
KEY_ocircumflexbelowdot =
16785113
KEY_ocircumflexgrave =
16785107
KEY_ocircumflexhook =
16785109
KEY_ocircumflextilde =
16785111
KEY_odiaeresis =
246
KEY_odoubleacute =
501
KEY_oe =
5053
KEY_ogonek =
434
KEY_ograve =
242
KEY_ohook =
16785103
KEY_ohorn =
16777633
KEY_ohornacute =
16785115
KEY_ohornbelowdot =
16785123
KEY_ohorngrave =
16785117
KEY_ohornhook =
16785119
KEY_ohorntilde =
16785121
KEY_omacron =
1010
KEY_oneeighth =
2755
KEY_onefifth =
2738
KEY_onehalf =
189
KEY_onequarter =
188
KEY_onesixth =
2742
KEY_onesubscript =
16785537
KEY_onesuperior =
185
KEY_onethird =
2736
KEY_ooblique =
248
KEY_openrectbullet =
2786
KEY_openstar =
2789
KEY_opentribulletdown =
2788
KEY_opentribulletup =
2787
KEY_ordfeminine =
170
KEY_oslash =
248
KEY_otilde =
245
KEY_overbar =
3008
KEY_overline =
1150
KEY_p =
112
KEY_pabovedot =
16784983
KEY_paragraph =
182
KEY_parenleft =
40
KEY_parenright =
41
KEY_partdifferential =
16785922
KEY_partialderivative =
2287
KEY_percent =
37
KEY_period =
46
KEY_periodcentered =
183
KEY_permille =
2773
KEY_phonographcopyright =
2811
KEY_plus =
43
KEY_plusminus =
177
KEY_prescription =
2772
KEY_prolongedsound =
1200
KEY_punctspace =
2726
KEY_q =
113
KEY_quad =
3020
KEY_question =
63
KEY_questiondown =
191
KEY_quotedbl =
34
KEY_quoteleft =
96
KEY_quoteright =
39
KEY_r =
114
KEY_racute =
480
KEY_radical =
2262
KEY_rcaron =
504
KEY_rcedilla =
947
KEY_registered =
174
KEY_rightanglebracket =
2750
KEY_rightarrow =
2301
KEY_rightcaret =
2982
KEY_rightdoublequotemark =
2771
KEY_rightmiddlecurlybrace =
2224
KEY_rightmiddlesummation =
2231
KEY_rightopentriangle =
2765
KEY_rightpointer =
2795
KEY_rightshoe =
3032
KEY_rightsinglequotemark =
2769
KEY_rightt =
2549
KEY_righttack =
3068
KEY_s =
115
KEY_sabovedot =
16784993
KEY_sacute =
438
KEY_scaron =
441
KEY_scedilla =
442
KEY_schwa =
16777817
KEY_scircumflex =
766
KEY_script_switch =
65406
KEY_seconds =
2775
KEY_section =
167
KEY_semicolon =
59
KEY_semivoicedsound =
1247
KEY_seveneighths =
2758
KEY_sevensubscript =
16785543
KEY_sevensuperior =
16785527
KEY_signaturemark =
2762
KEY_signifblank =
2732
KEY_similarequal =
2249
KEY_singlelowquotemark =
2813
KEY_sixsubscript =
16785542
KEY_sixsuperior =
16785526
KEY_slash =
47
KEY_soliddiamond =
2528
KEY_space =
32
KEY_squareroot =
16785946
KEY_ssharp =
223
KEY_sterling =
163
KEY_stricteq =
16786019
KEY_t =
116
KEY_tabovedot =
16785003
KEY_tcaron =
443
KEY_tcedilla =
510
KEY_telephone =
2809
KEY_telephonerecorder =
2810
KEY_therefore =
2240
KEY_thinspace =
2727
KEY_thorn =
254
KEY_threeeighths =
2756
KEY_threefifths =
2740
KEY_threequarters =
190
KEY_threesubscript =
16785539
KEY_threesuperior =
179
KEY_tintegral =
16785965
KEY_topintegral =
2212
KEY_topleftparens =
2219
KEY_topleftradical =
2210
KEY_topleftsqbracket =
2215
KEY_topleftsummation =
2225
KEY_toprightparens =
2221
KEY_toprightsqbracket =
2217
KEY_toprightsummation =
2229
KEY_topt =
2551
KEY_topvertsummationconnector =
2227
KEY_trademark =
2761
KEY_trademarkincircle =
2763
KEY_tslash =
956
KEY_twofifths =
2739
KEY_twosubscript =
16785538
KEY_twosuperior =
178
KEY_twothirds =
2737
KEY_u =
117
KEY_uacute =
250
KEY_ubelowdot =
16785125
KEY_ubreve =
765
KEY_ucircumflex =
251
KEY_udiaeresis =
252
KEY_udoubleacute =
507
KEY_ugrave =
249
KEY_uhook =
16785127
KEY_uhorn =
16777648
KEY_uhornacute =
16785129
KEY_uhornbelowdot =
16785137
KEY_uhorngrave =
16785131
KEY_uhornhook =
16785133
KEY_uhorntilde =
16785135
KEY_umacron =
1022
KEY_underbar =
3014
KEY_underscore =
95
KEY_union =
2269
KEY_uogonek =
1017
KEY_uparrow =
2300
KEY_upcaret =
2985
KEY_upleftcorner =
2540
KEY_uprightcorner =
2539
KEY_upshoe =
3011
KEY_upstile =
3027
KEY_uptack =
3022
KEY_uring =
505
KEY_utilde =
1021
KEY_v =
118
KEY_variation =
2241
KEY_vertbar =
2552
KEY_vertconnector =
2214
KEY_voicedsound =
1246
KEY_vt =
2537
KEY_w =
119
KEY_wacute =
16785027
KEY_wcircumflex =
16777589
KEY_wdiaeresis =
16785029
KEY_wgrave =
16785025
KEY_x =
120
KEY_xabovedot =
16785035
KEY_y =
121
KEY_yacute =
253
KEY_ybelowdot =
16785141
KEY_ycircumflex =
16777591
KEY_ydiaeresis =
255
KEY_yen =
165
KEY_ygrave =
16785139
KEY_yhook =
16785143
KEY_ytilde =
16785145
KEY_z =
122
KEY_zabovedot =
447
KEY_zacute =
444
KEY_zcaron =
446
KEY_zerosubscript =
16785536
KEY_zerosuperior =
16785520
KEY_zstroke =
16777654
MAJOR_VERSION =
3
MAX_TIMECOORD_AXES =
128
MICRO_VERSION =
20
MINOR_VERSION =
24
PARENT_RELATIVE =

A special value, indicating that the background for a window should be inherited from the parent window.

1
PRIORITY_REDRAW =

This is the priority that the idle handler processing window updates is given in the [GLib Main Loop].

120
LOG_DOMAIN =
"Gdk"
@@init_hooks =
[]

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.cairo_available?Boolean

Returns:

  • (Boolean)


66
67
68
# File 'gdk3/lib/gdk3.rb', line 66

def cairo_available?
  true
end

.const_missing(name) ⇒ Object



34
35
36
37
38
39
40
41
# File 'gdk3/lib/gdk3.rb', line 34

def const_missing(name)
  init
  if const_defined?(name)
    const_get(name)
  else
    super
  end
end

.initObject



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'gdk3/lib/gdk3.rb', line 44

def init
  class << self
    remove_method(:init)
    remove_method(:const_missing)
  end
  loader = Loader.new(self)
  loader.load
  x11_loader = GdkX11::Loader.new(GdkX11)
  x11_loader.load
  if Object.const_defined?(:Gtk) and Gtk.respond_to?(:init)
    Gtk.init
  end

  @@init_hooks.each do |hook|
    hook.call
  end
end

.on_init(&block) ⇒ Object



62
63
64
# File 'gdk3/lib/gdk3.rb', line 62

def on_init(&block)
  @@init_hooks << block
end

Instance Method Details

#add_option_entries_libgtk_only(group) ⇒ nil

Appends gdk option entries to the passed in option group. This is not public API and must not be used by applications.

Parameters:

  • group (GLib::OptionGroup)

    An option group.

Returns:

  • (nil)

#allowed_backends=(backends) ⇒ nil

Sets a list of backends that GDK should try to use.

This can be be useful if your application does not work with certain GDK backends.

By default, GDK tries all included backends.

For example,

gdk_set_allowed_backends ("wayland,quartz,*");

instructs GDK to try the Wayland backend first, followed by the Quartz backend, and then all others.

If the ‘GDK_BACKEND` environment variable is set, it determines what backends are tried in what order, while still respecting the set of allowed backends that are specified by this function.

The possible backend names are x11, win32, quartz, broadway, wayland. You can also include a * in the list to try all remaining backends.

This call must happen prior to gdk_display_open(), gtk_init(), gtk_init_with_args() or gtk_init_check() in order to take effect.

Parameters:

  • backends (String)

    a comma-separated list of backends

Returns:

  • (nil)

#atom_intern(atom_name, only_if_exists) ⇒ Gdk::Atom

Finds or creates an atom corresponding to a given string.

Parameters:

  • atom_name (String)

    a string.

  • only_if_exists (TrueClass)

    if true, GDK is allowed to not create a new atom, but just return %GDK_NONE if the requested atom doesn’t already exists. Currently, the flag is ignored, since checking the existance of an atom is as expensive as creating it.

Returns:

  • (Gdk::Atom)

    the atom corresponding to atom_name.

#atom_intern_static_string(atom_name) ⇒ Gdk::Atom

Finds or creates an atom corresponding to a given string.

Note that this function is identical to gdk_atom_intern() except that if a new Gdk::Atom is created the string itself is used rather than a copy. This saves memory, but can only be used if the string will always exist. It can be used with statically allocated strings in the main program, but not with statically allocated memory in dynamically loaded modules, if you expect to ever unload the module again (e.g. do not use this function in GTK+ theme engines).

Parameters:

  • atom_name (String)

    a static string

Returns:

  • (Gdk::Atom)

    the atom corresponding to atom_name

#beepnil

Emits a short beep on the default display.

Returns:

  • (nil)

#cairo_create(window) ⇒ cairo::Context

Creates a Cairo context for drawing to window.

Note that calling cairo_reset_clip() on the resulting #cairo_t will produce undefined results, so avoid it at all costs.

Typically, this function is used to draw on a Gdk::Window out of the paint cycle of the toolkit; this should be avoided, as it breaks various assumptions and optimizations.

If you are drawing on a native Gdk::Window in response to a %GDK_EXPOSE event you should use gdk_window_begin_draw_frame() and gdk_drawing_context_get_cairo_context() instead. GTK will automatically do this for you when drawing a widget.

Parameters:

Returns:

  • (cairo::Context)

    A newly created Cairo context. Free with cairo_destroy() when you are done drawing.

#cairo_draw_from_gl(cr, window, source, source_type, buffer_scale, x, y, width, height) ⇒ nil

This is the main way to draw GL content in GTK+. It takes a render buffer ID (source_type == #GL_RENDERBUFFER) or a texture id (source_type == #GL_TEXTURE) and draws it onto cr with an OVER operation, respecting the current clip. The top left corner of the rectangle specified by x, y, width and height will be drawn at the current (0,0) position of the cairo_t.

This will work for all cairo_t, as long as window is realized, but the fallback implementation that reads back the pixels from the buffer may be used in the general case. In the case of direct drawing to a window with no special effects applied to cr it will however use a more efficient approach.

For #GL_RENDERBUFFER the code will always fall back to software for buffers with alpha components, so make sure you use #GL_TEXTURE if using alpha.

Calling this may change the current GL context.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • window (Gdk::Window)

    The window we’re rendering for (not necessarily into)

  • source (Integer)

    The GL ID of the source buffer

  • source_type (Integer)

    The type of the source

  • buffer_scale (Integer)

    The scale-factor that the source buffer is allocated for

  • x (Integer)

    The source x position in source to start copying from in GL coordinates

  • y (Integer)

    The source y position in source to start copying from in GL coordinates

  • width (Integer)

    The width of the region to draw

  • height (Integer)

    The height of the region to draw

Returns:

  • (nil)

#cairo_get_clip_rectangle(cr, rect) ⇒ TrueClass

This is a convenience function around cairo_clip_extents(). It rounds the clip extents to integer coordinates and returns a boolean indicating if a clip area exists.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • rect (Gdk::Rectangle)

    return location for the clip, or nil

Returns:

  • (TrueClass)

    true if a clip rectangle exists, false if all of cr is clipped and all drawing can be skipped

#cairo_get_drawing_context(cr) ⇒ Gdk::DrawingContext

Retrieves the Gdk::DrawingContext that created the Cairo context cr.

Parameters:

  • cr (cairo::Context)

    a Cairo context

Returns:

#cairo_rectangle(cr, rectangle) ⇒ nil

Adds the given rectangle to the current path of cr.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • rectangle (Gdk::Rectangle)

    a Gdk::Rectangle

Returns:

  • (nil)

#cairo_region(cr, region) ⇒ nil

Adds the given region to the current path of cr.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • region (cairo::Region)

    a #cairo_region_t

Returns:

  • (nil)

#cairo_region_create_from_surface(surface) ⇒ cairo::Region

Creates region that describes covers the area where the given surface is more than 50% opaque.

This function takes into account device offsets that might be set with cairo_surface_set_device_offset().

Parameters:

  • surface (cairo::Surface)

    a cairo surface

Returns:

  • (cairo::Region)

    A #cairo_region_t; must be freed with cairo_region_destroy()

#cairo_set_source_color(cr, color) ⇒ nil

Sets the specified Gdk::Color as the source color of cr.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • color (Gdk::Color)

    a Gdk::Color

Returns:

  • (nil)

#cairo_set_source_pixbuf(cr, pixbuf, pixbuf_x, pixbuf_y) ⇒ nil

Sets the given pixbuf as the source pattern for cr.

The pattern has an extend mode of %CAIRO_EXTEND_NONE and is aligned so that the origin of pixbuf is pixbuf_x, pixbuf_y.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • pixbuf (GdkPixbuf::Pixbuf)

    a Gdk::Pixbuf

  • pixbuf_x (Float)

    X coordinate of location to place upper left corner of pixbuf

  • pixbuf_y (Float)

    Y coordinate of location to place upper left corner of pixbuf

Returns:

  • (nil)

#cairo_set_source_rgba(cr, rgba) ⇒ nil

Sets the specified Gdk::RGBA as the source color of cr.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • rgba (Gdk::RGBA)

    a Gdk::RGBA

Returns:

  • (nil)

#cairo_set_source_window(cr, window, x, y) ⇒ nil

Sets the given window as the source pattern for cr.

The pattern has an extend mode of %CAIRO_EXTEND_NONE and is aligned so that the origin of window is x, y. The window contains all its subwindows when rendering.

Note that the contents of window are undefined outside of the visible part of window, so use this function with care.

Parameters:

  • cr (cairo::Context)

    a cairo context

  • window (Gdk::Window)

    a Gdk::Window

  • x (Float)

    X coordinate of location to place upper left corner of window

  • y (Float)

    Y coordinate of location to place upper left corner of window

Returns:

  • (nil)

#cairo_surface_create_from_pixbuf(pixbuf, scale, for_window) ⇒ cairo::Surface

Creates an image surface with the same contents as the pixbuf.

Parameters:

  • pixbuf (GdkPixbuf::Pixbuf)

    a Gdk::Pixbuf

  • scale (Integer)

    the scale of the new surface, or 0 to use same as window

  • for_window (Gdk::Window)

    The window this will be drawn to, or nil

Returns:

  • (cairo::Surface)

    a new cairo surface, must be freed with cairo_surface_destroy()

#color_parse(spec, color) ⇒ TrueClass

Parses a textual specification of a color and fill in the red, green, and blue fields of a Gdk::Color.

The string can either one of a large set of standard names (taken from the X11 ‘rgb.txt` file), or it can be a hexadecimal value in the form “#rgb” “#rrggbb”, “#rrrgggbbb” or “#rrrrggggbbbb” where “r”, “g” and “b” are hex digits of the red, green, and blue components of the color, respectively. (White in the four forms is “#fff”, “#ffffff”, “#fffffffff” and “#ffffffffffff”).

Parameters:

  • spec (String)

    the string specifying the color

  • color (Gdk::Color)

    the Gdk::Color to fill in

Returns:

  • (TrueClass)

    true if the parsing succeeded

#default_root_windowGdk::Window

Obtains the root window (parent all other windows are inside) for the default display and screen.

Returns:

#disable_multidevicenil

Disables multidevice support in GDK. This call must happen prior to gdk_display_open(), gtk_init(), gtk_init_with_args() or gtk_init_check() in order to take effect.

Most common GTK+ applications won’t ever need to call this. Only applications that do mixed GDK/Xlib calls could want to disable multidevice support if such Xlib code deals with input devices in any way and doesn’t observe the presence of XInput 2.

Returns:

  • (nil)

#displayString

Gets the name of the display, which usually comes from the ‘DISPLAY` environment variable or the `–display` command line option.

Returns:

  • (String)

    the name of the display.

#display_arg_nameString

Gets the display name specified in the command line arguments passed to gdk_init() or gdk_parse_args(), if any.

Returns:

  • (String)

    the display name, if specified explicitly, otherwise nil this string is owned by GTK+ and must not be modified or freed.

#double_click_time=(msec) ⇒ nil

Set the double click time for the default display. See gdk_display_set_double_click_time(). See also gdk_display_set_double_click_distance(). Applications should not set this, it is a global user-configured setting.

Parameters:

  • msec (Integer)

    double click time in milliseconds (thousandths of a second)

Returns:

  • (nil)

#drag_abort(context, time_) ⇒ nil

Aborts a drag without dropping.

This function is called by the drag source.

This function does not need to be called in managed drag and drop operations. See gdk_drag_context_manage_dnd() for more information.

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • time_ (Integer)

    the timestamp for this operation

Returns:

  • (nil)

#drag_begin(window, targets) ⇒ Gdk::DragContext

Starts a drag and creates a new drag context for it. This function assumes that the drag is controlled by the client pointer device, use gdk_drag_begin_for_device() to begin a drag with a different device.

This function is called by the drag source.

Parameters:

  • window (Gdk::Window)

    the source window for this drag.

  • targets (GLib::List)

    the offered targets, as list of Gdk::Atoms

Returns:

#drag_begin_for_device(window, device, targets) ⇒ Gdk::DragContext

Starts a drag and creates a new drag context for it.

This function is called by the drag source.

Parameters:

  • window (Gdk::Window)

    the source window for this drag

  • device (Gdk::Device)

    the device that controls this drag

  • targets (GLib::List)

    the offered targets, as list of Gdk::Atoms

Returns:

#drag_begin_from_point(window, device, targets, x_root, y_root) ⇒ Gdk::DragContext

Starts a drag and creates a new drag context for it.

This function is called by the drag source.

Parameters:

  • window (Gdk::Window)

    the source window for this drag

  • device (Gdk::Device)

    the device that controls this drag

  • targets (GLib::List)

    the offered targets, as list of Gdk::Atoms

  • x_root (Integer)

    the x coordinate where the drag nominally started

  • y_root (Integer)

    the y coordinate where the drag nominally started

Returns:

#drag_drop(context, time_) ⇒ nil

Drops on the current destination.

This function is called by the drag source.

This function does not need to be called in managed drag and drop operations. See gdk_drag_context_manage_dnd() for more information.

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • time_ (Integer)

    the timestamp for this operation

Returns:

  • (nil)

#drag_drop_done(context, success) ⇒ nil

Inform GDK if the drop ended successfully. Passing false for success may trigger a drag cancellation animation.

This function is called by the drag source, and should be the last call before dropping the reference to the context.

The Gdk::DragContext will only take the first gdk_drag_drop_done() call as effective, if this function is called multiple times, all subsequent calls will be ignored.

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • success (TrueClass)

    whether the drag was ultimatively successful

Returns:

  • (nil)

#drag_drop_succeeded(context) ⇒ TrueClass

Returns whether the dropped data has been successfully transferred. This function is intended to be used while handling a %GDK_DROP_FINISHED event, its return value is meaningless at other times.

Parameters:

Returns:

  • (TrueClass)

    true if the drop was successful.

#drag_find_window_for_screen(context, drag_window, screen, x_root, y_root, dest_window, protocol) ⇒ nil

Finds the destination window and DND protocol to use at the given pointer position.

This function is called by the drag source to obtain the dest_window and protocol parameters for gdk_drag_motion().

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • drag_window (Gdk::Window)

    a window which may be at the pointer position, but should be ignored, since it is put up by the drag source as an icon

  • screen (Gdk::Screen)

    the screen where the destination window is sought

  • x_root (Integer)

    the x position of the pointer in root coordinates

  • y_root (Integer)

    the y position of the pointer in root coordinates

  • dest_window (Gdk::Window)

    location to store the destination window in

  • protocol (Gdk::DragProtocol)

    location to store the DND protocol in

Returns:

  • (nil)

#drag_get_selection(context) ⇒ Gdk::Atom

Returns the selection atom for the current source window.

Parameters:

Returns:

  • (Gdk::Atom)

    the selection atom, or %GDK_NONE

#drag_motion(context, dest_window, protocol, x_root, y_root, suggested_action, possible_actions, time_) ⇒ TrueClass

Updates the drag context when the pointer moves or the set of actions changes.

This function is called by the drag source.

This function does not need to be called in managed drag and drop operations. See gdk_drag_context_manage_dnd() for more information.

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • dest_window (Gdk::Window)

    the new destination window, obtained by gdk_drag_find_window()

  • protocol (Gdk::DragProtocol)

    the DND protocol in use, obtained by gdk_drag_find_window()

  • x_root (Integer)

    the x position of the pointer in root coordinates

  • y_root (Integer)

    the y position of the pointer in root coordinates

  • suggested_action (Gdk::DragAction)

    the suggested action

  • possible_actions (Gdk::DragAction)

    the possible actions

  • time_ (Integer)

    the timestamp for this operation

Returns:

  • (TrueClass)

#drag_status(context, action, time_) ⇒ nil

Selects one of the actions offered by the drag source.

This function is called by the drag destination in response to gdk_drag_motion() called by the drag source.

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • action (Gdk::DragAction)

    the selected action which will be taken when a drop happens, or 0 to indicate that a drop will not be accepted

  • time_ (Integer)

    the timestamp for this operation

Returns:

  • (nil)

#drop_finish(context, success, time_) ⇒ nil

Ends the drag operation after a drop.

This function is called by the drag destination.

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • success (TrueClass)

    true if the data was successfully received

  • time_ (Integer)

    the timestamp for this operation

Returns:

  • (nil)

#drop_reply(context, accepted, time_) ⇒ nil

Accepts or rejects a drop.

This function is called by the drag destination in response to a drop initiated by the drag source.

Parameters:

  • context (Gdk::DragContext)

    a Gdk::DragContext

  • accepted (TrueClass)

    true if the drop is accepted

  • time_ (Integer)

    the timestamp for this operation

Returns:

  • (nil)

#error_trap_popInteger

Removes an error trap pushed with gdk_error_trap_push(). May block until an error has been definitively received or not received from the X server. gdk_error_trap_pop_ignored() is preferred if you don’t need to know whether an error occurred, because it never has to block. If you don’t need the return value of gdk_error_trap_pop(), use gdk_error_trap_pop_ignored().

Prior to GDK 3.0, this function would not automatically sync for you, so you had to gdk_flush() if your last call to Xlib was not a blocking round trip.

Returns:

  • (Integer)

    X error code or 0 on success

#error_trap_pop_ignorednil

Removes an error trap pushed with gdk_error_trap_push(), but without bothering to wait and see whether an error occurred. If an error arrives later asynchronously that was triggered while the trap was pushed, that error will be ignored.

Returns:

  • (nil)

#error_trap_pushnil

This function allows X errors to be trapped instead of the normal behavior of exiting the application. It should only be used if it is not possible to avoid the X error in any other way. Errors are ignored on all Gdk::Display currently known to the Gdk::DisplayManager. If you don’t care which error happens and just want to ignore everything, pop with gdk_error_trap_pop_ignored(). If you need the error code, use gdk_error_trap_pop() which may have to block and wait for the error to arrive from the X server.

This API exists on all platforms but only does anything on X.

You can use gdk_x11_display_error_trap_push() to ignore errors on only a single display.

## Trapping an X error

gdk_error_trap_push ();

 // ... Call the X function which may cause an error here ...

if (gdk_error_trap_pop ())
 {
   // ... Handle the error here ...
 }

Returns:

  • (nil)

#event_getGdk::Event

Checks all open displays for a Gdk::Event to process,to be processed on, fetching events from the windowing system if necessary. See gdk_display_get_event(). if no events are pending. The returned Gdk::Event should be freed with gdk_event_free().

Returns:

  • (Gdk::Event)

    the next Gdk::Event to be processed, or nil

#event_handler_set(func, data, notify) ⇒ nil

Sets the function to call to handle all events from GDK.

Note that GTK+ uses this to install its own event handler, so it is usually not useful for GTK+ applications. (Although an application can call this function then call gtk_main_do_event() to pass events to GTK+.)

Parameters:

  • func (Gdk::EventFunc)

    the function to call to handle events from GDK.

  • data (GObject)

    user data to pass to the function.

  • notify (GLib::DestroyNotify)

    the function to call when the handler function is removed, i.e. when gdk_event_handler_set() is called with another event handler.

Returns:

  • (nil)

#event_peekGdk::Event

If there is an event waiting in the event queue of some open display, returns a copy of it. See gdk_display_peek_event(). queue, or nil if no events are in any queues. The returned Gdk::Event should be freed with gdk_event_free().

Returns:

  • (Gdk::Event)

    a copy of the first Gdk::Event on some event

#event_request_motions(event) ⇒ nil

Request more motion notifies if event is a motion notify hint event.

This function should be used instead of gdk_window_get_pointer() to request further motion notifies, because it also works for extension events where motion notifies are provided for devices other than the core pointer. Coordinate extraction, processing and requesting more motion events from a %GDK_MOTION_NOTIFY event usually works like this:

{
  // motion_event handler
  x = motion_event->x;
  y = motion_event->y;
  // handle (x,y) motion
  gdk_event_request_motions (motion_event); // handles is_hint events
}

Parameters:

  • event (Gdk::EventMotion)

    a valid Gdk::Event

Returns:

  • (nil)

#events_get_angle(event1, event2, angle) ⇒ TrueClass

If both events contain X/Y information, this function will return true and return in angle the relative angle from event1 to event2. The rotation direction for positive angles is from the positive X axis towards the positive Y axis.

Parameters:

  • event1 (Gdk::Event)

    first Gdk::Event

  • event2 (Gdk::Event)

    second Gdk::Event

  • angle (Float)

    return location for the relative angle between both events

Returns:

  • (TrueClass)

    true if the angle could be calculated.

#events_get_center(event1, event2, x, y) ⇒ TrueClass

If both events contain X/Y information, the center of both coordinates will be returned in x and y.

Parameters:

  • event1 (Gdk::Event)

    first Gdk::Event

  • event2 (Gdk::Event)

    second Gdk::Event

  • x (Float)

    return location for the X coordinate of the center

  • y (Float)

    return location for the Y coordinate of the center

Returns:

  • (TrueClass)

    true if the center could be calculated.

#events_get_distance(event1, event2, distance) ⇒ TrueClass

If both events have X/Y information, the distance between both coordinates (as in a straight line going from event1 to event2) will be returned.

Parameters:

  • event1 (Gdk::Event)

    first Gdk::Event

  • event2 (Gdk::Event)

    second Gdk::Event

  • distance (Float)

    return location for the distance

Returns:

  • (TrueClass)

    true if the distance could be calculated.

#events_pendingTrueClass

Checks if any events are ready to be processed for any display.

Returns:

  • (TrueClass)

    true if any events are pending.

#flushnil

Flushes the output buffers of all display connections and waits until all requests have been processed. This is rarely needed by applications.

Returns:

  • (nil)

#gl_error_quarkGLib::Quark

Returns:

  • (GLib::Quark)

#init(argc, argv) ⇒ nil

Initializes the GDK library and connects to the windowing system. If initialization fails, a warning message is output and the application terminates with a call to ‘exit(1)`.

Any arguments used by GDK are removed from the array and argc and argv are updated accordingly.

GTK+ initializes GDK in gtk_init() and so this function is not usually needed by GTK+ applications.

Parameters:

  • argc (Integer)

    the number of command line arguments.

  • argv (Array<String>)

    the array of command line arguments.

Returns:

  • (nil)

#init_check(argc, argv) ⇒ TrueClass

Initializes the GDK library and connects to the windowing system, returning true on success.

Any arguments used by GDK are removed from the array and argc and argv are updated accordingly.

GTK+ initializes GDK in gtk_init() and so this function is not usually needed by GTK+ applications.

Parameters:

  • argc (Integer)

    the number of command line arguments.

  • argv (Array<String>)

    the array of command line arguments.

Returns:

  • (TrueClass)

    true if initialization succeeded.

#keyboard_grab(window, owner_events, time_) ⇒ Gdk::GrabStatus

Grabs the keyboard so that all events are passed to this application until the keyboard is ungrabbed with gdk_keyboard_ungrab(). This overrides any previous keyboard grab by this client.

If you set up anything at the time you take the grab that needs to be cleaned up when the grab ends, you should handle the Gdk::EventGrabBroken events that are emitted when the grab ends unvoluntarily.

Parameters:

  • window (Gdk::Window)

    the Gdk::Window which will own the grab (the grab window).

  • owner_events (TrueClass)

    if false then all keyboard events are reported with respect to window. If true then keyboard events for this application are reported as normal, but keyboard events outside this application are reported with respect to window. Both key press and key release events are always reported, independant of the event mask set by the application.

  • time_ (Integer)

    a timestamp from a Gdk::Event, or %GDK_CURRENT_TIME if no timestamp is available.

Returns:

#keyboard_ungrab(time_) ⇒ nil

Ungrabs the keyboard on the default display, if it is grabbed by this application.

Parameters:

  • time_ (Integer)

    a timestamp from a Gdk::Event, or %GDK_CURRENT_TIME if no timestamp is available.

Returns:

  • (nil)

#keyval_convert_case(symbol, lower, upper) ⇒ nil

Obtains the upper- and lower-case versions of the keyval symbol. Examples of keyvals are #GDK_KEY_a, #GDK_KEY_Enter, #GDK_KEY_F1, etc.

Parameters:

  • symbol (Integer)

    a keyval

  • lower (Integer)

    return location for lowercase version of symbol

  • upper (Integer)

    return location for uppercase version of symbol

Returns:

  • (nil)

#keyval_from_name(keyval_name) ⇒ Integer

Converts a key name to a key value.

The names are the same as those in the ‘gdk/gdkkeysyms.h` header file but without the leading “GDK_KEY_”.

Parameters:

  • keyval_name (String)

    a key name

Returns:

  • (Integer)

    the corresponding key value, or %GDK_KEY_VoidSymbol if the key name is not a valid key

#keyval_is_lower(keyval) ⇒ TrueClass

Returns true if the given key value is in lower case.

Parameters:

  • keyval (Integer)

    a key value.

Returns:

  • (TrueClass)

    true if keyval is in lower case, or if keyval is not subject to case conversion.

#keyval_is_upper(keyval) ⇒ TrueClass

Returns true if the given key value is in upper case.

Parameters:

  • keyval (Integer)

    a key value.

Returns:

  • (TrueClass)

    true if keyval is in upper case, or if keyval is not subject to case conversion.

#keyval_name(keyval) ⇒ String

Converts a key value into a symbolic name.

The names are the same as those in the ‘gdk/gdkkeysyms.h` header file but without the leading “GDK_KEY_”.

Parameters:

  • keyval (Integer)

    a key value

Returns:

  • (String)

    a string containing the name of the key, or nil if keyval is not a valid key. The string should not be modified.

#keyval_to_lower(keyval) ⇒ Integer

Converts a key value to lower case, if applicable.

Parameters:

  • keyval (Integer)

    a key value.

Returns:

  • (Integer)

    the lower case form of keyval, or keyval itself if it is already in lower case or it is not subject to case conversion.

#keyval_to_unicode(keyval) ⇒ Integer

Convert from a GDK key symbol to the corresponding ISO10646 (Unicode) character.

Parameters:

  • keyval (Integer)

    a GDK key symbol

Returns:

  • (Integer)

    the corresponding unicode character, or 0 if there is no corresponding character.

#keyval_to_upper(keyval) ⇒ Integer

Converts a key value to upper case, if applicable.

Parameters:

  • keyval (Integer)

    a key value.

Returns:

  • (Integer)

    the upper case form of keyval, or keyval itself if it is already in upper case or it is not subject to case conversion.

#list_visualsGLib::List

Lists the available visuals for the default screen. (See gdk_screen_list_visuals()) A visual describes a hardware image data format. For example, a visual might support 24-bit color, or 8-bit color, and might expect pixels to be in a certain format.

Call g_list_free() on the return value when you’re finished with it.

Returns:

  • (GLib::List)

    a list of visuals; the list must be freed, but not its contents

#notify_startup_completenil

Indicates to the GUI environment that the application has finished loading. If the applications opens windows, this function is normally called after opening the application’s initial set of windows.

GTK+ will call this function automatically after opening the first Gtk::Window unless gtk_window_set_auto_startup_notification() is called to disable that feature.

Returns:

  • (nil)

#notify_startup_complete_with_id(startup_id) ⇒ nil

Indicates to the GUI environment that the application has finished loading, using a given identifier.

GTK+ will call this function automatically for Gtk::Window with custom startup-notification identifier unless gtk_window_set_auto_startup_notification() is called to disable that feature.

Parameters:

  • startup_id (String)

    a startup-notification identifier, for which notification process should be completed

Returns:

  • (nil)

#offscreen_window_get_embedder(window) ⇒ Gdk::Window

Gets the window that window is embedded in.

Parameters:

Returns:

  • (Gdk::Window)

    the embedding Gdk::Window, or nil if window is not an mbedded offscreen window

#offscreen_window_get_surface(window) ⇒ cairo::Surface

Gets the offscreen surface that an offscreen window renders into. If you need to keep this around over window resizes, you need to add a reference to it.

Parameters:

Returns:

  • (cairo::Surface)

    The offscreen surface, or nil if not offscreen

#offscreen_window_set_embedder(window, embedder) ⇒ nil

Sets window to be embedded in embedder.

To fully embed an offscreen window, in addition to calling this function, it is also necessary to handle the Gdk::Window::pick-embedded-child signal on the embedder and the Gdk::Window::to-embedder and Gdk::Window::from-embedder signals on window.

Parameters:

  • window (Gdk::Window)

    a Gdk::Window

  • embedder (Gdk::Window)

    the Gdk::Window that window gets embedded in

Returns:

  • (nil)

#pango_context_getPango::Context

Creates a Pango::Context for the default GDK screen.

The context must be freed when you’re finished with it.

When using GTK+, normally you should use gtk_widget_get_pango_context() instead of this function, to get the appropriate context for the widget you intend to render text onto.

The newly created context will have the default font options (see #cairo_font_options_t) for the default screen; if these options change it will not be updated. Using gtk_widget_get_pango_context() is more convenient if you want to keep a context around and track changes to the screen’s font rendering settings.

Returns:

#pango_context_get_for_display(display) ⇒ Pango::Context

Creates a Pango::Context for display.

The context must be freed when you’re finished with it.

When using GTK+, normally you should use gtk_widget_get_pango_context() instead of this function, to get the appropriate context for the widget you intend to render text onto.

The newly created context will have the default font options (see #cairo_font_options_t) for the display; if these options change it will not be updated. Using gtk_widget_get_pango_context() is more convenient if you want to keep a context around and track changes to the font rendering settings.

Parameters:

  • display (Gdk::Display)

    the Gdk::Display for which the context is to be created

Returns:

#pango_context_get_for_screen(screen) ⇒ Pango::Context

Creates a Pango::Context for screen.

The context must be freed when you’re finished with it.

When using GTK+, normally you should use gtk_widget_get_pango_context() instead of this function, to get the appropriate context for the widget you intend to render text onto.

The newly created context will have the default font options (see #cairo_font_options_t) for the screen; if these options change it will not be updated. Using gtk_widget_get_pango_context() is more convenient if you want to keep a context around and track changes to the screen’s font rendering settings.

Parameters:

  • screen (Gdk::Screen)

    the Gdk::Screen for which the context is to be created.

Returns:

#pango_layout_get_clip_region(layout, x_origin, y_origin, index_ranges, n_ranges) ⇒ cairo::Region

Obtains a clip region which contains the areas where the given ranges of text would be drawn. x_origin and y_origin are the top left point to center the layout. index_ranges should contain ranges of bytes in the layout’s text.

Note that the regions returned correspond to logical extents of the text ranges, not ink extents. So the drawn layout may in fact touch areas out of the clip region. The clip region is mainly useful for highlightling parts of text, such as when text is selected.

Parameters:

  • layout (Pango::Layout)

    a Pango::Layout

  • x_origin (Integer)

    X pixel where you intend to draw the layout with this clip

  • y_origin (Integer)

    Y pixel where you intend to draw the layout with this clip

  • index_ranges (Integer)

    array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes

  • n_ranges (Integer)

    number of ranges in index_ranges, i.e. half the size of index_ranges

Returns:

  • (cairo::Region)

    a clip region containing the given ranges

#pango_layout_line_get_clip_region(line, x_origin, y_origin, index_ranges, n_ranges) ⇒ cairo::Region

Obtains a clip region which contains the areas where the given ranges of text would be drawn. x_origin and y_origin are the top left position of the layout. index_ranges should contain ranges of bytes in the layout’s text. The clip region will include space to the left or right of the line (to the layout bounding box) if you have indexes above or below the indexes contained inside the line. This is to draw the selection all the way to the side of the layout. However, the clip region is in line coordinates, not layout coordinates.

Note that the regions returned correspond to logical extents of the text ranges, not ink extents. So the drawn line may in fact touch areas out of the clip region. The clip region is mainly useful for highlightling parts of text, such as when text is selected.

Parameters:

  • line (Pango::LayoutLine)

    a Pango::LayoutLine

  • x_origin (Integer)

    X pixel where you intend to draw the layout line with this clip

  • y_origin (Integer)

    baseline pixel where you intend to draw the layout line with this clip

  • index_ranges (Array<Integer>)

    array of byte indexes into the layout, where even members of array are start indexes and odd elements are end indexes

  • n_ranges (Integer)

    number of ranges in index_ranges, i.e. half the size of index_ranges

Returns:

  • (cairo::Region)

    a clip region containing the given ranges

#parse_args(argc, argv) ⇒ nil

Parse command line arguments, and store for future use by calls to gdk_display_open().

Any arguments used by GDK are removed from the array and argc and argv are updated accordingly.

You shouldn’t call this function explicitly if you are using gtk_init(), gtk_init_check(), gdk_init(), or gdk_init_check().

Parameters:

  • argc (Integer)

    the number of command line arguments.

  • argv (Array<String>)

    the array of command line arguments.

Returns:

  • (nil)

#pixbuf_get_from_surface(surface, src_x, src_y, width, height) ⇒ GdkPixbuf::Pixbuf

Transfers image data from a #cairo_surface_t and converts it to an RGB(A) representation inside a Gdk::Pixbuf. This allows you to efficiently read individual pixels from cairo surfaces. For Gdk::Windows, use gdk_pixbuf_get_from_window() instead.

This function will create an RGB pixbuf with 8 bits per channel. The pixbuf will contain an alpha channel if the surface contains one.

Parameters:

  • surface (cairo::Surface)

    surface to copy from

  • src_x (Integer)

    Source X coordinate within surface

  • src_y (Integer)

    Source Y coordinate within surface

  • width (Integer)

    Width in pixels of region to get

  • height (Integer)

    Height in pixels of region to get

Returns:

  • (GdkPixbuf::Pixbuf)

    A newly-created pixbuf with a reference count of 1, or nil on error

#pixbuf_get_from_window(window, src_x, src_y, width, height) ⇒ GdkPixbuf::Pixbuf

Transfers image data from a Gdk::Window and converts it to an RGB(A) representation inside a Gdk::Pixbuf. In other words, copies image data from a server-side drawable to a client-side RGB(A) buffer. This allows you to efficiently read individual pixels on the client side.

This function will create an RGB pixbuf with 8 bits per channel with the size specified by the width and height arguments scaled by the scale factor of window. The pixbuf will contain an alpha channel if the window contains one.

If the window is off the screen, then there is no image data in the obscured/offscreen regions to be placed in the pixbuf. The contents of portions of the pixbuf corresponding to the offscreen region are undefined.

If the window you’re obtaining data from is partially obscured by other windows, then the contents of the pixbuf areas corresponding to the obscured regions are undefined.

If the window is not mapped (typically because it’s iconified/minimized or not on the current workspace), then nil will be returned.

If memory can’t be allocated for the return value, nil will be returned instead.

(In short, there are several ways this function can fail, and if it fails

it returns nil; so check the return value.)

Parameters:

  • window (Gdk::Window)

    Source window

  • src_x (Integer)

    Source X coordinate within window

  • src_y (Integer)

    Source Y coordinate within window

  • width (Integer)

    Width in pixels of region to get

  • height (Integer)

    Height in pixels of region to get

Returns:

  • (GdkPixbuf::Pixbuf)

    A newly-created pixbuf with a reference count of 1, or nil on error

#pointer_grab(window, owner_events, event_mask, confine_to, cursor, time_) ⇒ Gdk::GrabStatus

Grabs the pointer (usually a mouse) so that all events are passed to this application until the pointer is ungrabbed with gdk_pointer_ungrab(), or the grab window becomes unviewable. This overrides any previous pointer grab by this client.

Pointer grabs are used for operations which need complete control over mouse events, even if the mouse leaves the application. For example in GTK+ it is used for Drag and Drop, for dragging the handle in the Gtk::HPaned and #GtkVPaned widgets.

Note that if the event mask of an X window has selected both button press and button release events, then a button press event will cause an automatic pointer grab until the button is released. X does this automatically since most applications expect to receive button press and release events in pairs. It is equivalent to a pointer grab on the window with owner_events set to true.

If you set up anything at the time you take the grab that needs to be cleaned up when the grab ends, you should handle the Gdk::EventGrabBroken events that are emitted when the grab ends unvoluntarily.

Parameters:

  • window (Gdk::Window)

    the Gdk::Window which will own the grab (the grab window).

  • owner_events (TrueClass)

    if false then all pointer events are reported with respect to window and are only reported if selected by event_mask. If true then pointer events for this application are reported as normal, but pointer events outside this application are reported with respect to window and only if selected by event_mask. In either mode, unreported events are discarded.

  • event_mask (Gdk::EventMask)

    specifies the event mask, which is used in accordance with owner_events. Note that only pointer events (i.e. button and motion events) may be selected.

  • confine_to (Gdk::Window)

    If non-nil, the pointer will be confined to this window during the grab. If the pointer is outside confine_to, it will automatically be moved to the closest edge of confine_to and enter and leave events will be generated as necessary.

  • cursor (Gdk::Cursor)

    the cursor to display while the grab is active. If this is nil then the normal cursors are used for window and its descendants, and the cursor for window is used for all other windows.

  • time_ (Integer)

    the timestamp of the event which led to this pointer grab. This usually comes from a Gdk::EventButton struct, though %GDK_CURRENT_TIME can be used if the time isn’t known.

Returns:

#pointer_is_grabbedTrueClass

Returns true if the pointer on the default display is currently grabbed by this application.

Note that this does not take the inmplicit pointer grab on button presses into account.

Returns:

  • (TrueClass)

    true if the pointer is currently grabbed by this application.

#pointer_ungrab(time_) ⇒ nil

Ungrabs the pointer on the default display, if it is grabbed by this application.

Parameters:

  • time_ (Integer)

    a timestamp from a Gdk::Event, or %GDK_CURRENT_TIME if no timestamp is available.

Returns:

  • (nil)

#pre_parse_libgtk_onlynil

Prepare for parsing command line arguments for GDK. This is not public API and should not be used in application code.

Returns:

  • (nil)

#program_classString

Gets the program class. Unless the program class has explicitly been set with gdk_set_program_class() or with the ‘–class` commandline option, the default value is the program name (determined with g_get_prgname()) with the first character converted to uppercase.

Returns:

  • (String)

    the program class.

#program_class=(program_class) ⇒ nil

Sets the program class. The X11 backend uses the program class to set the class name part of the ‘WM_CLASS` property on toplevel windows; see the ICCCM.

The program class can still be overridden with the –class command line option.

Parameters:

  • program_class (String)

    a string.

Returns:

  • (nil)

#property_change(window, property, type, format, mode, data, nelements) ⇒ nil

Changes the contents of a property on a window.

Parameters:

  • window (Gdk::Window)

    a Gdk::Window

  • property (Gdk::Atom)

    the property to change

  • type (Gdk::Atom)

    the new type for the property. If mode is %GDK_PROP_MODE_PREPEND or %GDK_PROP_MODE_APPEND, then this must match the existing type or an error will occur.

  • format (Integer)

    the new format for the property. If mode is %GDK_PROP_MODE_PREPEND or %GDK_PROP_MODE_APPEND, then this must match the existing format or an error will occur.

  • mode (Gdk::PropMode)

    a value describing how the new data is to be combined with the current data.

  • data (Integer)

    the data (a ‘guchar *` `gushort *`, or `gulong *`, depending on format), cast to a `guchar *`.

  • nelements (Integer)

    the number of elements of size determined by the format, contained in data.

Returns:

  • (nil)

#property_delete(window, property) ⇒ nil

Deletes a property from a window.

Parameters:

  • window (Gdk::Window)

    a Gdk::Window

  • property (Gdk::Atom)

    the property to delete

Returns:

  • (nil)

#property_get(window, property, type, offset, length, pdelete, actual_property_type, actual_format, actual_length, data) ⇒ TrueClass

Retrieves a portion of the contents of a property. If the property does not exist, then the function returns false, and %GDK_NONE will be stored in actual_property_type.

The XGetWindowProperty() function that gdk_property_get() uses has a very confusing and complicated set of semantics. Unfortunately, gdk_property_get() makes the situation worse instead of better (the semantics should be considered undefined), and also prints warnings to stderr in cases where it should return a useful error to the program. You are advised to use XGetWindowProperty() directly until a replacement function for gdk_property_get() is provided.

Parameters:

  • window (Gdk::Window)

    a Gdk::Window

  • property (Gdk::Atom)

    the property to retrieve

  • type (Gdk::Atom)

    the desired property type, or %GDK_NONE, if any type of data is acceptable. If this does not match the actual type, then actual_format and actual_length will be filled in, a warning will be printed to stderr and no data will be returned.

  • offset (Gdk::gulong)

    the offset into the property at which to begin retrieving data, in 4 byte units.

  • length (Gdk::gulong)

    the length of the data to retrieve in bytes. Data is considered to be retrieved in 4 byte chunks, so length will be rounded up to the next highest 4 byte boundary (so be careful not to pass a value that might overflow when rounded up).

  • pdelete (Integer)

    if true, delete the property after retrieving the data.

  • actual_property_type (Gdk::Atom)

    location to store the actual type of the property.

  • actual_format (Integer)

    location to store the actual return format of the data; either 8, 16 or 32 bits.

  • actual_length (Integer)

    location to store the length of the retrieved data, in bytes. Data returned in the 32 bit format is stored in a long variable, so the actual number of 32 bit elements should be be calculated via actual_length / sizeof(glong) to ensure portability to 64 bit systems.

  • data (Array<Integer>)

    location to store a pointer to the data. The retrieved data should be freed with g_free() when you are finished using it.

Returns:

  • (TrueClass)

    true if data was successfully received and stored in data, otherwise false.

#query_depths(depths, count) ⇒ nil

This function returns the available bit depths for the default screen. It’s equivalent to listing the visuals (gdk_list_visuals()) and then looking at the depth field in each visual, removing duplicates.

The array returned by this function should not be freed.

Parameters:

  • depths (Array<Integer>)

    return location for available depths

  • count (Integer)

    return location for number of available depths

Returns:

  • (nil)

#query_visual_types(visual_types, count) ⇒ nil

This function returns the available visual types for the default screen. It’s equivalent to listing the visuals (gdk_list_visuals()) and then looking at the type field in each visual, removing duplicates.

The array returned by this function should not be freed.

Parameters:

  • visual_types (Array<Gdk::VisualType>)

    return location for the available visual types

  • count (Integer)

    return location for the number of available visual types

Returns:

  • (nil)

#selection_convert(requestor, selection, target, time_) ⇒ nil

Retrieves the contents of a selection in a given form.

Parameters:

  • requestor (Gdk::Window)

    a Gdk::Window.

  • selection (Gdk::Atom)

    an atom identifying the selection to get the contents of.

  • target (Gdk::Atom)

    the form in which to retrieve the selection.

  • time_ (Integer)

    the timestamp to use when retrieving the selection. The selection owner may refuse the request if it did not own the selection at the time indicated by the timestamp.

Returns:

  • (nil)

#selection_owner_get(selection) ⇒ Gdk::Window

Determines the owner of the given selection.

Parameters:

  • selection (Gdk::Atom)

    an atom indentifying a selection.

Returns:

  • (Gdk::Window)

    if there is a selection owner for this window, and it is a window known to the current process, the Gdk::Window that owns the selection, otherwise nil. Note that the return value may be owned by a different process if a foreign window was previously created for that window, but a new foreign window will never be created by this call.

#selection_owner_get_for_display(display, selection) ⇒ Gdk::Window

Determine the owner of the given selection.

Note that the return value may be owned by a different process if a foreign window was previously created for that window, but a new foreign window will never be created by this call.

Parameters:

  • display (Gdk::Display)

    a Gdk::Display

  • selection (Gdk::Atom)

    an atom indentifying a selection

Returns:

  • (Gdk::Window)

    if there is a selection owner for this window, and it is a window known to the current process, the Gdk::Window that owns the selection, otherwise nil.

#selection_owner_set(owner, selection, time_, send_event) ⇒ TrueClass

Sets the owner of the given selection.

Parameters:

  • owner (Gdk::Window)

    a Gdk::Window or nil to indicate that the the owner for the given should be unset.

  • selection (Gdk::Atom)

    an atom identifying a selection.

  • time_ (Integer)

    timestamp to use when setting the selection. If this is older than the timestamp given last time the owner was set for the given selection, the request will be ignored.

  • send_event (TrueClass)

    if true, and the new owner is different from the current owner, the current owner will be sent a SelectionClear event.

Returns:

  • (TrueClass)

    true if the selection owner was successfully changed to owner, otherwise false.

#selection_owner_set_for_display(display, owner, selection, time_, send_event) ⇒ TrueClass

Sets the Gdk::Window owner as the current owner of the selection selection.

Parameters:

  • display (Gdk::Display)

    the Gdk::Display

  • owner (Gdk::Window)

    a Gdk::Window or nil to indicate that the owner for the given should be unset

  • selection (Gdk::Atom)

    an atom identifying a selection

  • time_ (Integer)

    timestamp to use when setting the selection If this is older than the timestamp given last time the owner was set for the given selection, the request will be ignored

  • send_event (TrueClass)

    if true, and the new owner is different from the current owner, the current owner will be sent a SelectionClear event

Returns:

  • (TrueClass)

    true if the selection owner was successfully changed to owner, otherwise false.

#selection_property_get(requestor, data, prop_type, prop_format) ⇒ Integer

Retrieves selection data that was stored by the selection data in response to a call to gdk_selection_convert(). This function will not be used by applications, who should use the Gtk::Clipboard API instead.

Parameters:

  • requestor (Gdk::Window)

    the window on which the data is stored

  • data (Integer)

    location to store a pointer to the retrieved data. If the retrieval failed, nil we be stored here, otherwise, it will be non-nil and the returned data should be freed with g_free() when you are finished using it. The length of the allocated memory is one more than the length of the returned data, and the final byte will always be zero, to ensure nul-termination of strings

  • prop_type (Gdk::Atom)

    location to store the type of the property

  • prop_format (Integer)

    location to store the format of the property

Returns:

  • (Integer)

    the length of the retrieved data.

#selection_send_notify(requestor, selection, target, property, time_) ⇒ nil

Sends a response to SelectionRequest event.

Parameters:

  • requestor (Gdk::Window)

    window to which to deliver response.

  • selection (Gdk::Atom)

    selection that was requested.

  • target (Gdk::Atom)

    target that was selected.

  • property (Gdk::Atom)

    property in which the selection owner stored the data, or %GDK_NONE to indicate that the request was rejected.

  • time_ (Integer)

    timestamp.

Returns:

  • (nil)

#selection_send_notify_for_display(display, requestor, selection, target, property, time_) ⇒ nil

Send a response to SelectionRequest event.

Parameters:

  • display (Gdk::Display)

    the Gdk::Display where requestor is realized

  • requestor (Gdk::Window)

    window to which to deliver response

  • selection (Gdk::Atom)

    selection that was requested

  • target (Gdk::Atom)

    target that was selected

  • property (Gdk::Atom)

    property in which the selection owner stored the data, or %GDK_NONE to indicate that the request was rejected

  • time_ (Integer)

    timestamp

Returns:

  • (nil)

#setting_get(name, value) ⇒ TrueClass

Obtains a desktop-wide setting, such as the double-click time, for the default screen. See gdk_screen_get_setting().

Parameters:

  • name (String)

    the name of the setting.

  • value (GObject::Value)

    location to store the value of the setting.

Returns:

  • (TrueClass)

    true if the setting existed and a value was stored in value, false otherwise.

#show_eventsTrueClass

Gets whether event debugging output is enabled.

Returns:

  • (TrueClass)

    true if event debugging output is enabled.

#show_events=(show_events) ⇒ nil

Sets whether a trace of received events is output. Note that GTK+ must be compiled with debugging (that is, configured using the ‘–enable-debug` option) to use this option.

Parameters:

  • show_events (TrueClass)

    true to output event debugging information.

Returns:

  • (nil)

#synthesize_window_state(window, unset_flags, set_flags) ⇒ nil

Parameters:

Returns:

  • (nil)

#test_render_sync(window) ⇒ nil

Retrieves a pixel from window to force the windowing system to carry out any pending rendering commands.

This function is intended to be used to synchronize with rendering pipelines, to benchmark windowing system rendering operations.

Parameters:

Returns:

  • (nil)

#test_simulate_button(window, x, y, button, modifiers, button_pressrelease) ⇒ TrueClass

This function is intended to be used in GTK+ test programs. It will warp the mouse pointer to the given (x,y) coordinates within window and simulate a button press or release event. Because the mouse pointer needs to be warped to the target location, use of this function outside of test programs that run in their own virtual windowing system (e.g. Xvfb) is not recommended.

Also, gdk_test_simulate_button() is a fairly low level function, for most testing purposes, gtk_test_widget_click() is the right function to call which will generate a button press event followed by its accompanying button release event.

Parameters:

  • window (Gdk::Window)

    a Gdk::Window to simulate a button event for

  • x (Integer)

    x coordinate within window for the button event

  • y (Integer)

    y coordinate within window for the button event

  • button (Integer)

    Number of the pointer button for the event, usually 1, 2 or 3

  • modifiers (Gdk::ModifierType)

    Keyboard modifiers the event is setup with

  • button_pressrelease (Gdk::EventType)

    either %GDK_BUTTON_PRESS or %GDK_BUTTON_RELEASE

Returns:

  • (TrueClass)

    whether all actions necessary for a button event simulation were carried out successfully

#test_simulate_key(window, x, y, keyval, modifiers, key_pressrelease) ⇒ TrueClass

This function is intended to be used in GTK+ test programs. If (x,y) are > (-1,-1), it will warp the mouse pointer to the given (x,y) coordinates within window and simulate a key press or release event.

When the mouse pointer is warped to the target location, use of this function outside of test programs that run in their own virtual windowing system (e.g. Xvfb) is not recommended. If (x,y) are passed as (-1,-1), the mouse pointer will not be warped and window origin will be used as mouse pointer location for the event.

Also, gdk_test_simulate_key() is a fairly low level function, for most testing purposes, gtk_test_widget_send_key() is the right function to call which will generate a key press event followed by its accompanying key release event.

Parameters:

  • window (Gdk::Window)

    a Gdk::Window to simulate a key event for

  • x (Integer)

    x coordinate within window for the key event

  • y (Integer)

    y coordinate within window for the key event

  • keyval (Integer)

    A GDK keyboard value

  • modifiers (Gdk::ModifierType)

    Keyboard modifiers the event is setup with

  • key_pressrelease (Gdk::EventType)

    either %GDK_KEY_PRESS or %GDK_KEY_RELEASE

Returns:

  • (TrueClass)

    whether all actions necessary for a key event simulation were carried out successfully

#text_property_to_utf8_list_for_display(display, encoding, format, text, length, list) ⇒ Integer

Converts a text property in the given encoding to a list of UTF-8 strings.

Parameters:

  • display (Gdk::Display)

    a Gdk::Display

  • encoding (Gdk::Atom)

    an atom representing the encoding of the text

  • format (Integer)

    the format of the property

  • text (Array<Integer>)

    the text to convert

  • length (Integer)

    the length of text, in bytes

  • list (Array<String>)

    location to store the list of strings or nil. The list should be freed with g_strfreev().

Returns:

  • (Integer)

    the number of strings in the resulting list

#threads_add_idle(function, data) ⇒ Integer

A wrapper for the common usage of gdk_threads_add_idle_full() assigning the default priority, #G_PRIORITY_DEFAULT_IDLE.

See gdk_threads_add_idle_full().

Parameters:

  • function (GLib::SourceFunc)

    function to call

  • data (GObject)

    data to pass to function

Returns:

  • (Integer)

    the ID (greater than 0) of the event source.

#threads_add_idle_full(priority, function, data, notify) ⇒ Integer

Adds a function to be called whenever there are no higher priority events pending. If the function returns false it is automatically removed from the list of event sources and will not be called again.

This variant of g_idle_add_full() calls function with the GDK lock held. It can be thought of a MT-safe version for GTK+ widgets for the following use case, where you have to worry about idle_callback() running in thread A and accessing self after it has been finalized in thread B:

static gboolean
idle_callback (gpointer data)
{
   // gdk_threads_enter(); would be needed for g_idle_add()

   SomeWidget *self = data;
   // do stuff with self

   self->idle_id = 0;

   // gdk_threads_leave(); would be needed for g_idle_add()
   return FALSE;
}

static void
some_widget_do_stuff_later (SomeWidget *self)
{
   self->idle_id = gdk_threads_add_idle (idle_callback, self)
   // using g_idle_add() here would require thread protection in the callback
}

static void
some_widget_finalize (GObject *object)
{
   SomeWidget *self = SOME_WIDGET (object);
   if (self->idle_id)
     g_source_remove (self->idle_id);
   G_OBJECT_CLASS (parent_class)->finalize (object);
}

Parameters:

  • priority (Integer)

    the priority of the idle source. Typically this will be in the range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE

  • function (GLib::SourceFunc)

    function to call

  • data (GObject)

    data to pass to function

  • notify (GLib::DestroyNotify)

    function to call when the idle is removed, or nil

Returns:

  • (Integer)

    the ID (greater than 0) of the event source.

#threads_add_timeout(interval, function, data) ⇒ Integer

A wrapper for the common usage of gdk_threads_add_timeout_full() assigning the default priority, #G_PRIORITY_DEFAULT.

See gdk_threads_add_timeout_full().

Parameters:

  • interval (Integer)

    the time between calls to the function, in milliseconds (1/1000ths of a second)

  • function (GLib::SourceFunc)

    function to call

  • data (GObject)

    data to pass to function

Returns:

  • (Integer)

    the ID (greater than 0) of the event source.

#threads_add_timeout_full(priority, interval, function, data, notify) ⇒ Integer

Sets a function to be called at regular intervals holding the GDK lock, with the given priority. The function is called repeatedly until it returns false, at which point the timeout is automatically destroyed and the function will not be called again. The notify function is called when the timeout is destroyed. The first call to the function will be at the end of the first interval.

Note that timeout functions may be delayed, due to the processing of other event sources. Thus they should not be relied on for precise timing. After each call to the timeout function, the time of the next timeout is recalculated based on the current time and the given interval (it does not try to “catch up” time lost in delays).

This variant of g_timeout_add_full() can be thought of a MT-safe version for GTK+ widgets for the following use case:

static gboolean timeout_callback (gpointer data)
{
   SomeWidget *self = data;

   // do stuff with self

   self->timeout_id = 0;

   return G_SOURCE_REMOVE;
}

static void some_widget_do_stuff_later (SomeWidget *self)
{
   self->timeout_id = g_timeout_add (timeout_callback, self)
}

static void some_widget_finalize (GObject *object)
{
   SomeWidget *self = SOME_WIDGET (object);

   if (self->timeout_id)
     g_source_remove (self->timeout_id);

   G_OBJECT_CLASS (parent_class)->finalize (object);
}

Parameters:

  • priority (Integer)

    the priority of the timeout source. Typically this will be in the range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.

  • interval (Integer)

    the time between calls to the function, in milliseconds (1/1000ths of a second)

  • function (GLib::SourceFunc)

    function to call

  • data (GObject)

    data to pass to function

  • notify (GLib::DestroyNotify)

    function to call when the timeout is removed, or nil

Returns:

  • (Integer)

    the ID (greater than 0) of the event source.

#threads_add_timeout_seconds(interval, function, data) ⇒ Integer

A wrapper for the common usage of gdk_threads_add_timeout_seconds_full() assigning the default priority, #G_PRIORITY_DEFAULT.

For details, see gdk_threads_add_timeout_full().

Parameters:

  • interval (Integer)

    the time between calls to the function, in seconds

  • function (GLib::SourceFunc)

    function to call

  • data (GObject)

    data to pass to function

Returns:

  • (Integer)

    the ID (greater than 0) of the event source.

#threads_add_timeout_seconds_full(priority, interval, function, data, notify) ⇒ Integer

A variant of gdk_threads_add_timeout_full() with second-granularity. See g_timeout_add_seconds_full() for a discussion of why it is a good idea to use this function if you don’t need finer granularity.

Parameters:

  • priority (Integer)

    the priority of the timeout source. Typically this will be in the range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE.

  • interval (Integer)

    the time between calls to the function, in seconds

  • function (GLib::SourceFunc)

    function to call

  • data (GObject)

    data to pass to function

  • notify (GLib::DestroyNotify)

    function to call when the timeout is removed, or nil

Returns:

  • (Integer)

    the ID (greater than 0) of the event source.

#threads_enternil

This function marks the beginning of a critical section in which GDK and GTK+ functions can be called safely and without causing race conditions. Only one thread at a time can be in such a critial section.

Returns:

  • (nil)

#threads_initnil

Initializes GDK so that it can be used from multiple threads in conjunction with gdk_threads_enter() and gdk_threads_leave().

This call must be made before any use of the main loop from GTK+; to be safe, call it before gtk_init().

Returns:

  • (nil)

#threads_leavenil

Leaves a critical region begun with gdk_threads_enter().

Returns:

  • (nil)

#threads_set_lock_functions(enter_fn, leave_fn) ⇒ nil

Allows the application to replace the standard method that GDK uses to protect its data structures. Normally, GDK creates a single #GMutex that is locked by gdk_threads_enter(), and released by gdk_threads_leave(); using this function an application provides, instead, a function enter_fn that is called by gdk_threads_enter() and a function leave_fn that is called by gdk_threads_leave().

The functions must provide at least same locking functionality as the default implementation, but can also do extra application specific processing.

As an example, consider an application that has its own recursive lock that when held, holds the GTK+ lock as well. When GTK+ unlocks the GTK+ lock when entering a recursive main loop, the application must temporarily release its lock as well.

Most threaded GTK+ apps won’t need to use this method.

This method must be called before gdk_threads_init(), and cannot be called multiple times.

Parameters:

  • enter_fn (GObject::Callback)

    function called to guard GDK

  • leave_fn (GObject::Callback)

    function called to release the guard

Returns:

  • (nil)

#unicode_to_keyval(wc) ⇒ Integer

Convert from a ISO10646 character to a key symbol.

Parameters:

  • wc (Integer)

    a ISO10646 encoded character

Returns:

  • (Integer)

    the corresponding GDK key symbol, if one exists. or, if there is no corresponding symbol, wc | 0x01000000

#utf8_to_string_target(str) ⇒ String

Converts an UTF-8 string into the best possible representation as a STRING. The representation of characters not in STRING is not specified; it may be as pseudo-escape sequences xABCD, or it may be in some other form of approximation.

Parameters:

  • str (String)

    a UTF-8 string

Returns:

  • (String)

    the newly-allocated string, or nil if the conversion failed. (It should not fail for any properly formed UTF-8 string unless system limits like memory or file descriptors are exceeded.)