趣味で作ってるロボット用ソフトウェア
 All Classes Files Functions Enumerations Enumerator Friends Pages
Menu.h
Go to the documentation of this file.
1 #ifndef HRK_MENU_H
2 #define HRK_MENU_H
3 
9 #include <memory>
10 #include "Component.h"
11 
12 
13 namespace hrk
14 {
15  class Button;
16  class Event;
17 
18 
19  class Menu : public Component
20  {
21  public:
22  enum {
23  Invalid_index = -1,
24  };
25 
26  Menu(void);
27  ~Menu(void);
28 
29  void set_alpha(double alpha);
30  void set_color_strength(double ratio);
31 
32  void update(void);
33  void draw(void);
34  SizeF size(void) const;
35 
36  void set_button_align(int align);
37  void set_buttons_interval(const PointF& each_offset);
38  void set_button_offset(int index, const PointF& offset);
39 
40  void add_button(Button* button);
41  void remove_button(Button* button);
42  Button* button(int index) const;
43  int button_size(void) const;
44  void set_button_enabled(int index, bool enable);
45 
46  void set_current_index(int index);
47  int current_index(void) const;
48 
49  void set_decided_index(int index);
50  int decided_index(void) const;
51  void set_decided(bool decide);
52  bool is_decided(void) const;
53 
61  void set_decide_update_enabled(bool enable);
62 
63  void set_select_event(Event* previous, Event* next);
64  void set_decide_event(Event* decide);
65  void set_mouse_enabled(bool enable);
66  void set_rotate_by_key_enabled(bool enable);
67  void hold_last_selected_index(bool hold);
68 
69  private:
70  Menu(const Menu& rhs);
71  Menu& operator = (const Menu& rhs);
72 
73  struct pImpl;
74  std::auto_ptr<pImpl> pimpl;
75  };
76 }
77 
78 #endif
位置
Definition: PointF.h:12
コンポーネントのインターフェース定義
Definition: Menu.h:19
Definition: Component.h:15
幅と高さ
Definition: SizeF.h:12
Definition: Button.h:14
Definition: Event.h:11
void set_decide_update_enabled(bool enable)
既に決定されているときに他のボタンを決定に更新できるかの設定
Definition: Menu.cpp:485