lookupguifont.bmx 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. ' lookupguifont.bmx
  2. Strict
  3. Import MaxGUI.Drivers
  4. AppTitle = "LookupGuiFont() Example"
  5. Const strSampleText$ = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nulla eget mauris quis dolor "+..
  6. "ullamcorper dapibus. Duis facilisis ullamcorper metus. Pellentesque eget enim. Vivamus auctor hendrerit turpis. " + ..
  7. "Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vivamus tincidunt leo quis urna."
  8. Const intWindowFlags% = WINDOW_TITLEBAR|WINDOW_RESIZABLE|WINDOW_STATUS|WINDOW_CLIENTCOORDS
  9. Global wndMain:TGadget = CreateWindow( AppTitle, 100, 100, 500, 300, Null, intWindowFlags )
  10. SetMinWindowSize( wndMain, ClientWidth(wndMain), ClientHeight(wndMain) )
  11. Global lstFontTypes:TGadget = CreateListBox(0,0,200,ClientHeight(wndMain),wndMain)
  12. SetGadgetLayout lstFontTypes,EDGE_ALIGNED,EDGE_CENTERED,EDGE_ALIGNED,EDGE_ALIGNED
  13. AddGadgetItem lstFontTypes, "GUIFONT_SYSTEM", GADGETITEM_DEFAULT, -1, "Default OS font.", LookupGuiFont(GUIFONT_SYSTEM)
  14. AddGadgetItem lstFontTypes, "GUIFONT_SERIF", 0, -1, "Serif font.", LookupGuiFont(GUIFONT_SERIF)
  15. AddGadgetItem lstFontTypes, "GUIFONT_SANSSERIF", 0, -1, "Sans serif font.", LookupGuiFont(GUIFONT_SANSSERIF)
  16. AddGadgetItem lstFontTypes, "GUIFONT_SCRIPT", 0, -1, "Script/handwriting font.", LookupGuiFont(GUIFONT_SCRIPT)
  17. AddGadgetItem lstFontTypes, "GUIFONT_MONOSPACED", 0, -1, "Fixed width/coding font.", LookupGuiFont(GUIFONT_MONOSPACED)
  18. Global txtPreview:TGadget = CreateTextArea(200,0,300,ClientHeight(wndMain),wndMain,TEXTAREA_WORDWRAP|TEXTAREA_READONLY)
  19. SetGadgetLayout txtPreview,EDGE_ALIGNED,EDGE_ALIGNED,EDGE_ALIGNED,EDGE_ALIGNED
  20. SetTextAreaText( txtPreview, strSampleText )
  21. Global strFontString$
  22. ChooseFont( LookupGuiFont() )
  23. Repeat
  24. Select WaitEvent()
  25. Case EVENT_APPTERMINATE, EVENT_WINDOWCLOSE;End
  26. Case EVENT_GADGETACTION, EVENT_GADGETSELECT
  27. Select EventSource()
  28. Case lstFontTypes
  29. If EventData() >= 0 Then
  30. ChooseFont( TGuiFont(GadgetItemExtra( lstFontTypes, EventData() )) )
  31. EndIf
  32. EndSelect
  33. EndSelect
  34. SetStatusText( wndMain, strFontString + "~t~t" + CurrentEvent.ToString() + " " )
  35. Forever
  36. Function ChooseFont( pFont:TGuiFont )
  37. SetGadgetFont( txtPreview, pFont )
  38. strFontString$ = FontName(pFont) + ", " + Int(FontSize(pFont)) + "pt"
  39. EndFunction