Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
FadeView.h
Go to the documentation of this file.
1 /* Project nGenEx
2  Destroyer Studios LLC
3  Copyright © 1997-2004. All Rights Reserved.
4 
5  SUBSYSTEM: nGenEx.lib
6  FILE: FadeView.h
7  AUTHOR: John DiCamillo
8 
9 
10  OVERVIEW
11  ========
12  Non-rendering view class that controls the fade level (fade-in/fade-out)
13 */
14 
15 #ifndef FadeView_h
16 #define FadeView_h
17 
18 #include "Types.h"
19 #include "View.h"
20 
21 // +--------------------------------------------------------------------+
22 
23 class FadeView : public View
24 {
25 public:
26  static const char* TYPENAME() { return "FadeView"; }
27 
29 
30  FadeView(Window* c, double fade_in=1, double fade_out=1, double hold_time=4);
31  virtual ~FadeView();
32 
33  // Operations:
34  virtual void Refresh();
35  virtual bool Done() const { return state == StateDone; }
36  virtual bool Holding() const { return state == StateHold; }
37 
38  // Control:
39  virtual void FastFade(int fade_fast);
40  virtual void FadeIn(double fade_in);
41  virtual void FadeOut(double fade_out);
42  virtual void StopHold();
43 
44 protected:
45  double fade_in;
46  double fade_out;
47  double hold_time;
48  double time;
49  double step_time;
50 
51  int fast;
53 };
54 
55 #endif FadeView_h
56