nautilus/cut-n-paste-code
John Harper 893ed95c74 reviewed by: Pavel Cisler <pavel@eazel.com>
2001-01-09  John Harper  <jsh@eazel.com>

	reviewed by: Pavel Cisler <pavel@eazel.com>

	Work to make icons in list view draw anti-aliased in respect to
	the background. Fixes bug 1659

	* cut-n-paste-code/widgets/nautilusclist/nautilusclist.h
	(NautilusCellType): added new type NAUTILUS_CELL_PIXBUF at end
	of this enum

	* libnautilus-extensions/nautilus-list.c (NautilusListDetails):
	added fields for RGB values of all background colors

	(nautilus_gdk_set_shifted_foreground_gc_color): return the
	shifted RGB value

	(nautilus_list_setup_style_colors): save RGB values of all
	background colors into the details structure

	(get_cell_style): added another parameter: `bg_rgb', when a non
	null pointer it gets set to the RGB value of the chosen
	background color

	(draw_cell_pixbuf): added another parameter: `bg_rgb'.
	Composite the pixbuf onto a square of this color (using the
	full 8-bit alpha), then blit the entire square onto the
	drawable

	(draw_cell): added cases to handle NAUTILUS_CELL_PIXBUF type.
	Also pass the extra arg to draw_cell_pixbuf in
	NAUTILUS_CELL_PIXBUF_LIST case

	(nautilus_list_set_cell_contents): handle NAUTILUS_CELL_PIXBUF
	case

	(nautilus_list_set_pixbuf_list): broke out contents into the
	new function set_list_cell, parameterized by the
	NautilusCellType in addition
	(nautilus_list_set_pixbuf): new function, calls set_list_cell

	* src/file-manager/fm-list-view.c (install_row_images): get the
	file's icon as a pixbuf, not a pixmap/mask pair. Then use
	nautilus_list_set_pixbuf to install it in the list cell
2001-01-10 01:32:49 +00:00
..
freetype Add FreeType2 information. 2000-10-06 07:25:37 +00:00
widgets reviewed by: Pavel Cisler <pavel@eazel.com> 2001-01-10 01:32:49 +00:00
.cvsignore Added a place to put cut-n-paste code. Cut-n-pasted the e-paned widget 1997-01-02 07:38:17 +00:00
Makefile.am Add FreeType2 information. 2000-10-06 07:25:37 +00:00
README Fix the email for bitching. 1997-01-02 08:07:05 +00:00

README for nautilus/cut-n-paste-code

The code in this directory hierarchy was cut-n-pasted from 
somewhere else.

In the soon to come, Star Trek future, this code will be available
as part of standard libraries.

For example, the code in widgets/e-paned will be available as part
of Gtk+ 1.4.

Until that happens, DON'T HACK the code, unless you are updating 
from the original cut-n-paste source.  For example, 
evolution/widgets/e-paned.

Instead of hacking the code in cut-n-paste-code, create subclasses 
and put them in libnautilus-extensions.

If you have any specific questions, comments or complaints about this
setup, send mail to the nautilus mailing list at:

nautilus-list@lists.eazel.com