Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
set_close_button_callback(3)	 Allegro manual     set_close_button_callback(3)

NAME
     set_close_button_callback	-  Handles the user clicking on the close button
     of the window. Allegro game programming library.

SYNOPSIS
     #include <allegro.h>

     int set_close_button_callback(void (*proc)(void));

DESCRIPTION
     On platforms that have a close button, this  routine  installs  a	callback
     function  to  handle  the close event. In other words, when the user clicks
     the close button on your program's window or  any	equivalent  device,  the
     function you specify here will be called.

     This  function should not generally attempt to exit the program or save any
     data itself. The function could be called at any time, and there is usually
     a risk of conflict with the main thread of the program. Instead, you should
     set a flag during this function, and test it on a regular basis in the main
     loop of the program.

     Pass NULL as the `proc' argument to this function to disable the close but-
     ton functionality, which is the default state.

     Note that Allegro cannot intercept the close button of a DOS  box	in  Win-
     dows.

     Also  note that the supplied callback is also called under MacOS X when the
     user hits Command-Q or selects "Quit" from the application menu.  Example:

	volatile int close_button_pressed = FALSE;

	void close_button_handler(void)
	{
	   close_button_pressed = TRUE;
	}
	END_OF_FUNCTION(close_button_handler)
	...

	allegro_init();
	LOCK_FUNCTION(close_button_handler);
	set_close_button_callback(close_button_handler);
	...

	while (!close_button_pressed)
	   do_stuff();

RETURN VALUE
     Returns zero on success and non-zero on failure (e.g. the	feature  is  not
     supported by the platform).

SEE ALSO
     set_window_title(3)

Allegro 			  version 4.4.3     set_close_button_callback(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=set_close_button_callback&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help