source: golgotha/src/i4/status/status.hh @ 80

Last change on this file since 80 was 80, checked in by Sam Hocevar, 14 years ago
  • Adding the Golgotha source code. Not sure what's going to be interesting in there, but since it's all public domain, there's certainly stuff to pick up.
File size: 1.3 KB
Line 
1/********************************************************************** <BR>
2  This file is part of Crack dot Com's free source code release of
3  Golgotha. <a href="http://www.crack.com/golgotha_release"> <BR> for
4  information about compiling & licensing issues visit this URL</a>
5  <PRE> If that doesn't help, contact Jonathan Clark at
6  golgotha_source@usa.net (Subject should have "GOLG" in it)
7***********************************************************************/
8
9#ifndef I4_STATUS_HH
10#define I4_STATUS_HH
11
12#include "arch.hh"
13class i4_const_str;
14
15class i4_status_class
16{
17public:
18  virtual i4_bool update(float percent) = 0;   // percent should be 0..1, ret false for cancel
19  virtual ~i4_status_class() { ; }
20};
21
22enum { I4_STATUS_ALLOW_CANCEL=1,
23       I4_STATUS_UNKNOWN_TOTAL=2 };
24   
25// this is operating system dependant
26i4_status_class *i4_create_status(const i4_const_str &description, int flags=0);
27
28
29typedef i4_status_class *(*i4_status_create_function_type)(const i4_const_str &description,
30                                                           int flags=0);
31void i4_set_status_create_function(i4_status_create_function_type fun);
32
33class i4_idle_class
34
35public:
36  static i4_idle_class *first;
37  i4_idle_class *next;
38
39  virtual void idle() = 0;
40
41  i4_idle_class();
42  virtual ~i4_idle_class();
43};
44
45#endif
Note: See TracBrowser for help on using the repository browser.