File: factory_edit.h

package info (click to toggle)
simutrans 111.2.2-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 13,504 kB
  • ctags: 12,645
  • sloc: cpp: 101,849; ansic: 3,466; makefile: 694; sh: 44
file content (64 lines) | stat: -rw-r--r-- 1,532 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#ifndef gui_factory_edit_h
#define gui_factory_edit_h

#include "extend_edit.h"
#include "components/gui_label.h"
#include "components/gui_numberinput.h"

class fabrik_besch_t;

class wkz_build_industries_land_t;
class wkz_build_industries_city_t;
class wkz_build_factory_t;


class factory_edit_frame_t : public extend_edit_gui_t
{
private:
	static wkz_build_industries_land_t land_chain_tool;
	static wkz_build_industries_city_t city_chain_tool;
	static wkz_build_factory_t fab_tool;
	static char param_str[256];

	const fabrik_besch_t *fab_besch;
	uint32 production;
	uint8 rotation; //255 for any

	char prod_str[32], rot_str[16];

	vector_tpl<const fabrik_besch_t *>fablist;

	button_t bt_city_chain;
	button_t bt_land_chain;

	button_t bt_left_rotate, bt_right_rotate;
	gui_label_t lb_rotation, lb_rotation_info;

	gui_numberinput_t inp_production;
	gui_label_t lb_production_info;

	void fill_list( bool translate );

	virtual void change_item_info( sint32 i );

public:
	factory_edit_frame_t(spieler_t* sp,karte_t* welt);

	/**
	* in top-level fenstern wird der Name in der Titelzeile dargestellt
	* @return den nicht uebersetzten Namen der Komponente
	* @author Hj. Malthaner
	*/
	const char* get_name() const { return "factorybuilder"; }

	/**
	* Manche Fenster haben einen Hilfetext assoziiert.
	* @return den Dateinamen fr die Hilfe, oder NULL
	* @author Hj. Malthaner
	*/
	const char* get_hilfe_datei() const { return "factory_build.txt"; }

	bool action_triggered(gui_action_creator_t*, value_t) OVERRIDE;
};

#endif