Sophie

Sophie

distrib > Mandriva > 8.1 > i586 > by-pkgid > 11d19300581ffb7d8f8d6c874ef3bf14 > files > 12

fwbuilder-0.9.5-1mdk.i586.rpm



BackgroundOp
     |
     +--- ExecBgr
     |
     +--- Compile            // not implemented yet
     |
     +--- AsyncDNS           // not implemented yet

TextDlg
     |
     +--- BackgroundOpDisplay
		|
		+--- BackgroundRundisplay
		|
		+--- BackgroundCompileDisplay   // not implemented yet



Class BackgroundOp :

	implements basic methods to start, abort, check status of 
	the background operation. More specific class must be derived 
	from this one in order to implement actual operation. Derived 
	class should reimplement following virtual methods:

  virtual void       run_impl(string command);
  virtual void       abort();

	this class also provides flag manipulation methods which allow to
	control execution state of the background process, schedule its 
	interruption, pass its completion status to the calling program.
	These flags manipulation methods are:

  int      get_pgm_status();
  void     set_pgm_status( int status );

  bool     get_running_flag();
  void     set_running_flag( bool flag );

  bool     get_stop_program_flag();
  void     set_stop_program_flag( bool flag);



Class ExecBgr :

	specific implementation on the base of BackgroundOp. This class 
	runs external program in the background and collects its output.



Class TextDlg :

	provides simple widget displaying text with vertical scrollbar.
	It has "OK" button and can be used as modal dialog. This class
	has no knowledge of BackgroundOp and can be use dindependently


Class BackgroundOpDisplay :

	Derived from TextDlg, it inherits its visual representation and basic
	behavior. This class adds interaction between dialog and an object
	of BackgroundOp class. In particular, it will call abort() method
	to stop current background operation when dialog is closed or button
	is clicked. It also adds signal handlers to implement proper reaction
	for some events and displays background process output.

	This class does not create object of the class BackgroundOp because
	it implements only most general aspects of the behavior and interaction
	with such object. Thus, it relies on derived class to create instance
	of BackgroundOp. 


Class BackgroundRunDisplay :

	Derived from the class BackgroundOpDisplay. It creates instance of
	the class ExecBgr to run program in the background.