_________ __                 __
        /   _____//  |_____________ _/  |______     ____  __ __  ______
        \_____  \\   __\_  __ \__  \\   __\__  \   / ___\|  |  \/  ___/
        /        \|  |  |  | \// __ \|  |  / __ \_/ /_/  >  |  /\___ \
       /_______  /|__|  |__|  (____  /__| (____  /\___  /|____//____  >
               \/                  \/          \//_____/            \/
    ______________________                           ______________________
                          T H E   W A R   B E G I N S
                   Stratagus - A free fantasy real time strategy game engine

widgets.h
Go to the documentation of this file.
1 // _________ __ __
2 // / _____// |_____________ _/ |______ ____ __ __ ______
3 // \_____ \\ __\_ __ \__ \\ __\__ \ / ___\| | \/ ___/
4 // / \| | | | \// __ \| | / __ \_/ /_/ > | /\___ |
5 // /_______ /|__| |__| (____ /__| (____ /\___ /|____//____ >
6 // \/ \/ \//_____/ \/
7 // ______________________ ______________________
8 // T H E W A R B E G I N S
9 // Stratagus - A free fantasy real time strategy game engine
10 //
12 //
13 // (c) Copyright 2005-2006 by Fran�ois Beerten and Jimmy Salmon
14 //
15 // This program is free software; you can redistribute it and/or modify
16 // it under the terms of the GNU General Public License as published by
17 // the Free Software Foundation; only version 2 of the License.
18 //
19 // This program is distributed in the hope that it will be useful,
20 // but WITHOUT ANY WARRANTY; without even the implied warranty of
21 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 // GNU General Public License for more details.
23 //
24 // You should have received a copy of the GNU General Public License
25 // along with this program; if not, write to the Free Software
26 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
27 // 02111-1307, USA.
28 //
29 
30 #ifndef __WIDGETS_H__
31 #define __WIDGETS_H__
32 
33 #include <functional>
34 
35 #include <guichan.h>
36 #include <guichan/gsdl.h>
37 #include "font.h"
38 
39 #include "keylistener.h"
40 #include "luacallback.h"
41 #include "mouselistener.h"
42 
43 
44 extern bool GuichanActive;
45 
46 void initGuichan();
47 void freeGuichan();
48 void handleInput(const SDL_Event *event);
49 
51 {
52  LuaCallback callback;
53 public:
54  LuaActionListener(lua_State *lua, lua_Object function);
55  virtual void action(const std::string &eventId);
56  virtual bool keyPress(const gcn::Key&);
57  virtual bool keyRelease(const gcn::Key&);
58  virtual void hotKeyPress(const gcn::Key&);
59  virtual void hotKeyRelease(const gcn::Key&);
60  virtual void mouseIn();
61  virtual void mouseOut();
62  virtual void mousePress(int, int, int);
63  virtual void mouseRelease(int, int, int);
64  virtual void mouseClick(int, int, int, int);
65  virtual void mouseWheelUp(int, int);
66  virtual void mouseWheelDown(int, int);
67  virtual void mouseMotion(int, int);
68  virtual ~LuaActionListener();
69 };
70 
72 {
73  std::function<void(const std::string &)> lambda;
74 public:
75  LambdaActionListener(std::function<void(const std::string &)> l)
76  {
77  lambda = l;
78  }
79 
80  virtual void action(const std::string &eventId)
81  {
82  lambda(eventId);
83  }
84 };
85 
86 class ImageWidget : public gcn::Icon
87 {
88 public:
89  explicit ImageWidget(gcn::Image *img) : gcn::Icon(img) {}
90 };
91 
92 class ButtonWidget : public gcn::Button
93 {
94 public:
95  explicit ButtonWidget(const std::string &caption) : Button(caption)
96  {
97  this->setHotKey(GetHotKey(caption));
98  }
99 };
100 
101 class ImageButton : public gcn::Button
102 {
103 public:
104  ImageButton();
105  explicit ImageButton(const std::string &caption);
106 
107  virtual void draw(gcn::Graphics *graphics);
108  virtual void adjustSize();
109 
110  void setNormalImage(gcn::Image *image) { normalImage = image; adjustSize(); }
111  void setPressedImage(gcn::Image *image) { pressedImage = image; }
112  void setDisabledImage(gcn::Image *image) { disabledImage = image; }
113 
117 };
118 
120 {
121 public:
123  ImageRadioButton(const std::string &caption, const std::string &group,
124  bool marked);
125 
126  virtual void drawBox(gcn::Graphics *graphics);
127  virtual void draw(gcn::Graphics *graphics);
128 
129  virtual void mousePress(int x, int y, int button);
130  virtual void mouseRelease(int x, int y, int button);
131  virtual void mouseClick(int x, int y, int button, int count);
132  virtual void adjustSize();
133 
140 
148 };
149 
151 {
152 public:
153  ImageCheckBox();
154  ImageCheckBox(const std::string &caption, bool marked = false);
155 
156  virtual void draw(gcn::Graphics *graphics);
157  virtual void drawBox(gcn::Graphics *graphics);
158 
159  virtual void mousePress(int x, int y, int button);
160  virtual void mouseRelease(int x, int y, int button);
161  virtual void mouseClick(int x, int y, int button, int count);
162  virtual void adjustSize();
163 
170 
178 };
179 
180 class ImageSlider : public gcn::Slider
181 {
182 public:
183  explicit ImageSlider(double scaleEnd = 1.0);
184  ImageSlider(double scaleStart, double scaleEnd);
185 
186  virtual void drawMarker(gcn::Graphics *graphics);
187  virtual void draw(gcn::Graphics *graphics);
188 
189  void setMarkerImage(gcn::Image *image);
190  void setBackgroundImage(gcn::Image *image);
192 
196 };
197 
199 {
200 public:
201  MultiLineLabel();
202  explicit MultiLineLabel(const std::string &caption);
203 
204  virtual void setCaption(const std::string &caption);
205  virtual const std::string &getCaption() const;
206  virtual void setAlignment(unsigned int alignment);
207  virtual unsigned int getAlignment();
208  virtual void setVerticalAlignment(unsigned int alignment);
209  virtual unsigned int getVerticalAlignment();
210  virtual void setLineWidth(int width);
211  virtual int getLineWidth();
212  virtual void adjustSize();
213  virtual void draw(gcn::Graphics *graphics);
214  virtual void drawBorder(gcn::Graphics *graphics);
215 
216  enum {
217  LEFT = 0,
222  };
223 
224 private:
225  void wordWrap();
226 
227  std::string mCaption;
228  std::vector<std::string> mTextRows;
229  unsigned int mAlignment;
230  unsigned int mVerticalAlignment;
231  int mLineWidth;
232 };
233 
235 {
236 public:
237  ScrollingWidget(int width, int height);
238  void add(gcn::Widget *widget, int x, int y);
239  void restart();
240  void setSpeed(float speed) { this->speedY = speed; }
241  float getSpeed() const { return this->speedY; }
242 private:
243  virtual void logic();
244 private:
245  gcn::Container container;
246  float speedY;
247  float containerY;
248  bool finished;
249 };
250 
251 class Windows : public gcn::Window
252 {
253 public:
254  Windows(const std::string &text, int width, int height);
255  void add(gcn::Widget *widget, int x, int y);
256 private:
257  virtual void mouseMotion(int x, int y);
258  virtual void setBackgroundColor(const gcn::Color &color);
259  virtual void setBaseColor(const gcn::Color &color);
260 private:
261  gcn::ScrollArea scroll;
262  gcn::Container container;
263  bool blockwholewindow;
264 };
266 
268 {
269 
270 public:
271  ImageTextField() : TextField(), itemImage(NULL) {}
272  ImageTextField(const std::string& text) : gcn::TextField(text), itemImage(NULL) {}
273  virtual void draw(gcn::Graphics *graphics);
274  virtual void drawBorder(gcn::Graphics *graphics);
275  void setItemImage(CGraphic *image) { itemImage = image; }
276 private:
277  CGraphic *itemImage;
278 };
279 
281 {
282  std::vector<std::string> list;
283 public:
284  StringListModel(std::vector<std::string> l) {
285  list = l;
286  }
287 
288  virtual int getNumberOfElements() { return list.size(); }
289  virtual std::string getElementAt(int i) { return list[i]; }
290 };
291 
293 {
294  std::vector<std::string> list;
295 public:
297 
298  void setList(lua_State *lua, lua_Object *lo);
299  virtual int getNumberOfElements() {return list.size();}
300  virtual std::string getElementAt(int i) {return list[i];}
301 };
302 
304 {
305 public:
306  ImageListBox();
307  ImageListBox(gcn::ListModel *listModel);
308  virtual void draw(gcn::Graphics *graphics);
309  virtual void drawBorder(gcn::Graphics *graphics);
310  void setItemImage(CGraphic *image) { itemImage = image; }
311  void adjustSize();
312  void mousePress(int, int y, int button);
313  void setSelected(int selected);
314  void setListModel(gcn::ListModel *listModel);
315  void logic()
316  {
317  adjustSize();
318  }
319 private:
320  CGraphic *itemImage;
321 };
322 
324 {
325 public:
326  ListBoxWidget(unsigned int width, unsigned int height);
327  void setList(lua_State *lua, lua_Object *lo);
328  void setSelected(int i);
329  int getSelected() const;
330  virtual void setBackgroundColor(const gcn::Color &color);
331  virtual void setFont(gcn::Font *font);
332  virtual void addActionListener(gcn::ActionListener *actionListener);
333 private:
334  void adjustSize();
335 private:
336  LuaListModel lualistmodel;
337  gcn::ListBox listbox;
338 };
339 
341 {
342 public:
343  ImageListBoxWidget(unsigned int width, unsigned int height);
344  void setList(lua_State *lua, lua_Object *lo);
345  void setSelected(int i);
346  int getSelected() const;
347  virtual void setBackgroundColor(const gcn::Color &color);
348  virtual void setFont(gcn::Font *font);
349  virtual void addActionListener(gcn::ActionListener *actionListener);
350 
351  void setItemImage(CGraphic *image) {
352  itemImage = image;
353  listbox.setItemImage(image);
354  }
355  void setUpButtonImage(CGraphic *image) { upButtonImage = image; }
356  void setUpPressedButtonImage(CGraphic *image) { upPressedButtonImage = image; }
357  void setDownButtonImage(CGraphic *image) { downButtonImage = image; }
358  void setDownPressedButtonImage(CGraphic *image) { downPressedButtonImage = image; }
359  void setLeftButtonImage(CGraphic *image) { leftButtonImage = image; }
360  void setLeftPressedButtonImage(CGraphic *image) { leftPressedButtonImage = image; }
361  void setRightButtonImage(CGraphic *image) { rightButtonImage = image; }
362  void setRightPressedButtonImage(CGraphic *image) { rightPressedButtonImage = image; }
363  void setHBarImage(CGraphic *image) {
364  hBarButtonImage = image;
365  mScrollbarWidth = std::min<int>(image->getWidth(), image->getHeight());
366  }
367  void setVBarImage(CGraphic *image) {
368  vBarButtonImage = image;
369  mScrollbarWidth = std::min<int>(image->getWidth(), image->getHeight());
370  }
371  void setMarkerImage(CGraphic *image) { markerImage = image; }
372 
373  virtual void draw(gcn::Graphics *graphics);
374  virtual void drawBorder(gcn::Graphics *graphics);
377 private:
378  void adjustSize();
379 
380  void drawUpButton(gcn::Graphics *graphics);
381  void drawDownButton(gcn::Graphics *graphics);
382  void drawLeftButton(gcn::Graphics *graphics);
383  void drawRightButton(gcn::Graphics *graphics);
384  void drawUpPressedButton(gcn::Graphics *graphics);
385  void drawDownPressedButton(gcn::Graphics *graphics);
386  void drawLeftPressedButton(gcn::Graphics *graphics);
387  void drawRightPressedButton(gcn::Graphics *graphics);
388  void drawHMarker(gcn::Graphics *graphics);
389  void drawVMarker(gcn::Graphics *graphics);
390  void drawHBar(gcn::Graphics *graphics);
391  void drawVBar(gcn::Graphics *graphics);
392 private:
393  CGraphic *itemImage;
394  CGraphic *upButtonImage;
395  CGraphic *upPressedButtonImage;
396  CGraphic *downButtonImage;
397  CGraphic *downPressedButtonImage;
398  CGraphic *leftButtonImage;
399  CGraphic *leftPressedButtonImage;
400  CGraphic *rightButtonImage;
401  CGraphic *rightPressedButtonImage;
402  CGraphic *hBarButtonImage;
403  CGraphic *vBarButtonImage;
404  CGraphic *markerImage;
405 
406  LuaListModel lualistmodel;
407  ImageListBox listbox;
408 };
409 
411 {
412  LuaListModel listmodel;
413 public:
415  void setList(lua_State *lua, lua_Object *lo);
416  virtual void setSize(int width, int height);
417 };
418 
420 {
421 public:
422  ImageDropDownWidget() : itemImage(NULL) {
423  mListBox.addActionListener(this);
424  setListModel(&listmodel);
425  mScrollArea->setContent(&mListBox);
426  }
427  void setItemImage(CGraphic *image) {
428  itemImage = image;
429  mListBox.setItemImage(image);
430  }
431  void setDownNormalImage(CGraphic *image) { DownNormalImage = image; }
432  void setDownPressedImage(CGraphic *image) { DownPressedImage = image; }
433 
434  virtual ImageListBox *getListBox() { return &mListBox; }
435  virtual void draw(gcn::Graphics *graphics);
436  virtual void drawBorder(gcn::Graphics *graphics);
437  void drawButton(gcn::Graphics *graphics);
438  void setList(lua_State *lua, lua_Object *lo);
439  virtual void setSize(int width, int height);
440  void setListModel(LuaListModel *listModel);
441  int getSelected();
442  void setSelected(int selected);
443  void adjustHeight();
444  void setListBox(ImageListBox *listBox);
445  void setFont(gcn::Font *font);
446  void _mouseInputMessage(const gcn::MouseInput &mouseInput);
447 private:
448  CGraphic *itemImage;
449  CGraphic *DownNormalImage;
450  CGraphic *DownPressedImage;
451  ImageListBox mListBox;
452  LuaListModel listmodel;
453 };
454 
456 {
457 public:
458  StatBoxWidget(int width, int height);
459 
460  virtual void draw(gcn::Graphics *graphics);
461  void setCaption(const std::string &s);
462  const std::string &getCaption() const;
463  void setPercent(const int percent);
464  int getPercent() const;
465 
466 private:
467  std::string caption;
468  unsigned int percent;
469 };
470 
472 {
473 public:
474  MenuScreen();
475 
476  int run(bool loop = true);
477  void stop(int result = 0, bool stopAll = false);
478  void stopAll(int result = 0) { stop(result, true); }
479  void addLogicCallback(LuaActionListener *listener);
480  virtual void draw(gcn::Graphics *graphics);
481  virtual void logic();
482  void setDrawMenusUnder(bool drawUnder) { this->drawUnder = drawUnder; }
483  bool getDrawMenusUnder() const { return this->drawUnder; }
484 
485 private:
486  bool runLoop;
487  int loopResult;
488  gcn::Widget *oldtop;
489  LuaActionListener *logiclistener;
490  bool drawUnder;
491 };
492 
493 #endif
ImageSlider::backgroundImage
gcn::Image * backgroundImage
Definition: widgets.h:194
gcn::ScrollArea::mScrollbarWidth
int mScrollbarWidth
Definition: scrollarea.h:432
gcn::KeyListener
Definition: keylistener.h:74
ButtonWidget
Definition: widgets.h:92
MultiLineLabel
Definition: widgets.h:198
ImageListBoxWidget::setSelected
void setSelected(int i)
Definition: widgets.cpp:1535
ImageRadioButton::setUncheckedDisabledImage
void setUncheckedDisabledImage(gcn::Image *image)
Definition: widgets.h:136
ImageTextField::ImageTextField
ImageTextField(const std::string &text)
Definition: widgets.h:272
MultiLineLabel::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:877
ImageButton::normalImage
gcn::Image * normalImage
Definition: widgets.h:114
ImageRadioButton
Definition: widgets.h:119
ImageRadioButton::checkedDisabledImage
gcn::Image * checkedDisabledImage
Definition: widgets.h:146
ImageCheckBox::checkedPressedImage
gcn::Image * checkedPressedImage
Definition: widgets.h:175
MultiLineLabel::MultiLineLabel
MultiLineLabel()
Definition: widgets.cpp:770
ImageCheckBox::uncheckedNormalImage
gcn::Image * uncheckedNormalImage
Definition: widgets.h:171
ImageListBoxWidget::ImageListBoxWidget
ImageListBoxWidget(unsigned int width, unsigned int height)
Definition: widgets.cpp:1487
ImageCheckBox::mouseClick
virtual void mouseClick(int x, int y, int button, int count)
Definition: widgets.cpp:639
MenuScreen
Definition: widgets.h:471
CGraphic::getHeight
virtual int getHeight() const
Definition: video.h:182
ImageButton::setDisabledImage
void setDisabledImage(gcn::Image *image)
Definition: widgets.h:112
LuaActionListener::mouseIn
virtual void mouseIn()
Definition: widgets.cpp:229
LuaActionListener
Definition: widgets.h:50
StringListModel::getElementAt
virtual std::string getElementAt(int i)
Definition: widgets.h:289
ImageListBoxWidget::setDownButtonImage
void setDownButtonImage(CGraphic *image)
Definition: widgets.h:357
mouselistener.h
ImageDropDownWidget::drawButton
void drawButton(gcn::Graphics *graphics)
Definition: widgets.cpp:2172
DropDownWidget
Definition: widgets.h:410
LambdaActionListener
Definition: widgets.h:71
ListBoxWidget::ListBoxWidget
ListBoxWidget(unsigned int width, unsigned int height)
Definition: widgets.cpp:1475
ImageCheckBox::setCheckedPressedImage
void setCheckedPressedImage(gcn::Image *image)
Definition: widgets.h:168
gcn::Graphics
Definition: graphics.h:97
ImageCheckBox::mousePress
virtual void mousePress(int x, int y, int button)
Definition: widgets.cpp:619
gcn::RadioButton
Definition: radiobutton.h:72
ImageListBoxWidget::setBackgroundColor
virtual void setBackgroundColor(const gcn::Color &color)
Definition: widgets.cpp:1581
MenuScreen::addLogicCallback
void addLogicCallback(LuaActionListener *listener)
Definition: widgets.cpp:2473
MultiLineLabel::getCaption
virtual const std::string & getCaption() const
Definition: widgets.cpp:804
ListBoxWidget::setBackgroundColor
virtual void setBackgroundColor(const gcn::Color &color)
Definition: widgets.cpp:1569
DropDownWidget::setSize
virtual void setSize(int width, int height)
Definition: widgets.cpp:2042
ImageSlider::ImageSlider
ImageSlider(double scaleEnd=1.0)
Definition: widgets.cpp:676
ImageDropDownWidget::setDownPressedImage
void setDownPressedImage(CGraphic *image)
Definition: widgets.h:432
MenuScreen::getDrawMenusUnder
bool getDrawMenusUnder() const
Definition: widgets.h:483
DropDownWidget::DropDownWidget
DropDownWidget()
Definition: widgets.h:414
ImageDropDownWidget::getSelected
int getSelected()
Definition: widgets.cpp:2197
ImageListBox::setItemImage
void setItemImage(CGraphic *image)
Definition: widgets.h:310
keylistener.h
DropDownWidget::setList
void setList(lua_State *lua, lua_Object *lo)
Definition: widgets.cpp:2033
ImageListBoxWidget::drawBorder
virtual void drawBorder(gcn::Graphics *graphics)
Definition: widgets.cpp:1764
ListBoxWidget
Definition: widgets.h:323
gcn::MouseListener
Definition: mouselistener.h:72
ScrollingWidget::setSpeed
void setSpeed(float speed)
Definition: widgets.h:240
ImageListBoxWidget::setLeftPressedButtonImage
void setLeftPressedButtonImage(CGraphic *image)
Definition: widgets.h:360
ImageListBox::setSelected
void setSelected(int selected)
Definition: widgets.cpp:1419
gcn::ActionListener
Definition: actionlistener.h:71
LambdaActionListener::action
virtual void action(const std::string &eventId)
Definition: widgets.h:80
gcn::DropDown
Definition: dropdown.h:78
ImageRadioButton::mousePress
virtual void mousePress(int x, int y, int button)
Definition: widgets.cpp:481
void
void(CCONV *lazyGlBegin)(GLenum)
LambdaActionListener::LambdaActionListener
LambdaActionListener(std::function< void(const std::string &)> l)
Definition: widgets.h:75
CGraphic::getWidth
virtual int getWidth() const
Definition: video.h:181
ImageListBox::mousePress
void mousePress(int, int y, int button)
Definition: widgets.cpp:1405
LuaActionListener::mouseRelease
virtual void mouseRelease(int, int, int)
Definition: widgets.cpp:248
gcn::Icon
Definition: icon.h:67
event
HANDLE event
Definition: midiplayer.c:31
font.h
LuaActionListener::hotKeyPress
virtual void hotKeyPress(const gcn::Key &)
Definition: widgets.cpp:215
ListBoxWidget::getSelected
int getSelected() const
Definition: widgets.cpp:1547
LuaListModel::LuaListModel
LuaListModel()
Definition: widgets.h:296
gcn::Button
Definition: button.h:73
ImageListBoxWidget::setMarkerImage
void setMarkerImage(CGraphic *image)
Definition: widgets.h:371
MultiLineLabel::setVerticalAlignment
virtual void setVerticalAlignment(unsigned int alignment)
Definition: widgets.cpp:828
ImageCheckBox::mouseRelease
virtual void mouseRelease(int x, int y, int button)
Definition: widgets.cpp:629
MenuScreen::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:2478
ImageSlider::drawMarker
virtual void drawMarker(gcn::Graphics *graphics)
Definition: widgets.cpp:692
ImageRadioButton::mouseRelease
virtual void mouseRelease(int x, int y, int button)
Definition: widgets.cpp:491
ImageCheckBox::drawBox
virtual void drawBox(gcn::Graphics *graphics)
Definition: widgets.cpp:586
ImageDropDownWidget::getListBox
virtual ImageListBox * getListBox()
Definition: widgets.h:434
ImageButton::pressedImage
gcn::Image * pressedImage
Definition: widgets.h:115
StatBoxWidget::StatBoxWidget
StatBoxWidget(int width, int height)
Definition: widgets.cpp:2306
StatBoxWidget::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:2324
gcn::ListBox
Definition: listbox.h:72
ImageTextField::ImageTextField
ImageTextField()
Definition: widgets.h:271
ImageRadioButton::setCheckedPressedImage
void setCheckedPressedImage(gcn::Image *image)
Definition: widgets.h:138
ImageListBoxWidget::getSelected
int getSelected() const
Definition: widgets.cpp:1559
gcn::Image
Definition: image.h:76
ImageTextField::drawBorder
virtual void drawBorder(gcn::Graphics *graphics)
Definition: widgets.cpp:1286
MenuScreen::stopAll
void stopAll(int result=0)
Definition: widgets.h:478
MultiLineLabel::adjustSize
virtual void adjustSize()
Definition: widgets.cpp:861
ImageRadioButton::setUncheckedNormalImage
void setUncheckedNormalImage(gcn::Image *image)
Definition: widgets.h:134
ImageSlider::markerImage
gcn::Image * markerImage
Definition: widgets.h:193
ImageRadioButton::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:455
MultiLineLabel::BOTTOM
@ BOTTOM
Definition: widgets.h:221
ImageDropDownWidget::ImageDropDownWidget
ImageDropDownWidget()
Definition: widgets.h:422
LuaActionListener::mousePress
virtual void mousePress(int, int, int)
Definition: widgets.cpp:241
gcn
Definition: cliprectangle.cpp:61
ImageRadioButton::checkedNormalImage
gcn::Image * checkedNormalImage
Definition: widgets.h:144
gcn::Widget::setHotKey
virtual void setHotKey(const int key)
Definition: widget.cpp:638
ImageButton::setPressedImage
void setPressedImage(gcn::Image *image)
Definition: widgets.h:111
ImageTextField
Definition: widgets.h:267
ImageRadioButton::uncheckedPressedImage
gcn::Image * uncheckedPressedImage
Definition: widgets.h:142
ImageButton::ImageButton
ImageButton()
Definition: widgets.cpp:293
Windows::Windows
Windows(const std::string &text, int width, int height)
Definition: widgets.cpp:1110
LuaActionListener::mouseClick
virtual void mouseClick(int, int, int, int)
Definition: widgets.cpp:255
ImageCheckBox
Definition: widgets.h:150
MultiLineLabel::drawBorder
virtual void drawBorder(gcn::Graphics *graphics)
Definition: widgets.cpp:924
LuaActionListener::action
virtual void action(const std::string &eventId)
Definition: widgets.cpp:192
MultiLineLabel::setLineWidth
virtual void setLineWidth(int width)
Definition: widgets.cpp:844
MultiLineLabel::LEFT
@ LEFT
Definition: widgets.h:217
StringListModel
Definition: widgets.h:280
ScrollingWidget::getSpeed
float getSpeed() const
Definition: widgets.h:241
ImageCheckBox::uncheckedDisabledImage
gcn::Image * uncheckedDisabledImage
Definition: widgets.h:173
LuaListModel
Definition: widgets.h:292
LuaActionListener::keyRelease
virtual bool keyRelease(const gcn::Key &)
Definition: widgets.cpp:207
gcn::Rectangle
Definition: rectangle.h:65
ImageCheckBox::adjustSize
virtual void adjustSize()
Definition: widgets.cpp:649
ScrollingWidget
Definition: widgets.h:234
guichan.h
MultiLineLabel::getLineWidth
virtual int getLineWidth()
Definition: widgets.cpp:853
LuaListModel::getElementAt
virtual std::string getElementAt(int i)
Definition: widgets.h:300
ImageCheckBox::setUncheckedDisabledImage
void setUncheckedDisabledImage(gcn::Image *image)
Definition: widgets.h:166
ImageDropDownWidget::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:2085
initGuichan
void initGuichan()
Definition: widgets.cpp:93
ImageSlider::setBackgroundImage
void setBackgroundImage(gcn::Image *image)
Definition: widgets.cpp:748
ImageListBoxWidget::setUpButtonImage
void setUpButtonImage(CGraphic *image)
Definition: widgets.h:355
ImageDropDownWidget::setListModel
void setListModel(LuaListModel *listModel)
Definition: widgets.cpp:2056
ImageListBox::ImageListBox
ImageListBox()
Definition: widgets.cpp:1333
freeGuichan
void freeGuichan()
Definition: widgets.cpp:126
gcn::TextField::TextField
TextField()
Definition: textfield.cpp:67
GuichanActive
bool GuichanActive
ImageCheckBox::uncheckedPressedImage
gcn::Image * uncheckedPressedImage
Definition: widgets.h:172
gsdl.h
gcn::ListModel
Definition: listmodel.h:70
ImageButton::adjustSize
virtual void adjustSize()
Definition: widgets.cpp:382
LuaListModel::getNumberOfElements
virtual int getNumberOfElements()
Definition: widgets.h:299
gcn::CheckBox
Definition: checkbox.h:70
ImageDropDownWidget::setDownNormalImage
void setDownNormalImage(CGraphic *image)
Definition: widgets.h:431
MenuScreen::MenuScreen
MenuScreen()
Definition: widgets.cpp:2395
ScrollingWidget::restart
void restart()
Definition: widgets.cpp:1090
gcn::Slider
Definition: slider.h:68
ImageRadioButton::uncheckedNormalImage
gcn::Image * uncheckedNormalImage
Definition: widgets.h:141
ImageTextField::setItemImage
void setItemImage(CGraphic *image)
Definition: widgets.h:275
ListBoxWidget::setList
void setList(lua_State *lua, lua_Object *lo)
Definition: widgets.cpp:1499
ImageSlider::setDisabledBackgroundImage
void setDisabledBackgroundImage(gcn::Image *image)
Definition: widgets.cpp:756
ImageListBox::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:1341
StatBoxWidget
Definition: widgets.h:455
StringListModel::getNumberOfElements
virtual int getNumberOfElements()
Definition: widgets.h:288
gcn::Widget::addActionListener
virtual void addActionListener(ActionListener *actionListener)
Definition: widget.cpp:351
ImageCheckBox::setUncheckedPressedImage
void setUncheckedPressedImage(gcn::Image *image)
Definition: widgets.h:165
MultiLineLabel::setCaption
virtual void setCaption(const std::string &caption)
Definition: widgets.cpp:794
ImageSlider::setMarkerImage
void setMarkerImage(gcn::Image *image)
Definition: widgets.cpp:739
ImageListBox::drawBorder
virtual void drawBorder(gcn::Graphics *graphics)
Definition: widgets.cpp:1373
ImageButton::setNormalImage
void setNormalImage(gcn::Image *image)
Definition: widgets.h:110
ImageRadioButton::mMouseDown
bool mMouseDown
Definition: widgets.h:147
ImageListBoxWidget
Definition: widgets.h:340
ImageCheckBox::setUncheckedNormalImage
void setUncheckedNormalImage(gcn::Image *image)
Definition: widgets.h:164
ScrollingWidget::add
void add(gcn::Widget *widget, int x, int y)
Definition: widgets.cpp:1059
ImageListBoxWidget::setDownPressedButtonImage
void setDownPressedButtonImage(CGraphic *image)
Definition: widgets.h:358
ImageListBoxWidget::setItemImage
void setItemImage(CGraphic *image)
Definition: widgets.h:351
MenuScreen::logic
virtual void logic()
Definition: widgets.cpp:2489
ListBoxWidget::addActionListener
virtual void addActionListener(gcn::ActionListener *actionListener)
Definition: widgets.cpp:1663
MultiLineLabel::setAlignment
virtual void setAlignment(unsigned int alignment)
Definition: widgets.cpp:812
ImageCheckBox::checkedNormalImage
gcn::Image * checkedNormalImage
Definition: widgets.h:174
StringListModel::StringListModel
StringListModel(std::vector< std::string > l)
Definition: widgets.h:284
MultiLineLabel::CENTER
@ CENTER
Definition: widgets.h:218
ImageDropDownWidget::drawBorder
virtual void drawBorder(gcn::Graphics *graphics)
Definition: widgets.cpp:2148
ImageListBoxWidget::setLeftButtonImage
void setLeftButtonImage(CGraphic *image)
Definition: widgets.h:359
gcn::Color
Definition: color.h:65
ImageSlider::disabledBackgroundImage
gcn::Image * disabledBackgroundImage
Definition: widgets.h:195
gcn::Font
Definition: font.h:69
lua_Object
int lua_Object
Definition: luacallback.h:38
gcn::DropDown::mScrollArea
ScrollArea * mScrollArea
Definition: dropdown.h:250
ImageListBox
Definition: widgets.h:303
ImageDropDownWidget::adjustHeight
void adjustHeight()
Definition: widgets.cpp:2214
ImageWidget
Definition: widgets.h:86
handleInput
void handleInput(const SDL_Event *event)
Definition: widgets.cpp:143
ImageRadioButton::uncheckedDisabledImage
gcn::Image * uncheckedDisabledImage
Definition: widgets.h:143
LuaCallback
Definition: luacallback.h:41
gcn::Key
Definition: key.h:67
ButtonWidget::ButtonWidget
ButtonWidget(const std::string &caption)
Definition: widgets.h:95
ImageDropDownWidget::setSelected
void setSelected(int selected)
Definition: widgets.cpp:2204
ImageButton::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:317
ImageCheckBox::checkedDisabledImage
gcn::Image * checkedDisabledImage
Definition: widgets.h:176
gcn::Container
Definition: container.h:73
ImageCheckBox::mMouseDown
bool mMouseDown
Definition: widgets.h:177
LuaListModel::setList
void setList(lua_State *lua, lua_Object *lo)
Definition: widgets.cpp:1319
MenuScreen::run
int run(bool loop=true)
Definition: widgets.cpp:2410
ImageCheckBox::ImageCheckBox
ImageCheckBox()
Definition: widgets.cpp:539
luacallback.h
ImageRadioButton::setUncheckedPressedImage
void setUncheckedPressedImage(gcn::Image *image)
Definition: widgets.h:135
MultiLineLabel::getVerticalAlignment
virtual unsigned int getVerticalAlignment()
Definition: widgets.cpp:836
StatBoxWidget::setPercent
void setPercent(const int percent)
Definition: widgets.cpp:2372
ImageListBoxWidget::setHBarImage
void setHBarImage(CGraphic *image)
Definition: widgets.h:363
gcn::TextField
Definition: textfield.h:68
gcn::Icon::Icon
Icon(Image *image)
Definition: icon.cpp:65
ImageCheckBox::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:560
ImageRadioButton::ImageRadioButton
ImageRadioButton()
Definition: widgets.cpp:400
LuaActionListener::keyPress
virtual bool keyPress(const gcn::Key &)
Definition: widgets.cpp:199
StatBoxWidget::setCaption
void setCaption(const std::string &s)
Definition: widgets.cpp:2352
ImageSlider
Definition: widgets.h:180
MultiLineLabel::TOP
@ TOP
Definition: widgets.h:220
ImageRadioButton::checkedPressedImage
gcn::Image * checkedPressedImage
Definition: widgets.h:145
ImageDropDownWidget::setList
void setList(lua_State *lua, lua_Object *lo)
Definition: widgets.cpp:2070
ImageCheckBox::setCheckedDisabledImage
void setCheckedDisabledImage(gcn::Image *image)
Definition: widgets.h:169
ListBoxWidget::setFont
virtual void setFont(gcn::Font *font)
Definition: widgets.cpp:1593
LuaActionListener::mouseWheelDown
virtual void mouseWheelDown(int, int)
Definition: widgets.cpp:269
StatBoxWidget::getCaption
const std::string & getCaption() const
Definition: widgets.cpp:2362
ImageCheckBox::setCheckedNormalImage
void setCheckedNormalImage(gcn::Image *image)
Definition: widgets.h:167
ImageListBoxWidget::getHorizontalMarkerDimension
virtual gcn::Rectangle getHorizontalMarkerDimension()
Definition: widgets.cpp:1982
GetHotKey
int GetHotKey(const std::string &text)
Get the hot key from a string.
Definition: font.cpp:472
ListBoxWidget::setSelected
void setSelected(int i)
Definition: widgets.cpp:1523
MultiLineLabel::RIGHT
@ RIGHT
Definition: widgets.h:219
ImageButton::disabledImage
gcn::Image * disabledImage
Definition: widgets.h:116
LuaActionListener::hotKeyRelease
virtual void hotKeyRelease(const gcn::Key &)
Definition: widgets.cpp:222
ImageButton
Definition: widgets.h:101
ImageListBox::logic
void logic()
Definition: widgets.h:315
LuaActionListener::mouseOut
virtual void mouseOut()
Definition: widgets.cpp:235
ImageRadioButton::adjustSize
virtual void adjustSize()
Definition: widgets.cpp:512
ImageListBoxWidget::setVBarImage
void setVBarImage(CGraphic *image)
Definition: widgets.h:367
ImageListBoxWidget::addActionListener
virtual void addActionListener(gcn::ActionListener *actionListener)
Definition: widgets.cpp:1671
ImageDropDownWidget::_mouseInputMessage
void _mouseInputMessage(const gcn::MouseInput &mouseInput)
Definition: widgets.cpp:2273
ImageWidget::ImageWidget
ImageWidget(gcn::Image *img)
Definition: widgets.h:89
ImageListBoxWidget::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:1683
LuaActionListener::mouseWheelUp
virtual void mouseWheelUp(int, int)
Definition: widgets.cpp:263
ImageListBoxWidget::setList
void setList(lua_State *lua, lua_Object *lo)
Definition: widgets.cpp:1509
ImageRadioButton::drawBox
virtual void drawBox(gcn::Graphics *graphics)
Definition: widgets.cpp:422
ImageRadioButton::mouseClick
virtual void mouseClick(int x, int y, int button, int count)
Definition: widgets.cpp:501
ImageListBoxWidget::getVerticalMarkerDimension
virtual gcn::Rectangle getVerticalMarkerDimension()
Definition: widgets.cpp:1940
ScrollingWidget::ScrollingWidget
ScrollingWidget(int width, int height)
Definition: widgets.cpp:1042
ImageListBoxWidget::setRightPressedButtonImage
void setRightPressedButtonImage(CGraphic *image)
Definition: widgets.h:362
ImageDropDownWidget::setFont
void setFont(gcn::Font *font)
Definition: widgets.cpp:2267
ImageDropDownWidget::setSize
virtual void setSize(int width, int height)
Definition: widgets.cpp:2079
MenuScreen::stop
void stop(int result=0, bool stopAll=false)
Definition: widgets.cpp:2440
ImageTextField::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:1233
LuaActionListener::mouseMotion
virtual void mouseMotion(int, int)
Definition: widgets.cpp:275
MenuScreen::setDrawMenusUnder
void setDrawMenusUnder(bool drawUnder)
Definition: widgets.h:482
gcn::Button::Button
Button()
Definition: button.cpp:65
ImageSlider::draw
virtual void draw(gcn::Graphics *graphics)
Definition: widgets.cpp:716
gcn::ScrollArea::setContent
virtual void setContent(Widget *widget)
Definition: scrollarea.cpp:131
ImageListBox::adjustSize
void adjustSize()
Definition: widgets.cpp:1397
Windows::add
void add(gcn::Widget *widget, int x, int y)
Definition: widgets.cpp:1127
LuaActionListener::LuaActionListener
LuaActionListener(lua_State *lua, lua_Object function)
Definition: widgets.cpp:180
gcn::MouseInput
Definition: mouseinput.h:67
ImageDropDownWidget::setListBox
void setListBox(ImageListBox *listBox)
Definition: widgets.cpp:2246
gcn::Widget
Definition: widget.h:93
StatBoxWidget::getPercent
int getPercent() const
Definition: widgets.cpp:2381
ImageListBoxWidget::setUpPressedButtonImage
void setUpPressedButtonImage(CGraphic *image)
Definition: widgets.h:356
ImageDropDownWidget::setItemImage
void setItemImage(CGraphic *image)
Definition: widgets.h:427
ImageDropDownWidget
Definition: widgets.h:419
gcn::Window
Definition: window.h:68
MultiLineLabel::getAlignment
virtual unsigned int getAlignment()
Definition: widgets.cpp:820
Windows
Definition: widgets.h:251
gcn::ScrollArea
Definition: scrollarea.h:75
ImageListBoxWidget::setFont
virtual void setFont(gcn::Font *font)
Definition: widgets.cpp:1605
ImageRadioButton::setCheckedDisabledImage
void setCheckedDisabledImage(gcn::Image *image)
Definition: widgets.h:139
ImageListBox::setListModel
void setListModel(gcn::ListModel *listModel)
Definition: widgets.cpp:1457
ImageListBoxWidget::setRightButtonImage
void setRightButtonImage(CGraphic *image)
Definition: widgets.h:361
LuaActionListener::~LuaActionListener
virtual ~LuaActionListener()
Definition: widgets.cpp:281
ImageRadioButton::setCheckedNormalImage
void setCheckedNormalImage(gcn::Image *image)
Definition: widgets.h:137
CGraphic
Definition: video.h:91
(C) Copyright 1998-2012 by The Stratagus Project under the GNU General Public License.
All trademarks and copyrights on this page are owned by their respective owners.