Context for the "About" label
[inkscape.git] / src / ui / contextmenu.h
blob160ec3f3c1c47ffd7a2cd647a19578e734d00a81
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3 * Context menu
5 * Authors:
6 * Tavmjong Bah
8 * Copyright (C) 2022 Tavmjong Bah
10 * Released under GNU GPL v2+, read the file 'COPYING' for more information.
13 #ifndef SEEN_CONTEXTMENU_H
14 #define SEEN_CONTEXTMENU_H
16 #include <vector>
17 #include <glibmm/refptr.h>
18 #include <gtkmm/popovermenu.h>
20 namespace Gio {
21 class SimpleActionGroup;
22 } // namespace Gio
24 class SPDesktop;
25 class SPDocument;
26 class SPObject;
27 class SPItem;
29 /**
30 * Implements the Inkscape context menu.
32 class ContextMenu final : public Gtk::PopoverMenu
34 public:
35 ContextMenu(SPDesktop *desktop, SPObject *object, std::vector<SPItem*> const &items_under_cursor, bool hide_layers_and_objects_menu_item = false);
37 private:
38 // Used for unlock and unhide actions
39 Glib::RefPtr<Gio::SimpleActionGroup> action_group;
40 std::vector<SPItem *> items_under_cursor;
41 void unhide_or_unlock(SPDocument* document, bool unhide);
44 #endif // SEEN_CONTEXT_MENU_H
47 Local Variables:
48 mode:c++
49 c-file-style:"stroustrup"
50 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
51 indent-tabs-mode:nil
52 fill-column:99
53 End:
55 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :