1 // SPDX-License-Identifier: GPL-2.0-or-later 2 #ifndef SEEN_TOOLBOX_H 3 #define SEEN_TOOLBOX_H 4 5 /* 6 * Authors: 7 * Lauris Kaplinski <lauris@kaplinski.com> 8 * Frank Felfe <innerspace@iname.com> 9 * Jon A. Cruz <jon@joncruz.org> 10 * 11 * Copyright (C) 1999-2002 Authors 12 * Copyright (C) 2001-2002 Ximian, Inc. 13 * 14 * Released under GNU GPL v2+, read the file 'COPYING' for more information. 15 */ 16 17 #include <glibmm/ustring.h> 18 #include <gtk/gtk.h> 19 #include <gtkmm/enums.h> 20 21 #include "preferences.h" 22 23 #define TOOLBAR_SLIDER_HINT "compact" 24 25 class SPDesktop; 26 27 namespace Inkscape { 28 namespace UI { 29 namespace Tools { 30 31 class ToolBase; 32 33 } 34 } 35 } 36 37 namespace Inkscape { 38 namespace UI { 39 40 namespace Widget { 41 class UnitTracker; 42 } 43 44 /** 45 * Main toolbox source. 46 */ 47 class ToolboxFactory 48 { 49 public: 50 static void setToolboxDesktop(GtkWidget *toolbox, SPDesktop *desktop); 51 static void setOrientation(GtkWidget* toolbox, GtkOrientation orientation); 52 static void showAuxToolbox(GtkWidget* toolbox); 53 54 static GtkWidget *createToolToolbox(); 55 static GtkWidget *createAuxToolbox(); 56 static GtkWidget *createCommandsToolbox(); 57 static GtkWidget *createSnapToolbox(); 58 59 static Glib::ustring getToolboxName(GtkWidget* toolbox); 60 61 static GtkIconSize prefToSize(Glib::ustring const &path, int base = 0 ); 62 static Gtk::IconSize prefToSize_mm(Glib::ustring const &path, int base = 0); 63 64 ToolboxFactory() = delete; 65 }; 66 67 68 69 } // namespace UI 70 } // namespace Inkscape 71 72 #endif /* !SEEN_TOOLBOX_H */ 73 74 /* 75 Local Variables: 76 mode:c++ 77 c-file-style:"stroustrup" 78 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) 79 indent-tabs-mode:nil 80 fill-column:99 81 End: 82 */ 83 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : 84