Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
trackwin.h
Go to the documentation of this file.
1/*
2** Command & Conquer Generals Zero Hour(tm)
3** Copyright 2025 Electronic Arts Inc.
4**
5** This program is free software: you can redistribute it and/or modify
6** it under the terms of the GNU General Public License as published by
7** the Free Software Foundation, either version 3 of the License, or
8** (at your option) any later version.
9**
10** This program is distributed in the hope that it will be useful,
11** but WITHOUT ANY WARRANTY; without even the implied warranty of
12** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13** GNU General Public License for more details.
14**
15** You should have received a copy of the GNU General Public License
16** along with this program. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19/***********************************************************************************************
20 *** C O N F I D E N T I A L --- W E S T W O O D S T U D I O S ***
21 ***********************************************************************************************
22 * *
23 * Project Name : Command & Conquer *
24 * *
25 * $Archive:: /Commando/Code/wwlib/trackwin.h $*
26 * *
27 * $Author:: Byon_g $*
28 * *
29 * $Modtime:: 11/28/00 2:44p $*
30 * *
31 * $Revision:: 2 $*
32 * *
33 *---------------------------------------------------------------------------------------------*
34 * Functions: *
35 * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
36
37#ifndef TRACKWIN_H
38#define TRACKWIN_H
39
40
41#ifdef NEVER
42
43#include "trect.h"
44
45/*
46** This class is used to keep track of a subwindow within a larger window.
47*/
48class TrackWindow {
49 public:
50 TrackWindow(int width, int height) : Window(0, 0, width, height), FullWindow(0, 0, width, height) {}
51
52 /*
53 ** Simple sub-window manipulation.
54 */
55 void Set(Rect const & rect) {Window = rect;if (FullWindow.Width==0) FullWindow = rect;}
56 void Reset(void) {Window = Full_Rect();}
57
58 /*
59 ** Query the sub-window data.
60 */
61 int Get_X(void) const {return(Window.X);}
62 int Get_Y(void) const {return(Window.Y);}
63 int Get_Width(void) const {return(Window.Width);}
64 int Get_Height(void) const {return(Window.Height);}
65 Rect Get_Rect(void) const {return(Window);}
66
67 /*
68 ** Query the full window data.
69 */
70 int Full_Width(void) const {return(FullWindow.Width);}
71 int Full_Height(void) const {return(FullWindow.Height);}
72 Rect Full_Rect(void) const {return(FullWindow);}
73
74 protected:
75
76 /*
77 ** This is the sub-window dimensions.
78 */
79 Rect Window;
80
81 /*
82 ** This holds the full sized window. It is used for resetting the window
83 ** and for maximum window dimension clipping.
84 */
85 Rect FullWindow;
86};
87#endif
88
89#endif
TRect< int > Rect
Definition trect.h:221