| #pragma once |
| |
| #ifndef TNZ_MENUBAR_INCLUDED |
| #define TNZ_MENUBAR_INCLUDED |
| |
| #include "tw/tw.h" |
| #include "tw/popupmenu.h" |
| |
| #undef DVAPI |
| #undef DVVAR |
| #ifdef TWIN_EXPORTS |
| #define DVAPI DV_EXPORT_API |
| #define DVVAR DV_EXPORT_VAR |
| #else |
| #define DVAPI DV_IMPORT_API |
| #define DVVAR DV_IMPORT_VAR |
| #endif |
| |
| |
| |
| class DVAPI TMenubar : public TWidget { |
| public: |
| TMenubar(TWidget *parent, string name = "menubar"); |
| void configureNotify(const TDimension &); |
| void draw(); |
| |
| int getMinWidth(); |
| }; |
| |
| |
| |
| class DVAPI TMenubarItem : public TWidget, public TPopupMenuListener { |
| bool m_highlighted, m_pressed; |
| TPopupMenu *m_popupMenu; |
| wstring m_title; |
| |
| protected: |
| void create(); |
| |
| public: |
| TMenubarItem(TMenubar *menubar, string name); |
| |
| void draw(); |
| void enter(const TPoint &p); |
| void leave(const TPoint &p); |
| void leftButtonDown(const TMouseEvent &e); |
| void leftButtonUp(const TMouseEvent &e); |
| |
| TPopupMenu *getMenu() const { return m_popupMenu; } |
| TPopupMenuItem *addItem(string cmdname); |
| |
| void addSeparator(); |
| |
| void onMenuSelect(TPopupMenuItem *); |
| |
| TDimension getPreferredSize() const; |
| }; |
| |
| #endif |