1 /*
2 * Inkscape::SelectionDescriber - shows messages describing selection
3 *
4 * Authors:
5 * MenTaLguY <mental@rydia.net>
6 *
7 * Copyright (C) 2004 MenTaLguY
8 *
9 * Released under GNU GPL, read the file 'COPYING' for more information
10 */
12 #ifndef SEEN_INKSCAPE_SELECTION_DESCRIPTION_HANDLER_H
13 #define SEEN_INKSCAPE_SELECTION_DESCRIPTION_HANDLER_H
15 #include <sigc++/sigc++.h>
16 #include "message-context.h"
18 namespace Inkscape { class Selection; }
20 namespace Inkscape {
22 class MessageStack;
24 class SelectionDescriber : public sigc::trackable {
25 public:
26 SelectionDescriber(Inkscape::Selection *selection, MessageStack *stack, char *when_selected, char *when_nothing);
27 ~SelectionDescriber();
29 private:
30 void _updateMessageFromSelection(Inkscape::Selection *selection);
31 void _selectionModified(Inkscape::Selection *selection, guint /*flags*/);
33 sigc::connection *_selection_changed_connection;
34 sigc::connection *_selection_modified_connection;
36 MessageContext _context;
38 char *_when_selected;
39 char *_when_nothing;
40 };
42 }
44 #endif
45 /*
46 Local Variables:
47 mode:c++
48 c-file-style:"stroustrup"
49 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
50 indent-tabs-mode:nil
51 fill-column:99
52 End:
53 */
54 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :