summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorBjoern Michaelsen <bjoern.michaelsen@canonical.com>2014-05-18 14:28:39 +0200
committerBjoern Michaelsen <bjoern.michaelsen@canonical.com>2014-06-05 11:10:57 +0200
commiteda624641b34a7d4315388c8ec1aebe44f63982e (patch)
treee5392764efad425741cba297c367fd2bb5eec4e8 /include
parentb24739c98f3b5025e3dd5d86fadeae9983ccd5bc (diff)
lp#1296715: refresh invalidated menus
- so we need to be a StatusListener in framework after all - we ware updating all menus for now, instead of just one - this would have a hugh performance hit when there is much change to the menu - thus we just invalidate the menu and update with all changes after 100ms once Change-Id: I48cda968cf0ae1eae0421b3424bb3e5830817e84
Diffstat (limited to 'include')
-rw-r--r--include/vcl/helper.hxx3
-rw-r--r--include/vcl/menu.hxx11
2 files changed, 14 insertions, 0 deletions
diff --git a/include/vcl/helper.hxx b/include/vcl/helper.hxx
index cc368dd4b0da..49c4197958a2 100644
--- a/include/vcl/helper.hxx
+++ b/include/vcl/helper.hxx
@@ -23,6 +23,7 @@
#include <list>
#include <vcl/dllapi.h>
+#include <vcl/vclevent.hxx>
#include <rtl/ustring.hxx>
@@ -54,6 +55,8 @@ enum whichOfficePath { InstallationRootPath, UserPath, ConfigPath };
OUString VCL_DLLPUBLIC getOfficePath( enum whichOfficePath ePath );
} // namespace
+
+bool VCL_DLLPUBLIC GetMenuInvalidateListeners();
#endif // INCLUDED_VCL_HELPER_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/vcl/menu.hxx b/include/vcl/menu.hxx
index 9f31b20421cf..ac3c84ba0761 100644
--- a/include/vcl/menu.hxx
+++ b/include/vcl/menu.hxx
@@ -359,6 +359,17 @@ public:
};
+namespace vcl
+{
+ class VCL_DLLPUBLIC MenuInvalidator
+ {
+ public:
+ MenuInvalidator();
+ VclEventListeners2* GetMenuInvalidateListeners();
+ void Invalidated();
+ };
+}
+
// - MenuBar -