Commit Graph

35 Commits

Author SHA1 Message Date
Michael Natterer 6370147990 app: make all pixbuf rendering in GimpViewRenderer HiDPI-aware
Request pixbufs in double size and cache the created surface instead
of the pixbuf. This affects rendering icons and image thumbnails.

All other rendering (which is most previews) is not ported yet, but
just lacks HiDPI quality, there are no actual bugs.
2019-01-09 20:34:52 +01:00
Michael Natterer 5f700549e7 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
Jehan eb7d59d327 app: gtk_icon_info_free() deprecated since GTK+3.8. 2018-05-21 22:31:34 +02:00
Jehan 3fa016fb4b app: clean out tab indentations. 2016-12-21 04:05:32 +01:00
Michael Natterer f374377e9b app: pass the widget to all gimp_view_renderer_render_foo() functions
We will need the widget for color managing previews; it's also more
consistent to pass the widget to all render_foo() functions, not only
to render_icon().
2015-09-02 21:12:59 +02:00
Michael Natterer 65a65947d9 app, libgimp: replace GTK_STOCK_FOO by icon names
unless it's a stock ID used for an action button, will address that
later.
2014-05-11 22:49:22 +02:00
Michael Natterer 7d0b326359 app: add gimp_widget_load_icon() as replacement for gtk_widget_render_icon()
...and use it instead.
2014-05-08 09:11:31 +02:00
Michael Natterer 23037b5230 app: convert all stock IDs kept around by the core by icon names
Particularly GimpViewable's stock_id. Make sure old config files
containing stock IDs are still properly parsed.
2014-05-07 01:01:56 +02:00
Michael Natterer 85bd6b0dd9 app: pass a format, not bpp, to gimp_viewable_get_dummy_pixbuf()
and add tons of <gegl.h> includes.
2012-05-02 17:51:08 +02:00
Michael Natterer a547cc0940 app: don't leak GimpViewRendererImagefile's GtkIconInfo 2011-11-04 01:32:50 +01:00
Michael Natterer ab607a0adc app: add gimp_imagegile_get_gicon() which uses async API and can't block
and use it in gimp_view_renderer_imagefile_get_icon().
2011-06-19 23:06:33 +02:00
Michael Natterer 276ceddec9 app: GimpViewRendererImagefile: don't call g_file_query_info ("standard::icon")
This is a quick fix because the call can block and needs to be ported
to the async API. I simply disabled the entire block that gets the
icon from GIO.
2011-06-19 22:20:50 +02:00
Michael Natterer b1d6f1b0fd app: lose "default" from protected GimpViewRenderer rendering API
and rename render_surface() to render_temp_buf().
2011-03-08 17:12:39 +01:00
Michael Natterer c550eae5e1 app: move all GimpImagefile members to private 2011-03-02 12:26:04 +01:00
Sven Neumann 1130e8c890 Bug 631728 - Crash or Gtk-CRITICAL on File->Open
Check return value of gtk_icon_theme_lookup_by_gicon() before using it.
2010-10-18 18:28:57 +02:00
Michael Natterer 295f345b2e Guard against g_file_info_get_icon() returning NULL
It can return NULL, but should not for a proper gvfs backend; add a
returning NULL.
2009-09-22 20:25:11 +02:00
Michael Natterer a3558e3cb8 Remove GIMP_OBJECT() casts when calling gimp_object_get_name() 2009-08-31 22:47:18 +02:00
Sven Neumann a196a2dbe0 app/widgets/gimpviewrendererimagefile.c
2009-03-05  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewrendererimagefile.c
	(gimp_view_renderer_imagefile_get_icon)
	* plug-ins/print/print.c (query): removed GTK+ version checks 
that
	have become obsolete.


svn path=/trunk/; revision=28111
2009-03-05 19:59:45 +00:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Michael Natterer f3ffe972eb guard against g_file_query_info() returning NULL (if the file doesn't
2008-07-22  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpviewrendererimagefile.c
	(gimp_view_renderer_imagefile_get_icon): guard against
	g_file_query_info() returning NULL (if the file doesn't exist or
	whatever error).


svn path=/trunk/; revision=26277
2008-07-22 14:50:37 +00:00
Michael Natterer 27b54c0fb6 add widget parameter so we can get the right icon theme for the screen. If
2008-06-28  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpviewrendererimagefile.c
	(gimp_view_renderer_imagefile_get_icon): add widget parameter so
	we can get the right icon theme for the screen. If building
	against GTK+ >= 2.13.4, use GFile to get proper file type icons.

	(gimp_view_renderer_imagefile_render): pass the widget.

	(get_icon_fallback): remove this unused function.


svn path=/trunk/; revision=26015
2008-06-28 20:44:57 +00:00
Sven Neumann 3adca61a80 don't reset the mime-type info when we can't load a thumbnail.
2008-03-24  Sven Neumann  <sven@gimp.org>

	* libgimpthumb/gimpthumbnail.c: don't reset the mime-type info
	when we can't load a thumbnail.

	* app/core/gimpimagefile.c (gimp_imagefile_get_new_pixbuf): 
don't
	set a stock-id depending on the state.

	* app/widgets/gimpviewrendererimagefile.[ch]: removed commented
	out hack that used to access semi-private API from 
GtkFilesystem.
	Instead lifted some code from GtkRecentManager that looks up 
icons
	by mime-type.


svn path=/trunk/; revision=25195
2008-03-24 16:41:42 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Sven Neumann 6ebcf700d1 removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15  Sven Neumann  <sven@gimp.org>

	* app/*/*.c:
	* lib*/*.c: removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15 09:46:31 +00:00
Michael Natterer 401b865e22 save 20 bytes per instance by using single bits instead of 6 gbooleans.
2006-05-12  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpview.h: save 20 bytes per instance by using
	single bits instead of 6 gbooleans.

	* app/widgets/gimpview.c: some code cleanup.

	* app/widgets/gimpviewrendererbrush.c: don't #include "gimpbrush.h".

	* app/widgets/gimpviewrendererbuffer.c: don't #include "gimpbuffer.h".

	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimagefile.c
	* app/widgets/gimpviewrendererimagefile.h: micro cosmetics.
2006-05-12 15:39:31 +00:00
Michael Natterer 61df53ec54 port to G_DEFINE_TYPE() and friends. Some related cleanup.
2005-12-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/*.c: port to G_DEFINE_TYPE() and friends. Some
	related cleanup.
2005-12-19 22:37:49 +00:00
Sven Neumann c70b12137b plugged a mem-leak.
2004-11-03  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_add_filters):
	plugged a mem-leak.

	* app/widgets/gimpviewrendererimagefile.c
	(gimp_view_renderer_imagefile_render): don't leak the pixbuf.

	* app/widgets/gimpviewrenderer-frame.c: added a comment.
2004-11-03 00:48:06 +00:00
Sven Neumann 0527d02329 themes/Default/images/Makefile.am added a stock icon that shows a simple
2004-09-27  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-frame-64.png: added a stock icon
	that shows a simple drop shadow but could be exchanged for other
	image decorations.

	* libgimpwidgets/gimpstock.[ch]: register the new icon.

	* app/widgets/Makefile.am
	* app/widgets/gimpviewrenderer-frame.[ch]: new file that holds some
	ugly code to draw a frame around a preview pixbuf.

	* app/widgets/gimpviewrenderer.[ch]: the frame pixbuf is attached
	to the GimpViewRenderer class so it can be shared by all renderers.

	* app/widgets/gimpviewrendererimagefile.c: use the new functionality
	to draw a nice frame around imagefile previews.

	* app/widgets/gimpcontainerbox.c: draw imagefile preview w/o a border.
2004-09-27 19:40:12 +00:00
Sven Neumann ab269fc645 removed conversion to TempBuf. Instead implement
2004-09-27  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.c: removed conversion to TempBuf.
	Instead implement GimpViewable::get_new_pixbuf by compositing the
	thumbnail on a checkerboard.

	* app/widgets/gimpviewrenderer.[ch]: renamed the no_view_pixbuf
	struct member to pixbuf.
	(gimp_view_renderer_real_render): try gimp_viewable_get_pixbuf()
	and render the pixbuf before falling back to the TempBuf preview.
	(gimp_view_renderer_render_pixbuf): new function that sets a
	pixbuf for the renderer and flushes the render_buffer.

	* app/widgets/gimpviewrendererimagefile.c
	(gimp_view_renderer_imagefile_render): render the pixbuf.

	* app/dialogs/dialogs-constructors.c: create the document history
	dockable with a zero borderwidth.
2004-09-26 23:44:24 +00:00
Michael Natterer fa3f37e96e app/widgets/gimpviewrendererbrush.c app/widgets/gimpviewrendererdrawable.c
2004-09-09  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpviewrendererbrush.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimage.c
	* app/widgets/gimpviewrendererimagefile.c
	* app/widgets/gimpviewrendererlayer.c
	* app/widgets/gimpviewrenderervectors.c: purely cosmetic cleanup.
2004-09-09 11:58:49 +00:00
David Odin 1622243213 app/widgets/gimppreviewrenderer-utils.c
* app/widgets/gimppreviewrenderer-utils.c
* app/widgets/gimppreviewrenderer-utils.h
* app/widgets/gimppreviewrendererbrush.c
* app/widgets/gimppreviewrendererbrush.h
* app/widgets/gimppreviewrendererdrawable.c
* app/widgets/gimppreviewrendererdrawable.h
* app/widgets/gimppreviewrenderergradient.c
* app/widgets/gimppreviewrenderergradient.h
* app/widgets/gimppreviewrendererimage.c
* app/widgets/gimppreviewrendererimage.h
* app/widgets/gimppreviewrendererimagefile.c
* app/widgets/gimppreviewrendererimagefile.h
* app/widgets/gimppreviewrendererlayer.c
* app/widgets/gimppreviewrendererlayer.h
* app/widgets/gimppreviewrenderervectors.c
* app/widgets/gimppreviewrenderervectors.h: Renamed all these files...

* app/widgets/gimpviewrenderer-utils.c
* app/widgets/gimpviewrenderer-utils.h
* app/widgets/gimpviewrendererbrush.c
* app/widgets/gimpviewrendererbrush.h
* app/widgets/gimpviewrendererdrawable.c
* app/widgets/gimpviewrendererdrawable.h
* app/widgets/gimpviewrenderergradient.c
* app/widgets/gimpviewrenderergradient.h
* app/widgets/gimpviewrendererimage.c
* app/widgets/gimpviewrendererimage.h
* app/widgets/gimpviewrendererimagefile.c
* app/widgets/gimpviewrendererimagefile.h
* app/widgets/gimpviewrendererlayer.c
* app/widgets/gimpviewrendererlayer.h
* app/widgets/gimpviewrenderervectors.c
* app/widgets/gimpviewrenderervectors.h: ... to these names. And also
  changed all the GimpPreviewRenderer* types to GimpViewRenderer* ones.

* app/tools/gimppaintoptions-gui.c

* app/widgets/Makefile.am
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpview.c
* app/widgets/widgets-types.h
* app/widgets/gimpviewrenderer.c
* app/widgets/gimpviewrenderer.h: modified accordingly.
2004-08-26 14:20:30 +00:00
David Odin e91187ae86 app/widgets/gimppreview-popup.c renamed these files...
* app/widgets/gimppreview-popup.c
* app/widgets/gimppreview-popup.h: renamed these files...

* app/widgets/gimpview-popup.c
* app/widgets/gimpview-popup.h: .. to these files, and changed the
  GimpPreviewPopup type to GimpViewPopup.

* app/widgets/gimppreviewrenderer.c
* app/widgets/gimppreviewrenderer.h: renamed these files...

* app/widgets/gimpviewrenderer.c
* app/widgets/gimpviewrenderer.h: .. to these files, and changed
  GimpPreviewRenderer to GimpViewRenderer.

This is the second step of the great Preview->View renaming process.

* app/display/gimpdisplayshell-layer-select.c
* app/display/gimpnavigationeditor.c

* app/widgets/Makefile.am
* app/widgets/gimpbrushfactoryview.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpcellrendererviewable.c
* app/widgets/gimpcellrendererviewable.h
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainerbox.c
* app/widgets/gimpcontainercombobox.c
* app/widgets/gimpcontainereditor.c
* app/widgets/gimpcontainerentry.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainerpopup.c
* app/widgets/gimpcontainertreeview-dnd.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimpcontainerview.c
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimpnavigationpreview.c
* app/widgets/gimppatternfactoryview.c
* app/widgets/gimppreviewrenderer-utils.c
* app/widgets/gimppreviewrendererbrush.c
* app/widgets/gimppreviewrendererbrush.h
* app/widgets/gimppreviewrendererdrawable.c
* app/widgets/gimppreviewrendererdrawable.h
* app/widgets/gimppreviewrenderergradient.c
* app/widgets/gimppreviewrenderergradient.h
* app/widgets/gimppreviewrendererimage.c
* app/widgets/gimppreviewrendererimage.h
* app/widgets/gimppreviewrendererimagefile.c
* app/widgets/gimppreviewrendererimagefile.h
* app/widgets/gimppreviewrendererlayer.c
* app/widgets/gimppreviewrenderervectors.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimptemplateview.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimptoolview.c
* app/widgets/gimpview.c
* app/widgets/gimpview.h
* app/widgets/gimpviewablebutton.c
* app/widgets/widgets-enums.h
* app/widgets/widgets-types.h: Modified accordingly.
2004-08-25 22:31:44 +00:00
Michael Natterer 5198408aff moved the (disabled) ENABLE_FILE_SYSTEM_ICONS from the .c to the .h file
2004-03-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppreviewrendererimagefile.[ch]: moved the
	(disabled) ENABLE_FILE_SYSTEM_ICONS from the .c to the .h file and
	#ifdef the "gpointer file_system" member with it.
2004-03-03 14:00:00 +00:00
Michael Natterer 5f6fd78fd5 moved the (disabled) ENABLE_FILE_SYSTEM_ICONS from the .c to the .h file
2004-03-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppreviewrendererimagefile.[ch]: moved the
	(disabled) ENABLE_FILE_SYSTEM_ICONS from the .c to the .h file and
	#ifdef the "gpointer file_system" member with it.
2004-03-03 13:52:54 +00:00
Michael Natterer 1b63a05791 app/widgets/Makefile.am app/widgets/widgets-types.h added new preview
2004-03-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreviewrendererimagefile.[ch]: added new preview
	renderer class (has some disabled code from my GtkFileChooser tree
	and behaves exactly as the default implementation).

	* app/widgets/gimppreviewrenderer-utils.c: use it for GimpImagefiles.
2004-03-03 12:39:19 +00:00