Commit Graph

474 Commits

Author SHA1 Message Date
Jonathan Blandford
b10825d537 removed gtk_*_store_get, and moved to GtkTreeModel.
Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
	gtk_*_store_get, and moved to GtkTreeModel.

	* gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.

	* gtk/Makefile.am: remove gtktreemodelmapping.[ch]

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
	set the func.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
	freeze/thaw notify between setting all the properties for a cell.

	* gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2001-02-17 00:16:08 +00:00
Jonathan Blandford
5cdb3ca279 If we're going to have a demo, we might as well pass in real values.
Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/panes.c (create_pane_options): If we're going to
	have a demo, we might as well pass in real values.  Thanks to
	clahey for pointing this out.
2001-02-16 02:57:37 +00:00
Havoc Pennington
2097d764a7 fix bug where it always set the foreground, even if we were only using a
2001-02-12  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkpango.c (gdk_pango_get_gc): fix bug where
	it always set the foreground, even if we were only using
	a stipple.
	(gdk_draw_layout_line_with_colors): new function, allow
	override colors
	(gdk_draw_layout_with_colors): new function, allow override
	colors
	(gdk_pango_layout_line_get_clip_region): function to get the clip
	region for a logical text range
	(gdk_pango_layout_get_clip_region): get the clip region for a
	logical text range

	* gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
	(gdk_colormap_new): fix call to gdk_colormap_sync() so it has
	the right number of arguments.

	* gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
	enhance the function to check that node data corresponds to a
	view still belonging to the tree.

	* gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the
	GtkTreePath
	(gtk_tree_view_inserted): ditto
	(gtk_tree_view_child_toggled): ditto

	* gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
	simplify this code.

	* gtk/gtkcellrenderertext.c (get_layout): fix leak of
	a PangoAttrList

	* demos/gtk-demo/main.c (load_file): Fix leak of a GString

	* gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor

	* gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
	size in the size request
	(gtk_menu_bar_size_allocate): consider toggle size here

	* gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
	that displays a widget in the toggle slot

	* gtk/testgtk.c: test GtkImageMenuItem

	* gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem

	* gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
	request and allocation

	* gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16

	* gtk/gtkcheckmenuitem.c
	(gtk_check_menu_item_toggle_size_request): ditto
2001-02-13 05:44:47 +00:00
Havoc Pennington
4a3c8a367a remove validation idle
2001-02-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
	validation idle

	* demos/gtk-demo/main.c (create_tree): adjust to changes in text
	cell renderer

	* demos/pixbuf-demo.c (timeout): remove deprecated
	gtk_widget_draw

	* demos/testpixbuf-save.c (main): remove deprecated
	gtk_drawing_area_size

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
	buttons even if the model isn't setup. gtk_tree_view_check_dirty()
	at the start of the allocation.
	(gtk_tree_view_check_dirty): handle column->button == NULL, handle
	unsetup or NULL model.

	* gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the
	even/odd/sorted cells in the tree view.

	* gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
	bugfixes

	* gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
	backgrounds with draw_flat_box using different detail for even/odd
	rows.

	* gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
	row, so we can draw the alternating colors thing

	* gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
	property from a synonym property, notify for the synonym.
	Also, nuke the background_gdk_set and foreground_gdk_set synonyms
	(gtk_text_tag_get_property): Always return the font, even if
	all its fields aren't set

	* gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
	store the attr list; it leaves us with no way to change attributes
	in _render according to the render flags, and no way to implement
	get_property. Instead store all the specific text attributes.
	Separate whether an attribute is enabled from its value. Sync all
	properties with GtkTextTag, make them all consistent, etc.

	* gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
	renderers can highlight the sort row/column

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
	accessor functions to get values; this has the side effect of
	showing up which accessor functions were missing. Added those.

	* gtk/gtktreeviewcolumn.h: Replace set_justification with
	set_alignment, to be consistent with GtkLabel, GtkMisc

	* gtk/gtktreeviewcolumn.c: Added code to display sort indicator
	arrow.

	* gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h

	* gtk/gtktreesortable.h: updates in here
