aboutsummaryrefslogtreecommitdiff
path: root/src/FbTk/Menu.hh
diff options
context:
space:
mode:
authorsimonb <simonb>2005-04-10 18:18:14 (GMT)
committersimonb <simonb>2005-04-10 18:18:14 (GMT)
commit88c66f0687d2a9e2018f22407b2587dc4d87d012 (patch)
tree197308ad2426783058f479d12329548c6a8a4374 /src/FbTk/Menu.hh
parent6cf66c66554a20a1c98eddf26af9e35b7c90cbd5 (diff)
downloadfluxbox-88c66f0687d2a9e2018f22407b2587dc4d87d012.zip
fluxbox-88c66f0687d2a9e2018f22407b2587dc4d87d012.tar.bz2
Big changes to how transparency works
Consequently rearrange lots of rendering ops, and strip calls to updateTransparent
Diffstat (limited to 'src/FbTk/Menu.hh')
-rw-r--r--src/FbTk/Menu.hh13
1 files changed, 4 insertions, 9 deletions
diff --git a/src/FbTk/Menu.hh b/src/FbTk/Menu.hh
index f95728a..d079ba8 100644
--- a/src/FbTk/Menu.hh
+++ b/src/FbTk/Menu.hh
@@ -45,7 +45,6 @@ namespace FbTk {
45 45
46class MenuItem; 46class MenuItem;
47class ImageControl; 47class ImageControl;
48class Transparent;
49 48
50/// Base class for menus 49/// Base class for menus
51class Menu: public FbTk::EventHandler, protected FbTk::Observer { 50class Menu: public FbTk::EventHandler, protected FbTk::Observer {
@@ -179,15 +178,16 @@ protected:
179 178
180 virtual void itemSelected(int button, unsigned int index) { } 179 virtual void itemSelected(int button, unsigned int index) { }
181 virtual int drawItem(unsigned int index, 180 virtual int drawItem(unsigned int index,
182 bool clear = false, bool render_trans = true, 181 bool clear = false,
183 int x= -1, int y= -1, 182 int x= -1, int y= -1,
184 unsigned int width= 0, unsigned int height= 0); 183 unsigned int width= 0, unsigned int height= 0);
185 virtual void redrawTitle(); 184 virtual void redrawTitle();
185 virtual void redrawFrame();
186
186 virtual void internal_hide(); 187 virtual void internal_hide();
187 188
188 void update(FbTk::Subject *); 189 void update(FbTk::Subject *);
189 void renderTransp(int x, int y, 190
190 unsigned int width, unsigned int height);
191private: 191private:
192 192
193 void openSubmenu(); 193 void openSubmenu();
@@ -229,11 +229,6 @@ private:
229 229
230 Drawable m_root_pm; 230 Drawable m_root_pm;
231 static Menu *s_focused; ///< holds current input focused menu, so one can determine if a menu is focused 231 static Menu *s_focused; ///< holds current input focused menu, so one can determine if a menu is focused
232 FbPixmap m_frame_pm, ///< buffer pixmap
233 m_real_frame_pm; ///< buffer pixmap (this one is shown to the user)
234 FbPixmap m_title_pm, ///< buffer pixmap to avoid flicker
235 m_real_title_pm; ///< buffer pixmap (this one is shown to the user)
236 std::auto_ptr<Transparent> m_transp;
237 bool m_need_update; 232 bool m_need_update;
238 Timer m_submenu_timer; 233 Timer m_submenu_timer;
239 Timer m_hide_timer; 234 Timer m_hide_timer;