Heaven v0.1.0-1
C++ global-menu library for Wayland sessions
Loading...
Searching...
No Matches
Static Public Member Functions
HNMenu Class Reference

Menu created by a client. More...

#include "HNMenu.h"

Inheritance diagram for HNMenu:
Inheritance graph
[legend]
Collaboration diagram for HNMenu:
Collaboration graph
[legend]

Static Public Member Functions

static std::shared_ptr< HNMenuMake (const std::string &title="", const std::string &icon="", const std::string &shortcut="", bool enabled=true, HNObject *parent=nullptr) noexcept
 Creates a new menu and applies the given initial properties.
 

Additional Inherited Members

- Public Types inherited from HNObject
enum  Type {
  Topbar ,
  Menu ,
  Action ,
  Toggle ,
  Divider
}
 Enumeration of the possible object roles. More...
 
- Public Member Functions inherited from HNObject
UInt32 id () const noexcept
 Returns the unique identifier of this object within the client.
 
Type type () const noexcept
 Returns the immutable role/type of this object.
 
std::shared_ptr< HNClientclient () const noexcept
 Returns the client that owns this object.
 
 ~HNObject () noexcept
 Destructor. Notifies the bar that the object was destroyed.
 
- Public Member Functions inherited from HNWithTitle
const std::string & title () const noexcept
 Returns the current title.
 
void setTitle (const std::string &title) noexcept
 Updates the title and notifies the bar.
 
virtual ~HNWithTitle () noexcept=default
 Virtual destructor (makes the mixin polymorphic for safe cross-casts).
 
- Public Member Functions inherited from HNWithIcon
const std::string & icon () const noexcept
 Returns the current icon name.
 
void setIcon (const std::string &icon) noexcept
 Updates the icon name and notifies the bar.
 
virtual ~HNWithIcon () noexcept=default
 Virtual destructor (makes the mixin polymorphic for safe cross-casts).
 
- Public Member Functions inherited from HNWithShortcut
const std::string & shortcut () const noexcept
 Returns the current keyboard shortcut.
 
void setShortcut (const std::string &shortcut) noexcept
 Updates the shortcut and notifies the bar.
 
virtual ~HNWithShortcut () noexcept=default
 Virtual destructor (makes the mixin polymorphic for safe cross-casts).
 
- Public Member Functions inherited from HNWithEnabled
bool enabled () const noexcept
 Returns whether the object is currently enabled.
 
void setEnabled (bool enabled) noexcept
 Updates the enabled state and notifies the bar.
 
virtual ~HNWithEnabled () noexcept=default
 Virtual destructor (makes the mixin polymorphic for safe cross-casts).
 
- Public Member Functions inherited from HNWithParent
virtual ~HNWithParent () noexcept
 Destructor. Detaches this object from its parent.
 
HNObjectparent () const noexcept
 Returns the parent object.
 
bool setParent (HNObject *parent) noexcept
 Sets the parent.
 
bool insertBefore (HNObject *sibling) noexcept
 Inserts this object before the specified sibling.
 
- Public Member Functions inherited from HNWithChildren
virtual ~HNWithChildren () noexcept
 Destructor. Detaches every child from this object.
 
const std::list< HNWithParent * > & children () const noexcept
 Returns the ordered list of child objects.
 
- Data Fields inherited from HNObject
CZSignal< HNObject * > onClicked
 Emitted when the bar notifies that this object was clicked.
 
- Protected Member Functions inherited from HNObject
 HNObject (std::shared_ptr< HNClient > client, UInt32 id, Type type) noexcept
 Constructs an object owned by the given client.
 

Detailed Description

Menu created by a client.

A menu can be nested inside a topbar or another menu and can host child objects (menus, actions, toggles and dividers).

Member Function Documentation

◆ Make()

static std::shared_ptr< HNMenu > Make ( const std::string &  title = "",
const std::string &  icon = "",
const std::string &  shortcut = "",
bool  enabled = true,
HNObject parent = nullptr 
)
staticnoexcept

Creates a new menu and applies the given initial properties.

Parameters
titleInitial title.
iconInitial icon name.
shortcutInitial keyboard shortcut.
enabledInitial enabled state.
parentObject to attach this menu to (must implement HNWithChildren), or nullptr.
Returns
Shared pointer to the new menu, or nullptr on failure.

The documentation for this class was generated from the following file: