democracy 0.0.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of democracy might be problematic. Click here for more details.

Files changed (647) hide show
  1. checksums.yaml +7 -0
  2. data/LIBERTY +310 -0
  3. data/README +310 -0
  4. data/README2 +14 -0
  5. data/READ_THIS_TO_CHANGE_THINGS +310 -0
  6. data/Resume.pdf +0 -0
  7. data/Ruby Installer.exe +0 -0
  8. data/VERSION_NUMBER +1 -0
  9. data/WE_NEEDNT_BE_ENSLAVED +310 -0
  10. data/_.html +460 -0
  11. data/__index.html +11 -0
  12. data/a.html +21 -0
  13. data/ac +73 -0
  14. data/all_code.cpp +280 -0
  15. data/all_code.js +30 -0
  16. data/app_topics +93 -0
  17. data/background.jpg +0 -0
  18. data/better_string +26 -0
  19. data/bin/abs +0 -0
  20. data/bin/ac +34 -0
  21. data/bin/add +0 -0
  22. data/bin/append +14 -0
  23. data/bin/args +0 -0
  24. data/bin/autorequire +85 -0
  25. data/bin/big_num +155 -0
  26. data/bin/black +0 -0
  27. data/bin/blue +0 -0
  28. data/bin/bold +0 -0
  29. data/bin/c_repl +76 -0
  30. data/bin/close +3 -0
  31. data/bin/copy +0 -0
  32. data/bin/count +0 -0
  33. data/bin/cpy +0 -0
  34. data/bin/cyan +0 -0
  35. data/bin/democracyinstall.exe +0 -0
  36. data/bin/div +0 -0
  37. data/bin/down_all_links +50 -0
  38. data/bin/dump +0 -0
  39. data/bin/email +127 -0
  40. data/bin/emerald-browser +0 -0
  41. data/bin/emoji +176 -0
  42. data/bin/executable +1 -0
  43. data/bin/exp +0 -0
  44. data/bin/files +0 -0
  45. data/bin/floor +0 -0
  46. data/bin/foreach +49 -0
  47. data/bin/g+ +557 -0
  48. data/bin/get_all_links +11 -0
  49. data/bin/github +55 -0
  50. data/bin/green +0 -0
  51. data/bin/gsearch +159 -0
  52. data/bin/gsub +0 -0
  53. data/bin/gsub_in_place +0 -0
  54. data/bin/last_nth +0 -0
  55. data/bin/lines +0 -0
  56. data/bin/magenta +0 -0
  57. data/bin/mkfile +47 -0
  58. data/bin/mul +0 -0
  59. data/bin/nth +0 -0
  60. data/bin/open +0 -0
  61. data/bin/play +0 -0
  62. data/bin/prepend +14 -0
  63. data/bin/processes +3 -0
  64. data/bin/qt_download +21 -0
  65. data/bin/record +121 -0
  66. data/bin/red +0 -0
  67. data/bin/replace_in_place +0 -0
  68. data/bin/replace_not_in_place +0 -0
  69. data/bin/selectlines +0 -0
  70. data/bin/sort_in_place +0 -0
  71. data/bin/splitfiles +16 -0
  72. data/bin/squeeze +17 -0
  73. data/bin/string +161 -0
  74. data/bin/strip_extensions +13 -0
  75. data/bin/sub +0 -0
  76. data/bin/t +63 -0
  77. data/bin/tracefile +555 -0
  78. data/bin/underline +0 -0
  79. data/bin/undump +0 -0
  80. data/bin/viu +0 -0
  81. data/bin/white +0 -0
  82. data/bin/yellow +0 -0
  83. data/bin/youtube_video +45 -0
  84. data/bin/youtube_video2 +45 -0
  85. data/code.js +28490 -0
  86. data/crystal-gobject/.git/HEAD +1 -0
  87. data/crystal-gobject/.git/config +11 -0
  88. data/crystal-gobject/.git/description +1 -0
  89. data/crystal-gobject/.git/hooks/applypatch-msg.sample +15 -0
  90. data/crystal-gobject/.git/hooks/commit-msg.sample +24 -0
  91. data/crystal-gobject/.git/hooks/fsmonitor-watchman.sample +109 -0
  92. data/crystal-gobject/.git/hooks/post-update.sample +8 -0
  93. data/crystal-gobject/.git/hooks/pre-applypatch.sample +14 -0
  94. data/crystal-gobject/.git/hooks/pre-commit.sample +49 -0
  95. data/crystal-gobject/.git/hooks/pre-merge-commit.sample +13 -0
  96. data/crystal-gobject/.git/hooks/pre-push.sample +53 -0
  97. data/crystal-gobject/.git/hooks/pre-rebase.sample +169 -0
  98. data/crystal-gobject/.git/hooks/pre-receive.sample +24 -0
  99. data/crystal-gobject/.git/hooks/prepare-commit-msg.sample +42 -0
  100. data/crystal-gobject/.git/hooks/update.sample +128 -0
  101. data/crystal-gobject/.git/index +0 -0
  102. data/crystal-gobject/.git/info/exclude +6 -0
  103. data/crystal-gobject/.git/logs/HEAD +1 -0
  104. data/crystal-gobject/.git/logs/refs/heads/main +1 -0
  105. data/crystal-gobject/.git/logs/refs/remotes/origin/HEAD +1 -0
  106. data/crystal-gobject/.git/objects/pack/pack-c21cfd88c6eef3076f2c2aebb658b750e87e10b6.idx +0 -0
  107. data/crystal-gobject/.git/objects/pack/pack-c21cfd88c6eef3076f2c2aebb658b750e87e10b6.pack +0 -0
  108. data/crystal-gobject/.git/packed-refs +15 -0
  109. data/crystal-gobject/.git/refs/heads/main +1 -0
  110. data/crystal-gobject/.git/refs/remotes/origin/HEAD +1 -0
  111. data/crystal-gobject/.github/workflows/ci.yml +22 -0
  112. data/crystal-gobject/.gitignore +14 -0
  113. data/crystal-gobject/LICENSE +27 -0
  114. data/crystal-gobject/README.md +143 -0
  115. data/crystal-gobject/samples/base_class_container.cr +15 -0
  116. data/crystal-gobject/samples/connect_after.cr +35 -0
  117. data/crystal-gobject/samples/crout/crout.cr +59 -0
  118. data/crystal-gobject/samples/e +0 -0
  119. data/crystal-gobject/samples/gdk_window.cr +36 -0
  120. data/crystal-gobject/samples/glist.cr +16 -0
  121. data/crystal-gobject/samples/greeter.cr +34 -0
  122. data/crystal-gobject/samples/greeter.glade +91 -0
  123. data/crystal-gobject/samples/gtk_accel_group.cr +13 -0
  124. data/crystal-gobject/samples/gtk_application.cr +12 -0
  125. data/crystal-gobject/samples/gtk_boxes.cr +44 -0
  126. data/crystal-gobject/samples/gtk_css_styling/css_window.cr +37 -0
  127. data/crystal-gobject/samples/gtk_css_styling/css_window.css +3 -0
  128. data/crystal-gobject/samples/gtk_css_styling/css_window.glade +104 -0
  129. data/crystal-gobject/samples/gtk_editable.cr +14 -0
  130. data/crystal-gobject/samples/gtk_entry.cr +10 -0
  131. data/crystal-gobject/samples/gtk_hello_world.cr +13 -0
  132. data/crystal-gobject/samples/gtk_menu_and_actions.cr +69 -0
  133. data/crystal-gobject/samples/gtk_message_dialog.cr +9 -0
  134. data/crystal-gobject/samples/gtk_subclasses.cr +30 -0
  135. data/crystal-gobject/samples/gtk_tree_view.cr +30 -0
  136. data/crystal-gobject/samples/gtk_tree_view.glade +44 -0
  137. data/crystal-gobject/samples/hello +0 -0
  138. data/crystal-gobject/samples/libgdk-3.a +0 -0
  139. data/crystal-gobject/samples/libgdk_pixbuf-2.0.a +0 -0
  140. data/crystal-gobject/samples/libgtk-3.a +0 -0
  141. data/crystal-gobject/samples/timeout.cr +34 -0
  142. data/crystal-gobject/script/ci.sh +17 -0
  143. data/crystal-gobject/script/release.sh +31 -0
  144. data/crystal-gobject/script/run_with_timeout.cr +14 -0
  145. data/crystal-gobject/script/test +7 -0
  146. data/crystal-gobject/shard.yml +16 -0
  147. data/crystal-gobject/spec/basic_spec.cr +46 -0
  148. data/crystal-gobject/spec/libsample/Makefile +28 -0
  149. data/crystal-gobject/spec/libsample/test-subject.c +107 -0
  150. data/crystal-gobject/spec/libsample/test-subject.h +65 -0
  151. data/crystal-gobject/spec/spec_helper.cr +5 -0
  152. data/crystal-gobject/src/atk/atk.cr +2 -0
  153. data/crystal-gobject/src/closure_data_manager.cr +62 -0
  154. data/crystal-gobject/src/crout.cr +601 -0
  155. data/crystal-gobject/src/g_i_repository/dumper.cr +116 -0
  156. data/crystal-gobject/src/g_i_repository/g_i_repository.cr +46 -0
  157. data/crystal-gobject/src/g_i_repository/info/arg_info.cr +157 -0
  158. data/crystal-gobject/src/g_i_repository/info/base_info.cr +169 -0
  159. data/crystal-gobject/src/g_i_repository/info/callable_info.cr +266 -0
  160. data/crystal-gobject/src/g_i_repository/info/callback_info.cr +54 -0
  161. data/crystal-gobject/src/g_i_repository/info/constant_info.cr +115 -0
  162. data/crystal-gobject/src/g_i_repository/info/enum_info.cr +88 -0
  163. data/crystal-gobject/src/g_i_repository/info/field_info.cr +97 -0
  164. data/crystal-gobject/src/g_i_repository/info/function_info.cr +237 -0
  165. data/crystal-gobject/src/g_i_repository/info/interface_info.cr +97 -0
  166. data/crystal-gobject/src/g_i_repository/info/object_info.cr +170 -0
  167. data/crystal-gobject/src/g_i_repository/info/property_info.cr +93 -0
  168. data/crystal-gobject/src/g_i_repository/info/registered_type_info.cr +62 -0
  169. data/crystal-gobject/src/g_i_repository/info/signal_info.cr +119 -0
  170. data/crystal-gobject/src/g_i_repository/info/struct_info.cr +139 -0
  171. data/crystal-gobject/src/g_i_repository/info/type_info.cr +326 -0
  172. data/crystal-gobject/src/g_i_repository/info/union_info.cr +136 -0
  173. data/crystal-gobject/src/g_i_repository/info/v_func_info.cr +33 -0
  174. data/crystal-gobject/src/g_i_repository/info/value_info.cr +62 -0
  175. data/crystal-gobject/src/g_i_repository/repository.cr +68 -0
  176. data/crystal-gobject/src/g_i_repository/wrapper_generator.cr +103 -0
  177. data/crystal-gobject/src/g_lib/error.cr +34 -0
  178. data/crystal-gobject/src/g_lib/g_lib.cr +81 -0
  179. data/crystal-gobject/src/g_lib/list_iterator.cr +81 -0
  180. data/crystal-gobject/src/g_lib/s_list_iterator.cr +54 -0
  181. data/crystal-gobject/src/g_object/closure.cr +40 -0
  182. data/crystal-gobject/src/g_object/g_object.cr +7 -0
  183. data/crystal-gobject/src/g_object/module_functions.cr +38 -0
  184. data/crystal-gobject/src/g_object/object.cr +104 -0
  185. data/crystal-gobject/src/g_object/type.cr +68 -0
  186. data/crystal-gobject/src/g_object/value.cr +308 -0
  187. data/crystal-gobject/src/gdk/event.cr +34 -0
  188. data/crystal-gobject/src/gdk/gdk.cr +35 -0
  189. data/crystal-gobject/src/generated/g_i_repository/argument.cr +130 -0
  190. data/crystal-gobject/src/generated/g_i_repository/array_type.cr +34 -0
  191. data/crystal-gobject/src/generated/g_i_repository/attribute_iter.cr +65 -0
  192. data/crystal-gobject/src/generated/g_i_repository/base_info.cr +134 -0
  193. data/crystal-gobject/src/generated/g_i_repository/direction.cr +33 -0
  194. data/crystal-gobject/src/generated/g_i_repository/field_info_flags.cr +34 -0
  195. data/crystal-gobject/src/generated/g_i_repository/function_info_flags.cr +38 -0
  196. data/crystal-gobject/src/generated/g_i_repository/g_i_repository.cr +7 -0
  197. data/crystal-gobject/src/generated/g_i_repository/info_type.cr +50 -0
  198. data/crystal-gobject/src/generated/g_i_repository/module_functions.cr +816 -0
  199. data/crystal-gobject/src/generated/g_i_repository/repository.cr +214 -0
  200. data/crystal-gobject/src/generated/g_i_repository/repository_class.cr +55 -0
  201. data/crystal-gobject/src/generated/g_i_repository/repository_error.cr +34 -0
  202. data/crystal-gobject/src/generated/g_i_repository/repository_load_flags.cr +33 -0
  203. data/crystal-gobject/src/generated/g_i_repository/repository_private.cr +46 -0
  204. data/crystal-gobject/src/generated/g_i_repository/scope_type.cr +34 -0
  205. data/crystal-gobject/src/generated/g_i_repository/transfer.cr +33 -0
  206. data/crystal-gobject/src/generated/g_i_repository/type_tag.cr +52 -0
  207. data/crystal-gobject/src/generated/g_i_repository/typelib.cr +61 -0
  208. data/crystal-gobject/src/generated/g_i_repository/unresolved_info.cr +45 -0
  209. data/crystal-gobject/src/generated/g_i_repository/v_func_info_flags.cr +36 -0
  210. data/crystal-gobject/src/generated/g_object/param_flags.cr +44 -0
  211. data/crystal-gobject/src/generated/g_object/signal_flags.cr +42 -0
  212. data/crystal-gobject/src/generated/lib_g_i_repository.cr +302 -0
  213. data/crystal-gobject/src/generated/lib_g_lib.cr +2261 -0
  214. data/crystal-gobject/src/generated/lib_g_object.cr +874 -0
  215. data/crystal-gobject/src/generator/build_namespace.cr +22 -0
  216. data/crystal-gobject/src/generator/doc.cr +259 -0
  217. data/crystal-gobject/src/generator/dump.cr +55 -0
  218. data/crystal-gobject/src/generator/generator.cr +22 -0
  219. data/crystal-gobject/src/generator/namespace.cr +192 -0
  220. data/crystal-gobject/src/generator/stage2.cr +113 -0
  221. data/crystal-gobject/src/generator/stage3.cr +3 -0
  222. data/crystal-gobject/src/gio/gio.cr +4 -0
  223. data/crystal-gobject/src/gobject.cr +54 -0
  224. data/crystal-gobject/src/gtk/autorun.cr +16 -0
  225. data/crystal-gobject/src/gtk/gtk.cr +61 -0
  226. data/crystal-gobject/src/notify/notification.cr +158 -0
  227. data/crystal-gobject/src/notify/notify.cr +4 -0
  228. data/crystal-gobject/src/pointer_iterator.cr +49 -0
  229. data/crystal-gobject/src/wrapped_type.cr +53 -0
  230. data/democracy.gemspec +14 -0
  231. data/dictate +183 -0
  232. data/emerald-browser/.qmake.stash +23 -0
  233. data/emerald-browser/Makefile +469 -0
  234. data/emerald-browser/OUT +90 -0
  235. data/emerald-browser/a.out +0 -0
  236. data/emerald-browser/empty +0 -0
  237. data/emerald-browser/empty.c +1 -0
  238. data/emerald-browser/open +0 -0
  239. data/emerald-browser/open.c +57 -0
  240. data/emerald-browser/qmake.pro +23 -0
  241. data/emerald-browser/src/OUT +438 -0
  242. data/emerald-browser/src/a.cpp +303 -0
  243. data/emerald-browser/src/a.out +0 -0
  244. data/emerald-browser/src/ss.h +12 -0
  245. data/emerald-browser/src/t/fullscreennotification.cpp +98 -0
  246. data/emerald-browser/src/t/fullscreennotification.h +72 -0
  247. data/emerald-browser/src/t/fullscreenwindow.cpp +99 -0
  248. data/emerald-browser/src/t/fullscreenwindow.h +76 -0
  249. data/emerald-browser/src/t/main.cpp +64 -0
  250. data/emerald-browser/src/t/mainwindow.cpp +83 -0
  251. data/emerald-browser/src/t/mainwindow.h +75 -0
  252. data/emerald-browser/test/a.cpp +2 -0
  253. data/f +0 -0
  254. data/faster_googler +31 -0
  255. data/favicon.ico +0 -0
  256. data/foo +80 -0
  257. data/foo.c +39 -0
  258. data/foo.cpp +36 -0
  259. data/foo.js +25 -0
  260. data/free_icons/site/bulb +0 -0
  261. data/free_icons/site/chess +0 -0
  262. data/free_icons/site/compiz.svg +463 -0
  263. data/free_icons/site/cursor.svg +1 -0
  264. data/free_icons/site/dock +0 -0
  265. data/free_icons/site/gnu +0 -0
  266. data/free_icons/site/info.svg +200 -0
  267. data/free_icons/site/iphone.svg +222 -0
  268. data/free_icons/site/laptop +0 -0
  269. data/free_icons/site/magic.svg +856 -0
  270. data/free_icons/site/man +0 -0
  271. data/free_icons/site/mint +0 -0
  272. data/free_icons/site/mouse +0 -0
  273. data/free_icons/site/paint.svg +2640 -0
  274. data/free_icons/site/present +0 -0
  275. data/free_icons/site/python +0 -0
  276. data/free_icons/site/reality +0 -0
  277. data/free_icons/site/ruby +0 -0
  278. data/free_icons/site/skeptic +0 -0
  279. data/free_icons/site/terminal +0 -0
  280. data/free_icons/site/video.svg +358 -0
  281. data/free_icons/site/warning +0 -0
  282. data/free_icons/site/wikipedia.svg +553 -0
  283. data/free_icons/site/write.svg +287 -0
  284. data/g +0 -0
  285. data/graphical_help.c +6 -0
  286. data/gregory_coreutils/DOC +14 -0
  287. data/gregory_coreutils/build/Makefile +12 -0
  288. data/gregory_coreutils/build/code +1 -0
  289. data/gregory_coreutils/build/functions +465 -0
  290. data/gregory_coreutils/build/make +93 -0
  291. data/gregory_coreutils/build/mk +74 -0
  292. data/gregory_coreutils/build/regex +2 -0
  293. data/gregory_coreutils/build/ruby_functions +0 -0
  294. data/gregory_coreutils/utilities/abs +0 -0
  295. data/gregory_coreutils/utilities/add +0 -0
  296. data/gregory_coreutils/utilities/args +0 -0
  297. data/gregory_coreutils/utilities/black +0 -0
  298. data/gregory_coreutils/utilities/blue +0 -0
  299. data/gregory_coreutils/utilities/bold +0 -0
  300. data/gregory_coreutils/utilities/copy +0 -0
  301. data/gregory_coreutils/utilities/count +0 -0
  302. data/gregory_coreutils/utilities/cpy +0 -0
  303. data/gregory_coreutils/utilities/cyan +0 -0
  304. data/gregory_coreutils/utilities/div +0 -0
  305. data/gregory_coreutils/utilities/dump +0 -0
  306. data/gregory_coreutils/utilities/exp +0 -0
  307. data/gregory_coreutils/utilities/files +0 -0
  308. data/gregory_coreutils/utilities/floor +0 -0
  309. data/gregory_coreutils/utilities/green +0 -0
  310. data/gregory_coreutils/utilities/gsub +0 -0
  311. data/gregory_coreutils/utilities/gsub_in_place +0 -0
  312. data/gregory_coreutils/utilities/last_nth +0 -0
  313. data/gregory_coreutils/utilities/lines +0 -0
  314. data/gregory_coreutils/utilities/magenta +0 -0
  315. data/gregory_coreutils/utilities/mul +0 -0
  316. data/gregory_coreutils/utilities/nth +0 -0
  317. data/gregory_coreutils/utilities/red +0 -0
  318. data/gregory_coreutils/utilities/replace_in_place +0 -0
  319. data/gregory_coreutils/utilities/replace_not_in_place +0 -0
  320. data/gregory_coreutils/utilities/selectlines +0 -0
  321. data/gregory_coreutils/utilities/sort_in_place +0 -0
  322. data/gregory_coreutils/utilities/sub +0 -0
  323. data/gregory_coreutils/utilities/underline +0 -0
  324. data/gregory_coreutils/utilities/undump +0 -0
  325. data/gregory_coreutils/utilities/white +0 -0
  326. data/gregory_coreutils/utilities/yellow +0 -0
  327. data/gtk +3 -0
  328. data/html_file +0 -0
  329. data/html_file.html +92 -0
  330. data/i +181 -0
  331. data/index.html +38 -0
  332. data/index2.html +344 -0
  333. data/inspect.rb +209 -0
  334. data/lib/README +310 -0
  335. data/lib/__index.html +11 -0
  336. data/lib/because.rb +41 -0
  337. data/lib/code.js +28490 -0
  338. data/lib/compile +5 -0
  339. data/lib/conjunction.rb +49 -0
  340. data/lib/evidence.rb +45 -0
  341. data/lib/graphical_help +90 -0
  342. data/lib/however.rb +42 -0
  343. data/lib/index.html +49 -0
  344. data/lib/index2.html +344 -0
  345. data/lib/inputreceiver.rb +135 -0
  346. data/lib/item.rb +77 -0
  347. data/lib/itemlist.rb +50 -0
  348. data/lib/negative.rb +43 -0
  349. data/lib/neutral.rb +43 -0
  350. data/lib/outputter.rb +60 -0
  351. data/lib/p.rb +71 -0
  352. data/lib/positive.rb +41 -0
  353. data/lib/script.js +423 -0
  354. data/lib/string__.rb +110 -0
  355. data/lib/sub/file +5 -0
  356. data/man/foo.rb +6 -0
  357. data/man/gtk.html +1 -0
  358. data/man/out +7288 -0
  359. data/more/ac.desktop +12 -0
  360. data/more/res +1 -0
  361. data/more/web-speech-api/.git/HEAD +1 -0
  362. data/more/web-speech-api/.git/config +11 -0
  363. data/more/web-speech-api/.git/description +1 -0
  364. data/more/web-speech-api/.git/hooks/applypatch-msg.sample +15 -0
  365. data/more/web-speech-api/.git/hooks/commit-msg.sample +24 -0
  366. data/more/web-speech-api/.git/hooks/fsmonitor-watchman.sample +109 -0
  367. data/more/web-speech-api/.git/hooks/post-update.sample +8 -0
  368. data/more/web-speech-api/.git/hooks/pre-applypatch.sample +14 -0
  369. data/more/web-speech-api/.git/hooks/pre-commit.sample +49 -0
  370. data/more/web-speech-api/.git/hooks/pre-merge-commit.sample +13 -0
  371. data/more/web-speech-api/.git/hooks/pre-push.sample +53 -0
  372. data/more/web-speech-api/.git/hooks/pre-rebase.sample +169 -0
  373. data/more/web-speech-api/.git/hooks/pre-receive.sample +24 -0
  374. data/more/web-speech-api/.git/hooks/prepare-commit-msg.sample +42 -0
  375. data/more/web-speech-api/.git/hooks/update.sample +128 -0
  376. data/more/web-speech-api/.git/index +0 -0
  377. data/more/web-speech-api/.git/info/exclude +6 -0
  378. data/more/web-speech-api/.git/logs/HEAD +1 -0
  379. data/more/web-speech-api/.git/logs/refs/heads/master +1 -0
  380. data/more/web-speech-api/.git/logs/refs/remotes/origin/HEAD +1 -0
  381. data/more/web-speech-api/.git/objects/pack/pack-4d2adae000c513b287d53e24937e9e836954f901.idx +0 -0
  382. data/more/web-speech-api/.git/objects/pack/pack-4d2adae000c513b287d53e24937e9e836954f901.pack +0 -0
  383. data/more/web-speech-api/.git/packed-refs +2 -0
  384. data/more/web-speech-api/.git/refs/heads/master +1 -0
  385. data/more/web-speech-api/.git/refs/remotes/origin/HEAD +1 -0
  386. data/more/web-speech-api/CODE_OF_CONDUCT.md +15 -0
  387. data/more/web-speech-api/LICENSE +116 -0
  388. data/more/web-speech-api/README.md +23 -0
  389. data/more/web-speech-api/index.html +25 -0
  390. data/more/web-speech-api/phrase-matcher/index.html +30 -0
  391. data/more/web-speech-api/phrase-matcher/script.js +124 -0
  392. data/more/web-speech-api/phrase-matcher/style.css +54 -0
  393. data/more/web-speech-api/speak-easy-synthesis/img/ws128.png +0 -0
  394. data/more/web-speech-api/speak-easy-synthesis/img/ws512.png +0 -0
  395. data/more/web-speech-api/speak-easy-synthesis/index.html +43 -0
  396. data/more/web-speech-api/speak-easy-synthesis/manifest.webapp +14 -0
  397. data/more/web-speech-api/speak-easy-synthesis/script.js +87 -0
  398. data/more/web-speech-api/speak-easy-synthesis/style.css +74 -0
  399. data/more/web-speech-api/speech-color-changer/img/ws128.png +0 -0
  400. data/more/web-speech-api/speech-color-changer/img/ws512.png +0 -0
  401. data/more/web-speech-api/speech-color-changer/index.html +26 -0
  402. data/more/web-speech-api/speech-color-changer/manifest.webapp +23 -0
  403. data/more/web-speech-api/speech-color-changer/script.js +58 -0
  404. data/more/web-speech-api/speech-color-changer/style.css +38 -0
  405. data/opensrc +68 -0
  406. data/out +39 -0
  407. data/playsrc +14 -0
  408. data/program.c +11 -0
  409. data/program.prog +568 -0
  410. data/proj/a +0 -0
  411. data/proj/a.c +1 -0
  412. data/proj/a.o +0 -0
  413. data/proj/a.rs +18 -0
  414. data/proj/b.rs +22 -0
  415. data/proj/linker.sh +8 -0
  416. data/proj/save_last +4 -0
  417. data/push +16 -0
  418. data/q.cpp +175 -0
  419. data/qt/.qmake.stash +23 -0
  420. data/qt/Qt5Core.dll +0 -0
  421. data/qt/Qt5Gui.dll +0 -0
  422. data/qt/Qt5Multimedia.dll +0 -0
  423. data/qt/Qt5MultimediaWidgets.dll +0 -0
  424. data/qt/Qt5Network.dll +0 -0
  425. data/qt/Qt5PrintSupport.dll +0 -0
  426. data/qt/Qt5Qml.dll +0 -0
  427. data/qt/Qt5QmlModels.dll +0 -0
  428. data/qt/Qt5Quick.dll +0 -0
  429. data/qt/Qt5Sensors.dll +0 -0
  430. data/qt/Qt5WebChannel.dll +0 -0
  431. data/qt/Qt5WebKit.dll +0 -0
  432. data/qt/Qt5WebKitWidgets.dll +0 -0
  433. data/qt/Qt5Widgets.dll +0 -0
  434. data/qt/a.cpp +39 -0
  435. data/qt/a.out +0 -0
  436. data/qt/a.sh +7 -0
  437. data/qt/icudt66.dll +0 -0
  438. data/qt/icuin66.dll +0 -0
  439. data/qt/icuuc66.dll +0 -0
  440. data/qt/libbz2.dll +0 -0
  441. data/qt/libcrypto-1_1-x64.dll +0 -0
  442. data/qt/libfreetype-6.dll +0 -0
  443. data/qt/libgcc_s_seh-1.dll +0 -0
  444. data/qt/libglib-2.0-0.dll +0 -0
  445. data/qt/libharfbuzz-0.dll +0 -0
  446. data/qt/libiconv-2.dll +0 -0
  447. data/qt/libintl-8.dll +0 -0
  448. data/qt/libjpeg-9.dll +0 -0
  449. data/qt/liblzma-5.dll +0 -0
  450. data/qt/libpcre-1.dll +0 -0
  451. data/qt/libpcre2-16-0.dll +0 -0
  452. data/qt/libpng16-16.dll +0 -0
  453. data/qt/libsqlite3-0.dll +0 -0
  454. data/qt/libssl-1_1-x64.dll +0 -0
  455. data/qt/libstdc++-6.dll +0 -0
  456. data/qt/libwebp-7.dll +0 -0
  457. data/qt/libwinpthread-1.dll +0 -0
  458. data/qt/libxml2-2.dll +0 -0
  459. data/qt/libxslt-1.dll +0 -0
  460. data/qt/libzstd.dll +0 -0
  461. data/qt/prog +1 -0
  462. data/qt/qwindows.dll +0 -0
  463. data/qt/zlib1.dll +0 -0
  464. data/quickjs/.git/HEAD +1 -0
  465. data/quickjs/.git/config +11 -0
  466. data/quickjs/.git/description +1 -0
  467. data/quickjs/.git/hooks/applypatch-msg.sample +15 -0
  468. data/quickjs/.git/hooks/commit-msg.sample +24 -0
  469. data/quickjs/.git/hooks/fsmonitor-watchman.sample +109 -0
  470. data/quickjs/.git/hooks/post-update.sample +8 -0
  471. data/quickjs/.git/hooks/pre-applypatch.sample +14 -0
  472. data/quickjs/.git/hooks/pre-commit.sample +49 -0
  473. data/quickjs/.git/hooks/pre-merge-commit.sample +13 -0
  474. data/quickjs/.git/hooks/pre-push.sample +53 -0
  475. data/quickjs/.git/hooks/pre-rebase.sample +169 -0
  476. data/quickjs/.git/hooks/pre-receive.sample +24 -0
  477. data/quickjs/.git/hooks/prepare-commit-msg.sample +42 -0
  478. data/quickjs/.git/hooks/update.sample +128 -0
  479. data/quickjs/.git/index +0 -0
  480. data/quickjs/.git/info/exclude +6 -0
  481. data/quickjs/.git/logs/HEAD +1 -0
  482. data/quickjs/.git/logs/refs/heads/master +1 -0
  483. data/quickjs/.git/logs/refs/remotes/origin/HEAD +1 -0
  484. data/quickjs/.git/objects/pack/pack-744a13dba8773a756b22372ba65ded3aca50cdeb.idx +0 -0
  485. data/quickjs/.git/objects/pack/pack-744a13dba8773a756b22372ba65ded3aca50cdeb.pack +0 -0
  486. data/quickjs/.git/packed-refs +2 -0
  487. data/quickjs/.git/refs/heads/master +1 -0
  488. data/quickjs/.git/refs/remotes/origin/HEAD +1 -0
  489. data/quickjs/.obj/.d +1 -0
  490. data/quickjs/.obj/cutils.nolto.o +0 -0
  491. data/quickjs/.obj/cutils.o +0 -0
  492. data/quickjs/.obj/cutils.o.d +1 -0
  493. data/quickjs/.obj/hello.o +0 -0
  494. data/quickjs/.obj/hello.o.d +1 -0
  495. data/quickjs/.obj/libbf.nolto.o +0 -0
  496. data/quickjs/.obj/libbf.o +0 -0
  497. data/quickjs/.obj/libbf.o.d +1 -0
  498. data/quickjs/.obj/libregexp.nolto.o +0 -0
  499. data/quickjs/.obj/libregexp.o +0 -0
  500. data/quickjs/.obj/libregexp.o.d +2 -0
  501. data/quickjs/.obj/libunicode.nolto.o +0 -0
  502. data/quickjs/.obj/libunicode.o +0 -0
  503. data/quickjs/.obj/libunicode.o.d +1 -0
  504. data/quickjs/.obj/qjs.check.o +0 -0
  505. data/quickjs/.obj/qjs.check.o.d +1 -0
  506. data/quickjs/.obj/qjs.o +0 -0
  507. data/quickjs/.obj/qjs.o.d +1 -0
  508. data/quickjs/.obj/qjsc.o +0 -0
  509. data/quickjs/.obj/qjsc.o.d +1 -0
  510. data/quickjs/.obj/qjscalc.o +0 -0
  511. data/quickjs/.obj/qjscalc.o.d +1 -0
  512. data/quickjs/.obj/quickjs-libc.nolto.o +0 -0
  513. data/quickjs/.obj/quickjs-libc.o +0 -0
  514. data/quickjs/.obj/quickjs-libc.o.d +2 -0
  515. data/quickjs/.obj/quickjs.check.o +0 -0
  516. data/quickjs/.obj/quickjs.check.o.d +2 -0
  517. data/quickjs/.obj/quickjs.nolto.o +0 -0
  518. data/quickjs/.obj/quickjs.o +0 -0
  519. data/quickjs/.obj/quickjs.o.d +2 -0
  520. data/quickjs/.obj/repl.o +0 -0
  521. data/quickjs/.obj/repl.o.d +1 -0
  522. data/quickjs/.obj/run-test262.o +0 -0
  523. data/quickjs/.obj/run-test262.o.d +2 -0
  524. data/quickjs/COMPILE_WIN +1 -0
  525. data/quickjs/Changelog +148 -0
  526. data/quickjs/LICENSE +22 -0
  527. data/quickjs/Makefile +470 -0
  528. data/quickjs/TODO +70 -0
  529. data/quickjs/VERSION +1 -0
  530. data/quickjs/a.c +50038 -0
  531. data/quickjs/a.js +26075 -0
  532. data/quickjs/a.rb +3 -0
  533. data/quickjs/cutils.c +631 -0
  534. data/quickjs/cutils.h +297 -0
  535. data/quickjs/doc/jsbignum.texi +589 -0
  536. data/quickjs/doc/quickjs.texi +1097 -0
  537. data/quickjs/examples/fib.c +72 -0
  538. data/quickjs/examples/fib_module.js +10 -0
  539. data/quickjs/examples/hello +0 -0
  540. data/quickjs/examples/hello.js +1 -0
  541. data/quickjs/examples/hello_module.js +6 -0
  542. data/quickjs/examples/pi_bigdecimal.js +68 -0
  543. data/quickjs/examples/pi_bigfloat.js +66 -0
  544. data/quickjs/examples/pi_bigint.js +118 -0
  545. data/quickjs/examples/point.c +151 -0
  546. data/quickjs/examples/test_fib.js +6 -0
  547. data/quickjs/examples/test_point.js +40 -0
  548. data/quickjs/hello.c +44 -0
  549. data/quickjs/libbf.c +8466 -0
  550. data/quickjs/libbf.h +535 -0
  551. data/quickjs/libquickjs.a +0 -0
  552. data/quickjs/libquickjs.lto.a +0 -0
  553. data/quickjs/libregexp-opcode.h +58 -0
  554. data/quickjs/libregexp.c +2610 -0
  555. data/quickjs/libregexp.h +92 -0
  556. data/quickjs/libunicode-table.h +4368 -0
  557. data/quickjs/libunicode.c +1556 -0
  558. data/quickjs/libunicode.h +124 -0
  559. data/quickjs/libwinpthread-1.dll +0 -0
  560. data/quickjs/list.h +100 -0
  561. data/quickjs/out.c +24 -0
  562. data/quickjs/out55.c +59 -0
  563. data/quickjs/out56.c +79 -0
  564. data/quickjs/out57.c +24 -0
  565. data/quickjs/out58.c +4 -0
  566. data/quickjs/p.exe +0 -0
  567. data/quickjs/qjs +0 -0
  568. data/quickjs/qjs.c +570 -0
  569. data/quickjs/qjsc +0 -0
  570. data/quickjs/qjsc.c +762 -0
  571. data/quickjs/qjsc.exe +0 -0
  572. data/quickjs/qjscalc.c +4005 -0
  573. data/quickjs/qjscalc.js +2657 -0
  574. data/quickjs/quickjs-atom.h +273 -0
  575. data/quickjs/quickjs-libc.c +3927 -0
  576. data/quickjs/quickjs-libc.h +59 -0
  577. data/quickjs/quickjs-opcode.h +365 -0
  578. data/quickjs/quickjs.c +54036 -0
  579. data/quickjs/quickjs.h +1049 -0
  580. data/quickjs/readme.txt +1 -0
  581. data/quickjs/release.sh +158 -0
  582. data/quickjs/repl.c +2020 -0
  583. data/quickjs/repl.js +1566 -0
  584. data/quickjs/run-test262 +0 -0
  585. data/quickjs/run-test262.c +2107 -0
  586. data/quickjs/test262.conf +199 -0
  587. data/quickjs/test262_errors.txt +35 -0
  588. data/quickjs/test262o.conf +410 -0
  589. data/quickjs/test262o_errors.txt +0 -0
  590. data/quickjs/tests/bjson.c +96 -0
  591. data/quickjs/tests/microbench.js +1065 -0
  592. data/quickjs/tests/test262.patch +71 -0
  593. data/quickjs/tests/test_bignum.js +326 -0
  594. data/quickjs/tests/test_bjson.js +191 -0
  595. data/quickjs/tests/test_builtin.js +685 -0
  596. data/quickjs/tests/test_closure.js +221 -0
  597. data/quickjs/tests/test_language.js +547 -0
  598. data/quickjs/tests/test_loop.js +368 -0
  599. data/quickjs/tests/test_op_overloading.js +207 -0
  600. data/quickjs/tests/test_qjscalc.js +256 -0
  601. data/quickjs/tests/test_std.js +281 -0
  602. data/quickjs/tests/test_worker.js +62 -0
  603. data/quickjs/tests/test_worker_module.js +31 -0
  604. data/quickjs/unicode_download.sh +19 -0
  605. data/quickjs/unicode_gen.c +3057 -0
  606. data/quickjs/unicode_gen_def.h +284 -0
  607. data/readline +3 -0
  608. data/rm_com +1 -0
  609. data/run.sh +13 -0
  610. data/scaling +6 -0
  611. data/script.js +572 -0
  612. data/server_creator/__ +307 -0
  613. data/server_creator/a/a (1).tar.gz +0 -0
  614. data/server_creator/a/a.out +0 -0
  615. data/server_creator/a/hello_world +0 -0
  616. data/server_creator/a/help +57 -0
  617. data/server_creator/a/main_v1.cpp +83 -0
  618. data/server_creator/a/my_libs_gregory/.deps +0 -0
  619. data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.lai +41 -0
  620. data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.o +0 -0
  621. data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.so +0 -0
  622. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.c +72 -0
  623. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.la +41 -0
  624. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.lo +12 -0
  625. data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.slo +0 -0
  626. data/server_creator/a/nginx.conf +32 -0
  627. data/server_creator/a/six +1 -0
  628. data/server_creator/a.out +0 -0
  629. data/server_creator/all_code.cpp +448 -0
  630. data/server_creator/all_code.js +27 -0
  631. data/server_creator/code +510 -0
  632. data/server_creator/make_application +64 -0
  633. data/server_creator/prog.cpp +33 -0
  634. data/server_creator/prog.js +22 -0
  635. data/server_creator/program.js +745 -0
  636. data/server_creator/rm_com +1 -0
  637. data/server_creator/test.sh +82 -0
  638. data/speakcat.rb +9 -0
  639. data/string +48 -0
  640. data/super_trans +83 -0
  641. data/test.sh +21 -0
  642. data/todo +8 -0
  643. data/version_decrement +3 -0
  644. data/viu_license +21 -0
  645. data/windows/program.c +21 -0
  646. data/windows/program.exe +0 -0
  647. metadata +759 -0
data/man/gtk.html ADDED
@@ -0,0 +1 @@
1
+ 'GTK\n\nAPI Version: 3.0\n\nLibrary Version: 3.24\n\nSections\nClasses\nInterfaces\nStructs\nAliases\nEnumerations\nBitfields\nError Domains\nCallbacks\nFunctions\nFunction Macros\nConstants\nDependencies\nGObject\nCairo\nPango\nGdk\nAtk\nNamespace\nGtk – 3.0\n\nThe GTK toolkit\n\nVersion\t3.24\nAuthors\tGTK Development Team\nLicense\tLGPL-2.1-or-later\nWebsite\thttps://www.gtk.org\nSource\thttps://gitlab.gnome.org/GNOME/gtk/\n[−]\nBuild\nC headers\tgtk/gtk-a11y.h, gtk/gtk.h, gtk/gtkx.h\npkg-config files\tgtk+-3.0\n[−]\nDependencies\nGObject\tThe base type system library\n\tBrowse documentation\nCairo\tA 2D graphics library with support for multiple output devices\n\tBrowse documentation\nPango\tText shaping and rendering\n\tBrowse documentation\nGdk\tThe GTK windowing system backend\n\tBrowse documentation\nAtk\tThe Accessibility toolkit\n\tBrowse documentation\n[−]\nAdditional documentation\nCompiling the GTK libraries\nCompiling GTK Applications\nRunning GTK Applications\nThe GTK Drawing Model\nThe GTK Input and Event Handling Model\nKey Bindings\nText Widget Overview\nTree and List Widget Overview\nTree View Tutorial\nCSS Overview\nCSS Properties\nWidget Gallery\nUsing GTK on the X11 Window System\nUsing GTK on Windows\nUsing GTK with Wayland\nUsing GTK on macOS\nUsing GTK with Broadway\nMigrating from GTK 2.x to GTK 3\nMigrating Themes from GTK 2.x to GTK 3\nMigrating from libunique to GtkApplication\nMigrating from EggSMClient to GtkApplication\nChanges in GTK 3\nClasses Hierarchy\n[−]\nClasses\nAboutDialog\t\n\nThe GtkAboutDialog offers a simple way to display information about a program like its logo, name, copyright, website and license. It is also possible to give credits to the authors, documenters, translators and artists who have worked on the program. An about dialog is typically opened when the user selects the About option from the Help menu. All parts of the dialog are optional.\n\n\nAccelGroup\t\n\nA GtkAccelGroup represents a group of keyboard accelerators, typically attached to a toplevel GtkWindow (with gtk_window_add_accel_group()). Usually you won’t need to create a GtkAccelGroup directly; instead, when using GtkUIManager, GTK+ automatically sets up the accelerators for your menus in the ui manager’s GtkAccelGroup.\n\n\nAccelLabel\t\n\nThe GtkAccelLabel widget is a subclass of GtkLabel that also displays an accelerator key on the right of the label text, e.g. “Ctrl+S”. It is commonly used in menus to show the keyboard short-cuts for commands.\n\n\nAccelMap\t\n\nAccelerator maps are used to define runtime configurable accelerators. Functions for manipulating them are are usually used by higher level convenience mechanisms like GtkUIManager and are thus considered “low-level”. You’ll want to use them if you’re manually creating menus that should have user-configurable accelerators.\n\n\nAccessible\t\n\nThe GtkAccessible class is the base class for accessible implementations for GtkWidget subclasses. It is a thin wrapper around AtkObject, which adds facilities for associating a widget with its accessible object.\n\n\nAction\t\n\nIn GTK+ 3.10, GtkAction has been deprecated. Use GAction instead, and associate actions with GtkActionable widgets. Use GMenuModel for creating menus with gtk_menu_new_from_model().\n\n\nActionBar\t\n\nGtkActionBar is designed to present contextual actions. It is expected to be displayed below the content and expand horizontally to fill the area.\n\n\nActionGroup\t\n\nActions are organised into groups. An action group is essentially a map from names to GtkAction objects.\n\n\nAdjustment\t\n\nThe GtkAdjustment object represents a value which has an associated lower and upper bound, together with step and page increments, and a page size. It is used within several GTK+ widgets, including GtkSpinButton, GtkViewport, and GtkRange (which is a base class for GtkScrollbar and GtkScale).\n\n\nAlignment\t\n\nThe GtkAlignment widget controls the alignment and size of its child widget. It has four settings: xscale, yscale, xalign, and yalign.\n\n\nAppChooserButton\t\n\nThe GtkAppChooserButton is a widget that lets the user select an application. It implements the GtkAppChooser interface.\n\n\nAppChooserDialog\t\n\nGtkAppChooserDialog shows a GtkAppChooserWidget inside a GtkDialog.\n\n\nAppChooserWidget\t\n\nGtkAppChooserWidget is a widget for selecting applications. It is the main building block for GtkAppChooserDialog. Most applications only need to use the latter; but you can use this widget as part of a larger widget if you have special needs.\n\n\nApplication\t\n\nGtkApplication is a class that handles many important aspects of a GTK+ application in a convenient fashion, without enforcing a one-size-fits-all application model.\n\n\nApplicationWindow\t\n\nGtkApplicationWindow is a GtkWindow subclass that offers some extra functionality for better integration with GtkApplication features. Notably, it can handle both the application menu as well as the menubar. See gtk_application_set_app_menu() and gtk_application_set_menubar().\n\n\nArrow\t\n\nGtkArrow should be used to draw simple arrows that need to point in one of the four cardinal directions (up, down, left, or right). The style of the arrow can be one of shadow in, shadow out, etched in, or etched out. Note that these directions and style types may be amended in versions of GTK+ to come.\n\n\nArrowAccessible\t\nAspectFrame\t\n\nThe GtkAspectFrame is useful when you want pack a widget so that it can resize but always retains the same aspect ratio. For instance, one might be drawing a small preview of a larger image. GtkAspectFrame derives from GtkFrame, so it can draw a label and a frame around the child. The frame will be “shrink-wrapped” to the size of the child.\n\n\nAssistant\t\n\nA GtkAssistant is a widget used to represent a generally complex operation splitted in several steps, guiding the user through its pages and controlling the page flow to collect the necessary data.\n\n\nBin\t\n\nThe GtkBin widget is a container with just one child. It is not very useful itself, but it is useful for deriving subclasses, since it provides common code needed for handling a single child widget.\n\n\nBooleanCellAccessible\t\nBox\t\n\nThe GtkBox widget arranges child widgets into a single row or column, depending upon the value of its GtkOrientable:orientation property. Within the other dimension, all children are allocated the same size. Of course, the GtkWidget:halign and GtkWidget:valign properties can be used on the children to influence their allocation.\n\n\nBuilder\t\n\nA GtkBuilder is an auxiliary object that reads textual descriptions of a user interface and instantiates the described objects. To create a GtkBuilder from a user interface description, call gtk_builder_new_from_file(), gtk_builder_new_from_resource() or gtk_builder_new_from_string().\n\n\nButton\t\n\nThe GtkButton widget is generally used to trigger a callback function that is called when the button is pressed. The various signals and how to use them are outlined below.\n\n\nButtonAccessible\t\nButtonBox\t\nCalendar\t\n\nGtkCalendar is a widget that displays a Gregorian calendar, one month at a time. It can be created with gtk_calendar_new().\n\n\nCellAccessible\t\nCellArea\t\n\nThe GtkCellArea is an abstract class for GtkCellLayout widgets (also referred to as “layouting widgets”) to interface with an arbitrary number of GtkCellRenderers and interact with the user for a given GtkTreeModel row.\n\n\nCellAreaBox\t\n\nThe GtkCellAreaBox renders cell renderers into a row or a column depending on its GtkOrientation.\n\n\nCellAreaContext\t\n\nThe GtkCellAreaContext object is created by a given GtkCellArea implementation via its GtkCellAreaClass.create_context() virtual method and is used to store cell sizes and alignments for a series of GtkTreeModel rows that are requested and rendered in the same context.\n\n\nCellRenderer\t\n\nThe GtkCellRenderer is a base class of a set of objects used for rendering a cell to a #cairo_t. These objects are used primarily by the GtkTreeView widget, though they aren’t tied to them in any specific way. It is worth noting that GtkCellRenderer is not a GtkWidget and cannot be treated as such.\n\n\nCellRendererAccel\t\n\nGtkCellRendererAccel displays a keyboard accelerator (i.e. a key combination like Control + a). If the cell renderer is editable, the accelerator can be changed by simply typing the new combination.\n\n\nCellRendererCombo\t\n\nGtkCellRendererCombo renders text in a cell like GtkCellRendererText from which it is derived. But while GtkCellRendererText offers a simple entry to edit the text, GtkCellRendererCombo offers a GtkComboBox widget to edit the text. The values to display in the combo box are taken from the tree model specified in the GtkCellRendererCombo:model property.\n\n\nCellRendererPixbuf\t\n\nA GtkCellRendererPixbuf can be used to render an image in a cell. It allows to render either a given GdkPixbuf (set via the GtkCellRendererPixbuf:pixbuf property) or a named icon (set via the GtkCellRendererPixbuf:icon-name property).\n\n\nCellRendererProgress\t\n\nGtkCellRendererProgress renders a numeric value as a progress par in a cell. Additionally, it can display a text on top of the progress bar.\n\n\nCellRendererSpin\t\n\nGtkCellRendererSpin renders text in a cell like GtkCellRendererText from which it is derived. But while GtkCellRendererText offers a simple entry to edit the text, GtkCellRendererSpin offers a GtkSpinButton widget. Of course, that means that the text has to be parseable as a floating point number.\n\n\nCellRendererSpinner\t\n\nGtkCellRendererSpinner renders a spinning animation in a cell, very similar to GtkSpinner. It can often be used as an alternative to a GtkCellRendererProgress for displaying indefinite activity, instead of actual progress.\n\n\nCellRendererText\t\n\nA GtkCellRendererText renders a given text in its cell, using the font, color and style information provided by its properties. The text will be ellipsized if it is too long and the GtkCellRendererText:ellipsize property allows it.\n\n\nCellRendererToggle\t\n\nGtkCellRendererToggle renders a toggle button in a cell. The button is drawn as a radio or a checkbutton, depending on the GtkCellRendererToggle:radio property. When activated, it emits the GtkCellRendererToggle::toggled signal.\n\n\nCellView\t\n\nA GtkCellView displays a single row of a GtkTreeModel using a GtkCellArea and GtkCellAreaContext. A GtkCellAreaContext can be provided to the GtkCellView at construction time in order to keep the cellview in context of a group of cell views, this ensures that the renderers displayed will be properly aligned with eachother (like the aligned cells in the menus of GtkComboBox).\n\n\nCheckButton\t\n\nA GtkCheckButton places a discrete GtkToggleButton next to a widget, (usually a GtkLabel). See the section on GtkToggleButton widgets for more information about toggle/check buttons.\n\n\nCheckMenuItem\t\n\nA GtkCheckMenuItem is a menu item that maintains the state of a boolean value in addition to a GtkMenuItem usual role in activating application code.\n\n\nCheckMenuItemAccessible\t\nClipboard\t\n\nThe GtkClipboard object represents a clipboard of data shared between different processes or between different widgets in the same process. Each clipboard is identified by a name encoded as a GdkAtom. (Conversion to and from strings can be done with gdk_atom_intern() and gdk_atom_name().) The default clipboard corresponds to the “CLIPBOARD” atom; another commonly used clipboard is the “PRIMARY” clipboard, which, in X, traditionally contains the currently selected text.\n\n\nColorButton\t\n\nThe GtkColorButton is a button which displays the currently selected color and allows to open a color selection dialog to change the color. It is suitable widget for selecting a color in a preference dialog.\n\n\nColorChooserDialog\t\n\nThe GtkColorChooserDialog widget is a dialog for choosing a color. It implements the GtkColorChooser interface.\n\n\nColorChooserWidget\t\n\nThe GtkColorChooserWidget widget lets the user select a color. By default, the chooser presents a predefined palette of colors, plus a small number of settable custom colors. It is also possible to select a different color with the single-color editor. To enter the single-color editing mode, use the context menu of any color of the palette, or use the ‘+’ button to add a new custom color.\n\n\nColorSelection\t\nColorSelectionDialog\t\nComboBox\t\n\nA GtkComboBox is a widget that allows the user to choose from a list of valid choices. The GtkComboBox displays the selected choice. When activated, the GtkComboBox displays a popup which allows the user to make a new choice. The style in which the selected value is displayed, and the style of the popup is determined by the current theme. It may be similar to a Windows-style combo box.\n\n\nComboBoxAccessible\t\nComboBoxText\t\n\nA GtkComboBoxText is a simple variant of GtkComboBox that hides the model-view complexity for simple text-only use cases.\n\n\nContainer\t\n\nA GTK+ user interface is constructed by nesting widgets inside widgets. Container widgets are the inner nodes in the resulting tree of widgets: they contain other widgets. So, for example, you might have a GtkWindow containing a GtkFrame containing a GtkLabel. If you wanted an image instead of a textual label inside the frame, you might replace the GtkLabel widget with a GtkImage widget.\n\n\nContainerAccessible\t\nContainerCellAccessible\t\nCssProvider\t\n\nGtkCssProvider is an object implementing the GtkStyleProvider interface. It is able to parse [CSS-like][css-overview] input in order to style widgets.\n\n\nDialog\t\n\nDialog boxes are a convenient way to prompt the user for a small amount of input, e.g. to display a message, ask a question, or anything else that does not require extensive effort on the user’s part.\n\n\nDrawingArea\t\n\nThe GtkDrawingArea widget is used for creating custom user interface elements. It’s essentially a blank widget; you can draw on it. After creating a drawing area, the application may want to connect to:\n\n\nEntry\t\n\nThe GtkEntry widget is a single line text entry widget. A fairly large set of key bindings are supported by default. If the entered text is longer than the allocation of the widget, the widget will scroll so that the cursor position is visible.\n\n\nEntryAccessible\t\nEntryBuffer\t\n\nThe GtkEntryBuffer class contains the actual text displayed in a GtkEntry widget.\n\n\nEntryCompletion\t\n\nGtkEntryCompletion is an auxiliary object to be used in conjunction with GtkEntry to provide the completion functionality. It implements the GtkCellLayout interface, to allow the user to add extra cells to the GtkTreeView with completion matches.\n\n\nEntryIconAccessible\t\nEventBox\t\n\nThe GtkEventBox widget is a subclass of GtkBin which also has its own window. It is useful since it allows you to catch events for widgets which do not have their own window.\n\n\nEventController\t\n\nGtkEventController is a base, low-level implementation for event controllers. Those react to a series of GdkEvents, and possibly trigger actions as a consequence of those.\n\n\nEventControllerKey\t\n\nGtkEventControllerKey is an event controller meant for situations where you need access to key events.\n\n\nEventControllerMotion\t\n\nGtkEventControllerMotion is an event controller meant for situations where you need to track the position of the pointer.\n\n\nEventControllerScroll\t\n\nGtkEventControllerScroll is an event controller meant to handle scroll events from mice and touchpads. It is capable of handling both discrete and continuous scroll events, abstracting them both on the GtkEventControllerScroll::scroll signal (deltas in the discrete case are multiples of 1).\n\n\nExpander\t\n\nA GtkExpander allows the user to hide or show its child by clicking on an expander triangle similar to the triangles used in a GtkTreeView.\n\n\nExpanderAccessible\t\nFileChooserButton\t\n\nThe GtkFileChooserButton is a widget that lets the user select a file. It implements the GtkFileChooser interface. Visually, it is a file name with a button to bring up a GtkFileChooserDialog. The user can then use that dialog to change the file associated with that button. This widget does not support setting the GtkFileChooser:select-multiple property to TRUE.\n\n\nFileChooserDialog\t\n\nGtkFileChooserDialog is a dialog box suitable for use with “File/Open” or “File/Save as” commands. This widget works by putting a GtkFileChooserWidget inside a GtkDialog. It exposes the GtkFileChooser interface, so you can use all of the GtkFileChooser functions on the file chooser dialog as well as those for GtkDialog.\n\n\nFileChooserNative\t\n\nGtkFileChooserNative is an abstraction of a dialog box suitable for use with “File/Open” or “File/Save as” commands. By default, this just uses a GtkFileChooserDialog to implement the actual dialog. However, on certain platforms, such as Windows and macOS, the native platform file chooser is used instead. When the application is running in a sandboxed environment without direct filesystem access (such as Flatpak), GtkFileChooserNative may call the proper APIs (portals) to let the user choose a file and make it available to the application.\n\n\nFileChooserWidget\t\n\nGtkFileChooserWidget is a widget for choosing files. It exposes the GtkFileChooser interface, and you should use the methods of this interface to interact with the widget.\n\n\nFileChooserWidgetAccessible\t\nFileFilter\t\n\nA GtkFileFilter can be used to restrict the files being shown in a GtkFileChooser. Files can be filtered based on their name (with gtk_file_filter_add_pattern()), on their mime type (with gtk_file_filter_add_mime_type()), or by a custom filter function (with gtk_file_filter_add_custom()).\n\n\nFixed\t\n\nThe GtkFixed widget is a container which can place child widgets at fixed positions and with fixed sizes, given in pixels. GtkFixed performs no automatic layout management.\n\n\nFlowBox\t\n\nA GtkFlowBox positions child widgets in sequence according to its orientation.\n\n\nFlowBoxAccessible\t\nFlowBoxChild\t\nFlowBoxChildAccessible\t\nFontButton\t\n\nThe GtkFontButton is a button which displays the currently selected font an allows to open a font chooser dialog to change the font. It is suitable widget for selecting a font in a preference dialog.\n\n\nFontChooserDialog\t\n\nThe GtkFontChooserDialog widget is a dialog for selecting a font. It implements the GtkFontChooser interface.\n\n\nFontChooserWidget\t\n\nThe GtkFontChooserWidget widget lists the available fonts, styles and sizes, allowing the user to select a font. It is used in the GtkFontChooserDialog widget to provide a dialog box for selecting fonts.\n\n\nFontSelection\t\nFontSelectionDialog\t\nFrame\t\n\nThe frame widget is a bin that surrounds its child with a decorative frame and an optional label. If present, the label is drawn in a gap in the top side of the frame. The position of the label can be controlled with gtk_frame_set_label_align().\n\n\nFrameAccessible\t\nGesture\t\n\nGtkGesture is the base object for gesture recognition, although this object is quite generalized to serve as a base for multi-touch gestures, it is suitable to implement single-touch and pointer-based gestures (using the special NULL GdkEventSequence value for these).\n\n\nGestureDrag\t\n\nGtkGestureDrag is a GtkGesture implementation that recognizes drag operations. The drag operation itself can be tracked throught the GtkGestureDrag::drag-begin, GtkGestureDrag::drag-update and GtkGestureDrag::drag-end signals, or the relevant coordinates be extracted through gtk_gesture_drag_get_offset() and gtk_gesture_drag_get_start_point().\n\n\nGestureLongPress\t\n\nGtkGestureLongPress is a GtkGesture implementation able to recognize long presses, triggering the GtkGestureLongPress::pressed after the timeout is exceeded.\n\n\nGestureMultiPress\t\n\nGtkGestureMultiPress is a GtkGesture implementation able to recognize multiple clicks on a nearby zone, which can be listened for through the GtkGestureMultiPress::pressed signal. Whenever time or distance between clicks exceed the GTK+ defaults, GtkGestureMultiPress::stopped is emitted, and the click counter is reset.\n\n\nGesturePan\t\n\nGtkGesturePan is a GtkGesture implementation able to recognize pan gestures, those are drags that are locked to happen along one axis. The axis that a GtkGesturePan handles is defined at construct time, and can be changed through gtk_gesture_pan_set_orientation().\n\n\nGestureRotate\t\n\nGtkGestureRotate is a GtkGesture implementation able to recognize 2-finger rotations, whenever the angle between both handled sequences changes, the GtkGestureRotate::angle-changed signal is emitted.\n\n\nGestureSingle\t\n\nGtkGestureSingle is a subclass of GtkGesture, optimized (although not restricted) for dealing with mouse and single-touch gestures. Under interaction, these gestures stick to the first interacting sequence, which is accessible through gtk_gesture_single_get_current_sequence() while the gesture is being interacted with.\n\n\nGestureStylus\t\n\nGtkGestureStylus is a GtkGesture implementation specific to stylus input. The provided signals just provide the basic information.\n\n\nGestureSwipe\t\n\nGtkGestureSwipe is a GtkGesture implementation able to recognize swipes, after a press/move/…/move/release sequence happens, the GtkGestureSwipe::swipe signal will be emitted, providing the velocity and directionality of the sequence at the time it was lifted.\n\n\nGestureZoom\t\n\nGtkGestureZoom is a GtkGesture implementation able to recognize pinch/zoom gestures, whenever the distance between both tracked sequences changes, the GtkGestureZoom::scale-changed signal is emitted to report the scale factor.\n\n\nGLArea\t\n\nGtkGLArea is a widget that allows drawing with OpenGL.\n\n\nGrid\t\n\nGtkGrid is a container which arranges its child widgets in rows and columns, with arbitrary positions and horizontal/vertical spans.\n\n\nHandleBox\t\n\nThe GtkHandleBox widget allows a portion of a window to be “torn off”. It is a bin widget which displays its child and a handle that the user can drag to tear off a separate window (the “float window”) containing the child widget. A thin “ghost” is drawn in the original location of the handlebox. By dragging the separate window back to its original location, it can be reattached.\n\n\nHBox\t\n\nGtkHBox is a container that organizes child widgets into a single row.\n\n\nHButtonBox\t\nHeaderBar\t\n\nGtkHeaderBar is similar to a horizontal GtkBox. It allows children to be placed at the start or the end. In addition, it allows a title and subtitle to be displayed. The title will be centered with respect to the width of the box, even if the children at either side take up different amounts of space. The height of the titlebar will be set to provide sufficient space for the subtitle, even if none is currently set. If a subtitle is not needed, the space reservation can be turned off with gtk_header_bar_set_has_subtitle().\n\n\nHeaderBarAccessible\t\nHPaned\t\n\nThe HPaned widget is a container widget with two children arranged horizontally. The division between the two panes is adjustable by the user by dragging a handle. See GtkPaned for details.\n\n\nHScale\t\n\nThe GtkHScale widget is used to allow the user to select a value using a horizontal slider. To create one, use gtk_hscale_new_with_range().\n\n\nHScrollbar\t\n\nThe GtkHScrollbar widget is a widget arranged horizontally creating a scrollbar. See GtkScrollbar for details on scrollbars. GtkAdjustment pointers may be added to handle the adjustment of the scrollbar or it may be left NULL in which case one will be created for you. See GtkScrollbar for a description of what the fields in an adjustment represent for a scrollbar.\n\n\nHSeparator\t\n\nThe GtkHSeparator widget is a horizontal separator, used to group the widgets within a window. It displays a horizontal line with a shadow to make it appear sunken into the interface.\n\n\nHSV\t\n\nGtkHSV is the “color wheel” part of a complete color selector widget. It allows to select a color by determining its HSV components in an intuitive way. Moving the selection around the outer ring changes the hue, and moving the selection point inside the inner triangle changes value and saturation.\n\n\nIconFactory\t\n\nAn icon factory manages a collection of GtkIconSet; a GtkIconSet manages a set of variants of a particular icon (i.e. a GtkIconSet contains variants for different sizes and widget states). Icons in an icon factory are named by a stock ID, which is a simple string identifying the icon. Each GtkStyle has a list of GtkIconFactory derived from the current theme; those icon factories are consulted first when searching for an icon. If the theme doesn’t set a particular icon, GTK+ looks for the icon in a list of default icon factories, maintained by gtk_icon_factory_add_default() and gtk_icon_factory_remove_default(). Applications with icons should add a default icon factory with their icons, which will allow themes to override the icons for the application.\n\n\nIconInfo\t\n\nContains information found when looking up an icon in an icon theme.\n\n\nIconTheme\t\n\nGtkIconTheme provides a facility for looking up icons by name and size. The main reason for using a name rather than simply providing a filename is to allow different icons to be used depending on what “icon theme” is selected by the user. The operation of icon themes on Linux and Unix follows the Icon Theme Specification There is a fallback icon theme, named hicolor, where applications should install their icons, but additional icon themes can be installed as operating system vendors and users choose.\n\n\nIconView\t\n\nGtkIconView provides an alternative view on a GtkTreeModel. It displays the model as a grid of icons with labels. Like GtkTreeView, it allows to select one or multiple items (depending on the selection mode, see gtk_icon_view_set_selection_mode()). In addition to selection with the arrow keys, GtkIconView supports rubberband selection, which is controlled by dragging the pointer.\n\n\nIconViewAccessible\t\nImage\t\n\nThe GtkImage widget displays an image. Various kinds of object can be displayed as an image; most typically, you would load a GdkPixbuf (“pixel buffer”) from a file, and then display that. There’s a convenience function to do this, gtk_image_new_from_file(), used as follows:\n\n GtkWidget *image;\n image = gtk_image_new_from_file ("myfile.png");\n\n\nIf the file isn’t loaded successfully, the image will contain a “broken image” icon similar to that used in many web browsers. If you want to handle errors in loading the file yourself, for example by displaying an error message, then load the image with gdk_pixbuf_new_from_file(), then create the GtkImage with gtk_image_new_from_pixbuf().\n\n\nImageAccessible\t\nImageCellAccessible\t\nImageMenuItem\t\n\nA GtkImageMenuItem is a menu item which has an icon next to the text label.\n\n\nIMContext\t\n\nGtkIMContext defines the interface for GTK+ input methods. An input method is used by GTK+ text input widgets like GtkEntry to map from key events to Unicode character strings.\n\n\nIMContextSimple\t\n\nGtkIMContextSimple is a simple input method context supporting table-based input methods. It has a built-in table of compose sequences that is derived from the X11 Compose files.\n\n\nIMMulticontext\t\nInfoBar\t\n\nGtkInfoBar is a widget that can be used to show messages to the user without showing a dialog. It is often temporarily shown at the top or bottom of a document. In contrast to GtkDialog, which has a action area at the bottom, GtkInfoBar has an action area at the side.\n\n\nInvisible\t\n\nThe GtkInvisible widget is used internally in GTK+, and is probably not very useful for application developers.\n\n\nLabel\t\n\nThe GtkLabel widget displays a small amount of text. As the name implies, most labels are used to label another widget such as a GtkButton, a GtkMenuItem, or a GtkComboBox.\n\n\nLabelAccessible\t\nLayout\t\n\nGtkLayout is similar to GtkDrawingArea in that it’s a “blank slate” and doesn’t do anything except paint a blank background by default. It’s different in that it supports scrolling natively due to implementing GtkScrollable, and can contain child widgets since it’s a GtkContainer.\n\n\nLevelBar\t\n\nThe GtkLevelBar is a bar widget that can be used as a level indicator. Typical use cases are displaying the strength of a password, or showing the charge level of a battery.\n\n\nLevelBarAccessible\t\nLinkButton\t\n\nA GtkLinkButton is a GtkButton with a hyperlink, similar to the one used by web browsers, which triggers an action when clicked. It is useful to show quick links to resources.\n\n\nLinkButtonAccessible\t\nListBox\t\n\nA GtkListBox is a vertical container that contains GtkListBoxRow children. These rows can be dynamically sorted and filtered, and headers can be added dynamically depending on the row content. It also allows keyboard and mouse navigation and selection like a typical list.\n\n\nListBoxAccessible\t\nListBoxRow\t\nListBoxRowAccessible\t\nListStore\t\n\nThe GtkListStore object is a list model for use with a GtkTreeView widget. It implements the GtkTreeModel interface, and consequentialy, can use all of the methods available there. It also implements the GtkTreeSortable interface so it can be sorted by the view. Finally, it also implements the tree [drag and drop][gtk3-GtkTreeView-drag-and-drop] interfaces.\n\n\nLockButton\t\n\nGtkLockButton is a widget that can be used in control panels or preference dialogs to allow users to obtain and revoke authorizations needed to operate the controls. The required authorization is represented by a GPermission object. Concrete implementations of GPermission may use PolicyKit or some other authorization framework. To obtain a PolicyKit-based GPermission, use polkit_permission_new().\n\n\nLockButtonAccessible\t\nMenu\t\n\nA GtkMenu is a GtkMenuShell that implements a drop down menu consisting of a list of GtkMenuItem objects which can be navigated and activated by the user to perform application functions.\n\n\nMenuAccessible\t\nMenuBar\t\n\nThe GtkMenuBar is a subclass of GtkMenuShell which contains one or more GtkMenuItems. The result is a standard menu bar which can hold many menu items.\n\n\nMenuButton\t\n\nThe GtkMenuButton widget is used to display a popup when clicked on. This popup can be provided either as a GtkMenu, a GtkPopover or an abstract GMenuModel.\n\n\nMenuButtonAccessible\t\nMenuItem\t\n\nThe GtkMenuItem widget and the derived widgets are the only valid children for menus. Their function is to correctly handle highlighting, alignment, events and submenus.\n\n\nMenuItemAccessible\t\nMenuShell\t\n\nA GtkMenuShell is the abstract base class used to derive the GtkMenu and GtkMenuBar subclasses.\n\n\nMenuShellAccessible\t\nMenuToolButton\t\n\nA GtkMenuToolButton is a GtkToolItem that contains a button and a small additional button with an arrow. When clicked, the arrow button pops up a dropdown menu.\n\n\nMessageDialog\t\n\nGtkMessageDialog presents a dialog with some message text. It’s simply a convenience widget; you could construct the equivalent of GtkMessageDialog from GtkDialog without too much effort, but GtkMessageDialog saves typing.\n\n\nMisc\t\n\nThe GtkMisc widget is an abstract widget which is not useful itself, but is used to derive subclasses which have alignment and padding attributes.\n\n\nModelButton\t\n\nGtkModelButton is a button class that can use a GAction as its model. In contrast to GtkToggleButton or GtkRadioButton, which can also be backed by a GAction via the GtkActionable:action-name property, GtkModelButton will adapt its appearance according to the kind of action it is backed by, and appear either as a plain, check or radio button.\n\n\nMountOperation\t\n\nThis should not be accessed directly. Use the accessor functions below.\n\n\nNativeDialog\t\n\nNative dialogs are platform dialogs that don’t use GtkDialog or GtkWindow. They are used in order to integrate better with a platform, by looking the same as other native applications and supporting platform specific features.\n\n\nNotebook\t\n\nThe GtkNotebook widget is a GtkContainer whose children are pages that can be switched between using tab labels along one edge.\n\n\nNotebookAccessible\t\nNotebookPageAccessible\t\nNumerableIcon\t\n\nGtkNumerableIcon is a subclass of GEmblemedIcon that can show a number or short string as an emblem. The number can be overlayed on top of another emblem, if desired.\n\n\nOffscreenWindow\t\n\nGtkOffscreenWindow is strictly intended to be used for obtaining snapshots of widgets that are not part of a normal widget hierarchy. Since GtkOffscreenWindow is a toplevel widget you cannot obtain snapshots of a full window with it since you cannot pack a toplevel widget in another toplevel.\n\n\nOverlay\t\n\nGtkOverlay is a container which contains a single main child, on top of which it can place “overlay” widgets. The position of each overlay widget is determined by its GtkWidget:halign and GtkWidget:valign properties. E.g. a widget with both alignments set to GTK_ALIGN_START will be placed at the top left corner of the GtkOverlay container, whereas an overlay with halign set to GTK_ALIGN_CENTER and valign set to GTK_ALIGN_END will be placed a the bottom edge of the GtkOverlay, horizontally centered. The position can be adjusted by setting the margin properties of the child to non-zero values.\n\n\nPadController\t\n\nGtkPadController is an event controller for the pads found in drawing tablets (The collection of buttons and tactile sensors often found around the stylus-sensitive area).\n\n\nPageSetup\t\n\nA GtkPageSetup object stores the page size, orientation and margins. The idea is that you can get one of these from the page setup dialog and then pass it to the GtkPrintOperation when printing. The benefit of splitting this out of the GtkPrintSettings is that these affect the actual layout of the page, and thus need to be set long before user prints.\n\n\nPaned\t\n\nGtkPaned has two panes, arranged either horizontally or vertically. The division between the two panes is adjustable by the user by dragging a handle.\n\n\nPanedAccessible\t\nPlacesSidebar\t\n\nGtkPlacesSidebar is a widget that displays a list of frequently-used places in the file system: the user’s home directory, the user’s bookmarks, and volumes and drives. This widget is used as a sidebar in GtkFileChooser and may be used by file managers and similar programs.\n\n\nPlug\t\n\nTogether with GtkSocket, GtkPlug provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a GtkSocket widget and passes the ID of that widget’s window to the other process, which then creates a GtkPlug with that window ID. Any widgets contained in the GtkPlug then will appear inside the first application’s window.\n\n\nPlugAccessible\t\nPopover\t\n\nGtkPopover is a bubble-like context window, primarily meant to provide context-dependent information or options. Popovers are attached to a widget, passed at construction time on gtk_popover_new(), or updated afterwards through gtk_popover_set_relative_to(), by default they will point to the whole widget area, although this behavior can be changed through gtk_popover_set_pointing_to().\n\n\nPopoverAccessible\t\nPopoverMenu\t\n\nGtkPopoverMenu is a subclass of GtkPopover that treats its children like menus and allows switching between them. It is meant to be used primarily together with GtkModelButton, but any widget can be used, such as GtkSpinButton or GtkScale. In this respect, GtkPopoverMenu is more flexible than popovers that are created from a GMenuModel with gtk_popover_new_from_model().\n\n\nPrintContext\t\n\nA GtkPrintContext encapsulates context information that is required when drawing pages for printing, such as the cairo context and important parameters like page size and resolution. It also lets you easily create PangoLayout and PangoContext objects that match the font metrics of the cairo surface.\n\n\nPrintOperation\t\n\nGtkPrintOperation is the high-level, portable printing API. It looks a bit different than other GTK+ dialogs such as the GtkFileChooser, since some platforms don’t expose enough infrastructure to implement a good print dialog. On such platforms, GtkPrintOperation uses the native print dialog. On platforms which do not provide a native print dialog, GTK+ uses its own, see GtkPrintUnixDialog.\n\n\nPrintSettings\t\n\nA GtkPrintSettings object represents the settings of a print dialog in a system-independent way. The main use for this object is that once you’ve printed you can get a settings object that represents the settings the user chose, and the next time you print you can pass that object in so that the user doesn’t have to re-set all his settings.\n\n\nProgressBar\t\n\nThe GtkProgressBar is typically used to display the progress of a long running operation. It provides a visual clue that processing is underway. The GtkProgressBar can be used in two different modes: percentage mode and activity mode.\n\n\nProgressBarAccessible\t\nRadioAction\t\n\nA GtkRadioAction is similar to GtkRadioMenuItem. A number of radio actions can be linked together so that only one may be active at any one time.\n\n\nRadioButton\t\n\nA single radio button performs the same basic function as a GtkCheckButton, as its position in the object hierarchy reflects. It is only when multiple radio buttons are grouped together that they become a different user interface component in their own right.\n\n\nRadioButtonAccessible\t\nRadioMenuItem\t\n\nA radio menu item is a check menu item that belongs to a group. At each instant exactly one of the radio menu items from a group is selected.\n\n\nRadioMenuItemAccessible\t\nRadioToolButton\t\n\nA GtkRadioToolButton is a GtkToolItem that contains a radio button, that is, a button that is part of a group of toggle buttons where only one button can be active at a time.\n\n\nRange\t\n\nGtkRange is the common base class for widgets which visualize an adjustment, e.g GtkScale or GtkScrollbar.\n\n\nRangeAccessible\t\nRcStyle\t\n\nThe GtkRcStyle-struct is used to represent a set of information about the appearance of a widget. This can later be composited together with other GtkRcStyle-structs to form a GtkStyle.\n\n\nRecentAction\t\n\nA GtkRecentAction represents a list of recently used files, which can be shown by widgets such as GtkRecentChooserDialog or GtkRecentChooserMenu.\n\n\nRecentChooserDialog\t\n\nGtkRecentChooserDialog is a dialog box suitable for displaying the recently used documents. This widgets works by putting a GtkRecentChooserWidget inside a GtkDialog. It exposes the GtkRecentChooserIface interface, so you can use all the GtkRecentChooser functions on the recent chooser dialog as well as those for GtkDialog.\n\n\nRecentChooserMenu\t\n\nGtkRecentChooserMenu is a widget suitable for displaying recently used files inside a menu. It can be used to set a sub-menu of a GtkMenuItem using gtk_menu_item_set_submenu(), or as the menu of a GtkMenuToolButton.\n\n\nRecentChooserWidget\t\n\nGtkRecentChooserWidget is a widget suitable for selecting recently used files. It is the main building block of a GtkRecentChooserDialog. Most applications will only need to use the latter; you can use GtkRecentChooserWidget as part of a larger window if you have special needs.\n\n\nRecentFilter\t\n\nA GtkRecentFilter can be used to restrict the files being shown in a GtkRecentChooser. Files can be filtered based on their name (with gtk_recent_filter_add_pattern()), on their mime type (with gtk_file_filter_add_mime_type()), on the application that has registered them (with gtk_recent_filter_add_application()), or by a custom filter function (with gtk_recent_filter_add_custom()).\n\n\nRecentManager\t\n\nGtkRecentManager provides a facility for adding, removing and looking up recently used files. Each recently used file is identified by its URI, and has meta-data associated to it, like the names and command lines of the applications that have registered it, the number of time each application has registered the same file, the mime type of the file and whether the file should be displayed only by the applications that have registered it.\n\n\nRendererCellAccessible\t\nRevealer\t\n\nThe GtkRevealer widget is a container which animates the transition of its child from invisible to visible.\n\n\nScale\t\n\nA GtkScale is a slider control used to select a numeric value. To use it, you’ll probably want to investigate the methods on its base class, GtkRange, in addition to the methods for GtkScale itself. To set the value of a scale, you would normally use gtk_range_set_value(). To detect changes to the value, you would normally use the GtkRange::value-changed signal.\n\n\nScaleAccessible\t\nScaleButton\t\n\nGtkScaleButton provides a button which pops up a scale widget. This kind of widget is commonly used for volume controls in multimedia applications, and GTK+ provides a GtkVolumeButton subclass that is tailored for this use case.\n\n\nScaleButtonAccessible\t\nScrollbar\t\n\nThe GtkScrollbar widget is a horizontal or vertical scrollbar, depending on the value of the GtkOrientable:orientation property.\n\n\nScrolledWindow\t\n\nGtkScrolledWindow is a container that accepts a single child widget, makes that child scrollable using either internally added scrollbars or externally associated adjustments, and optionally draws a frame around the child.\n\n\nScrolledWindowAccessible\t\nSearchBar\t\n\nGtkSearchBar is a container made to have a search entry (possibly with additional connex widgets, such as drop-down menus, or buttons) built-in. The search bar would appear when a search is started through typing on the keyboard, or the application’s search mode is toggled on.\n\n\nSearchEntry\t\n\nGtkSearchEntry is a subclass of GtkEntry that has been tailored for use as a search entry.\n\n\nSeparator\t\n\nGtkSeparator is a horizontal or vertical separator widget, depending on the value of the GtkOrientable:orientation property, used to group the widgets within a window. It displays a line with a shadow to make it appear sunken into the interface.\n\n\nSeparatorMenuItem\t\n\nThe GtkSeparatorMenuItem is a separator used to group items within a menu. It displays a horizontal line with a shadow to make it appear sunken into the interface.\n\n\nSeparatorToolItem\t\n\nA GtkSeparatorToolItem is a GtkToolItem that separates groups of other GtkToolItems. Depending on the theme, a GtkSeparatorToolItem will often look like a vertical line on horizontally docked toolbars.\n\n\nSettings\t\n\nGtkSettings provide a mechanism to share global settings between applications.\n\n\nShortcutLabel\t\n\nGtkShortcutLabel is a widget that represents a single keyboard shortcut or gesture in the user interface.\n\n\nShortcutsGroup\t\n\nA GtkShortcutsGroup represents a group of related keyboard shortcuts or gestures. The group has a title. It may optionally be associated with a view of the application, which can be used to show only relevant shortcuts depending on the application context.\n\n\nShortcutsSection\t\n\nA GtkShortcutsSection collects all the keyboard shortcuts and gestures for a major application mode. If your application needs multiple sections, you should give each section a unique GtkShortcutsSection:section-name and a GtkShortcutsSection:title that can be shown in the section selector of the GtkShortcutsWindow.\n\n\nShortcutsShortcut\t\n\nA GtkShortcutsShortcut represents a single keyboard shortcut or gesture with a short text. This widget is only meant to be used with GtkShortcutsWindow.\n\n\nShortcutsWindow\t\n\nA GtkShortcutsWindow shows brief information about the keyboard shortcuts and gestures of an application. The shortcuts can be grouped, and you can have multiple sections in this window, corresponding to the major modes of your application.\n\n\nSizeGroup\t\n\nGtkSizeGroup provides a mechanism for grouping a number of widgets together so they all request the same amount of space. This is typically useful when you want a column of widgets to have the same size, but you can’t use a GtkGrid widget.\n\n\nSocket\t\n\nTogether with GtkPlug, GtkSocket provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a GtkSocket widget and passes that widget’s window ID to the other process, which then creates a GtkPlug with that window ID. Any widgets contained in the GtkPlug then will appear inside the first application’s window.\n\n\nSocketAccessible\t\nSpinButton\t\n\nA GtkSpinButton is an ideal way to allow the user to set the value of some attribute. Rather than having to directly type a number into a GtkEntry, GtkSpinButton allows the user to click on one of two arrows to increment or decrement the displayed value. A value can still be typed in, with the bonus that it can be checked to ensure it is in a given range.\n\n\nSpinButtonAccessible\t\nSpinner\t\n\nA GtkSpinner widget displays an icon-size spinning animation. It is often used as an alternative to a GtkProgressBar for displaying indefinite activity, instead of actual progress.\n\n\nSpinnerAccessible\t\nStack\t\n\nThe GtkStack widget is a container which only shows one of its children at a time. In contrast to GtkNotebook, GtkStack does not provide a means for users to change the visible child. Instead, the GtkStackSwitcher widget can be used with GtkStack to provide this functionality.\n\n\nStackAccessible\t\nStackSidebar\t\n\nA GtkStackSidebar enables you to quickly and easily provide a consistent “sidebar” object for your user interface.\n\n\nStackSwitcher\t\n\nThe GtkStackSwitcher widget acts as a controller for a GtkStack; it shows a row of buttons to switch between the various pages of the associated stack widget.\n\n\nStatusbar\t\n\nA GtkStatusbar is usually placed along the bottom of an application’s main GtkWindow. It may provide a regular commentary of the application’s status (as is usually the case in a web browser, for example), or may be used to simply output a message when the status changes, (when an upload is complete in an FTP client, for example).\n\n\nStatusbarAccessible\t\nStatusIcon\t\n\nThe “system tray” or notification area is normally used for transient icons that indicate some special state. For example, a system tray icon might appear to tell the user that they have new mail, or have an incoming instant message, or something along those lines. The basic idea is that creating an icon in the notification area is less annoying than popping up a dialog.\n\n\nStyle\t\n\nA GtkStyle object encapsulates the information that provides the look and feel for a widget.\n\n\nStyleContext\t\n\nGtkStyleContext is an object that stores styling information affecting a widget defined by GtkWidgetPath.\n\n\nStyleProperties\t\n\nGtkStyleProperties provides the storage for style information that is used by GtkStyleContext and other GtkStyleProvider implementations.\n\n\nSwitch\t\n\nGtkSwitch is a widget that has two states: on or off. The user can control which state should be active by clicking the empty area, or by dragging the handle.\n\n\nSwitchAccessible\t\nTable\t\n\nThe GtkTable functions allow the programmer to arrange widgets in rows and columns, making it easy to align many widgets next to each other, horizontally and vertically.\n\n\nTearoffMenuItem\t\n\nA GtkTearoffMenuItem is a special GtkMenuItem which is used to tear off and reattach its menu.\n\n\nTextBuffer\t\n\nYou may wish to begin by reading the [text widget conceptual overview][TextWidget] which gives an overview of all the objects and data types related to the text widget and how they work together.\n\n\nTextCellAccessible\t\nTextChildAnchor\t\n\nA GtkTextChildAnchor is a spot in the buffer where child widgets can be “anchored” (inserted inline, as if they were characters). The anchor can have multiple widgets anchored, to allow for multiple views.\n\n\nTextMark\t\n\nYou may wish to begin by reading the [text widget conceptual overview][TextWidget] which gives an overview of all the objects and data types related to the text widget and how they work together.\n\n\nTextTag\t\n\nYou may wish to begin by reading the [text widget conceptual overview][TextWidget] which gives an overview of all the objects and data types related to the text widget and how they work together.\n\n\nTextTagTable\t\n\nYou may wish to begin by reading the [text widget conceptual overview][TextWidget] which gives an overview of all the objects and data types related to the text widget and how they work together.\n\n\nTextView\t\n\nYou may wish to begin by reading the [text widget conceptual overview][TextWidget] which gives an overview of all the objects and data types related to the text widget and how they work together.\n\n\nTextViewAccessible\t\nThemingEngine\t\n\nGtkThemingEngine was the object used for rendering themed content in GTK+ widgets. It used to allow overriding GTK+’s default implementation of rendering functions by allowing engines to be loaded as modules.\n\n\nToggleAction\t\n\nA GtkToggleAction corresponds roughly to a GtkCheckMenuItem. It has an “active” state specifying whether the action has been checked or not.\n\n\nToggleButton\t\n\nA GtkToggleButton is a GtkButton which will remain “pressed-in” when clicked. Clicking again will cause the toggle button to return to its normal state.\n\n\nToggleButtonAccessible\t\nToggleToolButton\t\n\nA GtkToggleToolButton is a GtkToolItem that contains a toggle button.\n\n\nToolbar\t\n\nA toolbar is created with a call to gtk_toolbar_new().\n\n\nToolButton\t\n\nGtkToolButtons are GtkToolItems containing buttons.\n\n\nToolItem\t\n\nGtkToolItems are widgets that can appear on a toolbar. To create a toolbar item that contain something else than a button, use gtk_tool_item_new(). Use gtk_container_add() to add a child widget to the tool item.\n\n\nToolItemGroup\t\n\nA GtkToolItemGroup is used together with GtkToolPalette to add GtkToolItems to a palette like container with different categories and drag and drop support.\n\n\nToolPalette\t\n\nA GtkToolPalette allows you to add GtkToolItems to a palette-like container with different categories and drag and drop support.\n\n\nTooltip\t\n\nBasic tooltips can be realized simply by using gtk_widget_set_tooltip_text() or gtk_widget_set_tooltip_markup() without any explicit tooltip object.\n\n\nToplevelAccessible\t\nTreeModelFilter\t\n\nA GtkTreeModelFilter is a tree model which wraps another tree model, and can do the following things:\n\n\nTreeModelSort\t\n\nThe GtkTreeModelSort is a model which implements the GtkTreeSortable interface. It does not hold any data itself, but rather is created with a child model and proxies its data. It has identical column types to this child model, and the changes in the child are propagated. The primary purpose of this model is to provide a way to sort a different model without modifying it. Note that the sort function used by GtkTreeModelSort is not guaranteed to be stable.\n\n\nTreeSelection\t\n\nThe GtkTreeSelection object is a helper object to manage the selection for a GtkTreeView widget. The GtkTreeSelection object is automatically created when a new GtkTreeView widget is created, and cannot exist independently of this widget. The primary reason the GtkTreeSelection objects exists is for cleanliness of code and API. That is, there is no conceptual reason all these functions could not be methods on the GtkTreeView widget instead of a separate function.\n\n\nTreeStore\t\n\nThe GtkTreeStore object is a list model for use with a GtkTreeView widget. It implements the GtkTreeModel interface, and consequentially, can use all of the methods available there. It also implements the GtkTreeSortable interface so it can be sorted by the view. Finally, it also implements the tree [drag and drop][gtk3-GtkTreeView-drag-and-drop] interfaces.\n\n\nTreeView\t\n\nWidget that displays any object that implements the GtkTreeModel interface.\n\n\nTreeViewAccessible\t\nTreeViewColumn\t\n\nThe GtkTreeViewColumn object represents a visible column in a GtkTreeView widget. It allows to set properties of the column header, and functions as a holding pen for the cell renderers which determine how the data in the column is displayed.\n\n\nUIManager\t\n\nA GtkUIManager constructs a user interface (menus and toolbars) from one or more UI definitions, which reference actions from one or more action groups.\n\n\nVBox\t\n\nA GtkVBox is a container that organizes child widgets into a single column.\n\n\nVButtonBox\t\nViewport\t\n\nThe GtkViewport widget acts as an adaptor class, implementing scrollability for child widgets that lack their own scrolling capabilities. Use GtkViewport to scroll child widgets such as GtkGrid, GtkBox, and so on.\n\n\nVolumeButton\t\n\nGtkVolumeButton is a subclass of GtkScaleButton that has been tailored for use as a volume control widget with suitable icons, tooltips and accessible labels.\n\n\nVPaned\t\n\nThe VPaned widget is a container widget with two children arranged vertically. The division between the two panes is adjustable by the user by dragging a handle. See GtkPaned for details.\n\n\nVScale\t\n\nThe GtkVScale widget is used to allow the user to select a value using a vertical slider. To create one, use gtk_hscale_new_with_range().\n\n\nVScrollbar\t\n\nThe GtkVScrollbar widget is a widget arranged vertically creating a scrollbar. See GtkScrollbar for details on scrollbars. GtkAdjustment pointers may be added to handle the adjustment of the scrollbar or it may be left NULL in which case one will be created for you. See GtkScrollbar for a description of what the fields in an adjustment represent for a scrollbar.\n\n\nVSeparator\t\n\nThe GtkVSeparator widget is a vertical separator, used to group the widgets within a window. It displays a vertical line with a shadow to make it appear sunken into the interface.\n\n\nWidget\t\n\nGtkWidget is the base class all widgets in GTK+ derive from. It manages the widget lifecycle, states and style.\n\n\nWidgetAccessible\t\nWindow\t\n\nA GtkWindow is a toplevel window which can contain other widgets. Windows normally have decorations that are under the control of the windowing system and allow the user to manipulate the window (resize it, move it, close it,…).\n\n\nWindowAccessible\t\nWindowGroup\t\n\nA GtkWindowGroup restricts the effect of grabs to windows in the same group, thereby making window groups almost behave like separate applications.\n\n[−]\nInterfaces\nActionable\t\n\nThis interface provides a convenient way of associating widgets with actions on a GtkApplicationWindow or GtkApplication.\n\n\nActivatable\t\n\nActivatable widgets can be connected to a GtkAction and reflects the state of its action. A GtkActivatable can also provide feedback through its action, as they are responsible for activating their related actions.\n\n\nAppChooser\t\n\nGtkAppChooser is an interface that can be implemented by widgets which allow the user to choose an application (typically for the purpose of opening a file). The main objects that implement this interface are GtkAppChooserWidget, GtkAppChooserDialog and GtkAppChooserButton.\n\n\nBuildable\t\n\nGtkBuildable allows objects to extend and customize their deserialization from [GtkBuilder UI descriptions][BUILDER-UI]. The interface includes methods for setting names and properties of objects, parsing custom tags and constructing child objects.\n\n\nCellAccessibleParent\t\nCellEditable\t\n\nThe GtkCellEditable interface must be implemented for widgets to be usable to edit the contents of a GtkTreeView cell. It provides a way to specify how temporary widgets should be configured for editing, get the new value, etc.\n\n\nCellLayout\t\n\nGtkCellLayout is an interface to be implemented by all objects which want to provide a GtkTreeViewColumn like API for packing cells, setting attributes and data funcs.\n\n\nColorChooser\t\n\nGtkColorChooser is an interface that is implemented by widgets for choosing colors. Depending on the situation, colors may be allowed to have alpha (translucency).\n\n\nEditable\t\n\nThe GtkEditable interface is an interface which should be implemented by text editing widgets, such as GtkEntry and GtkSpinButton. It contains functions for generically manipulating an editable widget, a large number of action signals used for key bindings, and several signals that an application can connect to to modify the behavior of a widget.\n\n\nFileChooser\t\n\nGtkFileChooser is an interface that can be implemented by file selection widgets. In GTK+, the main objects that implement this interface are GtkFileChooserWidget, GtkFileChooserDialog, and GtkFileChooserButton. You do not need to write an object that implements the GtkFileChooser interface unless you are trying to adapt an existing file selector to expose a standard programming interface.\n\n\nFontChooser\t\n\nGtkFontChooser is an interface that can be implemented by widgets displaying the list of fonts. In GTK+, the main objects that implement this interface are GtkFontChooserWidget, GtkFontChooserDialog and GtkFontButton. The GtkFontChooser interface has been introducted in GTK+ 3.2.\n\n\nOrientable\t\n\nThe GtkOrientable interface is implemented by all widgets that can be oriented horizontally or vertically. Historically, such widgets have been realized as subclasses of a common base class (e.g GtkBox/GtkHBox/GtkVBox or GtkScale/GtkHScale/GtkVScale). GtkOrientable is more flexible in that it allows the orientation to be changed at runtime, allowing the widgets to “flip”.\n\n\nPrintOperationPreview\t\nRecentChooser\t\n\nGtkRecentChooser is an interface that can be implemented by widgets displaying the list of recently used files. In GTK+, the main objects that implement this interface are GtkRecentChooserWidget, GtkRecentChooserDialog and GtkRecentChooserMenu.\n\n\nScrollable\t\n\nGtkScrollable is an interface that is implemented by widgets with native scrolling ability.\n\n\nStyleProvider\t\n\nGtkStyleProvider is an interface used to provide style information to a GtkStyleContext. See gtk_style_context_add_provider() and gtk_style_context_add_provider_for_screen().\n\n\nToolShell\t\n\nThe GtkToolShell interface allows container widgets to provide additional information when embedding GtkToolItem widgets.\n\n\nTreeDragDest\t\nTreeDragSource\t\nTreeModel\t\n\nThe GtkTreeModel interface defines a generic tree interface for use by the GtkTreeView widget. It is an abstract interface, and is designed to be usable with any appropriate data structure. The programmer just has to implement this interface on their own data type for it to be viewable by a GtkTreeView widget.\n\n\nTreeSortable\t\n\nGtkTreeSortable is an interface to be implemented by tree models which support sorting. The GtkTreeView uses the methods provided by this interface to sort the model.\n\n[−]\nStructs\n_MountOperationHandler\t\n\nAbstract interface type for the D-Bus interface org.Gtk.MountOperationHandler.\n\n\n_MountOperationHandlerIface\t\n\nVirtual table for the D-Bus interface org.Gtk.MountOperationHandler.\n\n\n_MountOperationHandlerProxy\t\n\nThe #_GtkMountOperationHandlerProxy structure contains only private data and should only be accessed using the provided API.\n\n\n_MountOperationHandlerProxyClass\t\n\nClass structure for #_GtkMountOperationHandlerProxy.\n\n\n_MountOperationHandlerSkeleton\t\n\nThe #_GtkMountOperationHandlerSkeleton structure contains only private data and should only be accessed using the provided API.\n\n\n_MountOperationHandlerSkeletonClass\t\n\nClass structure for #_GtkMountOperationHandlerSkeleton.\n\n\nAccelGroupEntry\t\nAccelKey\t\nActionEntry\t\n\nGtkActionEntry structs are used with gtk_action_group_add_actions() to construct actions.\n\n\nBindingArg\t\n\nA GtkBindingArg holds the data associated with an argument for a key binding signal emission as stored in GtkBindingSignal.\n\n\nBindingEntry\t\n\nEach key binding element of a binding sets binding list is represented by a GtkBindingEntry.\n\n\nBindingSet\t\n\nA binding set maintains a list of activatable key bindings. A single binding set can match multiple types of widgets. Similar to style contexts, can be matched by any information contained in a widgets GtkWidgetPath. When a binding within a set is matched upon activation, an action signal is emitted on the target widget to carry out the actual activation.\n\n\nBindingSignal\t\n\nA GtkBindingSignal stores the necessary information to activate a widget in response to a key press via a signal emission.\n\n\nBorder\t\n\nA struct that specifies a border around a rectangular area that can be of different width on each side.\n\n\nCssSection\t\n\nDefines a part of a CSS document. Because sections are nested into one another, you can use gtk_css_section_get_parent() to get the containing region.\n\n\nFileFilterInfo\t\n\nA GtkFileFilterInfo-struct is used to pass information about the tested file to gtk_file_filter_filter().\n\n\nFixedChild\t\nGradient\t\n\nGtkGradient is a boxed type that represents a gradient. It is the result of parsing a [gradient expression][gtkcssprovider-gradients]. To obtain the gradient represented by a GtkGradient, it has to be resolved with gtk_gradient_resolve(), which replaces all symbolic color references by the colors they refer to (in a given context) and constructs a #cairo_pattern_t value.\n\n\nIconSet\t\nIconSource\t\nIMContextInfo\t\n\nBookkeeping information about a loadable input method.\n\n\nLabelSelectionInfo\t\nPadActionEntry\t\n\nStruct defining a pad action entry.\n\n\nPageRange\t\n\nSee also gtk_print_settings_set_page_ranges().\n\n\nPaperSize\t\n\nGtkPaperSize handles paper sizes. It uses the standard called PWG 5101.1-2002 PWG: Standard for Media Standardized Names to name the paper sizes (and to get the data for the page sizes). In addition to standard paper sizes, GtkPaperSize allows to construct custom paper sizes with arbitrary dimensions.\n\n\nRadioActionEntry\t\n\nGtkRadioActionEntry structs are used with gtk_action_group_add_radio_actions() to construct groups of radio actions.\n\n\nRcContext\t\nRcProperty\t\n\nDeprecated.\n\n\nRecentData\t\n\nMeta-data to be passed to gtk_recent_manager_add_full() when registering a recently used resource.\n\n\nRecentFilterInfo\t\n\nA GtkRecentFilterInfo struct is used to pass information about the tested file to gtk_recent_filter_filter().\n\n\nRecentInfo\t\n\nGtkRecentInfo-struct contains private data only, and should be accessed using the provided API.\n\n\nRequestedSize\t\n\nRepresents a request of a screen object in a given orientation. These are primarily used in container implementations when allocating a natural size for children calling. See gtk_distribute_natural_allocation().\n\n\nRequisition\t\n\nA GtkRequisition-struct represents the desired size of a widget. See [GtkWidget’s geometry management section][geometry-management] for more information.\n\n\nSelectionData\t\nSettingsValue\t\nStockItem\t\nSymbolicColor\t\n\nGtkSymbolicColor is a boxed type that represents a symbolic color. It is the result of parsing a [color expression][gtkcssprovider-symbolic-colors]. To obtain the color represented by a GtkSymbolicColor, it has to be resolved with gtk_symbolic_color_resolve(), which replaces all symbolic color references by the colors they refer to (in a given context) and evaluates mix, shade and other expressions, resulting in a GdkRGBA value.\n\n\nTableChild\t\nTableRowCol\t\nTargetEntry\t\n\nA GtkTargetEntry represents a single type of data than can be supplied for by a widget for a selection or for supplied or received during drag-and-drop.\n\n\nTargetList\t\n\nA GtkTargetList-struct is a reference counted list of GtkTargetPair and should be treated as opaque.\n\n\nTargetPair\t\n\nA GtkTargetPair is used to represent the same information as a table of GtkTargetEntry, but in an efficient form.\n\n\nTextAppearance\t\nTextAttributes\t\n\nUsing GtkTextAttributes directly should rarely be necessary. It’s primarily useful with gtk_text_iter_get_attributes(). As with most GTK+ structs, the fields in this struct should only be read, never modified directly.\n\n\nTextBTree\t\nTextIter\t\n\nYou may wish to begin by reading the [text widget conceptual overview][TextWidget] which gives an overview of all the objects and data types related to the text widget and how they work together.\n\n\nThemeEngine\t\nToggleActionEntry\t\n\nGtkToggleActionEntry structs are used with gtk_action_group_add_toggle_actions() to construct toggle actions.\n\n\nTreeIter\t\n\nThe GtkTreeIter is the primary structure for accessing a GtkTreeModel. Models are expected to put a unique integer in the stamp member, and put model-specific data in the three user_data members.\n\n\nTreePath\t\nTreeRowReference\t\n\nA GtkTreeRowReference tracks model changes so that it always refers to the same row (a GtkTreePath refers to a position, not a fixed row). Create a new GtkTreeRowReference with gtk_tree_row_reference_new().\n\n\nWidgetPath\t\n\nGtkWidgetPath is a boxed type that represents a widget hierarchy from the topmost widget, typically a toplevel, to any child. This widget path abstraction is used in GtkStyleContext on behalf of the real widget in order to query style information.\n\n\nWindowGeometryInfo\t\n[−]\nAliases\nAllocation\t\n\nA GtkAllocation-struct of a widget represents region which has been allocated to the widget by its parent. It is a subregion of its parents allocation. See [GtkWidget’s geometry management section][geometry-management] for more information.\n\n\nStock\t\n[−]\nEnumerations\nAlign\t\n\nControls how a widget deals with extra space in a single (x or y) dimension.\n\n\nArrowPlacement\t\n\nUsed to specify the placement of scroll arrows in scrolling menus.\n\n\nArrowType\t\n\nUsed to indicate the direction in which an arrow should point.\n\n\nAssistantPageType\t\n\nAn enum for determining the page role inside the GtkAssistant. It’s used to handle buttons sensitivity and visibility.\n\n\nBaselinePosition\t\n\nWhenever a container has some form of natural row it may align children in that row along a common typographical baseline. If the amount of verical space in the row is taller than the total requested height of the baseline-aligned children then it can use a GtkBaselinePosition to select where to put the baseline inside the extra availible space.\n\n\nBorderStyle\t\n\nDescribes how the border of a UI element should be rendered.\n\n\nButtonBoxStyle\t\n\nUsed to dictate the style that a GtkButtonBox uses to layout the buttons it contains.\n\n\nButtonRole\t\n\nThe role specifies the desired appearance of a GtkModelButton.\n\n\nButtonsType\t\n\nPrebuilt sets of buttons for the dialog. If none of these choices are appropriate, simply use GTK_BUTTONS_NONE then call gtk_dialog_add_buttons().\n\n\nCellRendererAccelMode\t\n\nDetermines if the edited accelerators are GTK+ accelerators. If they are, consumed modifiers are suppressed, only accelerators accepted by GTK+ are allowed, and the accelerators are rendered in the same way as they are in menus.\n\n\nCellRendererMode\t\n\nIdentifies how the user can interact with a particular cell.\n\n\nCornerType\t\n\nSpecifies which corner a child widget should be placed in when packed into a GtkScrolledWindow. This is effectively the opposite of where the scroll bars are placed.\n\n\nCssSectionType\t\n\nThe different types of sections indicate parts of a CSS document as parsed by GTK’s CSS parser. They are oriented towards the CSS Grammar, but may contain extensions.\n\n\nDeleteType\t\n\nSee also: GtkEntry::delete-from-cursor.\n\n\nDirectionType\t\n\nFocus movement types.\n\n\nDragResult\t\n\nGives an indication why a drag operation failed. The value can by obtained by connecting to the GtkWidget::drag-failed signal.\n\n\nEntryIconPosition\t\n\nSpecifies the side of the entry at which an icon is placed.\n\n\nEventSequenceState\t\n\nDescribes the state of a GdkEventSequence in a GtkGesture.\n\n\nExpanderStyle\t\n\nUsed to specify the style of the expanders drawn by a GtkTreeView.\n\n\nFileChooserAction\t\n\nDescribes whether a GtkFileChooser is being used to open existing files or to save to a possibly new file.\n\n\nFileChooserConfirmation\t\n\nUsed as a return value of handlers for the GtkFileChooser::confirm-overwrite signal of a GtkFileChooser. This value determines whether the file chooser will present the stock confirmation dialog, accept the user’s choice of a filename, or let the user choose another filename.\n\n\nIconSize\t\n\nBuilt-in stock icon sizes.\n\n\nIconViewDropPosition\t\n\nAn enum for determining where a dropped item goes.\n\n\nImageType\t\n\nDescribes the image data representation used by a GtkImage. If you want to get the image from the widget, you can only get the currently-stored representation. e.g. if the gtk_image_get_storage_type() returns #GTK_IMAGE_PIXBUF, then you can call gtk_image_get_pixbuf() but not gtk_image_get_stock(). For empty images, you can request any storage type (call any of the “get” functions), but they will all return NULL values.\n\n\nIMPreeditStyle\t\n\nStyle for input method preedit. See also GtkSettings:gtk-im-preedit-style.\n\n\nIMStatusStyle\t\n\nStyle for input method status. See also GtkSettings:gtk-im-status-style.\n\n\nInputPurpose\t\n\nDescribes primary purpose of the input widget. This information is useful for on-screen keyboards and similar input methods to decide which keys should be presented to the user.\n\n\nJustification\t\n\nUsed for justifying the text inside a GtkLabel widget. (See also GtkAlignment).\n\n\nLevelBarMode\t\n\nDescribes how GtkLevelBar contents should be rendered. Note that this enumeration could be extended with additional modes in the future.\n\n\nLicense\t\n\nThe type of license for an application.\n\n\nMenuDirectionType\t\n\nAn enumeration representing directional movements within a menu.\n\n\nMessageType\t\n\nThe type of message being displayed in the dialog.\n\n\nMovementStep\t\nNotebookTab\t\nNumberUpLayout\t\n\nUsed to determine the layout of pages on a sheet when printing multiple pages per sheet.\n\n\nOrientation\t\n\nRepresents the orientation of widgets and other objects which can be switched between horizontal and vertical orientation on the fly, like GtkToolbar or GtkGesturePan.\n\n\nPackDirection\t\n\nDetermines how widgets should be packed inside menubars and menuitems contained in menubars.\n\n\nPackType\t\n\nRepresents the packing location GtkBox children. (See: GtkVBox, GtkHBox, and GtkButtonBox).\n\n\nPadActionType\t\n\nThe type of a pad action.\n\n\nPageOrientation\t\n\nSee also gtk_print_settings_set_orientation().\n\n\nPageSet\t\n\nSee also gtk_print_job_set_page_set().\n\n\nPanDirection\t\n\nDescribes the panning direction of a GtkGesturePan.\n\n\nPathPriorityType\t\n\nPriorities for path lookups. See also gtk_binding_set_add_path().\n\n\nPathType\t\n\nWidget path types. See also gtk_binding_set_add_path().\n\n\nPolicyType\t\n\nDetermines how the size should be computed to achieve the one of the visibility mode for the scrollbars.\n\n\nPopoverConstraint\t\n\nDescribes constraints to positioning of popovers. More values may be added to this enumeration in the future.\n\n\nPositionType\t\n\nDescribes which edge of a widget a certain feature is positioned at, e.g. the tabs of a GtkNotebook, the handle of a GtkHandleBox or the label of a GtkScale.\n\n\nPrintDuplex\t\n\nSee also gtk_print_settings_set_duplex().\n\n\nPrintOperationAction\t\n\nThe action parameter to gtk_print_operation_run() determines what action the print operation should perform.\n\n\nPrintOperationResult\t\n\nA value of this type is returned by gtk_print_operation_run().\n\n\nPrintPages\t\n\nSee also gtk_print_job_set_pages()\n\n\nPrintQuality\t\n\nSee also gtk_print_settings_set_quality().\n\n\nPrintStatus\t\n\nThe status gives a rough indication of the completion of a running print operation.\n\n\nPropagationPhase\t\n\nDescribes the stage at which events are fed into a GtkEventController.\n\n\nRcTokenType\t\n\nThe GtkRcTokenType enumeration represents the tokens in the RC file. It is exposed so that theme engines can reuse these tokens when parsing the theme-engine specific portions of a RC file.\n\n\nRecentSortType\t\n\nUsed to specify the sorting method to be applyed to the recently used resource list.\n\n\nReliefStyle\t\n\nIndicated the relief to be drawn around a GtkButton.\n\n\nResizeMode\t\nResponseType\t\n\nPredefined values for use as response ids in gtk_dialog_add_button(). All predefined values are negative; GTK+ leaves values of 0 or greater for application-defined response ids.\n\n\nRevealerTransitionType\t\n\nThese enumeration values describe the possible transitions when the child of a GtkRevealer widget is shown or hidden.\n\n\nScrollablePolicy\t\n\nDefines the policy to be used in a scrollable widget when updating the scrolled window adjustments in a given orientation.\n\n\nScrollStep\t\nScrollType\t\n\nScrolling types.\n\n\nSelectionMode\t\n\nUsed to control what selections users are allowed to make.\n\n\nSensitivityType\t\n\nDetermines how GTK+ handles the sensitivity of stepper arrows at the end of range widgets.\n\n\nShadowType\t\n\nUsed to change the appearance of an outline typically provided by a GtkFrame.\n\n\nShortcutType\t\n\nGtkShortcutType specifies the kind of shortcut that is being described. More values may be added to this enumeration over time.\n\n\nSizeGroupMode\t\n\nThe mode of the size group determines the directions in which the size group affects the requested sizes of its component widgets.\n\n\nSizeRequestMode\t\n\nSpecifies a preference for height-for-width or width-for-height geometry management.\n\n\nSortType\t\n\nDetermines the direction of a sort.\n\n\nSpinButtonUpdatePolicy\t\n\nThe spin button update policy determines whether the spin button displays values even if they are outside the bounds of its adjustment. See gtk_spin_button_set_update_policy().\n\n\nSpinType\t\n\nThe values of the GtkSpinType enumeration are used to specify the change to make in gtk_spin_button_spin().\n\n\nStackTransitionType\t\n\nThese enumeration values describe the possible transitions between pages in a GtkStack widget.\n\n\nStateType\t\n\nThis type indicates the current state of a widget; the state determines how the widget is drawn. The GtkStateType enumeration is also used to identify different colors in a GtkStyle for drawing, so states can be used for subparts of a widget as well as entire widgets.\n\n\nTextBufferTargetInfo\t\n\nThese values are used as “info” for the targets contained in the lists returned by gtk_text_buffer_get_copy_target_list() and gtk_text_buffer_get_paste_target_list().\n\n\nTextDirection\t\n\nReading directions for text.\n\n\nTextExtendSelection\t\n\nGranularity types that extend the text selection. Use the GtkTextView::extend-selection signal to customize the selection.\n\n\nTextViewLayer\t\n\nUsed to reference the layers of GtkTextView for the purpose of customized drawing with the ::draw_layer vfunc.\n\n\nTextWindowType\t\n\nUsed to reference the parts of GtkTextView.\n\n\nToolbarSpaceStyle\t\n\nWhether spacers are vertical lines or just blank.\n\n\nToolbarStyle\t\n\nUsed to customize the appearance of a GtkToolbar. Note that setting the toolbar style overrides the user’s preferences for the default toolbar style. Note that if the button has only a label set and GTK_TOOLBAR_ICONS is used, the label will be visible, and vice versa.\n\n\nTreeViewColumnSizing\t\n\nThe sizing method the column uses to determine its width. Please note that GTK_TREE_VIEW_COLUMN_AUTOSIZE are inefficient for large views, and can make columns appear choppy.\n\n\nTreeViewDropPosition\t\n\nAn enum for determining where a dropped row goes.\n\n\nTreeViewGridLines\t\n\nUsed to indicate which grid lines to draw in a tree view.\n\n\nUnit\t\n\nSee also gtk_print_settings_set_paper_width().\n\n\nWidgetHelpType\t\n\nKinds of widget-specific help. Used by the ::show-help signal.\n\n\nWindowPosition\t\n\nWindow placement can be influenced using this enumeration. Note that using #GTK_WIN_POS_CENTER_ALWAYS is almost always a bad idea. It won’t necessarily work well with all window managers or on all windowing systems.\n\n\nWindowType\t\n\nA GtkWindow can be one of these types. Most things you’d consider a “window” should have type #GTK_WINDOW_TOPLEVEL; windows with this type are managed by the window manager and have a frame by default (call gtk_window_set_decorated() to toggle the frame). Windows with type\n\nGTK_WINDOW_POPUP are ignored by the window manager; window manager\n\nkeybindings won’t work on them, the window manager won’t decorate the window with a frame, many GTK+ features that rely on the window manager will not work (e.g. resize grips and maximization/minimization). #GTK_WINDOW_POPUP is used to implement widgets such as GtkMenu or tooltips that you normally don’t think of as windows per se. Nearly all windows should be #GTK_WINDOW_TOPLEVEL. In particular, do not use #GTK_WINDOW_POPUP just to turn off the window borders; use gtk_window_set_decorated() for that.\n\n\nWrapMode\t\n\nDescribes a type of line wrapping.\n\n[−]\nBitfields\nAccelFlags\t\n\nAccelerator flags used with gtk_accel_group_connect().\n\n\nApplicationInhibitFlags\t\n\nTypes of user actions that may be blocked by gtk_application_inhibit().\n\n\nAttachOptions\t\n\nDenotes the expansion properties that a widget will have when it (or its parent) is resized.\n\n\nCalendarDisplayOptions\t\n\nThese options can be used to influence the display and behaviour of a GtkCalendar.\n\n\nCellRendererState\t\n\nTells how a cell is to be rendered.\n\n\nDebugFlag\t\nDestDefaults\t\n\nThe GtkDestDefaults enumeration specifies the various types of action that will be taken on behalf of the user for a drag destination site.\n\n\nDialogFlags\t\n\nFlags used to influence dialog construction.\n\n\nEventControllerScrollFlags\t\n\nDescribes the behavior of a GtkEventControllerScroll.\n\n\nFileFilterFlags\t\n\nThese flags indicate what parts of a GtkFileFilterInfo struct are filled or need to be filled.\n\n\nFontChooserLevel\t\n\nThis enumeration specifies the granularity of font selection that is desired in a font chooser.\n\n\nIconLookupFlags\t\n\nUsed to specify options for gtk_icon_theme_lookup_icon()\n\n\nInputHints\t\n\nDescribes hints that might be taken into account by input methods or applications. Note that input methods may already tailor their behaviour according to the GtkInputPurpose of the entry.\n\n\nJunctionSides\t\n\nDescribes how a rendered element connects to adjacent elements.\n\n\nPlacesOpenFlags\t\n\nThese flags serve two purposes. First, the application can call gtk_places_sidebar_set_open_flags() using these flags as a bitmask. This tells the sidebar that the application is able to open folders selected from the sidebar in various ways, for example, in new tabs or in new windows in addition to the normal mode.\n\n\nRcFlags\t\n\nDeprecated.\n\n\nRecentFilterFlags\t\n\nThese flags indicate what parts of a GtkRecentFilterInfo struct are filled or need to be filled.\n\n\nRegionFlags\t\n\nDescribes a region within a widget.\n\n\nStateFlags\t\n\nDescribes a widget state. Widget states are used to match the widget against CSS pseudo-classes. Note that GTK extends the regular CSS classes and sometimes uses different names.\n\n\nStyleContextPrintFlags\t\n\nFlags that modify the behavior of gtk_style_context_to_string(). New values may be added to this enumeration.\n\n\nTargetFlags\t\n\nThe GtkTargetFlags enumeration is used to specify constraints on a GtkTargetEntry.\n\n\nTextSearchFlags\t\n\nFlags affecting how a search is done.\n\n\nToolPaletteDragTargets\t\n\nFlags used to specify the supported drag targets.\n\n\nTreeModelFlags\t\n\nThese flags indicate various properties of a GtkTreeModel.\n\n\nUIManagerItemType\t\n\nThese enumeration values are used by gtk_ui_manager_add_ui() to determine what UI element to create.\n\n[−]\nError Domains\nBuilderError\t\n\nError codes that identify various errors that can occur while using GtkBuilder.\n\n\nCssProviderError\t\n\nError codes for GTK_CSS_PROVIDER_ERROR.\n\n\nFileChooserError\t\n\nThese identify the various errors that can occur while calling GtkFileChooser functions.\n\n\nIconThemeError\t\n\nError codes for GtkIconTheme operations.\n\n\nPrintError\t\n\nError codes that identify various errors that can occur while using the GTK+ printing support.\n\n\nRecentChooserError\t\n\nThese identify the various errors that can occur while calling GtkRecentChooser functions.\n\n\nRecentManagerError\t\n\nError codes for GtkRecentManager operations.\n\n[−]\nCallbacks\nAccelGroupActivate\t\nAccelGroupFindFunc\t\nAccelMapForeach\t\nAssistantPageFunc\t\n\nA function used by gtk_assistant_set_forward_page_func() to know which is the next page given a current one. It’s called both for computing the next page when the user presses the “forward” button and for handling the behavior of the “last” button.\n\n\nBuilderConnectFunc\t\n\nThis is the signature of a function used to connect signals. It is used by the gtk_builder_connect_signals() and gtk_builder_connect_signals_full() methods. It is mainly intended for interpreted language bindings, but could be useful where the programmer wants more control over the signal connection process. Note that this function can only be called once, subsequent calls will do nothing.\n\n\nCalendarDetailFunc\t\n\nThis kind of functions provide Pango markup with detail information for the specified day. Examples for such details are holidays or appointments. The function returns NULL when no information is available.\n\n\nCallback\t\n\nThe type of the callback functions used for e.g. iterating over the children of a container, see gtk_container_foreach().\n\n\nCellAllocCallback\t\n\nThe type of the callback functions used for iterating over the cell renderers and their allocated areas inside a GtkCellArea, see gtk_cell_area_foreach_alloc().\n\n\nCellCallback\t\n\nThe type of the callback functions used for iterating over the cell renderers of a GtkCellArea, see gtk_cell_area_foreach().\n\n\nCellLayoutDataFunc\t\n\nA function which should set the value of cell_layout’s cell renderer(s) as appropriate.\n\n\nClipboardClearFunc\t\n\nA function that will be called when the contents of the clipboard are changed or cleared. Once this has called, the user_data_or_owner argument will not be used again.\n\n\nClipboardGetFunc\t\n\nA function that will be called to provide the contents of the selection. If multiple types of data were advertised, the requested type can be determined from the info parameter or by checking the target field of selection_data. If the data could successfully be converted into then it should be stored into the selection_data object by calling gtk_selection_data_set() (or related functions such as gtk_selection_data_set_text()). If no data is set, the requestor will be informed that the attempt to get the data failed.\n\n\nClipboardImageReceivedFunc\t\n\nA function to be called when the results of gtk_clipboard_request_image() are received, or when the request fails.\n\n\nClipboardReceivedFunc\t\n\nA function to be called when the results of gtk_clipboard_request_contents() are received, or when the request fails.\n\n\nClipboardRichTextReceivedFunc\t\n\nA function to be called when the results of gtk_clipboard_request_rich_text() are received, or when the request fails.\n\n\nClipboardTargetsReceivedFunc\t\n\nA function to be called when the results of gtk_clipboard_request_targets() are received, or when the request fails.\n\n\nClipboardTextReceivedFunc\t\n\nA function to be called when the results of gtk_clipboard_request_text() are received, or when the request fails.\n\n\nClipboardURIReceivedFunc\t\n\nA function to be called when the results of gtk_clipboard_request_uris() are received, or when the request fails.\n\n\nColorSelectionChangePaletteFunc\t\nColorSelectionChangePaletteWithScreenFunc\t\nEntryCompletionMatchFunc\t\n\nA function which decides whether the row indicated by iter matches a given key, and should be displayed as a possible completion for key. Note that key is normalized and case-folded (see g_utf8_normalize() and g_utf8_casefold()). If this is not appropriate, match functions have access to the unmodified key via gtk_entry_get_text (GTK_ENTRY (gtk_entry_completion_get_entry ())).\n\n\nFileFilterFunc\t\n\nThe type of function that is used with custom filters, see gtk_file_filter_add_custom().\n\n\nFlowBoxCreateWidgetFunc\t\n\nCalled for flow boxes that are bound to a GListModel with gtk_flow_box_bind_model() for each item that gets added to the model.\n\n\nFlowBoxFilterFunc\t\n\nA function that will be called whenrever a child changes or is added. It lets you control if the child should be visible or not.\n\n\nFlowBoxForeachFunc\t\n\nA function used by gtk_flow_box_selected_foreach(). It will be called on every selected child of the box.\n\n\nFlowBoxSortFunc\t\n\nA function to compare two children to determine which should come first.\n\n\nFontFilterFunc\t\n\nThe type of function that is used for deciding what fonts get shown in a GtkFontChooser. See gtk_font_chooser_set_filter_func().\n\n\nIconViewForeachFunc\t\n\nA function used by gtk_icon_view_selected_foreach() to map all selected rows. It will be called on every selected row in the view.\n\n\nKeySnoopFunc\t\n\nKey snooper functions are called before normal event delivery. They can be used to implement custom key event handling.\n\n\nListBoxCreateWidgetFunc\t\n\nCalled for list boxes that are bound to a GListModel with gtk_list_box_bind_model() for each item that gets added to the model.\n\n\nListBoxFilterFunc\t\n\nWill be called whenever the row changes or is added and lets you control if the row should be visible or not.\n\n\nListBoxForeachFunc\t\n\nA function used by gtk_list_box_selected_foreach(). It will be called on every selected child of the box.\n\n\nListBoxSortFunc\t\n\nCompare two rows to determine which should be first.\n\n\nListBoxUpdateHeaderFunc\t\n\nWhenever row changes or which row is before row changes this is called, which lets you update the header on row. You may remove or set a new one via gtk_list_box_row_set_header() or just change the state of the current header widget.\n\n\nMenuDetachFunc\t\n\nA user function supplied when calling gtk_menu_attach_to_widget() which will be called when the menu is later detached from the widget.\n\n\nMenuPositionFunc\t\n\nA user function supplied when calling gtk_menu_popup() which controls the positioning of the menu when it is displayed. The function sets the x and y parameters to the coordinates where the menu is to be drawn. To make the menu appear on a different monitor than the mouse pointer, gtk_menu_set_monitor() must be called.\n\n\nModuleDisplayInitFunc\t\n\nA multihead-aware GTK+ module may have a gtk_module_display_init() function with this prototype. GTK+ calls this function for each opened display.\n\n\nModuleInitFunc\t\n\nEach GTK+ module must have a function gtk_module_init() with this prototype. This function is called after loading the module.\n\n\nPageSetupDoneFunc\t\n\nThe type of function that is passed to gtk_print_run_page_setup_dialog_async().\n\n\nPrintSettingsFunc\t\nRcPropertyParser\t\nRecentFilterFunc\t\n\nThe type of function that is used with custom filters, see gtk_recent_filter_add_custom().\n\n\nRecentSortFunc\t\nStylePropertyParser\t\nTextBufferDeserializeFunc\t\n\nA function that is called to deserialize rich text that has been serialized with gtk_text_buffer_serialize(), and insert it at iter.\n\n\nTextBufferSerializeFunc\t\n\nA function that is called to serialize the content of a text buffer. It must return the serialized form of the content.\n\n\nTextCharPredicate\t\nTextTagTableForeach\t\nTickCallback\t\n\nCallback type for adding a function to update animations. See gtk_widget_add_tick_callback().\n\n\nTranslateFunc\t\n\nThe function used to translate messages in e.g. GtkIconFactory and GtkActionGroup.\n\n\nTreeCellDataFunc\t\n\nA function to set the properties of a cell instead of just using the straight mapping between the cell and the model. This is useful for customizing the cell renderer. For example, a function might get an integer from the tree_model, and render it to the “text” attribute of “cell” by converting it to its written equivalent. This is set by calling gtk_tree_view_column_set_cell_data_func()\n\n\nTreeDestroyCountFunc\t\nTreeIterCompareFunc\t\n\nA GtkTreeIterCompareFunc should return a negative integer, zero, or a positive integer if a sorts before b, a sorts with b, or a sorts after b respectively. If two iters compare as equal, their order in the sorted model is undefined. In order to ensure that the GtkTreeSortable behaves as expected, the GtkTreeIterCompareFunc must define a partial order on the model, i.e. it must be reflexive, antisymmetric and transitive.\n\n\nTreeModelFilterModifyFunc\t\n\nA function which calculates display values from raw values in the model. It must fill value with the display value for the column column in the row indicated by iter.\n\n\nTreeModelFilterVisibleFunc\t\n\nA function which decides whether the row indicated by iter is visible.\n\n\nTreeModelForeachFunc\t\n\nType of the callback passed to gtk_tree_model_foreach() to iterate over the rows in a tree model.\n\n\nTreeSelectionForeachFunc\t\n\nA function used by gtk_tree_selection_selected_foreach() to map all selected rows. It will be called on every selected row in the view.\n\n\nTreeSelectionFunc\t\n\nA function used by gtk_tree_selection_set_select_function() to filter whether or not a row may be selected. It is called whenever a row’s state might change. A return value of TRUE indicates to selection that it is okay to change the selection.\n\n\nTreeViewColumnDropFunc\t\n\nFunction type for determining whether column can be dropped in a particular spot (as determined by prev_column and next_column). In left to right locales, prev_column is on the left of the potential drop spot, and next_column is on the right. In right to left mode, this is reversed. This function should return TRUE if the spot is a valid drop spot. Please note that returning TRUE does not actually indicate that the column drop was made, but is meant only to indicate a possible drop spot to the user.\n\n\nTreeViewMappingFunc\t\n\nFunction used for gtk_tree_view_map_expanded_rows().\n\n\nTreeViewRowSeparatorFunc\t\n\nFunction type for determining whether the row pointed to by iter should be rendered as a separator. A common way to implement this is to have a boolean column in the model, whose values the GtkTreeViewRowSeparatorFunc returns.\n\n\nTreeViewSearchEqualFunc\t\n\nA function used for checking whether a row in model matches a search key string entered by the user. Note the return value is reversed from what you would normally expect, though it has some similarity to strcmp() returning 0 for equal strings.\n\n\nTreeViewSearchPositionFunc\t\n[−]\nFunctions\naccel_groups_activate\t\n\nFinds the first accelerator in any GtkAccelGroup attached to object that matches accel_key and accel_mods, and activates that accelerator.\n\n\naccel_groups_from_object\t\n\nGets a list of all accel groups which are attached to object.\n\n\naccelerator_get_default_mod_mask\t\n\nGets the modifier mask.\n\n\naccelerator_get_label\t\n\nConverts an accelerator keyval and modifier mask into a string which can be used to represent the accelerator to the user.\n\n\naccelerator_get_label_with_keycode\t\n\nConverts an accelerator keyval and modifier mask into a (possibly translated) string that can be displayed to a user, similarly to gtk_accelerator_get_label(), but handling keycodes.\n\n\naccelerator_name\t\n\nConverts an accelerator keyval and modifier mask into a string parseable by gtk_accelerator_parse(). For example, if you pass in\n\nGDK_KEY_q and #GDK_CONTROL_MASK, this function returns “\nq”.\n\naccelerator_name_with_keycode\t\n\nConverts an accelerator keyval and modifier mask into a string parseable by gtk_accelerator_parse_with_keycode(), similarly to gtk_accelerator_name() but handling keycodes. This is only useful for system-level components, applications should use gtk_accelerator_parse() instead.\n\n\naccelerator_parse\t\n\nParses a string representing an accelerator. The format looks like “a” or “F1” or “z” (the last one is for key release).\n\n\naccelerator_parse_with_keycode\t\n\nParses a string representing an accelerator, similarly to gtk_accelerator_parse() but handles keycodes as well. This is only useful for system-level components, applications should use gtk_accelerator_parse() instead.\n\n\naccelerator_set_default_mod_mask\t\n\nSets the modifiers that will be considered significant for keyboard accelerators. The default mod mask depends on the GDK backend in use, but will typically include #GDK_CONTROL_MASK | #GDK_SHIFT_MASK |\n\nGDK_MOD1_MASK | #GDK_SUPER_MASK | #GDK_HYPER_MASK | #GDK_META_MASK.\n\nIn other words, Control, Shift, Alt, Super, Hyper and Meta. Other modifiers will by default be ignored by GtkAccelGroup.\n\n\naccelerator_valid\t\n\nDetermines whether a given keyval and modifier mask constitute a valid keyboard accelerator. For example, the #GDK_KEY_a keyval plus #GDK_CONTROL_MASK is valid - this is a “Ctrl+a” accelerator. But, you can’t, for instance, use the #GDK_KEY_Control_L keyval as an accelerator.\n\n\nalternative_dialog_button_order\t\n\nReturns TRUE if dialogs are expected to use an alternative button order on the screen screen. See gtk_dialog_set_alternative_button_order() for more details about alternative button order.\n\n\nbindings_activate\t\n\nFind a key binding matching keyval and modifiers and activate the binding on object.\n\n\nbindings_activate_event\t\n\nLooks up key bindings for object to find one matching event, and if one was found, activate it.\n\n\ncairo_should_draw_window\t\n\nThis function is supposed to be called in GtkWidget::draw implementations for widgets that support multiple windows. cr must be untransformed from invoking of the draw function. This function will return TRUE if the contents of the given window are supposed to be drawn and FALSE otherwise. Note that when the drawing was not initiated by the windowing system this function will return TRUE for all windows, so you need to draw the bottommost window first. Also, do not use “else if” statements to check which window should be drawn.\n\n\ncairo_transform_to_window\t\n\nTransforms the given cairo context cr that from widget-relative coordinates to window-relative coordinates. If the widget’s window is not an ancestor of window, no modification will be applied.\n\n\ncheck_version\t\n\nChecks that the GTK+ library in use is compatible with the given version. Generally you would pass in the constants\n\nGTK_MAJOR_VERSION, #GTK_MINOR_VERSION, #GTK_MICRO_VERSION\n\nas the three arguments to this function; that produces a check that the library in use is compatible with the version of GTK+ the application or module was compiled against.\n\n\ndevice_grab_add\t\n\nAdds a GTK+ grab on device, so all the events on device and its associated pointer or keyboard (if any) are delivered to widget. If the block_others parameter is TRUE, any other devices will be unable to interact with widget during the grab.\n\n\ndevice_grab_remove\t\n\nRemoves a device grab from the given widget.\n\n\ndisable_setlocale\t\n\nPrevents gtk_init(), gtk_init_check(), gtk_init_with_args() and gtk_parse_args() from automatically calling setlocale (LC_ALL, ""). You would want to use this function if you wanted to set the locale for your program to something other than the user’s locale, or if you wanted to set different values for different locale categories.\n\n\ndistribute_natural_allocation\t\n\nDistributes extra_space to child sizes by bringing smaller children up to natural size first.\n\n\ndrag_cancel\t\n\nCancels an ongoing drag operation on the source side.\n\n\ndrag_finish\t\n\nInforms the drag source that the drop is finished, and that the data of the drag will no longer be required.\n\n\ndrag_get_source_widget\t\n\nDetermines the source widget for a drag.\n\n\ndrag_set_icon_default\t\n\nSets the icon for a particular drag to the default icon.\n\n\ndrag_set_icon_gicon\t\n\nSets the icon for a given drag from the given icon. See the documentation for gtk_drag_set_icon_name() for more details about using icons in drag and drop.\n\n\ndrag_set_icon_name\t\n\nSets the icon for a given drag from a named themed icon. See the docs for GtkIconTheme for more details. Note that the size of the icon depends on the icon theme (the icon is loaded at the symbolic size #GTK_ICON_SIZE_DND), thus hot_x and hot_y have to be used with care.\n\n\ndrag_set_icon_pixbuf\t\n\nSets pixbuf as the icon for a given drag.\n\n\ndrag_set_icon_stock\t\n\nSets the icon for a given drag from a stock ID.\n\n\ndrag_set_icon_surface\t\n\nSets surface as the icon for a given drag. GTK+ retains references for the arguments, and will release them when they are no longer needed.\n\n\ndrag_set_icon_widget\t\n\nChanges the icon for drag operation to a given widget. GTK+ will not destroy the widget, so if you don’t want it to persist, you should connect to the “drag-end” signal and destroy it yourself.\n\n\ndraw_insertion_cursor\t\n\nDraws a text caret on cr at location. This is not a style function but merely a convenience function for drawing the standard cursor shape.\n\n\nevents_pending\t\n\nChecks if any events are pending.\n\n\nfalse\t\n\nAnalogical to gtk_true(), this function does nothing but always returns FALSE.\n\n\nget_binary_age\t\n\nReturns the binary age as passed to libtool when building the GTK+ library the process is running against. If libtool means nothing to you, don’t worry about it.\n\n\nget_current_event\t\n\nObtains a copy of the event currently being processed by GTK+.\n\n\nget_current_event_device\t\n\nIf there is a current event and it has a device, return that device, otherwise return NULL.\n\n\nget_current_event_state\t\n\nIf there is a current event and it has a state field, place that state field in state and return TRUE, otherwise return FALSE.\n\n\nget_current_event_time\t\n\nIf there is a current event and it has a timestamp, return that timestamp, otherwise return GDK_CURRENT_TIME.\n\n\nget_debug_flags\t\n\nReturns the GTK+ debug flags.\n\n\nget_default_language\t\n\nReturns the PangoLanguage for the default language currently in effect. (Note that this can change over the life of an application.) The default language is derived from the current locale. It determines, for example, whether GTK+ uses the right-to-left or left-to-right text direction.\n\n\nget_event_widget\t\n\nIf event is NULL or the event was not associated with any widget, returns NULL, otherwise returns the widget that received the event originally.\n\n\nget_interface_age\t\n\nReturns the interface age as passed to libtool when building the GTK+ library the process is running against. If libtool means nothing to you, don’t worry about it.\n\n\nget_locale_direction\t\n\nGet the direction of the current locale. This is the expected reading direction for text and UI.\n\n\nget_major_version\t\n\nReturns the major version number of the GTK+ library. (e.g. in GTK+ version 3.1.5 this is 3.)\n\n\nget_micro_version\t\n\nReturns the micro version number of the GTK+ library. (e.g. in GTK+ version 3.1.5 this is 5.)\n\n\nget_minor_version\t\n\nReturns the minor version number of the GTK+ library. (e.g. in GTK+ version 3.1.5 this is 1.)\n\n\nget_option_group\t\n\nReturns a GOptionGroup for the commandline arguments recognized by GTK+ and GDK.\n\n\ngrab_get_current\t\n\nQueries the current grab of the default window group.\n\n\ninit\t\n\nCall this function before using any other GTK+ functions in your GUI applications. It will initialize everything needed to operate the toolkit and parses some standard command line options.\n\n\ninit_check\t\n\nThis function does the same work as gtk_init() with only a single change: It does not terminate the program if the commandline arguments couldn’t be parsed or the windowing system can’t be initialized. Instead it returns FALSE on failure.\n\n\ninit_with_args\t\n\nThis function does the same work as gtk_init_check(). Additionally, it allows you to add your own commandline options, and it automatically generates nicely formatted --help output. Note that your program will be terminated after writing out the help output.\n\n\nkey_snooper_install\t\n\nInstalls a key snooper function, which will get called on all key events before delivering them normally.\n\n\nkey_snooper_remove\t\n\nRemoves the key snooper function with the given id.\n\n\nmain\t\n\nRuns the main loop until gtk_main_quit() is called.\n\n\nmain_do_event\t\n\nProcesses a single GDK event.\n\n\nmain_iteration\t\n\nRuns a single iteration of the mainloop.\n\n\nmain_iteration_do\t\n\nRuns a single iteration of the mainloop. If no events are available either return or block depending on the value of blocking.\n\n\nmain_level\t\n\nAsks for the current nesting level of the main loop.\n\n\nmain_quit\t\n\nMakes the innermost invocation of the main loop return when it regains control.\n\n\npaint_arrow\t\n\nDraws an arrow in the given rectangle on cr using the given parameters. arrow_type determines the direction of the arrow.\n\n\npaint_box\t\n\nDraws a box on cr with the given parameters.\n\n\npaint_box_gap\t\n\nDraws a box in cr using the given style and state and shadow type, leaving a gap in one side.\n\n\npaint_check\t\n\nDraws a check button indicator in the given rectangle on cr with the given parameters.\n\n\npaint_diamond\t\n\nDraws a diamond in the given rectangle on window using the given parameters.\n\n\npaint_expander\t\n\nDraws an expander as used in GtkTreeView. x and y specify the center the expander. The size of the expander is determined by the “expander-size” style property of widget. (If widget is not specified or doesn’t have an “expander-size” property, an unspecified default size will be used, since the caller doesn’t have sufficient information to position the expander, this is likely not useful.) The expander is expander_size pixels tall in the collapsed position and expander_size pixels wide in the expanded position.\n\n\npaint_extension\t\n\nDraws an extension, i.e. a notebook tab.\n\n\npaint_flat_box\t\n\nDraws a flat box on cr with the given parameters.\n\n\npaint_focus\t\n\nDraws a focus indicator around the given rectangle on cr using the given style.\n\n\npaint_handle\t\n\nDraws a handle as used in GtkHandleBox and GtkPaned.\n\n\npaint_hline\t\n\nDraws a horizontal line from (x1, y) to (x2, y) in cr using the given style and state.\n\n\npaint_layout\t\n\nDraws a layout on cr using the given parameters.\n\n\npaint_option\t\n\nDraws a radio button indicator in the given rectangle on cr with the given parameters.\n\n\npaint_resize_grip\t\n\nDraws a resize grip in the given rectangle on cr using the given parameters.\n\n\npaint_shadow\t\n\nDraws a shadow around the given rectangle in cr using the given style and state and shadow type.\n\n\npaint_shadow_gap\t\n\nDraws a shadow around the given rectangle in cr using the given style and state and shadow type, leaving a gap in one side.\n\n\npaint_slider\t\n\nDraws a slider in the given rectangle on cr using the given style and orientation.\n\n\npaint_spinner\t\n\nDraws a spinner on window using the given parameters.\n\n\npaint_tab\t\n\nDraws an option menu tab (i.e. the up and down pointing arrows) in the given rectangle on cr using the given parameters.\n\n\npaint_vline\t\n\nDraws a vertical line from (x, y1_) to (x, y2_) in cr using the given style and state.\n\n\nparse_args\t\n\nParses command line arguments, and initializes global attributes of GTK+, but does not actually open a connection to a display. (See gdk_display_open(), gdk_get_display_arg_name())\n\n\nprint_run_page_setup_dialog\t\n\nRuns a page setup dialog, letting the user modify the values from page_setup. If the user cancels the dialog, the returned GtkPageSetup is identical to the passed in page_setup, otherwise it contains the modifications done in the dialog.\n\n\nprint_run_page_setup_dialog_async\t\n\nRuns a page setup dialog, letting the user modify the values from page_setup.\n\n\npropagate_event\t\n\nSends an event to a widget, propagating the event to parent widgets if the event remains unhandled.\n\n\nrc_add_default_file\t\n\nAdds a file to the list of files to be parsed at the end of gtk_init().\n\n\nrc_find_module_in_path\t\n\nSearches for a theme engine in the GTK+ search path. This function is not useful for applications and should not be used.\n\n\nrc_find_pixmap_in_path\t\n\nLooks up a file in pixmap path for the specified GtkSettings. If the file is not found, it outputs a warning message using g_warning() and returns NULL.\n\n\nrc_get_default_files\t\n\nRetrieves the current list of RC files that will be parsed at the end of gtk_init().\n\n\nrc_get_im_module_file\t\n\nObtains the path to the IM modules file. See the documentation of the GTK_IM_MODULE_FILE environment variable for more details.\n\n\nrc_get_im_module_path\t\n\nObtains the path in which to look for IM modules. See the documentation of the GTK_PATH environment variable for more details about looking up modules. This function is useful solely for utilities supplied with GTK+ and should not be used by applications under normal circumstances.\n\n\nrc_get_module_dir\t\n\nReturns a directory in which GTK+ looks for theme engines. For full information about the search for theme engines, see the docs for GTK_PATH in [Running GTK+ Applications][gtk-running].\n\n\nrc_get_style\t\n\nFinds all matching RC styles for a given widget, composites them together, and then creates a GtkStyle representing the composite appearance. (GTK+ actually keeps a cache of previously created styles, so a new style may not be created.)\n\n\nrc_get_style_by_paths\t\n\nCreates up a GtkStyle from styles defined in a RC file by providing the raw components used in matching. This function may be useful when creating pseudo-widgets that should be themed like widgets but don’t actually have corresponding GTK+ widgets. An example of this would be items inside a GNOME canvas widget.\n\n\nrc_get_theme_dir\t\n\nReturns the standard directory in which themes should be installed. (GTK+ does not actually use this directory itself.)\n\n\nrc_parse\t\n\nParses a given resource file.\n\n\nrc_parse_color\t\n\nParses a color in the format expected in a RC file.\n\n\nrc_parse_color_full\t\n\nParses a color in the format expected in a RC file. If style is not NULL, it will be consulted to resolve references to symbolic colors.\n\n\nrc_parse_priority\t\n\nParses a GtkPathPriorityType variable from the format expected in a RC file.\n\n\nrc_parse_state\t\n\nParses a GtkStateType variable from the format expected in a RC file.\n\n\nrc_parse_string\t\n\nParses resource information directly from a string.\n\n\nrc_reparse_all\t\n\nIf the modification time on any previously read file for the default GtkSettings has changed, discard all style information and then reread all previously read RC files.\n\n\nrc_reparse_all_for_settings\t\n\nIf the modification time on any previously read file for the given GtkSettings has changed, discard all style information and then reread all previously read RC files.\n\n\nrc_reset_styles\t\n\nThis function recomputes the styles for all widgets that use a particular GtkSettings object. (There is one GtkSettings object per GdkScreen, see gtk_settings_get_for_screen()); It is useful when some global parameter has changed that affects the appearance of all widgets, because when a widget gets a new style, it will both redraw and recompute any cached information about its appearance. As an example, it is used when the default font size set by the operating system changes. Note that this function doesn’t affect widgets that have a style set explicitly on them with gtk_widget_set_style().\n\n\nrc_scanner_new\t\nrc_set_default_files\t\n\nSets the list of files that GTK+ will read at the end of gtk_init().\n\n\nrender_activity\t\n\nRenders an activity indicator (such as in GtkSpinner). The state GTK_STATE_FLAG_CHECKED determines whether there is activity going on.\n\n\nrender_arrow\t\n\nRenders an arrow pointing to angle.\n\n\nrender_background\t\n\nRenders the background of an element.\n\n\nrender_background_get_clip\t\n\nReturns the area that will be affected (i.e. drawn to) when calling gtk_render_background() for the given context and rectangle.\n\n\nrender_check\t\n\nRenders a checkmark (as in a GtkCheckButton).\n\n\nrender_expander\t\n\nRenders an expander (as used in GtkTreeView and GtkExpander) in the area defined by x, y, width, height. The state GTK_STATE_FLAG_CHECKED determines whether the expander is collapsed or expanded.\n\n\nrender_extension\t\n\nRenders a extension (as in a GtkNotebook tab) in the rectangle defined by x, y, width, height. The side where the extension connects to is defined by gap_side.\n\n\nrender_focus\t\n\nRenders a focus indicator on the rectangle determined by x, y, width, height.\n\n\nrender_frame\t\n\nRenders a frame around the rectangle defined by x, y, width, height.\n\n\nrender_frame_gap\t\n\nRenders a frame around the rectangle defined by (x, y, width, height), leaving a gap on one side. xy0_gap and xy1_gap will mean X coordinates for GTK_POS_TOP and GTK_POS_BOTTOM gap sides, and Y coordinates for GTK_POS_LEFT and GTK_POS_RIGHT.\n\n\nrender_handle\t\n\nRenders a handle (as in GtkHandleBox, GtkPaned and GtkWindow’s resize grip), in the rectangle determined by x, y, width, height.\n\n\nrender_icon\t\n\nRenders the icon in pixbuf at the specified x and y coordinates.\n\n\nrender_icon_pixbuf\t\n\nRenders the icon specified by source at the given size, returning the result in a pixbuf.\n\n\nrender_icon_surface\t\n\nRenders the icon in surface at the specified x and y coordinates.\n\n\nrender_insertion_cursor\t\n\nDraws a text caret on cr at the specified index of layout.\n\n\nrender_layout\t\n\nRenders layout on the coordinates x, y.\n\n\nrender_line\t\n\nRenders a line from (x0, y0) to (x1, y1).\n\n\nrender_option\t\n\nRenders an option mark (as in a GtkRadioButton), the GTK_STATE_FLAG_CHECKED state will determine whether the option is on or off, and GTK_STATE_FLAG_INCONSISTENT whether it should be marked as undefined.\n\n\nrender_slider\t\n\nRenders a slider (as in GtkScale) in the rectangle defined by x, y, width, height. orientation defines whether the slider is vertical or horizontal.\n\n\nrgb_to_hsv\t\n\nConverts a color from RGB space to HSV.\n\n\nselection_add_target\t\n\nAppends a specified target to the list of supported targets for a given widget and selection.\n\n\nselection_add_targets\t\n\nPrepends a table of targets to the list of supported targets for a given widget and selection.\n\n\nselection_clear_targets\t\n\nRemove all targets registered for the given selection for the widget.\n\n\nselection_convert\t\n\nRequests the contents of a selection. When received, a “selection-received” signal will be generated.\n\n\nselection_owner_set\t\n\nClaims ownership of a given selection for a particular widget, or, if widget is NULL, release ownership of the selection.\n\n\nselection_owner_set_for_display\t\n\nClaim ownership of a given selection for a particular widget, or, if widget is NULL, release ownership of the selection.\n\n\nselection_remove_all\t\n\nRemoves all handlers and unsets ownership of all selections for a widget. Called when widget is being destroyed. This function will not generally be called by applications.\n\n\nset_debug_flags\t\n\nSets the GTK+ debug flags.\n\n\nshow_about_dialog\t\n\nThis is a convenience function for showing an application’s about box. The constructed dialog is associated with the parent window and reused for future invocations of this function.\n\n\nshow_uri\t\n\nA convenience function for launching the default application to show the uri. Like gtk_show_uri_on_window(), but takes a screen as transient parent instead of a window.\n\n\nshow_uri_on_window\t\n\nThis is a convenience function for launching the default application to show the uri. The uri must be of a form understood by GIO (i.e. you need to install gvfs to get support for uri schemes such as http:// or ftp://, as only local files are handled by GIO itself). Typical examples are - file:///home/gnome/pict.jpg - http://www.gnome.org - mailto:me@gnome.org\n\n\nstock_add\t\n\nRegisters each of the stock items in items. If an item already exists with the same stock ID as one of the items, the old item gets replaced. The stock items are copied, so GTK+ does not hold any pointer into items and items can be freed. Use gtk_stock_add_static() if items is persistent and GTK+ need not copy the array.\n\n\nstock_add_static\t\n\nSame as gtk_stock_add(), but doesn’t copy items, so items must persist until application exit.\n\n\nstock_list_ids\t\n\nRetrieves a list of all known stock IDs added to a GtkIconFactory or registered with gtk_stock_add(). The list must be freed with g_slist_free(), and each string in the list must be freed with g_free().\n\n\nstock_lookup\t\n\nFills item with the registered values for stock_id, returning TRUE if stock_id was known.\n\n\nstock_set_translate_func\t\n\nSets a function to be used for translating the label of a stock item.\n\n\ntarget_table_free\t\n\nThis function frees a target table as returned by gtk_target_table_new_from_list()\n\n\ntarget_table_new_from_list\t\n\nThis function creates an GtkTargetEntry array that contains the same targets as the passed %list. The returned table is newly allocated and should be freed using gtk_target_table_free() when no longer needed.\n\n\ntargets_include_image\t\n\nDetermines if any of the targets in targets can be used to provide a GdkPixbuf.\n\n\ntargets_include_rich_text\t\n\nDetermines if any of the targets in targets can be used to provide rich text.\n\n\ntargets_include_text\t\n\nDetermines if any of the targets in targets can be used to provide text.\n\n\ntargets_include_uri\t\n\nDetermines if any of the targets in targets can be used to provide an uri list.\n\n\ntest_create_simple_window\t\n\nCreate a simple window with window title window_title and text contents dialog_text. The window will quit any running gtk_main()-loop when destroyed, and it will automatically be destroyed upon test function teardown.\n\n\ntest_create_widget\t\n\nThis function wraps g_object_new() for widget types. It’ll automatically show all created non window widgets, also g_object_ref_sink() them (to keep them alive across a running test) and set them up for destruction during the next test teardown phase.\n\n\ntest_display_button_window\t\n\nCreate a window with window title window_title, text contents dialog_text, and a number of buttons, according to the paired argument list given as @… parameters. Each button is created with a label and a ::clicked signal handler that incremrents the integer stored in nump. The window will be automatically shown with gtk_widget_show_now() after creation, so when this function returns it has already been mapped, resized and positioned on screen. The window will quit any running gtk_main()-loop when destroyed, and it will automatically be destroyed upon test function teardown.\n\n\ntest_find_label\t\n\nThis function will search widget and all its descendants for a GtkLabel widget with a text string matching label_pattern. The label_pattern may contain asterisks “*” and question marks “?” as placeholders, g_pattern_match() is used for the matching. Note that locales other than “C“ tend to alter (translate” label strings, so this function is genrally only useful in test programs with predetermined locales, see gtk_test_init() for more details.\n\n\ntest_find_sibling\t\n\nThis function will search siblings of base_widget and siblings of its ancestors for all widgets matching widget_type. Of the matching widgets, the one that is geometrically closest to base_widget will be returned. The general purpose of this function is to find the most likely “action” widget, relative to another labeling widget. Such as finding a button or text entry widget, given its corresponding label widget.\n\n\ntest_find_widget\t\n\nThis function will search the descendants of widget for a widget of type widget_type that has a label matching label_pattern next to it. This is most useful for automated GUI testing, e.g. to find the “OK” button in a dialog and synthesize clicks on it. However see gtk_test_find_label(), gtk_test_find_sibling() and gtk_test_widget_click() for possible caveats involving the search of such widgets and synthesizing widget events.\n\n\ntest_init\t\n\nThis function is used to initialize a GTK+ test program.\n\n\ntest_list_all_types\t\n\nReturn the type ids that have been registered after calling gtk_test_register_all_types().\n\n\ntest_register_all_types\t\n\nForce registration of all core Gtk+ and Gdk object types. This allowes to refer to any of those object types via g_type_from_name() after calling this function.\n\n\ntest_slider_get_value\t\n\nRetrive the literal adjustment value for GtkRange based widgets and spin buttons. Note that the value returned by this function is anything between the lower and upper bounds of the adjustment belonging to widget, and is not a percentage as passed in to gtk_test_slider_set_perc().\n\n\ntest_slider_set_perc\t\n\nThis function will adjust the slider position of all GtkRange based widgets, such as scrollbars or scales, it’ll also adjust spin buttons. The adjustment value of these widgets is set to a value between the lower and upper limits, according to the percentage argument.\n\n\ntest_spin_button_click\t\n\nThis function will generate a button click in the upwards or downwards spin button arrow areas, usually leading to an increase or decrease of spin button’s value.\n\n\ntest_text_get\t\n\nRetrive the text string of widget if it is a GtkLabel, GtkEditable (entry and text widgets) or GtkTextView.\n\n\ntest_text_set\t\n\nSet the text string of widget to string if it is a GtkLabel, GtkEditable (entry and text widgets) or GtkTextView.\n\n\ntest_widget_click\t\n\nThis function will generate a button click (button press and button release event) in the middle of the first GdkWindow found that belongs to widget. For windowless widgets like GtkButton (which returns FALSE from gtk_widget_get_has_window()), this will often be an input-only event window. For other widgets, this is usually widget->window. Certain caveats should be considered when using this function, in particular because the mouse pointer is warped to the button click location, see gdk_test_simulate_button() for details.\n\n\ntest_widget_send_key\t\n\nThis function will generate keyboard press and release events in the middle of the first GdkWindow found that belongs to widget. For windowless widgets like GtkButton (which returns FALSE from gtk_widget_get_has_window()), this will often be an input-only event window. For other widgets, this is usually widget->window. Certain caveats should be considered when using this function, in particular because the mouse pointer is warped to the key press location, see gdk_test_simulate_key() for details.\n\n\ntest_widget_wait_for_draw\t\n\nEnters the main loop and waits for widget to be “drawn”. In this context that means it waits for the frame clock of widget to have run a full styling, layout and drawing cycle.\n\n\ntree_get_row_drag_data\t\n\nObtains a tree_model and path from selection data of target type GTK_TREE_MODEL_ROW. Normally called from a drag_data_received handler. This function can only be used if selection_data originates from the same process that’s calling this function, because a pointer to the tree model is being passed around. If you aren’t in the same process, then you’ll get memory corruption. In the GtkTreeDragDest drag_data_received handler, you can assume that selection data of type GTK_TREE_MODEL_ROW is in from the current process. The returned path must be freed with gtk_tree_path_free().\n\n\ntree_set_row_drag_data\t\n\nSets selection data of target type GTK_TREE_MODEL_ROW. Normally used in a drag_data_get handler.\n\n\ntrue\t\n\nAll this function does it to return TRUE.\n\n[−]\nFunction Macros\nACTIVATABLE_CLASS\t\nBUILDABLE_CLASS\t\nBUILDER_WARN_INVALID_CHILD_TYPE\t\n\nThis macro should be used to emit a warning about and unexpected type value in a GtkBuildable add_child implementation.\n\n\nCELL_AREA_WARN_INVALID_CELL_PROPERTY_ID\t\n\nThis macro should be used to emit a standard warning about unexpected properties in set_cell_property() and get_cell_property() implementations.\n\n\nCELL_EDITABLE_CLASS\t\nCHECK_VERSION\t\n\nReturns TRUE if the version of the GTK+ header files is the same as or newer than the passed-in version.\n\n\nCONTAINER_WARN_INVALID_CHILD_PROPERTY_ID\t\n\nThis macro should be used to emit a standard warning about unexpected properties in set_child_property() and get_child_property() implementations.\n\n\nDEBUG_CHECK\t\nHBOX\t\nHBOX_CLASS\t\nHBUTTON_BOX\t\nHBUTTON_BOX_CLASS\t\nHPANED\t\nHPANED_CLASS\t\nHSCALE\t\nHSCALE_CLASS\t\nHSCROLLBAR\t\nHSCROLLBAR_CLASS\t\nHSEPARATOR\t\nHSEPARATOR_CLASS\t\nHSV_CLASS\t\nNOTE\t\nORIENTABLE_CLASS\t\nRC_STYLE\t\nRC_STYLE_CLASS\t\nSTYLE_ATTACHED\t\nTREE_SORTABLE_CLASS\t\nVBOX\t\nVBOX_CLASS\t\nVBUTTON_BOX\t\nVBUTTON_BOX_CLASS\t\nVPANED\t\nVPANED_CLASS\t\nVSCALE\t\nVSCALE_CLASS\t\nVSCROLLBAR\t\nVSCROLLBAR_CLASS\t\nVSEPARATOR\t\nVSEPARATOR_CLASS\t\nwidget_class_bind_template_callback\t\n\nBinds a callback function defined in a template to the widget_class.\n\n\nwidget_class_bind_template_child\t\n\nBinds a child widget defined in a template to the widget_class.\n\n\nwidget_class_bind_template_child_internal\t\n\nBinds a child widget defined in a template to the widget_class, and also makes it available as an internal child in GtkBuilder, under the name member_name.\n\n\nwidget_class_bind_template_child_internal_private\t\n\nBinds a child widget defined in a template to the widget_class, and also makes it available as an internal child in GtkBuilder, under the name member_name.\n\n\nwidget_class_bind_template_child_private\t\n\nBinds a child widget defined in a template to the widget_class.\n\n[−]\nConstants\nBINARY_AGE\t\n\nLike gtk_get_binary_age(), but from the headers used at application compile time, rather than from the library linked against at application run time.\n\n\nINPUT_ERROR\t\n\nConstant to return from a signal handler for the GtkSpinButton::input signal in case of conversion failure.\n\n\nINTERFACE_AGE\t\n\nLike gtk_get_interface_age(), but from the headers used at application compile time, rather than from the library linked against at application run time.\n\n\nLEVEL_BAR_OFFSET_FULL\t\n\nThe name used for the stock full offset included by GtkLevelBar.\n\n\nLEVEL_BAR_OFFSET_HIGH\t\n\nThe name used for the stock high offset included by GtkLevelBar.\n\n\nLEVEL_BAR_OFFSET_LOW\t\n\nThe name used for the stock low offset included by GtkLevelBar.\n\n\nMAJOR_VERSION\t\n\nLike gtk_get_major_version(), but from the headers used at application compile time, rather than from the library linked against at application run time.\n\n\nMAX_COMPOSE_LEN\t\n\nThe maximum length of sequences in compose tables.\n\n\nMICRO_VERSION\t\n\nLike gtk_get_micro_version(), but from the headers used at application compile time, rather than from the library linked against at application run time.\n\n\nMINOR_VERSION\t\n\nLike gtk_get_minor_version(), but from the headers used at application compile time, rather than from the library linked against at application run time.\n\n\nPAPER_NAME_A3\t\n\nName for the A3 paper size.\n\n\nPAPER_NAME_A4\t\n\nName for the A4 paper size.\n\n\nPAPER_NAME_A5\t\n\nName for the A5 paper size.\n\n\nPAPER_NAME_B5\t\n\nName for the B5 paper size.\n\n\nPAPER_NAME_EXECUTIVE\t\n\nName for the Executive paper size.\n\n\nPAPER_NAME_LEGAL\t\n\nName for the Legal paper size.\n\n\nPAPER_NAME_LETTER\t\n\nName for the Letter paper size.\n\n\nPATH_PRIO_MASK\t\nPRINT_SETTINGS_COLLATE\t\nPRINT_SETTINGS_DEFAULT_SOURCE\t\nPRINT_SETTINGS_DITHER\t\nPRINT_SETTINGS_DUPLEX\t\nPRINT_SETTINGS_FINISHINGS\t\nPRINT_SETTINGS_MEDIA_TYPE\t\nPRINT_SETTINGS_N_COPIES\t\nPRINT_SETTINGS_NUMBER_UP\t\nPRINT_SETTINGS_NUMBER_UP_LAYOUT\t\nPRINT_SETTINGS_ORIENTATION\t\nPRINT_SETTINGS_OUTPUT_BASENAME\t\n\nThe key used by the “Print to file” printer to store the file name of the output without the path to the directory and the file extension.\n\n\nPRINT_SETTINGS_OUTPUT_BIN\t\nPRINT_SETTINGS_OUTPUT_DIR\t\n\nThe key used by the “Print to file” printer to store the directory to which the output should be written.\n\n\nPRINT_SETTINGS_OUTPUT_FILE_FORMAT\t\n\nThe key used by the “Print to file” printer to store the format of the output. The supported values are “PS” and “PDF”.\n\n\nPRINT_SETTINGS_OUTPUT_URI\t\n\nThe key used by the “Print to file” printer to store the URI to which the output should be written. GTK+ itself supports only “file://” URIs.\n\n\nPRINT_SETTINGS_PAGE_RANGES\t\nPRINT_SETTINGS_PAGE_SET\t\nPRINT_SETTINGS_PAPER_FORMAT\t\nPRINT_SETTINGS_PAPER_HEIGHT\t\nPRINT_SETTINGS_PAPER_WIDTH\t\nPRINT_SETTINGS_PRINT_PAGES\t\nPRINT_SETTINGS_PRINTER\t\nPRINT_SETTINGS_PRINTER_LPI\t\nPRINT_SETTINGS_QUALITY\t\nPRINT_SETTINGS_RESOLUTION\t\nPRINT_SETTINGS_RESOLUTION_X\t\nPRINT_SETTINGS_RESOLUTION_Y\t\nPRINT_SETTINGS_REVERSE\t\nPRINT_SETTINGS_SCALE\t\nPRINT_SETTINGS_USE_COLOR\t\nPRINT_SETTINGS_WIN32_DRIVER_EXTRA\t\nPRINT_SETTINGS_WIN32_DRIVER_VERSION\t\nPRIORITY_RESIZE\t\n\nUse this priority for functionality related to size allocation.\n\n\nSTOCK_ABOUT\t\n\nThe “About” item.\n\n\nSTOCK_ADD\t\n\nThe “Add” item and icon.\n\n\nSTOCK_APPLY\t\n\nThe “Apply” item and icon.\n\n\nSTOCK_BOLD\t\n\nThe “Bold” item and icon.\n\n\nSTOCK_CANCEL\t\n\nThe “Cancel” item and icon.\n\n\nSTOCK_CAPS_LOCK_WARNING\t\n\nThe “Caps Lock Warning” icon.\n\n\nSTOCK_CDROM\t\n\nThe “CD-Rom” item and icon.\n\n\nSTOCK_CLEAR\t\n\nThe “Clear” item and icon.\n\n\nSTOCK_CLOSE\t\n\nThe “Close” item and icon.\n\n\nSTOCK_COLOR_PICKER\t\n\nThe “Color Picker” item and icon.\n\n\nSTOCK_CONNECT\t\n\nThe “Connect” icon.\n\n\nSTOCK_CONVERT\t\n\nThe “Convert” item and icon.\n\n\nSTOCK_COPY\t\n\nThe “Copy” item and icon.\n\n\nSTOCK_CUT\t\n\nThe “Cut” item and icon.\n\n\nSTOCK_DELETE\t\n\nThe “Delete” item and icon.\n\n\nSTOCK_DIALOG_AUTHENTICATION\t\n\nThe “Authentication” item and icon.\n\n\nSTOCK_DIALOG_ERROR\t\n\nThe “Error” item and icon.\n\n\nSTOCK_DIALOG_INFO\t\n\nThe “Information” item and icon.\n\n\nSTOCK_DIALOG_QUESTION\t\n\nThe “Question” item and icon.\n\n\nSTOCK_DIALOG_WARNING\t\n\nThe “Warning” item and icon.\n\n\nSTOCK_DIRECTORY\t\n\nThe “Directory” icon.\n\n\nSTOCK_DISCARD\t\n\nThe “Discard” item.\n\n\nSTOCK_DISCONNECT\t\n\nThe “Disconnect” icon.\n\n\nSTOCK_DND\t\n\nThe “Drag-And-Drop” icon.\n\n\nSTOCK_DND_MULTIPLE\t\n\nThe “Drag-And-Drop multiple” icon.\n\n\nSTOCK_EDIT\t\n\nThe “Edit” item and icon.\n\n\nSTOCK_EXECUTE\t\n\nThe “Execute” item and icon.\n\n\nSTOCK_FILE\t\n\nThe “File” item and icon.\n\n\nSTOCK_FIND\t\n\nThe “Find” item and icon.\n\n\nSTOCK_FIND_AND_REPLACE\t\n\nThe “Find and Replace” item and icon.\n\n\nSTOCK_FLOPPY\t\n\nThe “Floppy” item and icon.\n\n\nSTOCK_FULLSCREEN\t\n\nThe “Fullscreen” item and icon.\n\n\nSTOCK_GO_BACK\t\n\nThe “Back” item and icon. The icon has an RTL variant.\n\n\nSTOCK_GO_DOWN\t\n\nThe “Down” item and icon.\n\n\nSTOCK_GO_FORWARD\t\n\nThe “Forward” item and icon. The icon has an RTL variant.\n\n\nSTOCK_GO_UP\t\n\nThe “Up” item and icon.\n\n\nSTOCK_GOTO_BOTTOM\t\n\nThe “Bottom” item and icon.\n\n\nSTOCK_GOTO_FIRST\t\n\nThe “First” item and icon. The icon has an RTL variant.\n\n\nSTOCK_GOTO_LAST\t\n\nThe “Last” item and icon. The icon has an RTL variant.\n\n\nSTOCK_GOTO_TOP\t\n\nThe “Top” item and icon.\n\n\nSTOCK_HARDDISK\t\n\nThe “Harddisk” item and icon.\n\n\nSTOCK_HELP\t\n\nThe “Help” item and icon.\n\n\nSTOCK_HOME\t\n\nThe “Home” item and icon.\n\n\nSTOCK_INDENT\t\n\nThe “Indent” item and icon. The icon has an RTL variant.\n\n\nSTOCK_INDEX\t\n\nThe “Index” item and icon.\n\n\nSTOCK_INFO\t\n\nThe “Info” item and icon.\n\n\nSTOCK_ITALIC\t\n\nThe “Italic” item and icon.\n\n\nSTOCK_JUMP_TO\t\n\nThe “Jump to” item and icon. The icon has an RTL variant.\n\n\nSTOCK_JUSTIFY_CENTER\t\n\nThe “Center” item and icon.\n\n\nSTOCK_JUSTIFY_FILL\t\n\nThe “Fill” item and icon.\n\n\nSTOCK_JUSTIFY_LEFT\t\n\nThe “Left” item and icon.\n\n\nSTOCK_JUSTIFY_RIGHT\t\n\nThe “Right” item and icon.\n\n\nSTOCK_LEAVE_FULLSCREEN\t\n\nThe “Leave Fullscreen” item and icon.\n\n\nSTOCK_MEDIA_FORWARD\t\n\nThe “Media Forward” item and icon. The icon has an RTL variant.\n\n\nSTOCK_MEDIA_NEXT\t\n\nThe “Media Next” item and icon. The icon has an RTL variant.\n\n\nSTOCK_MEDIA_PAUSE\t\n\nThe “Media Pause” item and icon.\n\n\nSTOCK_MEDIA_PLAY\t\n\nThe “Media Play” item and icon. The icon has an RTL variant.\n\n\nSTOCK_MEDIA_PREVIOUS\t\n\nThe “Media Previous” item and icon. The icon has an RTL variant.\n\n\nSTOCK_MEDIA_RECORD\t\n\nThe “Media Record” item and icon.\n\n\nSTOCK_MEDIA_REWIND\t\n\nThe “Media Rewind” item and icon. The icon has an RTL variant.\n\n\nSTOCK_MEDIA_STOP\t\n\nThe “Media Stop” item and icon.\n\n\nSTOCK_MISSING_IMAGE\t\n\nThe “Missing image” icon.\n\n\nSTOCK_NETWORK\t\n\nThe “Network” item and icon.\n\n\nSTOCK_NEW\t\n\nThe “New” item and icon.\n\n\nSTOCK_NO\t\n\nThe “No” item and icon.\n\n\nSTOCK_OK\t\n\nThe “OK” item and icon.\n\n\nSTOCK_OPEN\t\n\nThe “Open” item and icon.\n\n\nSTOCK_ORIENTATION_LANDSCAPE\t\n\nThe “Landscape Orientation” item and icon.\n\n\nSTOCK_ORIENTATION_PORTRAIT\t\n\nThe “Portrait Orientation” item and icon.\n\n\nSTOCK_ORIENTATION_REVERSE_LANDSCAPE\t\n\nThe “Reverse Landscape Orientation” item and icon.\n\n\nSTOCK_ORIENTATION_REVERSE_PORTRAIT\t\n\nThe “Reverse Portrait Orientation” item and icon.\n\n\nSTOCK_PAGE_SETUP\t\n\nThe “Page Setup” item and icon.\n\n\nSTOCK_PASTE\t\n\nThe “Paste” item and icon.\n\n\nSTOCK_PREFERENCES\t\n\nThe “Preferences” item and icon.\n\n\nSTOCK_PRINT\t\n\nThe “Print” item and icon.\n\n\nSTOCK_PRINT_ERROR\t\n\nThe “Print Error” icon.\n\n\nSTOCK_PRINT_PAUSED\t\n\nThe “Print Paused” icon.\n\n\nSTOCK_PRINT_PREVIEW\t\n\nThe “Print Preview” item and icon.\n\n\nSTOCK_PRINT_REPORT\t\n\nThe “Print Report” icon.\n\n\nSTOCK_PRINT_WARNING\t\n\nThe “Print Warning” icon.\n\n\nSTOCK_PROPERTIES\t\n\nThe “Properties” item and icon.\n\n\nSTOCK_QUIT\t\n\nThe “Quit” item and icon.\n\n\nSTOCK_REDO\t\n\nThe “Redo” item and icon. The icon has an RTL variant.\n\n\nSTOCK_REFRESH\t\n\nThe “Refresh” item and icon.\n\n\nSTOCK_REMOVE\t\n\nThe “Remove” item and icon.\n\n\nSTOCK_REVERT_TO_SAVED\t\n\nThe “Revert” item and icon. The icon has an RTL variant.\n\n\nSTOCK_SAVE\t\n\nThe “Save” item and icon.\n\n\nSTOCK_SAVE_AS\t\n\nThe “Save As” item and icon.\n\n\nSTOCK_SELECT_ALL\t\n\nThe “Select All” item and icon.\n\n\nSTOCK_SELECT_COLOR\t\n\nThe “Color” item and icon.\n\n\nSTOCK_SELECT_FONT\t\n\nThe “Font” item and icon.\n\n\nSTOCK_SORT_ASCENDING\t\n\nThe “Ascending” item and icon.\n\n\nSTOCK_SORT_DESCENDING\t\n\nThe “Descending” item and icon.\n\n\nSTOCK_SPELL_CHECK\t\n\nThe “Spell Check” item and icon.\n\n\nSTOCK_STOP\t\n\nThe “Stop” item and icon.\n\n\nSTOCK_STRIKETHROUGH\t\n\nThe “Strikethrough” item and icon.\n\n\nSTOCK_UNDELETE\t\n\nThe “Undelete” item and icon. The icon has an RTL variant.\n\n\nSTOCK_UNDERLINE\t\n\nThe “Underline” item and icon.\n\n\nSTOCK_UNDO\t\n\nThe “Undo” item and icon. The icon has an RTL variant.\n\n\nSTOCK_UNINDENT\t\n\nThe “Unindent” item and icon. The icon has an RTL variant.\n\n\nSTOCK_YES\t\n\nThe “Yes” item and icon.\n\n\nSTOCK_ZOOM_100\t\n\nThe “Zoom 100%” item and icon.\n\n\nSTOCK_ZOOM_FIT\t\n\nThe “Zoom to Fit” item and icon.\n\n\nSTOCK_ZOOM_IN\t\n\nThe “Zoom In” item and icon.\n\n\nSTOCK_ZOOM_OUT\t\n\nThe “Zoom Out” item and icon.\n\n\nSTYLE_CLASS_ACCELERATOR\t\n\nA CSS class to match an accelerator.\n\n\nSTYLE_CLASS_ARROW\t\n\nA CSS class used when rendering an arrow element.\n\n\nSTYLE_CLASS_BACKGROUND\t\n\nA CSS class to match the window background.\n\n\nSTYLE_CLASS_BOTTOM\t\n\nA CSS class to indicate an area at the bottom of a widget.\n\n\nSTYLE_CLASS_BUTTON\t\n\nA CSS class to match buttons.\n\n\nSTYLE_CLASS_CALENDAR\t\n\nA CSS class to match calendars.\n\n\nSTYLE_CLASS_CELL\t\n\nA CSS class to match content rendered in cell views.\n\n\nSTYLE_CLASS_CHECK\t\n\nA CSS class to match check boxes.\n\n\nSTYLE_CLASS_COMBOBOX_ENTRY\t\n\nA CSS class to match combobox entries.\n\n\nSTYLE_CLASS_CONTEXT_MENU\t\n\nA CSS class to match context menus.\n\n\nSTYLE_CLASS_CSD\t\n\nA CSS class that gets added to windows which have client-side decorations.\n\n\nSTYLE_CLASS_CURSOR_HANDLE\t\n\nA CSS class used when rendering a drag handle for text selection.\n\n\nSTYLE_CLASS_DEFAULT\t\n\nA CSS class to match the default widget.\n\n\nSTYLE_CLASS_DESTRUCTIVE_ACTION\t\n\nA CSS class used when an action (usually a button) is one that is expected to remove or destroy something visible to the user.\n\n\nSTYLE_CLASS_DIM_LABEL\t\n\nA CSS class to match dimmed labels.\n\n\nSTYLE_CLASS_DND\t\n\nA CSS class for a drag-and-drop indicator.\n\n\nSTYLE_CLASS_DOCK\t\n\nA CSS class defining a dock area.\n\n\nSTYLE_CLASS_ENTRY\t\n\nA CSS class to match text entries.\n\n\nSTYLE_CLASS_ERROR\t\n\nA CSS class for an area displaying an error message, such as those in infobars.\n\n\nSTYLE_CLASS_EXPANDER\t\n\nA CSS class defining an expander, such as those in treeviews.\n\n\nSTYLE_CLASS_FLAT\t\n\nA CSS class that is added when widgets that usually have a frame or border (like buttons or entries) should appear without it.\n\n\nSTYLE_CLASS_FRAME\t\n\nA CSS class defining a frame delimiting content, such as GtkFrame or the scrolled window frame around the scrollable area.\n\n\nSTYLE_CLASS_GRIP\t\n\nA CSS class defining a resize grip.\n\n\nSTYLE_CLASS_HEADER\t\n\nA CSS class to match a header element.\n\n\nSTYLE_CLASS_HIGHLIGHT\t\n\nA CSS class defining a highlighted area, such as headings in assistants and calendars.\n\n\nSTYLE_CLASS_HORIZONTAL\t\n\nA CSS class for horizontally layered widgets.\n\n\nSTYLE_CLASS_IMAGE\t\n\nA CSS class defining an image, such as the icon in an entry.\n\n\nSTYLE_CLASS_INFO\t\n\nA CSS class for an area displaying an informational message, such as those in infobars.\n\n\nSTYLE_CLASS_INLINE_TOOLBAR\t\n\nA CSS class to match inline toolbars.\n\n\nSTYLE_CLASS_INSERTION_CURSOR\t\n\nA CSS class used when rendering a drag handle for the insertion cursor position.\n\n\nSTYLE_CLASS_LABEL\t\n\nA CSS class to match labels.\n\n\nSTYLE_CLASS_LEFT\t\n\nA CSS class to indicate an area at the left of a widget.\n\n\nSTYLE_CLASS_LEVEL_BAR\t\n\nA CSS class used when rendering a level indicator, such as a battery charge level, or a password strength.\n\n\nSTYLE_CLASS_LINKED\t\n\nA CSS class to match a linked area, such as a box containing buttons belonging to the same control.\n\n\nSTYLE_CLASS_LIST\t\n\nA CSS class to match lists.\n\n\nSTYLE_CLASS_LIST_ROW\t\n\nA CSS class to match list rows.\n\n\nSTYLE_CLASS_MARK\t\n\nA CSS class defining marks in a widget, such as in scales.\n\n\nSTYLE_CLASS_MENU\t\n\nA CSS class to match menus.\n\n\nSTYLE_CLASS_MENUBAR\t\n\nA CSS class to menubars.\n\n\nSTYLE_CLASS_MENUITEM\t\n\nA CSS class to match menu items.\n\n\nSTYLE_CLASS_MESSAGE_DIALOG\t\n\nA CSS class that is added to message dialogs.\n\n\nSTYLE_CLASS_MONOSPACE\t\n\nA CSS class that is added to text view that should use a monospace font.\n\n\nSTYLE_CLASS_NEEDS_ATTENTION\t\n\nA CSS class used when an element needs the user attention, for instance a button in a stack switcher corresponding to a hidden page that changed state.\n\n\nSTYLE_CLASS_NOTEBOOK\t\n\nA CSS class defining a notebook.\n\n\nSTYLE_CLASS_OSD\t\n\nA CSS class used when rendering an OSD (On Screen Display) element, on top of another container.\n\n\nSTYLE_CLASS_OVERSHOOT\t\n\nA CSS class that is added on the visual hints that happen when scrolling is attempted past the limits of a scrollable area.\n\n\nSTYLE_CLASS_PANE_SEPARATOR\t\n\nA CSS class for a pane separator, such as those in GtkPaned.\n\n\nSTYLE_CLASS_PAPER\t\n\nA CSS class that is added to areas that should look like paper.\n\n\nSTYLE_CLASS_POPOVER\t\n\nA CSS class that matches popovers.\n\n\nSTYLE_CLASS_POPUP\t\n\nA CSS class that is added to the toplevel windows used for menus.\n\n\nSTYLE_CLASS_PRIMARY_TOOLBAR\t\n\nA CSS class to match primary toolbars.\n\n\nSTYLE_CLASS_PROGRESSBAR\t\n\nA CSS class to use when rendering activity as a progressbar.\n\n\nSTYLE_CLASS_PULSE\t\n\nA CSS class to use when rendering a pulse in an indeterminate progress bar.\n\n\nSTYLE_CLASS_QUESTION\t\n\nA CSS class for an area displaying a question to the user, such as those in infobars.\n\n\nSTYLE_CLASS_RADIO\t\n\nA CSS class to match radio buttons.\n\n\nSTYLE_CLASS_RAISED\t\n\nA CSS class to match a raised control, such as a raised button on a toolbar.\n\n\nSTYLE_CLASS_READ_ONLY\t\n\nA CSS class used to indicate a read-only state.\n\n\nSTYLE_CLASS_RIGHT\t\n\nA CSS class to indicate an area at the right of a widget.\n\n\nSTYLE_CLASS_RUBBERBAND\t\n\nA CSS class to match the rubberband selection rectangle.\n\n\nSTYLE_CLASS_SCALE\t\n\nA CSS class to match scale widgets.\n\n\nSTYLE_CLASS_SCALE_HAS_MARKS_ABOVE\t\n\nA CSS class to match scale widgets with marks attached, all the marks are above for horizontal GtkScale. left for vertical GtkScale.\n\n\nSTYLE_CLASS_SCALE_HAS_MARKS_BELOW\t\n\nA CSS class to match scale widgets with marks attached, all the marks are below for horizontal GtkScale, right for vertical GtkScale.\n\n\nSTYLE_CLASS_SCROLLBAR\t\n\nA CSS class to match scrollbars.\n\n\nSTYLE_CLASS_SCROLLBARS_JUNCTION\t\n\nA CSS class to match the junction area between an horizontal and vertical scrollbar, when they’re both shown.\n\n\nSTYLE_CLASS_SEPARATOR\t\n\nA CSS class for a separator.\n\n\nSTYLE_CLASS_SIDEBAR\t\n\nA CSS class defining a sidebar, such as the left side in a file chooser.\n\n\nSTYLE_CLASS_SLIDER\t\n\nA CSS class to match sliders.\n\n\nSTYLE_CLASS_SPINBUTTON\t\n\nA CSS class defining an spinbutton.\n\n\nSTYLE_CLASS_SPINNER\t\n\nA CSS class to use when rendering activity as a “spinner”.\n\n\nSTYLE_CLASS_STATUSBAR\t\n\nA CSS class to match statusbars.\n\n\nSTYLE_CLASS_SUBTITLE\t\n\nA CSS class used for the subtitle label in a titlebar in a toplevel window.\n\n\nSTYLE_CLASS_SUGGESTED_ACTION\t\n\nA CSS class used when an action (usually a button) is the primary suggested action in a specific context.\n\n\nSTYLE_CLASS_TITLE\t\n\nA CSS class used for the title label in a titlebar in a toplevel window.\n\n\nSTYLE_CLASS_TITLEBAR\t\n\nA CSS class used when rendering a titlebar in a toplevel window.\n\n\nSTYLE_CLASS_TOOLBAR\t\n\nA CSS class to match toolbars.\n\n\nSTYLE_CLASS_TOOLTIP\t\n\nA CSS class to match tooltip windows.\n\n\nSTYLE_CLASS_TOP\t\n\nA CSS class to indicate an area at the top of a widget.\n\n\nSTYLE_CLASS_TOUCH_SELECTION\t\n\nA CSS class for touch selection popups on entries and text views.\n\n\nSTYLE_CLASS_TROUGH\t\n\nA CSS class to match troughs, as in scrollbars and progressbars.\n\n\nSTYLE_CLASS_UNDERSHOOT\t\n\nA CSS class that is added on the visual hints that happen where content is ‘scrolled off’ and can be made visible by scrolling.\n\n\nSTYLE_CLASS_VERTICAL\t\n\nA CSS class for vertically layered widgets.\n\n\nSTYLE_CLASS_VIEW\t\n\nA CSS class defining a view, such as iconviews or treeviews.\n\n\nSTYLE_CLASS_WARNING\t\n\nA CSS class for an area displaying a warning message, such as those in infobars.\n\n\nSTYLE_CLASS_WIDE\t\n\nA CSS class to indicate that a UI element should be ‘wide’. Used by GtkPaned.\n\n\nSTYLE_PROPERTY_BACKGROUND_COLOR\t\n\nA property holding the background color of rendered elements as a GdkRGBA.\n\n\nSTYLE_PROPERTY_BACKGROUND_IMAGE\t\n\nA property holding the element’s background as a #cairo_pattern_t.\n\n\nSTYLE_PROPERTY_BORDER_COLOR\t\n\nA property holding the element’s border color as a GdkRGBA.\n\n\nSTYLE_PROPERTY_BORDER_RADIUS\t\n\nA property holding the rendered element’s border radius in pixels as a #gint.\n\n\nSTYLE_PROPERTY_BORDER_STYLE\t\n\nA property holding the element’s border style as a GtkBorderStyle.\n\n\nSTYLE_PROPERTY_BORDER_WIDTH\t\n\nA property holding the rendered element’s border width in pixels as a GtkBorder. The border is the intermediary spacing property of the padding/border/margin series.\n\n\nSTYLE_PROPERTY_COLOR\t\n\nA property holding the foreground color of rendered elements as a GdkRGBA.\n\n\nSTYLE_PROPERTY_FONT\t\n\nA property holding the font properties used when rendering text as a PangoFontDescription.\n\n\nSTYLE_PROPERTY_MARGIN\t\n\nA property holding the rendered element’s margin as a GtkBorder. The margin is defined as the spacing between the border of the element and its surrounding elements. It is external to GtkWidget‘s size allocations, and the most external spacing property of the padding/border/margin series.\n\n\nSTYLE_PROPERTY_PADDING\t\n\nA property holding the rendered element’s padding as a GtkBorder. The padding is defined as the spacing between the inner part of the element border and its child. It’s the innermost spacing property of the padding/border/margin series.\n\n\nSTYLE_PROVIDER_PRIORITY_APPLICATION\t\n\nA priority that can be used when adding a GtkStyleProvider for application-specific style information.\n\n\nSTYLE_PROVIDER_PRIORITY_FALLBACK\t\n\nThe priority used for default style information that is used in the absence of themes.\n\n\nSTYLE_PROVIDER_PRIORITY_SETTINGS\t\n\nThe priority used for style information provided via GtkSettings.\n\n\nSTYLE_PROVIDER_PRIORITY_THEME\t\n\nThe priority used for style information provided by themes.\n\n\nSTYLE_PROVIDER_PRIORITY_USER\t\n\nThe priority used for the style information from XDG_CONFIG_HOME/gtk-3.0/gtk.css.\n\n\nSTYLE_REGION_COLUMN\t\n\nA widget region name to define a treeview column.\n\n\nSTYLE_REGION_COLUMN_HEADER\t\n\nA widget region name to define a treeview column header.\n\n\nSTYLE_REGION_ROW\t\n\nA widget region name to define a treeview row.\n\n\nSTYLE_REGION_TAB\t\n\nA widget region name to define a notebook tab.\n\n\nTEXT_VIEW_PRIORITY_VALIDATE\t\n\nThe priority at which the text view validates onscreen lines in an idle job in the background.\n\n\nTREE_SORTABLE_DEFAULT_SORT_COLUMN_ID\t\n\nThe GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID can be used to make a GtkTreeSortable use the default sort function.\n\n\nTREE_SORTABLE_UNSORTED_SORT_COLUMN_ID\t\n\nThe GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID can be used to make a GtkTreeSortable use no sorting.'