filesel.pp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. {
  2. $Id$
  3. Converted from C to Pascal by Javier Ros <[email protected]>
  4. }
  5. program filesel;
  6. uses
  7. glib,gdk,gtk;
  8. (* Get the selected filename and print it to the console *)
  9. procedure file_ok_sel( w:PGtkWidget;
  10. fs:PGtkFileSelection );cdecl;
  11. begin
  12. writeln ( gtk_file_selection_get_filename (GTK_FILE_SELECTION (fs)));
  13. end;
  14. procedure destroy( widget:PGtkWidget;
  15. data: gpointer);cdecl;
  16. begin
  17. gtk_main_quit ();
  18. end;
  19. var
  20. filew:PGtkWidget ;
  21. begin
  22. gtk_init (@argc, @argv);
  23. (* Create a new file selection widget *)
  24. filew := gtk_file_selection_new ('File selection');
  25. gtk_signal_connect (GTK_OBJECT (filew), 'destroy',
  26. GTK_SIGNAL_FUNC (@destroy), @filew);
  27. (* Connect the ok_button to file_ok_sel function *)
  28. gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filew)^.ok_button),
  29. 'clicked', GTK_SIGNAL_FUNC (@file_ok_sel), filew );
  30. (* Connect the cancel_button to destroy the widget *)
  31. gtk_signal_connect_object (GTK_OBJECT (GTK_FILE_SELECTION
  32. (filew)^.cancel_button),
  33. 'clicked', GTK_SIGNAL_FUNC (@gtk_widget_destroy),
  34. GTK_OBJECT (filew));
  35. (* Lets set the filename, as if this were a save dialog, and we are giving
  36. a default filename *)
  37. gtk_file_selection_set_filename (GTK_FILE_SELECTION(filew),
  38. 'filesel.pp');
  39. gtk_widget_show(filew);
  40. gtk_main ();
  41. end.
  42. {
  43. $Log$
  44. Revision 1.2 2000-09-06 20:49:05 peter
  45. * filesel added
  46. }