summaryrefslogtreecommitdiffstats
path: root/widget/gtk/nsMenuSeparator.h
diff options
context:
space:
mode:
Diffstat (limited to 'widget/gtk/nsMenuSeparator.h')
-rw-r--r--widget/gtk/nsMenuSeparator.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/widget/gtk/nsMenuSeparator.h b/widget/gtk/nsMenuSeparator.h
new file mode 100644
index 000000000..9ba770a85
--- /dev/null
+++ b/widget/gtk/nsMenuSeparator.h
@@ -0,0 +1,33 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#ifndef __nsMenuSeparator_h__
+#define __nsMenuSeparator_h__
+
+#include "mozilla/Attributes.h"
+
+#include "nsMenuObject.h"
+
+class nsIContent;
+class nsIAtom;
+class nsMenuContainer;
+
+// Menu separator class
+class nsMenuSeparator final : public nsMenuObject {
+public:
+ nsMenuSeparator(nsMenuContainer* aParent, nsIContent* aContent);
+ ~nsMenuSeparator();
+
+ nsMenuObject::EType Type() const override;
+
+private:
+ void InitializeNativeData() override;
+ void Update(nsStyleContext* aStyleContext) override;
+ bool IsCompatibleWithNativeData(DbusmenuMenuitem* aNativeData) const override;
+ nsMenuObject::PropertyFlags SupportedProperties() const override;
+
+ void OnAttributeChanged(nsIContent* aContent, nsIAtom* aAttribute) override;
+};
+
+#endif /* __nsMenuSeparator_h__ */