00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
#ifndef UROOTPANE_HPP
00029
#define UROOTPANE_HPP
00030
00031
#include "uwidget.hpp"
00032
00033
namespace ufo {
00034
00035
class UMenuBar;
00036
class UInternalFrame;
00037
class ULayeredPane;
00038
class UStyleManager;
00039
class UDockWidget;
00040
class UDesktopPane;
00041
00048 class UFO_EXPORT URootPane :
public UWidget {
00049 UFO_DECLARE_DYNAMIC_CLASS(URootPane)
00050
friend class URootLayout;
00051
public:
00052 URootPane();
00053
00056
virtual void setMenuBar(
UMenuBar * menuBar);
00059
virtual UMenuBar * getMenuBar();
00060
00062
virtual UWidget * createContentPane()
const;
00066
virtual void setContentPane(
UWidget * contentPane);
00070
virtual UWidget * getContentPane()
const;
00071
00072
virtual ULayeredPane * createLayeredPane()
const;
00073
virtual void setLayeredPane(
ULayeredPane * layeredPane);
00074
virtual ULayeredPane * getLayeredPane()
const;
00075
00081
virtual void addFrame(
UInternalFrame * frame);
00085
virtual UInternalFrame * removeFrame(
UInternalFrame * frame);
00086
00089
virtual void moveToFront(
UInternalFrame * frame);
00092
virtual void moveToBack(
UInternalFrame * frame);
00093
00094
virtual void addDockWidget(
UDockWidget * w, DockWidgetArea area);
00095
virtual void removeDockWidget(
UDockWidget * w);
00096
00097
virtual void setModalWidget(
UWidget * w);
00098
virtual UWidget * getModalWidget()
const;
00099
00100
public:
00101
virtual URootPane * getRootPane(
bool topmost =
false);
00102
virtual void addedToHierarchy();
00103
virtual UWidget * getVisibleWidgetAt(
const UPoint & p)
const;
00104
00105
private:
00107
UMenuBar * m_menuBar;
00109
UWidget * m_contentPane;
00111
UDesktopPane * m_desktopPane;
00112
UWidget * m_modalWidget;
00113 };
00114
00115 }
00116
00117
#endif // UROOTPANE_HPP