colsel1.pp 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. program colsel1;
  2. uses xforms;
  3. var form : PFL_FORM;
  4. topbox : PFL_OBJECT;
  5. procedure change_color(ob : PFL_OBJECT; col : longint);cdecl;
  6. begin
  7. fl_set_object_color(topbox, col, col);
  8. end;
  9. procedure makeform;
  10. var obj : PFL_OBJECT;
  11. i,j : Integer;
  12. st : string[32];
  13. begin
  14. form := fl_bgn_form(FL_UP_BOX,100,100);
  15. for i:=0 to 7 do
  16. for j:=0 to 7 do
  17. begin
  18. str (8*j+i,st);
  19. st:=st+#0;
  20. obj := fl_add_button(FL_RADIO_BUTTON,11+10*i,15+10*j,8,6,@st[1]);
  21. fl_set_object_color(obj,8*j+i,8*j+i);
  22. fl_set_object_lalign(obj,FL_ALIGN_BOTTOM);
  23. fl_set_object_callback(obj,PFL_CALLBACKPTR(@change_color), (8*j+i));
  24. end;
  25. topbox := fl_add_button(FL_NORMAL_BUTTON,30,5,40,8,'The Color Map');
  26. fl_set_object_lsize(topbox,FL_LARGE_SIZE);
  27. fl_set_object_lstyle(topbox,FL_BOLD_STYLE);
  28. fl_end_form;
  29. end;
  30. var ret : PFL_OBJECT;
  31. begin
  32. fl_initialize(@argc, argv, 'FormDemo', nil, 0);
  33. makeform;
  34. fl_scale_form(form, 4.0,4.0);
  35. fl_show_form(form,FL_PLACE_FREE,FL_NOBORDER,NiL);
  36. while ret<>topbox do ret := fl_do_forms();
  37. fl_hide_form(form);
  38. end.