]> icculus.org git repositories - taylor/freespace2.git/blob - include/optionsmenu.h
fix issue with looping audio streams
[taylor/freespace2.git] / include / optionsmenu.h
1 /*
2  * Copyright (C) Volition, Inc. 1999.  All rights reserved.
3  *
4  * All source code herein is the property of Volition, Inc. You may not sell 
5  * or otherwise commercially exploit the source or things you created based on
6  * the source.
7  */
8
9 /*
10  * $Logfile: /Freespace2/code/MenuUI/OptionsMenu.h $
11  * $Revision$
12  * $Date$
13  * $Author$
14  *
15  * Header file for code that controls the Options menu
16  *
17  * $Log$
18  * Revision 1.2  2002/06/09 04:41:14  relnev
19  * added copyright header
20  *
21  * Revision 1.1.1.1  2002/05/03 03:28:12  root
22  * Initial import.
23  *
24  * 
25  * 3     6/25/99 11:59a Dave
26  * Multi options screen.
27  * 
28  * 2     10/07/98 10:53a Dave
29  * Initial checkin.
30  * 
31  * 1     10/07/98 10:49a Dave
32  * 
33  * 10    1/28/98 6:21p Dave
34  * Made the standalone use ~8 megs less memory. Fixed multiplayer submenu
35  * endgame problem.
36  * 
37  * 9     12/27/97 8:07p Lawrance
38  * remove old code
39  * 
40  * 8     8/31/97 6:38p Lawrance
41  * pass in frametime to do_frame loop
42  * 
43  * 7     1/09/97 12:57p Lawrance
44  * supporting a new state where the player picks to either save or restore
45  * 
46  * 6     11/21/96 7:14p Lawrance
47  * converted menu code to use a file (menu.tbl) to get the data for the
48  * menu
49  * 
50  * 5     11/13/96 4:02p Lawrance
51  * complete over-haul of the menu system and the states associated with
52  * them
53  * 
54  * 4     11/13/96 8:32a Lawrance
55  * streamlined menu code
56  * 
57  * 3     11/06/96 8:54a Lawrance
58  * added revision templates, made more efficient
59  *
60  * $NoKeywords: $
61  *
62 */
63
64 #ifndef _OPTIONSMENU_H
65 #define _OPTIONSMENU_H
66
67 #include "ui.h"
68
69 struct op_sliders {
70         // base slider
71         const char *filename;
72         int x, y, xt, yt;
73         int hotspot;
74         int dot_w;
75         int dots;
76
77         // left and right buttons
78         const char *left_filename;
79         int left_mask, left_x, left_y;
80         const char *right_filename;
81         int right_mask, right_x, right_y;
82
83         // slider control
84         UI_DOT_SLIDER_NEW slider;  // because we have a class inside this struct, we need the constructor below..
85
86         op_sliders(const char *name, int x1, int y1, int xt1, int yt1, int h, int _dot_w, int _dots, const char *_left_filename, int _left_mask, int _left_x, int _left_y, const char *_right_filename, int _right_mask, int _right_x, int _right_y) : 
87                                  filename(name), x(x1), y(y1), xt(xt1), yt(yt1), hotspot(h), dot_w(_dot_w), dots(_dots), left_filename(_left_filename), left_mask(_left_mask), left_x(_left_x), left_y(_left_y), right_filename(_right_filename), right_mask(_right_mask), right_x(_right_x), right_y(_right_y) {}
88 };
89
90 void options_menu_init();
91 void options_menu_close();
92 void options_menu_do_frame(float frametime);
93
94 // kill the options menu
95 void options_cancel_exit();
96
97 #endif
98