aboutsummaryrefslogtreecommitdiff
path: root/Src/Wasabi/api/wnd/wndclass/labelwnd.h
blob: f642551415f24b626c9c4c26e9ca9b4d1c315209 (plain) (blame)
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
#ifndef _LABELWND_H
#define _LABELWND_H

#include <bfc/common.h>
#include <api/wnd/wndclass/guiobjwnd.h>

#define LABELWND_PARENT GuiObjectWnd
class LabelWnd : public LABELWND_PARENT {
protected:
  LabelWnd();
public:

  virtual void getClientRect(RECT *);
  virtual int onResize();
  virtual int onPaint(Canvas *canvas);
  virtual int onGetFocus();
  virtual int onKillFocus();
  virtual void invalidateLabel();
  virtual int wantFocus();
  virtual int wantRenderBaseTexture() { return 1; }

  // override & return 1 to force painting label with focus all the time
  virtual int forceFocus() { return 0; }

  virtual void onSetName();
  virtual void setMargin(int newmargin);

  virtual int setFontSize(int size);

//CUT  virtual int childNotify(api_window *child, int msg, intptr_t param1=0, intptr_t param2=0);

  int showLabel(int show);
  int getLabelHeight();

  void reloadResources();

private:
  int show_label, labelsize;
  int labelHeight;
  int margin;
};

// use this if you want a generic labelwnd (but try not to)
class LabelWndI : public LabelWnd { };

#endif