X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Futils.h;h=ddbf8e9665f227746248e332fffafa16d718187d;hb=65eeeb7a652d7022783b10e35941ce56e0fc7207;hp=5d7bf000ea619b38a27aedf350d674a2d0e30dda;hpb=616f2a0370a10dcc7372a95f6bca9f5a45698980;p=ardour.git diff --git a/gtk2_ardour/utils.h b/gtk2_ardour/utils.h index 5d7bf000ea..ddbf8e9665 100644 --- a/gtk2_ardour/utils.h +++ b/gtk2_ardour/utils.h @@ -23,12 +23,14 @@ #include #include #include +#include + #include "ardour/types.h" -#include + #include #include -#include "canvas.h" +#include "canvas/types.h" namespace PBD { class Controllable; @@ -38,11 +40,14 @@ namespace PBD { namespace Gtk { class Window; class ComboBoxText; - class Paned; class Adjustment; } -extern sigc::signal DPIReset; +namespace ArdourCanvas { + class Item; +} + +namespace ARDOUR_UI_UTILS { gint just_hide_it (GdkEventAny*, Gtk::Window*); void add_item_with_sensitivity (Gtk::Menu_Helpers::MenuList &, Gtk::Menu_Helpers::MenuElem, bool); @@ -52,38 +57,47 @@ unsigned char* xpm2rgba (const char** xpm, uint32_t& w, uint32_t& h); ArdourCanvas::Points* get_canvas_points (std::string who, uint32_t npoints); +Pango::FontDescription sanitized_font (std::string const&); Pango::FontDescription get_font_for_style (std::string widgetname); -uint32_t rgba_from_style (std::string, uint32_t, uint32_t, uint32_t, uint32_t, std::string = "fg", int = Gtk::STATE_NORMAL, bool = true); - -bool rgba_p_from_style (std::string, float*, float*, float*, std::string = "fg", int = Gtk::STATE_NORMAL); - void decorate (Gtk::Window& w, Gdk::WMDecoration d); -bool canvas_item_visible (ArdourCanvas::Item* item); +Gdk::Color gdk_color_from_rgb (uint32_t); +Gdk::Color gdk_color_from_rgba (uint32_t); +uint32_t gdk_color_to_rgba (Gdk::Color const&); + +void set_color_from_rgb (Gdk::Color&, uint32_t); +void set_color_from_rgba (Gdk::Color&, uint32_t); -void set_color (Gdk::Color&, int); +uint32_t contrasting_text_color (uint32_t c); bool relay_key_press (GdkEventKey* ev, Gtk::Window* win); -bool forward_key_press (GdkEventKey* ev); bool key_press_focus_accelerator_handler (Gtk::Window& window, GdkEventKey* ev); -bool emulate_key_event (Gtk::Widget*, unsigned int); +bool emulate_key_event (unsigned int); Glib::RefPtr get_xpm (std::string); -std::string get_icon_path (const char*); -Glib::RefPtr get_icon (const char*); +std::vector get_icon_sets (); +void get_color_themes (std::map&); +std::string get_icon_path (const char*, std::string icon_set = std::string(), bool is_image = true); +Glib::RefPtr get_icon (const char*, std::string icon_set = std::string()); static std::map > xpm_map; const char* const *get_xpm_data (std::string path); std::string longest (std::vector&); bool key_is_legal_for_numeric_entry (guint keyval); -void reset_dpi (); -void set_pango_fontsize (); void resize_window_to_proportion_of_monitor (Gtk::Window*, int, int); std::string escape_underscores (std::string const &); -std::string escape_angled_brackets (std::string const &); Gdk::Color unique_random_color (std::list &); +std::string rate_as_string (float r); + +bool windows_overlap (Gtk::Window *a, Gtk::Window *b); + +bool overwrite_file_dialog (Gtk::Window& parent, std::string title, std::string text); +std::string show_gdk_event_state (int state); +bool running_from_source_tree (); + +} // namespace #endif /* __ardour_gtk_utils_h__ */