diff options
Diffstat (limited to 'src/ui/widget/icon-widget.cpp')
| -rw-r--r-- | src/ui/widget/icon-widget.cpp | 161 |
1 files changed, 0 insertions, 161 deletions
diff --git a/src/ui/widget/icon-widget.cpp b/src/ui/widget/icon-widget.cpp deleted file mode 100644 index 0e0736371..000000000 --- a/src/ui/widget/icon-widget.cpp +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Author: - * Bryce Harrington <bryce@bryceharrington.org> - * - * Copyright (C) 2004 Bryce Harrington - * based on work by Lauris Kaplinski in 2002 released under GPL - * - * Released under GNU GPL. Read the file 'COPYING' for more information - */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <glib.h> -#include "icon-widget.h" - -namespace Inkscape { -namespace UI { -namespace Widget { - -IconWidget::IconWidget() : - _size(0), - _pb(0), - _do_bitmap_icons(false) -{ -} - -IconWidget::IconWidget(int unsigned size, int unsigned scale, gchar const *name) : - _pb(0), - _do_bitmap_icons(false) -{ - _size = std::max((int unsigned)128, std::min(size, (int unsigned)1)); - - char c[256]; - g_snprintf (c, 256, "%d:%d:%s", _size, scale, name); - guchar *pixels = image_load_gtk(name, _size, scale); - - if (pixels == NULL) { - g_warning("Couldn't find matching icon for %s - has this application been installed?", name); - //_pb = NULL; - } else { - /* TODO - _pb = gdk_pixbuf_new_from_data(pixels, GDK_COLORSPACE_RGB, - TRUE, 8, _size, _size, _size * 4, - (GdkPixbufDestroyNotify)g_free, NULL); - */ - } -} - -IconWidget::IconWidget(int unsigned size, guchar const */*px*/) : - _pb(0), - _do_bitmap_icons(false) -{ - _size = std::max((int unsigned)128, std::min(size, (int unsigned)1)); - - /* - _pb = gdk_pixbuf_new_from_data((guchar *)px, GDK_COLORSPACE_RGB, - TRUE, 8, _size, _size, _size * 4, NULL, NULL); - */ -} - -IconWidget::~IconWidget() { -} - -void IconWidget::size_request(Gtk::Requisition &requisition) -{ - requisition.width = _size; - requisition.height = _size; -} - -void IconWidget::size_allocate(Gtk::Allocation const &allocation) -{ - Gtk::Widget::size_allocate(allocation); - - if (this->get_is_drawable()) { - this->queue_draw(); - } -} - -int IconWidget::expose(GdkEventExpose *event) -{ - if (this->get_is_drawable()) { - paint(&(event->area)); - } - return true; -} - -void IconWidget::paint(GdkRectangle const *area) -{ - Gtk::Allocation allocation = get_allocation(); - int const x_pad = std::max(0, (allocation.get_width() - _size)/2); - int const y_pad = std::max(0, (allocation.get_height() - _size)/2); - - int const x_max = std::max(area->x, allocation.get_x() + x_pad); - int const y_max = std::max(area->y, allocation.get_y() + y_pad); - int const x_min = std::min(area->x + area->width, - allocation.get_x() + x_pad + _size); - int const y_min = std::min(area->y + area->height, - allocation.get_y() + y_pad + _size); - - if (_pb) { - gdk_draw_pixbuf(this->get_window()->gobj(), NULL, _pb, - x_max - allocation.get_x() - x_pad, - y_max - allocation.get_y() - y_pad, - x_max, y_max, - x_min - x_max, y_min - y_max, - GDK_RGB_DITHER_NORMAL, x_max, y_max); - } -} - -guchar* IconWidget::image_load(gchar const *name, int unsigned size, int unsigned scale) -{ - guchar *px; - - if (_do_bitmap_icons) { - px = image_load_pixmap(name, size, scale); - if (!px) { - px = image_load_svg(name, size, scale); - } - } else { - px = image_load_svg(name, size, scale); - if (!px) { - px = image_load_pixmap(name, size, scale); - } - } - return px; -} - -guchar* IconWidget::image_load_pixmap(gchar const */*name*/, int unsigned /*size*/, int unsigned /*scale*/) -{ - // TODO - return NULL; -} - -guchar* IconWidget::image_load_svg(gchar const */*name*/, int unsigned /*size*/, int unsigned /*scale*/) -{ - // TODO - return NULL; -} - -guchar* IconWidget::image_load_gtk(gchar const */*name*/, int unsigned /*size*/, int unsigned /*scale*/) -{ - // TODO - return NULL; -} - -} // namespace Widget -} // namespace UI -} // namespace Inkscape - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=c++:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 : |
