56 lines
1.8 KiB
Elixir
56 lines
1.8 KiB
Elixir
|
|
||
|
----------------------------------------------------------------------------
|
||
|
--# GtkFontChooserDialog
|
||
|
|
||
|
-- Note: this is a pop-up dialog, not a widget to be added to a window.
|
||
|
|
||
|
-- If it is created in the main body of the code, so that it gets created only once,
|
||
|
-- rather than in the choose function, where a new one would be created with each call,
|
||
|
-- it will retain its settings between activations.
|
||
|
----------------------------------------------------------------------------
|
||
|
|
||
|
include GtkEngine.e
|
||
|
|
||
|
|
||
|
constant note = `
|
||
|
|
||
|
-- <b>Please note:</b> this demo does NOT use a font filter, so it displays
|
||
|
-- (or tries to) every font on your computer - this makes for a long list
|
||
|
-- with lots of 'odd' fonts such as clock faces, unreadable styles, etc.
|
||
|
-- You'll most likely want to use a font filter on any 'real-life' program...
|
||
|
-- see test36 or test59.
|
||
|
-- See also GtkFontChooser.e for a pre-made font chooser to include.
|
||
|
|
||
|
`
|
||
|
constant win = create(GtkWindow,"size=200x100,border=10,position=1,$destroy=Quit")
|
||
|
|
||
|
constant dlg = create(GtkFontChooserDialog,
|
||
|
"title=Select a font,preview text=`EuGTK is easy to use as 1,2,3...`")
|
||
|
|
||
|
constant panel = create(GtkBox,VERTICAL)
|
||
|
add(win,panel)
|
||
|
|
||
|
constant lbl = create(GtkLabel,{
|
||
|
{"font","8"},
|
||
|
{"markup","<big><b><u>Font Chooser Dialog</u></b></big>\n" & note}})
|
||
|
add(panel,lbl)
|
||
|
|
||
|
constant quitbtn = create(GtkButton,"gtk-quit","Quit")
|
||
|
constant fntbtn = create(GtkButton,"gtk-select-font","SelectFont")
|
||
|
constant btnbox = create(GtkButtonBox)
|
||
|
add(btnbox,{quitbtn,fntbtn})
|
||
|
pack(panel,-btnbox)
|
||
|
|
||
|
show_all(win)
|
||
|
main()
|
||
|
|
||
|
------------------------------------------------------------------------
|
||
|
global function SelectFont()
|
||
|
------------------------------------------------------------------------
|
||
|
if set(dlg,"run") = MB_OK then
|
||
|
set(lbl,"font",get(dlg,"font"))
|
||
|
end if
|
||
|
set(dlg,"hide")
|
||
|
return 1
|
||
|
end function
|