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 OBJECT_WINDOW_HH
|
---|
10 | #define OBJECT_WINDOW_HH
|
---|
11 |
|
---|
12 | #include "window/window.hh"
|
---|
13 | #include "g1_limits.hh"
|
---|
14 | #include "menu/menuitem.hh"
|
---|
15 | #include "editor/dialogs/pick_win.hh"
|
---|
16 | #include "g1_object.hh"
|
---|
17 | #include "reference.hh"
|
---|
18 |
|
---|
19 | class g1_object_class;
|
---|
20 | class r1_render_api_class;
|
---|
21 |
|
---|
22 | class g1_3d_object_window : public g1_3d_pick_window
|
---|
23 | {
|
---|
24 | public:
|
---|
25 | g1_typed_reference_class<g1_object_class> object;
|
---|
26 | g1_object_type object_type;
|
---|
27 | w16 array_index;
|
---|
28 |
|
---|
29 | i4_menu_item_class *copy() { return new g1_3d_object_window(width(), height(),
|
---|
30 | object.valid() ? object->id : 0,
|
---|
31 | array_index,
|
---|
32 | camera,
|
---|
33 | act, pass, reaction->copy()); }
|
---|
34 |
|
---|
35 | void set_object_type(g1_object_type type, w16 array_index);
|
---|
36 |
|
---|
37 | g1_3d_object_window(w16 w, w16 h,
|
---|
38 | g1_object_type obj_type,
|
---|
39 | w16 array_index,
|
---|
40 | g1_3d_pick_window::camera_struct &camera,
|
---|
41 | i4_image_class *active_back,
|
---|
42 | i4_image_class *passive_back,
|
---|
43 | i4_event_reaction_class *reaction);
|
---|
44 |
|
---|
45 |
|
---|
46 | void draw_object(g1_draw_context_class *context);
|
---|
47 |
|
---|
48 | i4_bool selected();
|
---|
49 | void do_press();
|
---|
50 |
|
---|
51 | void do_idle();
|
---|
52 |
|
---|
53 | char *name() { return "object window"; }
|
---|
54 | } ;
|
---|
55 |
|
---|
56 |
|
---|
57 | #endif
|
---|