2001-02-08 23:36:53 +00:00
Havoc Pennington
2c5d938ff8 CVS is doing its broken pipe thing, this is more of the previous commit
2001-02-02  Havoc Pennington  <hp@redhat.com>
2001-02-03 01:09:41 +00:00
Havoc Pennington
18742b1dc3 rename member fields from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems
2001-01-20  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
	from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to
	me, matches Pango
2001-01-23 06:09:49 +00:00
Havoc Pennington
e0fee22e78 Add built marshaller files to support GdkPixbufLoader signals
2001-01-22  Havoc Pennington  <hp@redhat.com>

	* Makefile.am: Add built marshaller files to support
	GdkPixbufLoader signals

	* gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
	GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
	module location, rather than acting as a fallback, because we are
	using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.

	* gdk-pixbuf.h: include gdk-pixbuf-loader.h

        * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
	from gtk, and add error to close(), because stop_load may do
	parsing of the image.

	* pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file

        * io-*.c: make individual operations static, and add fill_vtable
	functions which are exported. Fix the collection of type warnings
	that surfaced, including a number of functions that didn't
	properly take a GError and some that weren't
	const-correct. Involved adding error handling for a few loaders.

	* gdk-pixbuf-io.h: Add error reporting to stop_load function

	* gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
	a function that fills in the GdkPixbufModule vtable, instead of
	looking up all the image functions individually; this means we
	can get type safety within modules for the loader functions.
	Also it means you don't have to keep the statically compiled and
	GModule versions in sync.

	* test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()

	* make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()

	* gdk-pixbuf.h: nuke gdk_pixbuf_init()

	* gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
	() here

	* gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here

	* gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
	g_type_init() here


2001-01-22  Havoc Pennington  <hp@redhat.com>

	* demos/testanimation.c: fix to reflect gdk-pixbuf changes

	* demos/testpixbuf.c: fix to reflect gdk-pixbuf changes

	* gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h:
	Remove, move back to gdk-pixbuf

	* gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
	to all the word functions

	* gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
	before doing anything on NULL layout or if we don't have the focus

	* gtk/testtext.c (fill_example_buffer): "justification"

	* gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
	to be called "justification" not "justify"

	* demos/gtk-demo/textview.c (create_tags): "justification"

	* gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
2001-01-22 23:09:48 +00:00
Havoc Pennington
e248e4e79e sync to tree changes
2001-01-19  Havoc Pennington  <hp@redhat.com>

	* demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes

	* gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
	function

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
	implement

	* gtk/gtktreeview.c (gtk_tree_view_move_to): rename
	scroll_to_cell, matches TextView scroll functions better
	(gtk_tree_view_tree_to_widget_coords): new function
	(gtk_tree_view_widget_to_tree_coords): new function
	(gtk_tree_view_get_visible_rect): new function
	(gtk_tree_view_get_path_at_pos): accept negative coordinates
	(gtk_tree_view_draw_node_focus_rect): new function moved from
	draw_focus, also, use width of bin_window as width of the focus
	rect
	(gtk_tree_view_expand_row): fix bug where it didn't recognize
	already-expanded rows
	(gtk_tree_view_get_cell_rect): new function
	(gtk_tree_view_get_path_at_pos): return the click position
	relative to the passed-in cell
	(gtk_tree_view_set_expander_column): new function

	* configure.in: remove gtk-config-2.0 chmod

	* gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
	and properly handle drags with targets we don't understand
	(gtk_text_view_drag_end): don't stop scrolling, the source isn't
	scrolling anyway
	(gtk_text_view_drag_drop): stop scrolling here though, and set the
	mark invisible

	* gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
	function
	(gtk_drag_dest_get_target_list): new function
	(gtk_drag_dest_set_target_list): new function

	* gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation

	* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
	related to drag-and-drop
2001-01-19 22:39:19 +00:00
Havoc Pennington
93d87eb0f4 Oops, that didn't link. Fix.
2001-01-05  Havoc Pennington  <hp@redhat.com>

	* demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
2001-01-05 19:09:38 +00:00
Havoc Pennington
e405f75c2b General cleanup of the log attr iteration stuff. This should make e.g. the
2000-12-16  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextiter.c: General cleanup of the log attr iteration
stuff. This should make e.g. the delete key work again in the
text widget...
(gtk_text_iter_forward_cursor_positions): handle negative count
(gtk_text_iter_backward_cursor_positions): handle negative count
(gtk_text_iter_forward_word_ends): handle negative count
(gtk_text_iter_backward_word_starts): handle negative count

* gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c,
gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to
GObject. No doubt will cause breakage.

* demos/gtk-demo/textview.c: remove hacks around
non-GObject-ification of the text objects

* demos/gtk-demo/main.c (main): use g_object_set() to manipulate
the text tag
2000-12-16 07:01:48 +00:00
Jonathan Blandford
c9e39436b9 Changed to have the list become non-italic when the demo window is
Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/main.c: Changed to have the list become
	non-italic when the demo window is destroyed through an external
	event (like a close button).  Doing so found three bugs in the
	widget.

	* demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.

	* gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
	we actually set the cell.

	* gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto

	* gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
	free a leaked path.  Thanks memprof.
2000-11-18 23:59:30 +00:00
Owen Taylor
a8b012d0a0 cvsignore updates 2000-11-16 16:14:17 +00:00
Havoc Pennington
fe8da19f2a Draw underlines one pixel higher.
2000-11-14  Havoc Pennington  <hp@redhat.com>

	* gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
	higher.

	* gtk/gtktextdisplay.c (render_layout_line): Take rise into
	account. Also, render rise, underline, background, etc. for
	pixbufs as well as text. Also, draw underlines one pixel higher.

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
	PangoAttribute for the rise, so it gets drawn properly. Also,
	add the GtkTextAppearance attribute for pixbuf/widget segments
	as well; we should go ahead and have rise, underline, background,
	stipple work for those

	* gtk/gtktexttag.c: Rename "offset" property to "rise" to match
	Pango
2000-11-15 00:23:37 +00:00
Havoc Pennington
961e59fb2e spiff up the demo a bit; reveals still more bugs.
2000-11-13  Havoc Pennington  <hp@pobox.com>

* demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
still more bugs.

* gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
scroll the GdkWindows before realization.
2000-11-14 04:57:33 +00:00
Havoc Pennington
73a00eeb44 fix bug where GC didn't always get updated properly
2000-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug
	where GC didn't always get updated properly

	* demos/gtk-demo/textview.c (create_tags): Use subattributes
	of fonts instead of setting the entire font

	* gtk/testtext.c (fill_example_buffer): Use "size" instead of
	setting entire font

	* gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings

	* gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into
	a bunch of individually-settable font attributes. You can still
	use the "font" and "font_desc" args, they just set all the font
	attributes at once.
2000-11-14 01:08:28 +00:00
Havoc Pennington
1ddb7f30f6 Forgot to add this file 2000-11-13 06:08:51 +00:00
Havoc Pennington
9adcd8a4b8 change demo install dir to datadir/gtk+-2.0/demo
2000-11-12  Havoc Pennington  <hp@pobox.com>

* demos/gtk-demo/Makefile.am (democodedir): change demo install
dir to datadir/gtk+-2.0/demo

* demos/gtk-demo/textview.c: Text widget demo; reveals all
sorts of text widget and Pango font bugs. Urgh.

* demos/gtk-demo/Makefile.am (demos): Add textview.c

* demos/gtk-demo/main.c (create_tree): Add instructions at top of
tree that you should double click to see the demo. Fix
types of variables to reflect changed return values from
GtkTreeStore and GtkTreeViewColumn constructors.

* gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
newly-created buffer to prepare for GObject semantics

* gtk/testtext.c: don't leak the buffer with GObject semantics

* gtk/testtextbuffer.c: ditto
2000-11-13 06:08:17 +00:00
Havoc Pennington
213680a436 Rename this testgtk to gtk-demo to avoid confusion, and install it so
2000-11-12  Havoc Pennington  <hp@pobox.com>

        Rename this testgtk to gtk-demo to avoid confusion, and
	install it so people can use it as a supplement to
	the documentation.

	        * demos/gtk-demo: Moved from demos/testgtk

		* demos/testgtk: Removed

		* configure.in: make Makefile in gtk-demo

		* demos/gtk-demo/Makefile.am: Install sample source to
		datadir/gtk-demo (maybe there's a better place?), and
		rename the binary to gtk-demo

		* demos/gtk-demo/main.c (load_file): Load installed sample
		source if source isn't found in pwd.
2000-11-13 04:36:38 +00:00
Jonathan Blandford
f8faec4574 use the new BOXED marshallers.
Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
	BOXED marshallers.

	* gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
	(gtk_list_store_class_init): use the new BOXED marshallers.

	* gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
	new_with_values to new_with_types.
	(gtk_tree_store_get_column_type): add this.
	(gtk_tree_store_class_init): use the new BOXED marshallers.

	* gtk/gtkmarshal.list: Added a number of BOXED marshallers to
	mirror some POINTER marshallers.
2000-11-10 19:38:53 +00:00
Jonathan Blandford
c97d57ebb8 added more fields to allow more interesting iterators. Also, made the
Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
	allow more interesting iterators.  Also, made the lifecycle of
	iterators more explicit.

	* gtk/gtktreemodelsort.[ch]: New model for sorting.

	* gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
	types.
2000-11-09 16:52:17 +00:00
Alexander Larsson
8898529c12 Changes to make the new testgtk compile after gtk_menu_append was removed.
2000-11-09  Alexander Larsson  <alexl@redhat.com>

	* demos/testgtk/menus.c:
	Changes to make the new testgtk compile after
	gtk_menu_append was removed.

	* gdk/linux-fb/gdkdrawable-fb2.c
	(gdk_fb_get_depth, gdk_fb_get_visual,
	gdk_drawable_impl_fb_class_init): Implement
	these drawable functions. Now GtkImages work again.

	* gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.

	* gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.

	* gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
	gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
	Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
	GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
2000-11-09 12:15:40 +00:00
Jonathan Blandford
0ccb3e9aed Not sure how this ever worked. Fixed it to use new iter stuff, and added
Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
	use new iter stuff, and added all the appropriate signals et al.

	* gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
	code is internal to gtk only.
2000-10-27 23:34:58 +00:00
Jonathan Blandford
ef7b510f46 Got rid of GtkTreeNode, and changed it to GtkTreeIter. Added iterators
Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
	GtkTreeIter.  Added iterators everywhere.

	* gtk/gtktreeviewcolumn.c: Changed to use the iterators.

	* gtk/gtktreeviewselection.c: Changed to use the iterators.

	* gtk/gtktreestore.c: Changed to use the iterators.

	* gtk/gtkliststore.c: Commented out the code.  Will convert to
	iterators tomorrow.

	* gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
	iterators tomorrow.

	* gtk/treestoretest.c: Changed to use iterators.

	* demos/testgtk/main.c: Moved to use the new iterator system.
2000-10-26 00:36:47 +00:00
Owen Taylor
7420908815 Start of work to move to new modularized testgtk.
Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in demos/Makefile.am demos/testgtk/*: Start of work to
	move to new modularized testgtk.
2000-10-18 15:50:13 +00:00