00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef AEDMENUBAR_H
00022 #define AEDMENUBAR_H
00023
00024 #include "aedMenu.h"
00025
00028 class DLLEXPORT aedMenuBar:public aedWidget
00029 {
00030 public:
00031 aedMenuBar();
00032 ~aedMenuBar();
00033
00039 unsigned int attachMenu(std::string title, aedMenu * menu, int pos = -1);
00040
00043 void detachMenu(unsigned int index);
00044
00047 void detachMenu(aedMenu * menu);
00048
00049 int wm_lbuttondown(Uint16 x, Uint16 y);
00050 int wm_mousemove(Uint16 x, Uint16 y, Uint16 dx, Uint16 dy);
00051 int wm_mouseleave();
00052 void render();
00053
00054 private:
00055 int getIndexFromPixel(Uint16 x, Uint16 y, aedRect & rect);
00056
00057 private:
00058 int m_Highlight, m_Active;
00059 std::vector < aedMenu * >m_Menus;
00060 };
00061
00062 #if defined(_MSC_VER)
00063 DLLEXTERN template DLLEXPORT aedFunctor1Arg < stub, aedMenuBar >;
00064 #endif
00065 #endif