Go to the documentation of this file.00001
00002 #ifndef vgui_tview_tableau_h_
00003 #define vgui_tview_tableau_h_
00004 #ifdef VCL_NEEDS_PRAGMA_INTERFACE
00005 #pragma interface
00006 #endif
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #include "vgui_tview_tableau_sptr.h"
00024 #include <vcl_vector.h>
00025 #include <vgui/vgui_wrapper_tableau.h>
00026
00027
00028 class vgui_tview_tableau : public vgui_wrapper_tableau
00029 {
00030 public:
00031
00032 vgui_tview_tableau(vgui_tableau_sptr const&);
00033
00034 bool handle(const vgui_event &);
00035 vcl_string type_name() const;
00036
00037 void get_popup(const vgui_popup_params& params, vgui_menu &menu);
00038
00039
00040 void draw_tableau_icon(float x, float y);
00041 void draw_tview_icon(float x, float y);
00042
00043
00044 struct icon
00045 {
00046 vgui_tableau_sptr tableau;
00047 float x;
00048 float y;
00049 };
00050
00051 void draw_icons(vgui_tableau_sptr const& parent, float x, float y);
00052 void add_icons(vcl_vector<icon>* icons, vgui_tableau_sptr const& parent, float x, float y);
00053 vgui_tableau_sptr find_closest_icon(vcl_vector<icon> const& icons, float x, float y);
00054
00055 float spacing;
00056 float icon_height;
00057 float icon_width;
00058
00059 vgui_tableau_sptr active_icon;
00060 vgui_tableau_sptr closest_icon;
00061
00062 protected:
00063 ~vgui_tview_tableau();
00064 };
00065
00066
00067 struct vgui_tview_tableau_new : public vgui_tview_tableau_sptr
00068 {
00069 typedef vgui_tview_tableau_sptr base;
00070 vgui_tview_tableau_new(vgui_tableau_sptr const& arg1000) : base(new vgui_tview_tableau(arg1000)) { }
00071 };
00072
00073 #endif // vgui_tview_tableau_h_