Open Ephys GUI
 All Classes Functions Variables Pages
BaseUIElement.h
1 #ifndef BASEUIELEMENT_H_
2 #define BASEUIELEMENT_H_
3 
4 #include "PlotUtils.h"
5 #include "../SpikeObject.h"
6 
7 class SpikeObject;
8 
10 
11 protected:
12  int xpos, ypos, yOffset;
13  double height, width;
14  bool enabled;
15  double padding;
16 
17  void setGlViewport();
18 
19 public:
20  BaseUIElement();
21  BaseUIElement(int x, int y, double w, double h);
22  BaseUIElement(int x, int y, double w, double h, int p);
23  virtual void redraw();
24  void drawElementEdges();
25  virtual void setEnabled(bool e);
26  virtual bool getEnabled();
27  virtual void setPosition(int x, int y, double w, double h);
28  virtual void setPosition(int, int) {}
29  virtual void getPosition(int*, int*, double*, double*);
30  double getHeight();
31  double getWidth();
32  int getX();
33  int getY();
34 
35  // needed for spike display object subclasses:
36  virtual void processSpikeObject(SpikeObject s) {}
37  virtual void pan(int, bool) {}
38  virtual void zoom(int, bool) {}
39  virtual void clear() {}
40 
41  // void clearOnNextDraw(bool);
42  // bool clearNextDraw;
43  bool hitTest(int x, int y);
44 
45 };
46 
47 
48 
49 #endif // BaseUIElement_H_