Compare commits

...

3129 Commits

Author SHA1 Message Date
Owen Taylor
c577abf769 Released 2.0.3.
Thu May 23 17:19:16 2002  Owen Taylor  <otaylor@redhat.com>

        * Released 2.0.3.

        * gtk/gtktooltips.c (gtk_tooltips_event_handler): Disable
        tooltips for menu items with submenus .. they still
        don't really work properly.

        * gtk/gtkwindow.c (gtk_window_move_resize): Clear
        initial_pos_set even if it only causes a move, not
        a resize as well.

        * configure.in: GTK+-2.0.3, interface age, binary age 3.

        * NEWS: Updated.
2002-05-23 22:01:51 +00:00
Jonathan Blandford
4794f2b309 revert last change until I am more sure of it 2002-05-23 15:31:41 +00:00
Jonathan Blandford
6fe89cc83a Check the parentage of a newly inserted node.
Thu May 23 11:08:09 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_row_inserted): Check the
	parentage of a newly inserted node.
2002-05-23 15:15:37 +00:00
Kjartan Maraas
edf587b5d0 Update 2002-05-23 10:28:01 +00:00
Tor Lillqvist
cef800524a Use correct path to the loaders and immodules directories
2002-05-23  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Use correct path to the loaders and immodules
	directories (GTK_BINARY_VERSION, not GTK_VERSION).
2002-05-22 21:01:18 +00:00
Federico Mena Quintero
44fb34e048 Make the top of the ChangeLog match the one in HEAD - Federico 2002-05-22 20:35:00 +00:00
Federico Mena Quintero
fa5b3494ce Ahem, take the rowstride into account!!! Fixes #82515.
2002-05-22  Federico Mena Quintero  <federico@ximian.com>

	* io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
	account!!!  Fixes #82515.

	[This bug is not present in the GNOME 1.4 branch as its XPM loader
	does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
	no row padding and then uses gdk_pixbuf_new_from_data() on it.]

	[IMPORTANT: The comment above is to make my life easier when
	merging stuff across branches.  If you make changes to gdk-pixbuf
	in either branch, please include a comment in the ChangeLog that
	indicates whether this should be merged into the other branch.
	Thanks!]
2002-05-22 20:31:50 +00:00
Federico Mena Quintero
980b21ed3a Ahem, take the rowstride into account!!! Fixes #82515.
2002-05-22  Federico Mena Quintero  <federico@ximian.com>

        * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
        account!!!  Fixes #82515.

        [This bug is not present in the GNOME 1.4 branch as its XPM loader
        does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
        no row padding and then uses gdk_pixbuf_new_from_data() on it.]

        [IMPORTANT: The comment above is to make my life easier when
        merging stuff across branches.  If you make changes to gdk-pixbuf
        in either branch, please include a comment in the ChangeLog that
        indicates whether this should be merged into the other branch.
        Thanks!]
2002-05-22 20:28:15 +00:00
Owen Taylor
565c6e3ba5 Require autoconf-2.52 explicitely, since otherwise Debian will process it
Wed May 22 16:12:38 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Require autoconf-2.52 explicitely,
        since otherwise Debian will process it with 2.13 (ugh!).
2002-05-22 20:16:48 +00:00
Tor Lillqvist
de4153065e Use GTK_BINARY_VERSION (and not GTK_VERSION) in the path to the loaders on
2002-05-22  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
	GTK_VERSION) in the path to the loaders on Win32, too.

	* Makefile.am: Pass GTK_BINARY_VERSION.
2002-05-22 19:34:03 +00:00
Jonathan Blandford
a7cef089a8 remove GTK_RESIZE_QUEUE setting.
Wed May 22 12:29:20 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): remove
	GTK_RESIZE_QUEUE setting.
2002-05-22 16:34:49 +00:00
Owen Taylor
c2a0b5322c Fix missing dereference. (HideToshi Tajima)
Tue May 21 16:46:15 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkmain-x11.c (gdk_internal_connection_watch):
        Fix missing dereference. (HideToshi Tajima)
2002-05-21 20:51:30 +00:00
Owen Taylor
1b4ae4ff25 Conditionalize GTK_IS_PLUG() check on GDK_WINDOWING_X11. (Problem reported
Tue May 21 15:33:32 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_show): Conditionalize
        GTK_IS_PLUG() check on GDK_WINDOWING_X11. (Problem
        reported by Sven Neumann)
2002-05-21 19:33:10 +00:00
George Lebl
0d4e66328c update a few strings, that is at least the ones I see the most so that
Tue May 21 10:13:27 2002  George Lebl <jirka@5z.com>

	* cs.po: update a few strings, that is at least the ones I see
	  the most so that things speak at least somewhat czech to me
2002-05-21 17:03:47 +00:00
Owen Taylor
91ba6c2dc6 Patch from HideToshi Tajima to handle Xlib internal connections. (#76681)
Mon May 20 15:02:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c: Patch from HideToshi Tajima
        to handle Xlib internal connections. (#76681)
2002-05-20 19:04:24 +00:00
Owen Taylor
a57801b074 on May 20 12:59:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.c: Set the private LEAVE_PENDING
        flag to fix problem where with menu items with
        submenus, tooltips were getting stuck. (Effectively
        disables tooltips for menu items with submenus.)
        (Bug #75961, Soeren Sandmann)

        * tests/testgtk.c: Set a tooltip on a menu item
        with a submenu.
2002-05-20 17:06:59 +00:00
Owen Taylor
c1b5a2d0ef Undo an accidental revert of fixes of May 16. (Caught by Padraig O'Briain)
Mon May 20 11:47:59 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.c: Undo an accidental revert of
        fixes of May 16. (Caught by Padraig O'Briain)
2002-05-20 15:52:08 +00:00
Owen Taylor
785183c7fb Fix bug where size request for text cells was being overwritten. (#82264,
Mon May 20 11:38:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkctree.c (cell_size_request): Fix bug where
        size request for text cells was being overwritten.
        (#82264, Graham Swallow.)
2002-05-20 15:42:43 +00:00
Chyla Zbigniew
c2929809ff Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-05-19 09:03:35 +00:00
Vlad Harchev
840d2ef409 ru.po: updated russian translation from Dmitry G. Mastrukov 2002-05-19 03:57:52 +00:00
Christian Rose
a9274b2f0c Updated Swedish translation.
2002-05-19  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2002-05-19 02:39:42 +00:00
Matthias Clasen
32931e7d08 Check for endianness.
* configure.in: Check for endianness.

	* io-tiff.c (tiff_image_parse): fix packing order on bigendian
	systems.  (#81702)
2002-05-18 14:54:37 +00:00
Owen Taylor
410b70f907 Only optimize out the full configure handling if we got a gratuitous
Thu May 16 19:49:24 2002  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkwindow.c (gtk_window_configure_event): Only
        optimize out the full configure handling if we got
        a gratuitous configure event(configure_request_count == 0)
        and the size didn't change.

        * gtk/gtkwindow.c (gtk_window_move_resize): Use
        g_message(), not g_print() for debug spew.

        * gtk/gtkwindow.c (gtk_window_real_set_focus): Ref
        the old and new focus widgets for the scope of
        the function.

        * gtk/gtksocket.c gtkplug.c: Remove various #if 0'd
        bits of old code.

        * gtk/gtksocket.c gtk/gtkplug.c: Enhance debug messages.
2002-05-17 21:44:37 +00:00
Owen Taylor
0aa1bd5e97 Protect against reentrancy problems by emitting ::preedit_changed at the
Fri May 17 14:40:24 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
        Protect against reentrancy problems by emitting
        ::preedit_changed at the end, fixing input context
        leak. (Yao Zhang)

        * modules/input/gtkimcontextxim.c (status_window_free):
        Patch from Federico Mena Quintero to fix problem where
        references to IMContextXIM were kept around after
        module was unloaded.

        * gtk/gtkdnd.c (gtk_drag_dest_set): NULL initialize
        proxy window.
2002-05-17 19:28:35 +00:00
Kjartan Maraas
d7542b9af8 Update 2002-05-17 19:25:37 +00:00
Owen Taylor
859145de52 Fix a missing unref in the local/passive case. (#82067, Michael Meeks)
Fri May 17 13:56:23 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.c (gtk_plug_filter_func): Fix a missing
        unref in the local/passive case. (#82067, Michael
        Meeks)

        * gtk/gtkplug.c (_gtk_plug_remove_from_socket): Fix
        reference leak on the plug window.

        * tests/testsocket.c (add_child): Fix memory leak.

        * gtk/gtkdnd.c (gtk_drag_dest_site_destroy): Unref
        the proxy window.
2002-05-17 18:15:19 +00:00
Pablo Saratxaga
5d2db8f012 Updated Catalan, Vietnamese and Walloon file 2002-05-17 10:07:22 +00:00
Owen Taylor
1fa83a74f5 Thu May 16 18:47:29 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkwindow.c (gtk_window_show): Disable the focus-some-one code for GtkPlug descendants. * gtk/gtkplug.c (gtk_plug_focus_event): Eat focus-in/out events since they can be generated by keyboard grabs, but are spurious for an embeddded widget. (#79196, Padraig O'Briain) * gtk/gtksocket.c (gtk_socket_size_request): Only pay attention to the minimum size hints, and changes to that ... ignore the default size. * gtk/gtksocket.c (gtk_socket_send_configure_event): Pass in root-window relative coordinates as per the ICCCM. * gtk/gtksocket.c (gtk_socket_size_allocate): Send as many synthetic configures as necessary to make up for ConfigureRequest events we got. (#78799, Dave Camp.) 2002-05-16 23:37:30 +00:00
Kristian Rietveld
cb9aff42c7 set the prev of the next node correctly, so we don't corrupt the list and
Thu May 16 23:59:56 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed): set the prev
        of the next node correctly, so we don't corrupt the list and cause
        bad things. (fixes #71374)
2002-05-16 22:15:30 +00:00
Jonathan Blandford
1124ea7c72 include missing #ifdef G_ENABLE_DEBUG
Thu May 16 17:29:08 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_gtk_rbtree_remove): include missing #ifdef G_ENABLE_DEBUG
2002-05-16 21:35:58 +00:00
Owen Taylor
ec80b47977 Fix typo in earlier patch.
Thu May 16 15:44:15 2002  Owen Taylor  <otaylor@redhat.com>

        * demos/gtk-demo/editable_cells.c (cell_edited): Fix
	typo in	earlier	patch.
2002-05-16 19:44:17 +00:00
Owen Taylor
1fd687f7c2 Don't filter control-shift+[non-hex]. (#80252, reported by Nalin
Tue May  7 15:50:51 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress):
        Don't filter control-shift+[non-hex].
        (#80252, reported by Nalin Dahyabhai)
2002-05-16 19:41:09 +00:00
Owen Taylor
f1fa35441e Patch from Matthias Clasen to fix some typos (#77246)
Thu May 16 15:17:30 2002  Owen Taylor  <otaylor@redhat.com>

        * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
        (#77246)
2002-05-16 19:18:14 +00:00
Owen Taylor
d7b7242847 Fixes for #78258
Thu May 16 14:51:14 2002  Owen Taylor  <otaylor@redhat.com>

        Fixes for #78258

        * gtk/gtkrbtree.c demos/gtk-demo/editable-cells.c:
        Fix some 64-bit warning problems. (Patch from Matthias
        Clasen.)

        * gtk/gtkrbtree.c (_gtk_rbtree_debug_spew_helper): Surround
        a bunch of debug code with G_ENABLE_DEBUG.

        * configure.in demos/gtk-demo/main.c: Replace
        #ifndef G_OS_WIN32 with proper #ifdef HAVE_FLOCKFILE.
2002-05-16 19:12:01 +00:00
Owen Taylor
a2e485757c Fix a missed check for division by zero. (#77820, Gareth Pearce)
Thu May 16 12:56:38 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrange.c (gtk_range_calc_layout): Fix a missed
        check for division by zero. (#77820, Gareth Pearce)
2002-05-16 16:57:07 +00:00
Owen Taylor
2c79e71d98 gdk_event_put() copies the event and setting name, so we don't have to
Thu May 16 12:50:13 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_xsettings_notify_cb):
	gdk_event_put() copies the event and setting name,
	so we don't have to strdup() it here. (Fix from
	Michael Meeks, #81953)
2002-05-16 16:53:37 +00:00
Ettore Perazzoli
c2d9124553 If the menu is scrolled down or up, and some of the widget area is empty,
* gtk/gtkmenu.c (gtk_menu_paint): If the menu is scrolled down or
up, and some of the widget area is empty, don't fill it in with
GTK_SHADOW_IN rectangles that make it looks strange.  Fixes
#72695.
2002-05-16 13:49:04 +00:00
Owen Taylor
806bb88530 Don't call gdk_pointer_grab() to change the cursor if we've already
Wed May 15 18:15:45 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Don't
        call gdk_pointer_grab() to change the cursor if we've
        already ungrabbed on button release / escape.
        (#80420, Dave Camp)
2002-05-15 22:26:45 +00:00
Owen Taylor
ea696a2362 Special case menu items to pop down on motion. (#75961)
Wed May 15 17:12:50 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktooltips.c: Special case menu items to
        pop down on motion. (#75961)

        * tests/testgtk.c (create_item_factory): Add tooltips
        to the File menu.

        * gtk/gtkentry.c (update_im_cursor_location): Fix
        cursor locations passed to the IM context.
        (#80027, Yao Zhang)
2002-05-15 21:47:08 +00:00
Owen Taylor
87234fd57b Update from contents of size entry on focus out. (#76493, Lauris
Wed May 15 16:52:57 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfontsel.c: Update from contents of size entry
        on focus out. (#76493, Lauris Kaplinski)

        * gtk/gtkclipboard.c (selection_get_cb): Fix backwads
        info/time arguments. (#80226)
2002-05-15 20:54:42 +00:00
Owen Taylor
31ec94faa5 If not building libpng, don't rebuild gtkstockpixbufs.h (#81819, Bill
Wed May 15 11:13:19 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in gtk/stock-icons/Makefile.am: If not
        building libpng, don't rebuild gtkstockpixbufs.h
        (#81819, Bill Janssen)
2002-05-15 15:31:53 +00:00
Jacob Berkman
2dcfebc67f run perl on the file, since it's not executable
2002-05-15  Jacob Berkman  <jacob@ximian.com>

	* demos/gtk-demo/Makefile.am: run perl on the file, since it's not
	executable
2002-05-15 04:18:06 +00:00
Owen Taylor
d81b18a210 Subsitute in @PERL@ instead of hardcoded /usr/bin/perl. (#78355, Gareth
Tue May 14 19:53:15 2002  Owen Taylor  <otaylor@redhat.com>

        * demos/gtk-demo/geninclude.pl.in configure.in:
        Subsitute in @PERL@ instead of hardcoded
        /usr/bin/perl. (#78355, Gareth Pearce. Fix based
        on patch from Matthias Clasen)

        * gdk/Makefile.am: Patch from Daniel Elstner to use glib-mkenums
        instead of makeenums.pl.

        * gdk/{x11,linux-fb,win32}/Makefile.am: Hack to
        get gdkenumtypes.h built first.
2002-05-14 23:57:23 +00:00
Owen Taylor
185087e553 Remove the result file on error. (#79929, David Highley)
Tue May 14 18:41:58 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
        Remove the result file on error. (#79929, David
        Highley)

        * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu):
        If the menu is currently active, cancel it before
        setting the new menu. (#79162, Jonathan Blandford.)
2002-05-14 22:44:30 +00:00
Owen Taylor
26f74e40f6 Fix prepending at the start of the list. (#56349, Thomas Leonard.)
Tue May 14 18:13:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Fix
        prepending at the start of the list. (#56349,
        Thomas Leonard.)

        * gtk/gtksignal.h (gtk_signal_disconnect_by_func): Add
        explicit casts to GSignalMatchType for C++ compatibility.
        (#77601)
2002-05-14 22:16:01 +00:00
Owen Taylor
ff76bf8ba7 Fix frame_right/frame_top screwup. (Detlef Reichl, #78111)
Tue May 14 18:02:37 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_realize): Fix
        frame_right/frame_top screwup. (Detlef Reichl,
        #78111)

        * gtk/Makefile.am (install-data-local): Use
        $(INSTALL_DATA) not $(INSTALL) when installing
        theme files. (#77094, Ben Liblit)
2002-05-14 22:04:22 +00:00
Owen Taylor
099100a9d3 Fix format of selection data to be 8 rather than GTK_TYPE_POINTER.
Tue May 14 17:30:57 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkctree.c gtk/gtkclist.c: Fix format of
        selection data to be 8 rather than GTK_TYPE_POINTER.
        (#79751, James Henstridge)

        * gtk/gtkmenu.c (gtk_menu_key_press): Call
        gtk_accelerator_valid() with cleaned up
        accel_key/accel_mods, not the raw values from
        the event. (#80513, Havoc Pennington.)

        * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Remove
        some dead code that set the tearoff window not
        resizable and removed decorations. (#80235)
2002-05-14 21:36:16 +00:00
Owen Taylor
94d05dfaf8 Set the width of the layout to the actual wrap width (our requisition) not
Tue May 14 16:44:09 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtklabel.c (gtk_label_ensure_layout): Set
        the width of the layout to the actual wrap width
        (our requisition) not the width we set when calculating
        the width. This results in the lines being justified
        within the correct area. (#79157, Anders Carlsson)

        * gtk/gtkaccelgroup.c gtk/gtkmarshelers.list: Corrected
        registered parameter types of "accel_activate" and
        "accel_changed" signals. (Patch from Murray Cumming, #78798)

        * gtk/gtkrc.c (gtk_rc_make_default_dir): Switch
        binary-version and type to correspond to the
        current ordering in _gtk_get_module_path.
        (#78746, Sergey Kuzminov)

        * gtk/gtkrc.c (gtk_rc_get_module_dir): Add docs
        pointing to the GTK_PATH documentation.

        * gtk/Makefile.am (uninstall-local): Delete
        key themes as well. (#81286, Kristian Rietveld.)
2002-05-14 20:52:59 +00:00
Pauli Virtanen
f10a6beefc Updated Finnish translation.
2002-05-14  Pauli Virtanen <pauli.virtanen@hut.fi>

	* fi.po: Updated Finnish translation.
2002-05-14 20:51:07 +00:00
Owen Taylor
fa7fc23f44 Try adding a #ifndef/#define for XkbKeySymEntry to make up for OSF broken
Tue May 14 15:09:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c: Try adding a #ifndef/#define
        for XkbKeySymEntry to make up for OSF broken
        XKB extension. (#77819, Gareth Pearce)

        * gtk/gtklayout.c: Clamp the upper values in response
        to ::size-allocate if necessary. (#81290, Christophe Saout)

        * gtk/gtkcombo.c (gtk_combo_entry_focus_out): Handle
        combo being destroyed before idle fires.
        (#81396, Timo Sirainen)
2002-05-14 19:12:51 +00:00
Kristian Rietveld
f34a1f4807 PACK_END cells support CELL_ACTION_EVENT too now ...
Mon May 13 23:19:20 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
        PACK_END cells support CELL_ACTION_EVENT too now ...
2002-05-13 21:18:31 +00:00
Stanislav Visnovsky
8b4829abab Updated Slovak translation.
2002-05-11  Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2002-05-11 14:18:43 +00:00
Ole Laursen
f21dfb358d Updated Danish translation.
2002-05-11  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-05-11 11:02:47 +00:00
Daniel Elstner
5a1a08f160 #define INITIALIZE_TREE_ITER(), which zeroes out all GtkTreeIter fields.
2002-05-10  Daniel Elstner  <daniel.elstner@gmx.net>

* gtk/gtktreemodel.c: #define INITIALIZE_TREE_ITER(), which zeroes out all GtkTreeIter fields. (#81380)
(gtk_tree_model_get_iter): Use it.
(gtk_tree_model_iter_children): ditto
(gtk_tree_model_iter_nth_child): ditto
(gtk_tree_model_iter_parent): ditto
2002-05-10 21:48:20 +00:00
Chyla Zbigniew
0cc2d916f1 Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-05-10 12:39:30 +00:00
Kristian Rietveld
dbe2343a7d fixup comment, so it doesn't screw the docs.
Thu May  9 23:33:32 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_stop_editing): fixup comment,
        so it doesn't screw the docs.
2002-05-09 21:27:18 +00:00
Michael Natterer
bd118b7212 fixed yesterdays fix for cross compiling: simply check the variable
2002-05-08  Michael Natterer  <mitch@gimp.org>

	* configure.in: fixed yesterdays fix for cross compiling: simply
	check the variable "cross_compiling" which gets set by autoconf.
2002-05-08 15:29:10 +00:00
Owen Taylor
175116ac7d Check for selection_atom, not property name atom.
Tue May  7 18:36:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/xsettings-client.c (xsettings_client_process_event):
        Check for selection_atom, not property name atom.
2002-05-07 22:45:28 +00:00
Michael Natterer
12cf52e468 added a new conditional CROSS_COMPILING which indicates ($build != $host).
2002-05-07  Michael Natterer  <mitch@gimp.org>

	* configure.in: added a new conditional CROSS_COMPILING which
	indicates ($build != $host). If it is set, look for
	gdk-pixbuf-csource in PATH. Error out if it was not found.

	* gtk/stock-icons/Makefile.am: use the gdk-pixbuf-csource found at
	configure time if CROSS_COMPILING is set, use the one which was
	just built otherwise.
2002-05-07 15:57:51 +00:00
Anders Carlsson
c5162fa6e8 Only process manager events with the correct atom.
2002-05-07  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/xsettings-client.c (xsettings_client_process_event):
	Only process manager events with the correct atom.
2002-05-07 14:51:18 +00:00
Michael Natterer
8aa2e2453e build the static pixbuf loaders conditionally like the dynamic ones so
2002-05-07  Michael Natterer  <mitch@gimp.org>

	* gdk-pixbuf/Makefile.am: build the static pixbuf loaders
	conditionally like the dynamic ones so --without-lib<foo> is
	honored when building with --disable-modules. (#66867)
2002-05-07 12:59:01 +00:00
Kjartan Maraas
2488bbf9fc Updated Norwegian (bokml) translation.
2002-05-07  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-05-07 10:38:24 +00:00
Kristian Rietveld
4dd906e7a7 Merge TreeView fixes from HEAD:
Tue May  7 00:50:20 2002  Kristian Rietveld  <kris@gtk.org>

        Merge TreeView fixes from HEAD:

        (May  6):
        * gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
        func on current node before the child nodes.

        * gtk/gtktreeview.c (gtk_tree_view_motion_draw_column_motion_arrow):
        unset user_data before destroying the window. (fixes #80065).
2002-05-06 22:44:15 +00:00
Kristian Rietveld
4e3c34eab6 add neighbor size hack to align editable widget.
Tue May  7 00:18:45 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_start_editing): add neighbor
        size hack to align editable widget.

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_end): use g_new0
        here instead of g_new (this triggered some bad crash),
        (gtk_tree_view_column_cell_is_visible): add missing assert
2002-05-06 22:32:24 +00:00
Matthias Clasen
2083f3e262 Always select for property notify for maintaining window state.
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
	(gdk_window_set_events): Always select for property notify for
	maintaining window state.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
	property notifys if they were selected by gdk_window_set_events.
2002-05-06 22:06:10 +00:00
Owen Taylor
c400e38f98 Add ChangeLog.pre-2-0 (#78641)
Mon May  6 11:48:08 2002  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am (EXTRA_DIST): Add ChangeLog.pre-2-0 (#78641)

        * m4macros/gtk-2.0.m4: save CFLAGS/LIBS properly when
        compiling "what went wrong" test case. (#79329)

        * m4macros/gtk-2.0.m4: Remove reference to editing
        pkg-config script. (From Jim Gettys)
2002-05-06 18:06:11 +00:00
Changwoo Ryu
b2e2fe6ea3 Updated Korean translation.
* ko.po: Updated Korean translation.
2002-05-06 14:26:47 +00:00
Christophe Fergeau
115418d968 Fixed 2 strings 2002-05-04 23:36:01 +00:00
Tuomas Kuosmanen
64fb36c3d8 These have a proper alpha channel thus they dont look jaggy. /tig 2002-05-03 08:46:59 +00:00
Matthias Clasen
2255a7225d Typo fix.
* gtk/gtknotebook.c (gtk_notebook_set_show_border): Typo fix.
2002-05-02 19:16:25 +00:00
Matthias Clasen
f4dc453e09 Correct the composite_child blurb.
* gtk/gtkwidget.c (gtk_widget_class_init): Correct the
	composite_child blurb.

	* gtk/gtknotebook.c (gtk_notebook_set_show_border): Clarify docs.  (#73093)
2002-05-02 19:09:34 +00:00
Vincent van Adrighem
a8749b2614 Added a few lines about how to use gettext to convert betweeen encodings.
2002-05-02 Vincent van Adrighem <V.vanAdrighem@dirck.mine.nu>
* README.translators: Added a few lines about how to use
	gettext to convert betweeen encodings.
2002-05-02 07:32:05 +00:00
Vincent van Adrighem
1c92d4b28d Updated Dutch translation (Tino Meinen).
2002-05-02 Vincent van Adrighem <V.vanAdrighem@dirck.mine.nu>
* nl.po: Updated Dutch translation (Tino Meinen).
2002-05-02 07:22:25 +00:00
Chyla Zbigniew
15c38b93e2 Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-05-01 10:42:29 +00:00
Havoc Pennington
1fc3556064 use gtk_text_layout_invalidate_cache instead of cut-and-paste
2002-04-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_real_free_line_data): use
	gtk_text_layout_invalidate_cache instead of cut-and-paste
	(gtk_text_layout_real_invalidate): always invalidate cache, even
	if the line has no stored line data. #78573

	* gtk/gtktextview.c (gtk_text_view_get_iter_location): add call to
	gtk_text_view_ensure_layout, #77388
	(gtk_text_view_get_iter_at_location): ditto
	(gtk_text_view_get_line_yrange): ditto
	(gtk_text_view_get_line_at_y): ditto
2002-04-30 20:51:26 +00:00
Havoc Pennington
31b514d831 assign something to "prev" so that removing tag info succeeds. Part of
2002-04-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (gtk_text_btree_remove_tag_info): assign
	something to "prev" so that removing tag info succeeds.
	Part of #77301

	* gtk/gtktextbtree.c (_gtk_text_btree_unref): reorder so that it
	unrefs the tag table first, so that the btree is in a consistent
	state when we're removing tags from it.

	* gtk/gtktexttagtable.c (_gtk_text_tag_table_remove_buffer): strip
	all tags in the tag table out of the buffer. #77301
2002-04-30 15:53:54 +00:00
Alex Larsson
752742d044 Use tmp also if foreground is set.
2002-04-29  Alex Larsson  <alexl@redhat.com>

	* gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
	Use tmp also if foreground is set.
2002-04-29 23:34:08 +00:00
Andraz Tori
e49d754fdc Updated Slovenian translation 2002-04-29 23:32:06 +00:00
Kjartan Maraas
22f7b3ee23 Updated Norwegian (bokml) translation.
2002-04-29  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-04-29 13:31:26 +00:00
Jonathan Blandford
a704364549 Fix so that you can set a new sort func.
Sun Apr 28 22:43:55 2002  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): Fix
	so that you can set a new sort func.
2002-04-29 03:02:56 +00:00
Matthias Clasen
21c7e08b21 Avoid a possible division by zero. (#77820)
* gtk/gtkrange.c (gtk_range_calc_layout): Avoid a possible
	division by zero.  (#77820)
2002-04-27 22:31:47 +00:00
Kristian Rietveld
2d509b1d84 Merge TreeView fixes from HEAD:
Sat Apr 27 15:48:49 2002  Kristian Rietveld  <kris@gtk.org>

        Merge TreeView fixes from HEAD:

        (Apr 26):
        * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): if the
        deleted node was "below" this path, then do not unref all nodes
        between the deleted parent and the node this rowref is pointing too
        (see added comment in gtk_tree_row_ref_deleted_callback),
        (fixes #77977)
2002-04-27 13:43:44 +00:00
Simos Xenitellis
5ef9c5a5bf Updated Greek translation 2002-04-27 13:24:58 +00:00
Sven Neumann
77d170539a tests/testtreecolumns.c quit the main loop when the window is destroyed.
2002-04-26  Sven Neumann  <sven@gimp.org>

	* tests/testtreecolumns.c
	* tests/testtreeview.c: quit the main loop when the window is
	destroyed. Removed compiler warnings about wrong format in printf().
2002-04-26 16:59:00 +00:00
Kristian Rietveld
9255c12c87 Merge TreeView fixes from HEAD up to Apr 26:
Fri Apr 26 00:00:00 2002  Kristian Rietveld  <kris@gtk.org>

        Merge TreeView fixes from HEAD up to Apr 26:

        (Apr 25):
        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_reset_default_sort_func):
        resort if we're already in 'unsorted' state, and update the docs

        * gtk/gtktreeview.c (gtk_tree_view_search_iter): make the search
        dialog not scroll horizontally (prolly fixes #74806).

        (Also from Apr 25, fixes #74206):
        * gtk/gtktreeprivate.h: add _gtk_tree_view_column_count_special_cells

        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_has_editable_cell),
        (_gtk_tree_view_column_get_editable_cell): remove a space which made
        the code look ugly
        (_gtk_tree_view_column_count_special_cells): new function,
        (gtk_tree_view_column_cell_process_action): if there's only one
        activatable cell, the whole column will activate that renderer.

        (Apr 24):
        * gtk/gtktreeview.c (gtk_tree_view_stop_editing): temporarily set
        ->priv->edited_column to NULL. Pleas read the comment in this
        function for an explanation (fixes #79632).
2002-04-25 22:00:07 +00:00
Soeren Sandmann
f2b3c6e6a3 use the child's requisition.height, not allocation.height, as width of
Thu Apr 25 20:24:37 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): use the child's
	requisition.height, not allocation.height, as width of submenu
	indicator. (#75948)
2002-04-25 18:24:42 +00:00
Matthias Clasen
f6238492bc Merged documentation fixes from HEAD. 2002-04-24 22:09:24 +00:00
Anders Carlsson
fab341df09 Update ChangeLog 2002-04-22 20:56:12 +00:00
Anders Carlsson
e11dcc5426 Use gtk_entry_get_public_chars. Fixes #79532.
2002-04-22  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkentry.c (gtk_entry_drag_data_get): Use
	gtk_entry_get_public_chars. Fixes #79532.
2002-04-22 20:54:32 +00:00
Kwok-Koon Cheung
bee067608a Updated traditional Chinese translation. 2002-04-21 22:15:35 +00:00
Alexander Larsson
9eea275ed7 Merged from HEAD:
2002-04-21  Alexander Larsson  <alla@lysator.liu.se>

	Merged from HEAD:

	* gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
	Save x and y in window_private.

	* gtk/gtkplug.c (_gtk_plug_add_to_socket):
	Move plug window outside the visible area to avoid flashing until
	the first size_allocate.
2002-04-21 19:26:53 +00:00
Kristian Rietveld
39e60a0564 replace GDK_IS_WINDOW with GDK_IS_DRAWABLE in the assert, only check
Sat Apr 20 16:49:26 2002  Kristian Rietveld  <kris@gtk.org>

        * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_new): replace GDK_IS_WINDOW
        with GDK_IS_DRAWABLE in the assert, only check GDK_WINDOW_DESTROYED
        if window is a GdkWindow,
        (gdk_bitmap_create_from_data): ditto,
        (gdk_pixmap_create_from_data): ditto
2002-04-20 14:47:25 +00:00
Kristian Rietveld
ac5905d0db Merge TreeView fixes from HEAD up to Apr 20 2002:
Sat Apr 20 01:54:59 2002  Kristian Rietveld  <kris@gtk.org>

        Merge TreeView fixes from HEAD up to Apr 20 2002:

        (All from Apr 19):
        * gtk/gtktreeview.c (gtk_tree_view_size_allocate): subtract
        TREE_VIEW_HEADER_HEIGHT from allocation->height to get the real
        size for the tree (fixes #72729),
        (gtk_tree_view_real_start_editing): correct cell_area->y for
        scrolling due to gtk_tree_view_real_set_cursor (fixes #75687)

        * gtk/gtktreeview.c (gtk_tree_view_row_changed): cancel editing
        if tree_view->priv->edited_column != NULL (fixes #76066)

        (This patch fixes #50310):
        * gtk/gtktreeprivate.h: add _gtk_tree_view_column_autosize

        * gtk/gtktreeview.c: privately export _gtk_tree_view_column_autosize,
        and add a small note about that function,
        (gtk_tree_view_button_press): check for double click and
        "not having an autosize" column before autosizing the column,

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_min_width):
        call _gtk_tree_view_column_autosize to update autosized column width
        (gtk_tree_view_column_set_max_width): ditto
2002-04-19 23:54:42 +00:00
Kristian Rietveld
c962023b0d Merge TreeView fixes from HEAD up to Apr 19 2002:
Fri Apr 19 16:49:01 2002  Kristian Rietveld  <kris@gtk.org>

        Merge TreeView fixes from HEAD up to Apr 19 2002:

        (From Apr 16):
        * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): check
        ->priv->cursor and ->priv->anchor rowrefs before removing
        node->children from the rbtree. Also check the
        ->priv->last_single_clicked and ->priv->last_single_clicked_2 rowrefs
        (I think I really need to rename those two someday).

        (From Apr 17):
        * gtk/gtktreestore.c (gtk_tree_store_insert_before): fix docs

        (From Apr 18):
        * gtk/gtktreemodelsort.c
        (gtk_tree_model_sort_convert_path_to_child_path): so this function
        was completely broken. Fix it and improve readability.

        (From Apr 19):
        * gtk/gtktreeprivate.h, gtk/gtktreeview.c: rename
        last_single_clicked{,_2} to last_button_press{,_2}, as the latter
        is a more sane name.

        * gtk/gtktreeview.c (gtk_tree_view_button_press): use ->priv->anchor
        instead of ->priv->cursor, check for the anchor at another place, as
        you can go in edit mode without having an anchor.
2002-04-19 15:46:13 +00:00
Tor Lillqvist
a9d9b8581b gdk-pixbuf/Makefile.am (uninstall-libtool-import-lib) Fix typo, thanks to
2002-04-18  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf/Makefile.am (uninstall-libtool-import-lib)
	* gdk/Makefile.am (uninstall-libtool-import-lib): Fix typo,
	thanks to David Sterba for noticing.

	* gtk/gtkmain.h
	* gtk/gtkmain.c (gtk_init_abi_check, gtk_init_check_abi_check): In
	GTK+ 2.0 the GtkWindow struct actually is the same size in gcc on
	Win32 whether compiled with -fnative-struct or not. Unfortunately
	this wan't noticed until now. So, from now on, check some other
	struct, too, for which the use of -fnative-struct still
	matters. GtkBox is one such.
2002-04-18 11:25:23 +00:00
Jonathan Blandford
78bd6b2844 include internal children when doing focus.
Mon Apr 15 15:41:56 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcontainer.c (gtk_container_focus): include internal
	children when doing focus.
	(gtk_container_get_all_children): new static function to include
	internal children when making a list of them.
2002-04-15 22:22:40 +00:00
Valek Frob
cebcf77865 Updated russian translation. 2002-04-15 07:55:30 +00:00
Changwoo Ryu
59fcc72e83 Updated Korean translation.
* ko.po: Updated Korean translation.
2002-04-14 15:36:10 +00:00
Kristian Rietveld
54db0fc9fd add _gtk_tree_view_column_get_editable_cell and
Sun Apr 14 16:56:59 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeprivate.h: add _gtk_tree_view_column_get_editable_cell and
        _gtk_tree_view_column_get_neighbor_sizes

        * gtk/gtktreeviewcolumn.c (struct _GtkTreeViewColumnCellInfo): add
        real_width field,
        (_gtk_tree_view_column_get_editable_cell): implement,
        (gtk_tree_view_column_cell_process_action): fill info->real_width
        (_gtk_tree_view_column_get_neighbor_sizes): implement

        * gtk/gtktreeview.c (gtk_tree_view_button_press): make the "editable
        widget" show up with the same size as the actual cell, so it doesnt
        cover the complete column if there are any other cells in that column.
2002-04-14 15:05:04 +00:00
Abigail Brady
2b350816a8 Fix typo in message.
2002-04-14  Abigail Brady  <morwen@fuzzle.org>

	* gtk/gtkfilesel.c: Fix typo in message.

	* po/en_GB.po: Update British translation.
2002-04-14 12:36:12 +00:00
Havoc Pennington
4bd76958c2 create the target pixbuf AFTER filling in width/height, so that passing in
2002-04-13  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): create
	the target pixbuf AFTER filling in width/height, so that
	passing in -1 for width/height will work.
2002-04-13 21:14:57 +00:00
Kristian Rietveld
2666ab462e Fixes #75510
Sat Apr 13 22:49:45 2002  Kristian Rietveld  <kris@gtk.org>

        Fixes #75510

        * gtk/gtktreeselection.c (gtk_tree_selection_get_selected): make this
        function work correctly and more sane

        * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): remove
        node->children from rbtree before emitting GtkTreeSelection::changed

Sat Apr 13 17:15:12 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_init): dont set
        the mode to GTK_CELL_RENDERER_MODE_EDITABLE by default,
        (gtk_cell_renderer_text_class_init): for some reason our default for
        editable was TRUE, of course this is FALSE.
        (gtk_cell_renderer_text_set_property): update mode when editable
        has been changed.
2002-04-13 20:48:31 +00:00
jacob berkman
0a4977915b fix cut-n-paste bug which breaks big-endian machines (fixes #73585)
2002-04-12  jacob berkman  <jacob@ximian.com>

	* gdk/x11/xsettings-client.c (fetch_card8): fix cut-n-paste bug
	which breaks big-endian machines (fixes #73585)
2002-04-12 21:52:57 +00:00
Havoc Pennington
c652859042 relocate the remove_weak_pointer to just before we free the page, to be
2002-04-12  Havoc Pennington  <hp@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_real_remove): relocate the
	remove_weak_pointer to just before we free the page, to be sure
	it doesn't get re-added. #75282
2002-04-12 21:52:16 +00:00
Kristian Rietveld
8e84c6b9d2 add clamp_node argument (toplevel): update usages of
Fri Apr 12 18:32:46 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): add
        clamp_node argument
        (toplevel): update usages of gtk_tree_view_real_set_cursor,
        (gtk_tree_view_focus_to_cursor): don't let
        gtk_tree_view_real_set_cursor clamp the node, so you won't get
        unexpected scrolling
2002-04-12 16:32:39 +00:00
Michael Meeks
a3547cf3b1 add freeze / thaws to stop deluge of 'notify' signals.
2002-04-11  Michael Meeks  <michael@ximian.com>

	* gtk/gtklabel.c
	(gtk_label_parse_uline, gtk_label_set_text),
	(gtk_label_set_text_with_mnemonic): add freeze / thaws
	to stop deluge of 'notify' signals.
2002-04-12 12:43:01 +00:00
Matthias Clasen
6939510851 More fixes for #77807:
* io-tga.c (get_contiguous_pixbuf): Helper function to create
	a pixbuf with a contiguous pixel array while being careful about
	overflow.

	* io-tga.c (fill_in_context, get_image_pseudocolor,
	get_image_truecolor, get_image_grayscale): Use
	get_contiguous_pixbuf instead of manually allocating image
	storage.

	* io-xpm.c (pixbuf_create_from_xpm):
	* io-pnm.c (gdk_pixbuf__pnm_image_load):
	* io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
	instead of manually allocating image storage.
2002-04-11 21:18:40 +00:00
Christophe Merlet
e60568a1da Updated French translation. 2002-04-11 19:46:52 +00:00
Owen Taylor
03498ba24f Export private _gtk_menu_shell_activate() to encapsulate cut-and-paste
Sat Apr  6 06:57:00 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
        private _gtk_menu_shell_activate() to encapsulate
        cut-and-paste code.

        * gtk/gtkmenubar.c: Select the first item on the menu bar
        for F10 rather than acting as if the user pressed <Alt>F
        to select the file manager.
2002-04-11 14:28:11 +00:00
Stanislav Visnovsky
631b8da93e Updated Slovak translation.
2002-04-10  Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2002-04-10 14:54:08 +00:00
Owen Taylor
c9d9db0fcc Fix problems with HandleBox and focusing - #78232
Tue Apr  9 19:01:28 2002  Owen Taylor  <otaylor@redhat.com>

        Fix problems with HandleBox and focusing - #78232

	* gtk/gtkwidget.c (gtk_widget_translate_coordinates): Handle
	GtkHandleBox / GnomeDock style window heirarchy / widget
	heirarchy disconnects. :-(.

	* gtk/gtkcontainer.c: Handle failures from
	gtk_widget_translate_coordinates (Focusing is not right, but at
	least it doesn't go into infinite loops.)
2002-04-09 23:32:35 +00:00
Owen Taylor
eb721363be Always set the ALLOC_NEEDED and REQUEST_NEEDED flags up the hierarchy,
Tue Apr  9 18:34:58 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcontainer.c (_gtk_container_queue_resize): Always
        set the ALLOC_NEEDED and REQUEST_NEEDED flags up the hierarchy,
        even if we aren't currently in a resize container... we need
        this to properly handle size changes to widgets that are
        being moved from one heirarchy to another. (#78226)
2002-04-09 22:41:37 +00:00
Kristian Rietveld
64e33eb68f Fixes #78110
Tue Apr  9 21:41:24 2002  Kristian Rietveld  <kris@gtk.org>

        Fixes #78110

        * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
        add override_browse_mode argument and implement,
        (gtk_tree_selection_unselect_path): always unselect the path,
        (toplevel): update uses of _gtk_tree_selection_internal_select_node

        * gtk/gtktreeview.c: update uses of
        _gtk_tree_selection_internal_select_node

        * gtk/gtktreeprivate.h (_gtk_tree_selection_internal_select_node):
        update prototype

Tue Apr  9 21:39:44 2002  Kristian Rietveld  <kris@gtk.org>

        Fixes #77862

        * gtk/gtktreeprivate.h: add _gtk_tree_view_column_has_editable_cell

        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_has_editable_cell):
        new function

        * gtk/gtktreeview.c (gtk_tree_view_button_press): send cell event
        on first click when cell isn't editable

Tue Apr  9 21:37:31 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreedatalist.c (_gtk_tree_data_list_check_type): add some
        types which were missing and useful to use (fixes #77870)
2002-04-09 19:48:32 +00:00
Anders Carlsson
2e85b314e2 Initialize error to NULL.
002-04-09  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkfilesel.c (open_new_dir): Initialize error to NULL.
2002-04-09 12:05:37 +00:00
Matthias Clasen
3bd5fc010a Use priv->image_module->module_name instead of image_type which may be
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
	priv->image_module->module_name instead of image_type which may
	be NULL.
2002-04-09 00:38:38 +00:00
Manish Singh
4862c90b75 really revert testgtk.c
2002-04-08  Manish Singh  <yosh@gimp.org>

        * tests/testgtk.c: really revert testgtk.c
2002-04-08 19:32:38 +00:00
Kristian Rietveld
18dfabc12e check the return value of _gtk_tree_view_find_node and return if it's
Mon Apr  8 20:28:54 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeselection.c (gtk_tree_selection_select_path),
        (gtk_tree_selection_unselect_path),
        (gtk_tree_selection_path_is_selected): check the return value of
        _gtk_tree_view_find_node and return if it's TRUE. This makes those
        functions work somewhat saner on non-expanded trees.
2002-04-08 17:42:45 +00:00
Christophe Merlet
673e14fe8d Updated French translation. 2002-04-08 07:58:03 +00:00
Matthias Clasen
71e0ad8d9e Restructured to use gdk_pixbuf_new instead of manually allocating image
* io-png.c (gdk_pixbuf__png_image_load): Restructured to use
	gdk_pixbuf_new instead of manually allocating image storage. This
	gives us a good rowstride and overflow checks.  (#77807)
2002-04-06 18:51:40 +00:00
Ole Laursen
a40561930a Updated Danish translation.
2002-04-06  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-04-06 13:57:47 +00:00
Chyla Zbigniew
abca967abf Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-04-06 10:12:14 +00:00
Matthias Clasen
41446c99be Avoid allocating an extra copy of the image by using a
* io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
	the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
	put functions instead of TIFFRGBAImage. And check image dimensions
	for overflow.
2002-04-05 21:02:07 +00:00
Hasbullah Bin Pit
e313199b98 Updated Malay Translation.
2002-04-05  Hasbullah Bin Pit <sebol@ikhlas.com>

* ms.po: Updated Malay Translation.
2002-04-05 18:41:18 +00:00
Kristian Rietveld
6d4655b01a free anchor row reference after unselecting the selection (fixes #76272)
Fri Apr  5 18:28:56 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free
        anchor row reference after unselecting the selection (fixes #76272)

Fri Apr  5 18:27:48 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return
        when we don't have to open all children (fixes #75736)

Fri Apr  5 18:24:24 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref
        cellrenderer after clearing the attributes of the renderer (fixes
        #75592)
2002-04-05 16:28:14 +00:00
Jonathan Blandford
8c114fa6a0 implement. (gtk_tree_view_move_cursor_up_down): check for focus
Fri Apr  5 05:55:14 2002  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement.
	  (gtk_tree_view_move_cursor_up_down): check for focus
	  (gtk_tree_view_move_cursor_page_up_down): ditto
	  (gtk_tree_view_move_cursor_left_right): ditto
	  (gtk_tree_view_move_cursor_start_end): ditto
	  (gtk_tree_view_real_select_all): ditto
	  (gtk_tree_view_real_unselect_all): ditto
	  (gtk_tree_view_real_select_cursor_row): ditto
	  (gtk_tree_view_real_toggle_cursor_row): ditto
	  (gtk_tree_view_real_expand_collapse_cursor_row): ditto
	  (gtk_tree_view_real_select_cursor_parent): ditto
	  (gtk_tree_view_real_start_interactive_search): ditto

	* gtk/gtktreeviewcolumn.c: grab focus
2002-04-05 16:11:32 +00:00
Yuri Syrota
356a597152 Updated Ukrainian translation 2002-04-05 16:11:01 +00:00
Sven Neumann
2cf200629f removed gdkkeysyms.h from .cvsignore 2002-04-05 15:49:42 +00:00
Alex Larsson
c744f44f0c Fix undefined variable typo. Patch from Simon Floery <simon.floery@gmx.at>
2002-04-05  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkkeyboard-fb.c (write_string):
	Fix undefined variable typo.
	Patch from Simon Floery <simon.floery@gmx.at>
2002-04-05 15:11:00 +00:00
Tim Janik
cca4abf498 fix segfault upon NULL return from gdk_utf8_to_string_target().
Fri Apr  5 01:06:15 2002  Tim Janik  <timj@gtk.org>

        * gdk/x11/gdkwindow-x11.c (set_text_property): fix segfault
        upon NULL return from gdk_utf8_to_string_target().

        * gdk/x11/gdkselection-x11.c (gdk_utf8_to_string_target): fix
        return value comment to mention NULL returns upon EMFILE.
2002-04-04 23:10:58 +00:00
Soeren Sandmann
e61fd79f19 revert accidentally commited change to testgtk.c
Thu Apr  4 22:35:42 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/testgtk.c (menu_items): revert accidentally commited
	change to testgtk.c
2002-04-04 20:49:03 +00:00
Soeren Sandmann
3c52eba0b5 Fix problem with menu titles being clipped (#75948)
Thu Apr  4 22:28:08 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenuitem.c (gtk_menu_item_paint): Fix problem with menu
	titles being clipped (#75948)
2002-04-04 20:28:47 +00:00
Tor Lillqvist
abda40ede4 Fix some bugs, and introduce a minor feature.
2002-04-04  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkrgb.c: Fix some bugs, and introduce a minor feature.

	(gdk_rgb_convert_4_pack): New function, for 16-color (4 bits per
	pixel) static visuals (fixes #858).

	(gdk_rgb_convert_gray4_pack, gdk_rgb_convert_gray4_d_pack): Fix
	same bugs in both functions: Odd start coordinate (partial byte)
	was not handled correctly. Also a partial final byte was not
	handled correctly.

	(gdk_rgb_do_colormaps): Use G_N_ELEMENTS.
	(gdk_rgb_create_info): For pseudocolor visuals, use the 2x2x2
	colorcube only for depths 3 and 4. For static color, use it for
	depths 3..7 like before. (Depth 5..7 pseudocolor probably never
	occurs on X11. It doesn't normally occur on Win32 either, but
	there is experimental code in gdkvisual-win32.c to let the user
	restrict the size of palette used.)
	(gdk_rgb_init): Set gdk_rgb_verbose if the GDK_DEBUG_GDKRGB flag
	is set.
	(gdk_rgb_select_conv): Use gdk_rgb_convert_8 also for depths 5, 6
	and 7 (see above). Use gdk_rgb_convert_4_pack for 4 bits per pixel
	static color.
2002-04-04 20:23:56 +00:00
Matthias Clasen
b7333010d0 Fix a doc typo.
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
2002-04-03 18:17:14 +00:00
Changwoo Ryu
87acfd4c0e Updated Korean translation.
* ko.po: Updated Korean translation.
2002-04-03 17:03:27 +00:00
Tivo Leedjrv
10d1eb1a56 Updated Estonian translation.
2002-04-02  Tivo Leedjrv  <toivo@linux.ee>

        * et.po: Updated Estonian translation.
2002-04-02 22:46:31 +00:00
Jonathan Blandford
cdafcb42b1 set the sort_func correctly, 77030
Tue Apr  2 11:10:13 2002  Jonathan Blandford  <jrb@redhat.com>
	* gtk/gtkliststore.c (gtk_list_store_set_sort_func): set the
	sort_func correctly, 77030
2002-04-02 16:19:33 +00:00
Tim Janik
e6b73bedd3 update version to 2.0.2, binary age 2, interface age 2.
Tue Apr  2 13:44:27 2002  Tim Janik  <timj@gtk.org>

        * configure.in: update version to 2.0.2, binary age 2, interface
        age 2.

        * NEWS: updates for 2.0.2.
2002-04-02 12:10:57 +00:00
Duarte Loreto
e372d7b21a Updated Portuguese translation.
2002-04-02  Duarte Loreto <happyguy_pt@hotmail.com>

        * pt.po: Updated Portuguese translation.
2002-04-01 23:40:19 +00:00
Christian Rose
985cf596f7 Added missing file. Updated Swedish translation.
2002-04-02  Christian Rose  <menthos@menthos.com>

	* POTFILES.in: Added missing file.
	* sv.po: Updated Swedish translation.
2002-04-01 22:32:33 +00:00
Kristian Rietveld
3089666944 add check for y > tree_view->priv->height (fixes #76974)
Mon Apr  1 22:20:24 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): add
        check for y > tree_view->priv->height (fixes #76974)

Mon Apr  1 22:19:39 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): get
        the stamp changes right this time

Mon Apr  1 22:13:24 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodel.c (gtk_tree_row_reference_free): only
        disconnect the ref callbacks when model == proxy (Thanks go to
        Manuel Clos Crespo for the remote debugging)
2002-04-01 20:40:58 +00:00
Valek Frob
048657a13e Updated russian translation. 2002-04-01 07:38:27 +00:00
Valek Frob
78e28d5f30 Updated russian trqnslation. 2002-04-01 07:37:29 +00:00
Changwoo Ryu
41e9a7becb Updated Korean translation.
* ko.po: Updated Korean translation.
2002-04-01 03:44:16 +00:00
Owen Taylor
5a86c7f19e recommit after tagging 2_0_1 2002-03-30 20:52:42 +00:00
Owen Taylor
52f7a61289 revert change for tagging 2_0_1 2002-03-30 20:51:19 +00:00
Owen Taylor
f42d57ab48 ===== Released 2.0.1 ======
Fri Mar 29 18:15:12 2002  Owen Taylor  <otaylor@redhat.com>

        * ===== Released 2.0.1 ======
2002-03-30 20:46:14 +00:00
Kristian Rietveld
8cc6b89fb9 revert the latest stamp increment changes, as it broke stuff for trees
Sat Mar 30 15:19:24 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c: revert the latest stamp increment changes,
        as it broke stuff for trees
2002-03-30 14:15:28 +00:00
Owen Taylor
a302a5ea5b Call gdk_keyval_to_lower() on the key passed in, since we lowercase all
Fri Mar 29 18:09:18 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelgroup.c (gtk_accel_group_query): Call
        gdk_keyval_to_lower() on the key passed in, since we
        lowercase all other key vals passed in, so querying
        keyvals will otherwise fail if the caller used
        an uppercase accelerators (#76899, Vitaly Tishkov)
2002-03-29 23:15:03 +00:00
Owen Taylor
b6cefaa0b7 Fix screwup in handling of module path that was resulting in freed memory
Fri Mar 29 17:41:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmain.c (load_modules): Fix screwup in handling
        of module path that was resulting in freed memory being
        accessed when both GTK_MODULES and a theme were set.
        (#76902, Johan Dahlin)
2002-03-29 23:05:11 +00:00
Owen Taylor
b123b8d340 Fix wrong stock id's for ADD/REMOVE. (#76915, Vitaly Tishkov)
Fri Mar 29 17:57:36 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkiconfactory.c (get_default_icons): Fix wrong
        stock id's for ADD/REMOVE. (#76915, Vitaly Tishkov)
2002-03-29 23:00:41 +00:00
Hans Breuer
833579d8e1 fix typo in gtk_init_check macro, which caused crashes if argc != 0
2002-03-29  Hans Breuer  <hans@breuer.org>

	* gtk/gtkmain.h : fix typo in gtk_init_check macro, which
	caused crashes if argc != 0

	* gtk/stock-icons/makefile.msc : added new icons
2002-03-29 22:38:17 +00:00
Matthias Clasen
5c16742258 libpng error handlers must not return to their callers, thus longjmp out.
* io-png.c (png_simple_error_callback): libpng error handlers must
	not return to their callers, thus longjmp out. This prevents
	annoying stderr output from the default error handler.
2002-03-29 21:40:01 +00:00
Kristian Rietveld
835094b105 remove call to gtk_tree_model_sort_increment_stamp
Fri Mar 29 20:17:35 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
        remove call to gtk_tree_model_sort_increment_stamp
        (gtk_tree_model_sort_sort_level): always increment the stamp
2002-03-29 19:14:02 +00:00
Owen Taylor
bf5d6a7e91 Updates
Fri Mar 29 00:19:41 2002  Owen Taylor  <otaylor@redhat.com>

        * NEWS: Updates

        * configure.in: Version 2.0.1, binary, interface age 1.

        * configure.in (GDK_PIXBUF_VERSION): Up required versions
        of dependencies.

        * gtk/gtkiconfactory.c gtk/stock-icons/Makefile.am:
        Add stock_add/remove_16.
2002-03-29 06:23:35 +00:00
Owen Taylor
7dfb78f882 Don't show the window unless the widget is mapped. (#76742, Dennis
Thu Mar 28 18:38:30 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate):
	Don't show the window unless the widget is mapped.
        (#76742, Dennis Bjrklund, Soeren Sandmann)
2002-03-29 00:15:11 +00:00
Hans Breuer
fe60d43a26 Fixed dashed line issues (#74441) to an IMO reasonable extend. That is:
2002-03-29  Hans Breuer  <hans@breuer.org>

	Fixed dashed line issues (#74441) to an IMO reasonable extend.
	That is: use PS_USERSTYLE on WinNT (the next GDI limit appears
	to be with lines width > 50); Render horizontal and vertical
	dashed lines on Win9x 'by hand'. Dotted selection rectangles
	and Dia look nice ...

	* gdk/win32/gdkprivate-win32.h : add pen_dashes pointer and
	num_pen_dashes to _GdkGCWin32
	* gdk/win32/gdkgc-win32.c : initialize pen_dashes and remove
	the guesses from dashes to windoze line styles.
	(predraw_set_forground) : always ExtCreatePen (PS_SOLID) on
	Win9x, which does not support PS_USERSTYLE.
	* gdk/win32/gdkdrawable-win32.c : new functions render_line_
	<horizontal|vertical>. Use them if not running on NT in
	gdk_win32_draw_<rectangle|segments|lines> ()

	* gdk/win32/gdkkeys-win32.c (gdk_keyval_name) : return NULL
	for keyval == 0 to avoid to have zeros in all menu entries
	without accelerator.
2002-03-28 23:25:33 +00:00
Kjartan Maraas
df10ebad76 Updated Norwegian (bokml) translation.
2002-03-28  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-03-28 23:22:34 +00:00
Jakub Steiner
c141608750 new add, remove stock icons 2002-03-28 23:08:49 +00:00
Tim Janik
76e0cec01f when encountering non-UTF-8 file names, alert the user with g_message()
Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
        names, alert the user with g_message() instead of g_warning() and
        put out the actual conversion error.
2002-03-28 20:08:25 +00:00
Ole Laursen
1075a5b924 Updated Danish translation.
2002-03-28  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-03-28 18:50:34 +00:00
Dave Camp
418e0c4622 Don't install the handler if the widget isn't realized.
2002-03-28  Dave Camp  <dave@ximian.com>

	* gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
	the handler if the widget isn't realized.
2002-03-28 17:05:34 +00:00
Jakub Steiner
600817117c New font and text icons to solve the dark-theme-problem 2002-03-28 13:10:11 +00:00
Changwoo Ryu
b2b86ead10 Updated Korean translation.
* ko.po: Updated Korean translation.
2002-03-28 10:06:59 +00:00
Matthias Clasen
4a40933b1b Try to find libpng via pkg-config first, since libpng-1.2.2 will come with
* configure.in: Try to find libpng via pkg-config first,
	since libpng-1.2.2 will come with a .pc file.
2002-03-27 22:53:22 +00:00
Matthias Clasen
ec35e8112a Don't leak info_ptr.
* io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.

	* io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
	end_info. Also call png_read_end to check proper ending of the png
	file and catch text chunks after the image data.
2002-03-27 22:12:05 +00:00
Owen Taylor
f70bd1e465 changelog update 2002-03-27 16:46:42 +00:00
Owen Taylor
c5e6a170de Set page->last_focus_child to NULL as well as removing the weak reference,
Wed Mar 27 11:10:39 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_real_remove): Set
        page->last_focus_child to NULL as well as removing the
        weak reference, to deal with reentrancy in set_focus_child().
        (#76634)
2002-03-27 16:15:48 +00:00
Murray Cumming
63c5610d89 ChangeLog typo. 2002-03-27 11:10:29 +00:00
Murray Cumming
271dfdc7bf Corrected registered return type of move-cursor signal. Had to add a
2002-03-27  Murray Cumming  <murrayc@usa.net>

 * gtk/gtktreeview.cc: Corrected registered return type of
move-cursor signal. Had to add a marshaller to
 gtk/gtkmarshalers.list.
2002-03-27 10:55:28 +00:00
Matthias Clasen
266c62df8f Make libpng use g_malloc instead of system malloc.
* io-png.c (gdk_pixbuf__png_image_load,
	gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
	instead of system malloc.
2002-03-26 23:17:31 +00:00
Owen Taylor
d8f5dcdd13 Add a mention of running ldconfig. (#76126, Bill Nayland.)
Tue Mar 26 15:41:49 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/building.sgml: Add a mention of running ldconfig.
        (#76126, Bill Nayland.)
2002-03-26 20:43:17 +00:00
Owen Taylor
441488cdb4 Shuffle the ordering around some more (position before realizing) fixing
Tue Mar 26 14:46:50 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_popup): Shuffle the ordering around
        some more (position before realizing) fixing problems with
        arrows popping up at the wrong time (#73386), hopefully not
        introducing other problems. (Reported by Ettore Perrazoli, others)
2002-03-26 19:59:34 +00:00
Sven Neumann
c4e2102f3f fixed my ChangeLog entry 2002-03-26 17:22:49 +00:00
Dave Camp
e62f9fb020 Free the path after calling gtk_tree_view_row_activated() rather than
2002-03-26  Dave Camp  <dave@ximian.com>

        * gtk/gtktreeview.c (gtk_tree_view_button_press): Free the path
        after calling gtk_tree_view_row_activated() rather than before.
2002-03-26 17:12:30 +00:00
Stanislav Visnovsky
a09137d77a Updated Slovak translation.
2002-03-26  Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2002-03-26 12:41:44 +00:00
Matthias Clasen
de19229a33 Don't leak pixbuf on error.
* io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.

	* io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
	context->buf on error.

	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
	stop_load even for short images to prevent memleaks.
2002-03-25 23:22:01 +00:00
Sven Neumann
94168cf845 free the style's font_description before accessing a new one.
2002-03-25  Sven Neumann  <sven@gimp.org>

	* gtk/gtkrc.c (gtk_rc_parse_font_name): free the style's
	font_description before accessing a new one.
	(gtk_rc_parse_stock): always unref the created icon_set. #76289
2002-03-25 20:11:27 +00:00
Mark McLoughlin
cef7907ddd kill code duplicated in gtk_binding_entry_add_signall.
2002-03-25  Mark McLoughlin  <mark@skynet.ie>

        * gtk/gtkbindings.c: (gtk_binding_entry_add_signal),
        kill code duplicated in gtk_binding_entry_add_signall.
2002-03-25 16:40:03 +00:00
Jonathan Blandford
742f3e324e fix bugs in the code.
Mon Mar 25 11:31:41 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/tree_widget.sgml: fix bugs in the code.
2002-03-25 16:33:21 +00:00
Jonathan Blandford
7cc14762b9 Make path arg const, #75653
Sun Mar 24 10:32:38 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653

	* gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
	a warning

	* gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
	when we emit row_activated so that listeners of this signal can
	grab the mouse, #75629
2002-03-25 04:10:49 +00:00
Matthias Clasen
2a8fc72b0d Changed signature to return success and set a GError parameter, adjusted
* io-png.c (setup_png_transformations): Changed signature to
	return success and set a GError parameter, adjusted all callers.
	Also work around a possible FPE in libpng and always check that
	the new info is sane.
2002-03-25 00:15:00 +00:00
Chyla Zbigniew
ec1f7614ff Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-03-24 15:12:05 +00:00
Havoc Pennington
dd99498088 invalidate the line containing start, even if the [start,end) range is
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
	invalidate the line containing start, even if the [start,end)
	range is empty (just invalidate [start,end], essentially).
	Partially fixes #72374
2002-03-23 22:14:40 +00:00
Matthias Clasen
8bad932211 context->updated_func is NULL during a nonincremental load.
* io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
	context->updated_func is NULL during a nonincremental load.
	(gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
2002-03-23 21:17:17 +00:00
Havoc Pennington
ee8fd425f3 end any selection in progress, patch from db@zigo.dhs.org, #74620
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_do_popup): end any selection in
	progress, patch from db@zigo.dhs.org, #74620
2002-03-23 18:08:52 +00:00
Havoc Pennington
0c45c57f6e extend selection for pageup/pagedown and ctrl+pageup/pagedown if shift is
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): extend
	selection for pageup/pagedown and ctrl+pageup/pagedown if
	shift is held. more of #53934
2002-03-23 17:54:16 +00:00
Havoc Pennington
e00f842a5b disconnect layout handlers earlier in the function, to avoid possible
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_destroy_layout): disconnect
	layout handlers earlier in the function, to avoid possible
	reentrancy screwups
	(gtk_text_view_invalidate): Don't install idle handlers if
	layout == NULL, otherwise we get problems during finalization
	since clearing the buffer invalidates and puts the idle handlers
	back after we destroy the layout. #74660
	(gtk_text_view_ensure_layout): Install the validation handlers
	right after creating the layout.

	* gtk/gtktexttagtable.c (foreach_unref): call
	_gtk_text_buffer_notify_will_remove_tag(), #75126
2002-03-23 17:35:09 +00:00
Havoc Pennington
8d3df4d9a1 add more explanatory text to the error message about missing charsets, and
2002-03-22  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkfont-x11.c (gdk_fontset_load): add more explanatory
	text to the error message about missing charsets, and use
	g_printerr() not g_warning() since this is typically not a
	programming error (we do not export any API to ask whether
	a font set will have missing charsets so apps realistically can't
	do anything other than try the gdk_fontset_load())

	* gtk/gtktextview.c (gtk_text_view_key_press_event): return FALSE
	if the text view isn't editable and the user presses Return,
	so default buttons and such can be activated, #74937

	* gtk/gtktextbuffer.c (paste_from_buffer): don't insert
	if the insertion point is not editable and the paste
	is interactive, #74125

	* gtk/gtkwindow.c (gtk_window_move_resize): enhance the #if 0
	debug spew

	* gtk/gtktextbuffer.c (cut_or_copy): only remove the previous
	cut/copied data right before replacing it, when we know we are
	going to replace it. Fixes #74049
2002-03-23 04:37:53 +00:00
Richard Hult
56c5bd70a3 Fix typo, where x value was assigned to both x and y.
2002-03-22  Richard Hult  <rhult@codefactory.se>

	* gdk/gdkevents.c (gdk_event_get_root_coords): Fix typo, where x
	value was assigned to both x and y.
2002-03-22 17:47:51 +00:00
Owen Taylor
7425e42847 Partial fix for problem where keypad keys acted as shift-arrows in an
Fri Mar 22 11:29:11 2002  Owen Taylor  <otaylor@redhat.com>

        Partial fix for problem where keypad keys acted
        as shift-arrows in an entry rather than arrows (#74327)

        * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Sort lookup
        results by number of modifiers in the entry. Fixes
        problem where if a key matched both modified and unmodified
        key bindings ... e.g., the distinguishing key binding
        was consumed, then it was random which was used.

        * gtk/gtkbindings.c (gtk_binding_entries_sort_patterns):
        Catch the case where there are multiple entries from the
        same bindingset (with different modifiers), and use only
        the first entry, which, with the change in _gtk_key_hash_lookup()
2002-03-22 17:35:14 +00:00
Owen Taylor
abfed60cab Fix memory leak. (#74400, Morten Welinder.)
Fri Mar 22 10:56:19 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelmap.c (gtk_accel_map_save_fd): Fix memory
        leak. (#74400, Morten Welinder.)

        * gtk/gtkaccelmap.c: Properly handle short returns from
        write() calls. (Handling EINTR isn't enough... that only
        handles the case where you were interrupted before you
        wrote a single byte.)

        * gdk/linux-fb/gdkmouse-fb.c gdk/linux-fb/gdkkeyboard-fb.c:
        Robustify against short returns from write() calls.
2002-03-22 16:06:06 +00:00
Owen Taylor
771e2d573c ri Mar 22 10:12:10 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (gtk_text_view_paint): Change
        G_BREAKPOINT() to g_assert_not_reached ().
	(#75865, Ashok Venkiteswaran)
2002-03-22 15:23:08 +00:00
Tor Lillqvist
1ffa06c6a5 Don't clear all of the pen_style, just the PS_STYLE_MASK. Seems to fix
2002-03-22  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Don't clear
	all of the pen_style, just the PS_STYLE_MASK. Seems to fix #74441,
	but that is just the special case of one-pixel wide one-pixel
	on-off dotted lines. To fully implement generic X11 style dashed
	lines a major rewrite would be needed.
2002-03-21 22:36:02 +00:00
Matthias Clasen
74c2378178 Trivial typo fix. (Vitaly Tishkov, #75726)
* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Trivial typo
	fix. (Vitaly Tishkov, #75726)
2002-03-21 21:59:41 +00:00
Owen Taylor
0b6aaa5a31 Remove some left over debugging code with a G_BREAKPOINT() in it.
Thu Mar 21 10:04:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.c (gdk_window_real_get_depth): Remove
        some left over debugging code with a G_BREAKPOINT()
        in it.
2002-03-21 15:04:41 +00:00
Cody Russell
73826fc967 Much expanded overview docs for GtkTreeView and related objects. 2002-03-21 04:48:31 +00:00
Owen Taylor
0c0f76ff00 When changing months when the user clicks on a prev-month or next-month
Wed Mar 20 19:33:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcalendar.c (gtk_calendar_main_button): When
        changing months when the user clicks on a prev-month
        or next-month day, focus and select the new day.
        Ignore double clicks on prev-month, next-month days.
        (Based on suggestions from Andras Salamon, #74173)

        * gtk/gtkcalendar.c: Implement the focused/unfocused
        selected color change.
2002-03-21 00:50:15 +00:00
Alex Larsson
2d6e58ada6 Patches from Carlo E. Prelz <fluido@fluido.as> Now gtkfb at least compiles
2002-03-20  Alex Larsson  <alexl@redhat.com>

	Patches from Carlo E. Prelz <fluido@fluido.as>
	Now gtkfb at least compiles and mostly works. The keyboard
	stuff needs more loving.

	* gdk/linux-fb/gdkkeyboard-fb.c (xlate_get_for_keyval,
	xlate_get_for_keycode, raw_get_for_keyval, raw_get_for_keycode):
	At least set the out parameters for these calls.

	* gdk/linux-fb/gdkmain-fb.c:
	(gdk_pointer_grab_info_libgtk_only, gdk_keyboard_grab_info_libgtk_only):
	Implement new functions.
2002-03-21 00:41:43 +00:00
Matthias Clasen
3b7193dd8b Avoid a double free error if reading the colormap fails.
* io-tga.c (try_colormap, gdk_pixbuf__tga_stop_load): Avoid a
	double free error if reading the colormap fails.

	* io-tiff.c (tiff_image_parse): Make TIFFReadRGBAImage stop on
	errors, since it may otherwise segfault on certain bad TIFFs.
2002-03-21 00:31:23 +00:00
Owen Taylor
22b1b079ef Short-circuit the text to the exact same thing, so we don't unexpectedly
Wed Mar 20 19:00:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_set_text): Short-circuit
        the text to the exact same thing, so we don't
        unexpectedly change the selection or cursor position.
        (#74290, John Ellis.)
2002-03-21 00:08:19 +00:00
Kristian Rietveld
dc5be9edc5 fix logic (fixes #74235, #73593)
Thu Mar 21 00:05:14 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_get_background_area),
        (gtk_tree_view_get_cell_area): fix logic (fixes #74235, #73593)
2002-03-20 23:04:16 +00:00
Owen Taylor
b93bcb5ecb Patch from Richard Hestilow to fix gtk-font-name changes for widgets that
Wed Mar 20 17:11:51 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c: Patch from Richard Hestilow to fix
        gtk-font-name changes for widgets that get the actual
        default style. (#73709)
2002-03-20 22:20:36 +00:00
Kristian Rietveld
92febe2720 add _gtk_rbtree_set_fixed_height()
Wed Mar 20 22:59:23 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtkrbtree.[ch]: add _gtk_rbtree_set_fixed_height()

        * gtk/gtktreeprivate.h: add fixed_height_check field

        * gtk/gtktreeview.c (gtk_tree_view_init): initialize
        scroll_sync_timer and fixed_height_check
        (do_validate_rows): add fixed_height_check. If all validated rows
        in the first cycle have the same height, then we set that height for
        the entire tree. This is some sort of 'fake' optimization, but helps
        a lot for the common case. We keep validating the entire tree in
        the background though.
        (gtk_tree_view_set_model): reset fixed_height_check
2002-03-20 22:06:05 +00:00
Owen Taylor
8acfd1e9de Patch from Erwann Chenede, #73900 fixing a lot of warnings with Forte CC,
Wed Mar 20 16:36:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/*.c: Patch from Erwann Chenede, #73900 fixing
        a lot of warnings with Forte CC, mostly implicit
        casts between void * and function pointers.

        * gdk/gdkevents.c (gdk_event_get_state): GdkEventVisibility's
        state field is not a GdkModifierType. (Also #73900)
2002-03-20 21:47:01 +00:00
Owen Taylor
67359a9c01 Remove leftover notification of has-default. (#75508, Jacob Berkman.)
Wed Mar 20 12:35:22 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_grab_default): Remove
        leftover notification of has-default. (#75508, Jacob
        Berkman.)
2002-03-20 17:37:48 +00:00
Owen Taylor
ae735e1b2b Allow arrow keys as accelerators, as long as some modifier is pressed.
Wed Mar 20 12:27:07 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelgroup.c (gtk_accelerator_valid): Allow
        arrow keys as accelerators, as long as some modifier
        is pressed. (#75495)

        * gtk/gtkaccelgroup.c (gtk_accelerator_valid): Fix
        incorrect example in the docs.
2002-03-20 17:32:37 +00:00
Owen Taylor
3eacf2c33c Fix segfault when widget->parent is NULL. (#75615, Alexey A. Malyshev)
Wed Mar 20 12:06:30 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_set_child_visible):
        Fix segfault when widget->parent is NULL.
        (#75615, Alexey A. Malyshev)
2002-03-20 17:09:57 +00:00
Owen Taylor
288909d466 Improve test to prevent infinite loop. (#74952, Thomas Leonard)
Wed Mar 20 11:32:07 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c: Improve test to prevent infinite
        loop. (#74952, Thomas Leonard)

        * gtk/gtkmenushell.c (gtk_real_menu_shell_cycle_focus):
        Fix warning when toplevel menu shell isn't a menu
        bar. (Thomas Leonard, #75602)
2002-03-20 17:04:32 +00:00
Owen Taylor
69ad8745d5 Use $PKG_CONFIG, not pkg-config. (LEE Sau Dan, #75572)
Wed Mar 20 11:00:59 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Use $PKG_CONFIG, not pkg-config.
        (LEE Sau Dan, #75572)
2002-03-20 16:13:09 +00:00
Owen Taylor
e6032b12eb Fix assignment of time in scroll events. (Sven Neumann, #75574)
Wed Mar 20 10:55:56 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix assignment
        of time in scroll events. (Sven Neumann, #75574)
2002-03-20 15:59:30 +00:00
Takayuki KUSANO
b373a55a78 Updated Japanese translation.
* ja.po: Updated Japanese translation.
2002-03-20 15:31:42 +00:00
Changwoo Ryu
184f3cb7a2 Updated Korean translation.
* ko.po: Updated Korean translation.
2002-03-20 06:01:09 +00:00
Tor Lillqvist
a5eec70325 Use gdk_window_get_toplevel(), as it is the top-level windows that are
2002-03-20  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (gdk_drag_find_window): Use
	gdk_window_get_toplevel(), as it is the top-level windows that are
	registered for DND.

	* gdk/win32/gdkwin32.h: Don't include gdkinternals.h.
2002-03-19 23:16:08 +00:00
Ole Laursen
0e6622e9b7 Updated Danish translation.
2002-03-19  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-03-19 20:28:07 +00:00
jacob berkman
fbd96f31d4 fix infinite loop when gtk_combo_func() returns NULL (bug #75464)
2002-03-19  jacob berkman  <jacob@ximian.com>

	* gtk/gtkcombo.c (gtk_combo_find): fix infinite loop when
	gtk_combo_func() returns NULL (bug #75464)
2002-03-19 17:59:13 +00:00
jacob berkman
226b6a3e35 set the correct min/max values for the ratio property (fixes #75331)
2002-03-18  jacob berkman  <jacob@ximian.com>

	* gtk/gtkaspectframe.c (gtk_aspect_frame_class_init): set the
	correct min/max values for the ratio property (fixes #75331)
2002-03-18 23:08:38 +00:00
Matthias Clasen
ac7e3c9584 Fix assumptions on rowstride by manually allocating a contiguous pixel
* io-tga.c: Fix assumptions on rowstride by manually allocating a
	contiguous pixel buffer. Catch buffer overruns in RLE-modi.
	Support grayscale + alpha (which can be written, but not read (!)
	by the Gimp).
2002-03-18 22:19:24 +00:00
Owen Taylor
aa3d5719b7 Patch from Yao Zhang fixing reference count leak.
Mon Mar 18 11:55:03 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
	Patch from Yao Zhang fixing reference count leak.

	* gtk/gtkentry.c (gtk_entry_key_release): if (entry->editable),
	not if (!entry->editable).
2002-03-18 17:49:51 +00:00
Owen Taylor
8aceaa534a Fix backwards conditional. (#75019, Dan Winship.)
Mon Mar 18 11:09:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_set_override_redirect):
        Fix backwards conditional. (#75019, Dan Winship.)
2002-03-18 16:14:04 +00:00
Valek Frob
37bd15c7a6 Updated russian translation. 2002-03-18 10:43:38 +00:00
Kjartan Maraas
b069e8d42e Updated Norwegian (bokml) translation.
2002-03-17  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-03-17 21:33:37 +00:00
Kristian Rietveld
ff4e78c0d8 use do_validate_rows instead of validate_rows_handler (fix by Mike Pieper,
Sun Mar 17 01:11:16 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_size_request): use
        do_validate_rows instead of validate_rows_handler (fix by
        Mike Pieper, #74126)
2002-03-17 00:07:17 +00:00
Kristian Rietveld
bd7678c78d just return when we have an input_only window (fix by Owen Taylor)
Sat Mar 16 23:54:56 2002  Kristian Rietveld  <kris@gtk.org>

        * gdk/x11/gdkwindow-x11.c (gdk_window_set_static_bit_gravity): just
        return when we have an input_only window (fix by Owen Taylor)

        * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add
        scroll_sync_timer

        * gtk/gtktreeview.c (install_scroll_sync_handler): new function,
        (scroll_sync_handler): ditto,
        (gtk_tree_view_unrealize): take scroll_sync_timer into account
        (gtk_tree_view_row_deleted): install scroll_sync_timer instead of
        calling top_row_to_dy/dy_to_top_row directly
        -- this greatly speeds up clearing the model (#73199)

        * gtk/gtktreemodelsort.c
        (gtk_tree_model_sort_convert_path_to_child_path): fix up this function,
        for some reason I really screwed it up (fixes #74663)
2002-03-16 23:30:44 +00:00
Sven Neumann
071df50f9e include CFLAGS from gthread-2.0 so that the libs work correctly in a
2002-03-16  Sven Neumann  <sven@gimp.org>

	* configure.in (GDK_PIXBUF_DEP_CFLAGS) (GDK_PIXBUF_XLIB_DEP_CFLAGS)
	(GDK_DEP_CFLAGS) (GTK_DEP_CFLAGS): include CFLAGS from gthread-2.0
	so that the libs work correctly in a threaded environment.
2002-03-16 18:11:23 +00:00
Christian Meyer
1e5e5ebb18 Updated German translation. 2002-03-16 15:33:24 +00:00
Matthias Clasen
006a84274f Catch invalid frame dimensions.
* io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
2002-03-15 23:27:55 +00:00
Owen Taylor
2a8395b67b Move pre-2.0 ChangeLog aside 2002-03-15 22:58:49 +00:00
Jonathan Blandford
60a1fa69d0 add example to docs, as people are seeming to have trouble with this
Fri Mar 15 12:51:42 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_new_with_attributes): add example to docs,
	as people are seeming to have trouble with this function.

Remake docs as well.
2002-03-15 21:47:52 +00:00
Tor Lillqvist
a1a8f1b6c3 Set MATH_LIB to empty also on Win32.
2002-03-15  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Set MATH_LIB to empty also on Win32.
2002-03-15 21:35:38 +00:00
Owen Taylor
4997dc2aa5 Fix byte shift arithmetic for big-endian. (Tracked down with help from
Fri Mar 15 15:37:01 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (convert_to_format):
        Fix byte shift arithmetic for big-endian. (Tracked
        down with help from Tuomas Kuosmanen)
2002-03-15 20:43:13 +00:00
Jonathan Blandford
51c6334d10 make args const, 74159 (gtk_tree_view_insert_column_with_attributes):
Fri Mar 15 11:28:41 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
	make args const, 74159
	(gtk_tree_view_insert_column_with_attributes): ditto

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_cell_process_action): remov unused variables.
2002-03-15 16:37:07 +00:00
Soeren Sandmann
7678a1ed16 Fix test for "active submenu".
Fri Mar 15 13:31:51 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenu.c (gtk_menu_leave_notify): Fix test for "active
	submenu".
2002-03-15 13:15:17 +00:00
Padraig O'Briain
ab62fadd82 Fudge keymap to have lower upper case variants if there is only a single
* gdk/x11/gdkkeys-x11.c (update_keymaps): Fudge keymap to have lower
upper case variants if there is only a single keysym per keycode and
the key symbol has upper and lower case variants (#74512)
2002-03-15 10:06:02 +00:00
Manish Singh
33aaf07648 shut up cvs 2002-03-15 01:43:08 +00:00
Owen Taylor
94694c8dc2 Fix rather improbable reentrancy problem if a window is destroyed while
Thu Mar 14 17:09:52 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.c (gdk_window_process_all_updates): Fix rather
        improbable reentrancy problem if a window is destroyed
        while updates are being processed on another window. (Noticed
        by Michael Meeks, #74708)
2002-03-14 22:12:51 +00:00
Vitaly Tishkov
2480ef52fb gtk/gtktreemodelsort.c typo in docs for
2002-03-14 Vitaly Tishkov <tvv@sparc.spb.su>

        * gtk/gtktreemodelsort.c
	typo in docs for gtk_tree_model_sort_convert_iter_to_child_iter() fixed
2002-03-14 17:56:57 +00:00
Owen Taylor
7357b205de When removing keys from the key hash, reinsert the right list back into
Thu Mar 14 11:17:18 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.c (_gtk_key_hash_remove_entry): When
        removing keys from the key hash, reinsert the right list
        back into the hash. (Dave Camp, #74571)
2002-03-14 16:20:42 +00:00
Owen Taylor
cceb7a9823 Remove left-over GTK_OBJECT_CONNECTED macro that was defined in terms of
Wed Mar 13 17:17:40 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkobject.h: Remove left-over GTK_OBJECT_CONNECTED
        macro that was defined in terms of the now-gone GTK_CONNECTED
        flag. (Seth Burgess, #74028)
2002-03-13 22:45:23 +00:00
Owen Taylor
1d4c37cd2d Unset the acceleratable_groups qdata because qdata isn't removed on
Wed Mar 13 17:11:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelgroup.c (accel_group_weak_ref_detach): Unset
        the acceleratable_groups qdata because qdata isn't removed
        on ->dispose but rather on ->finalize. (#74569, found
        by Matt Wilson.)
2002-03-13 22:14:47 +00:00
Matthias Clasen
5ebe8faab2 Add valid_ras_test and invalid_bmp_1.
* test-images.h: Add valid_ras_test and invalid_bmp_1.

	* test-loaders.c (main): Add random tests for ras and pnm and an
	invalid bmp which was a crasher until my 2002-03-12 commit.

	* io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
	pixbuf on errors.

	* io-ras.c: Handle some errors.
2002-03-13 18:11:15 +00:00
Jonathan Blandford
166894bd8b Fix cut-n-paste bug.
Tue Mar 12 23:14:23 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
	cut-n-paste bug.
2002-03-13 04:23:50 +00:00
Richard Hestilow
a498ae5ae2 Allow NULL filenames.
Sat Mar  9 18:23:25 2002  Richard Hestilow  <hestilow@ximian.com>

	* gtk/gtkimage.c (gtk_image_set_from_filename): Allow NULL
	filenames.
2002-03-12 21:23:43 +00:00
Sven Neumann
c51692d673 use sequential writes instead of calling memcpy(). Simpler and potentially
2002-03-12  Sven Neumann  <sven@gimp.org>

	* gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
	calling memcpy(). Simpler and potentially faster. (#70332)
2002-03-12 20:38:49 +00:00
Owen Taylor
9f65ea455c fix accidentally committed junk chars 2002-03-12 20:02:17 +00:00
Owen Taylor
2d770e946a Fix incorrect return value, filter out returns of 0x7f for the delete key.
Tue Mar 12 10:50:09 2002  Owen Taylor  <otaylor@redhat.com>

        * modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress):
        Fix incorrect return value, filter out returns of 0x7f for
        the delete key. (#74179, Kang Jeong-He)
2002-03-12 20:01:47 +00:00
Matthias Clasen
7c59491ce4 Replace a g_assert_not_reached () which could actually be reached by a
* io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
	which could actually be reached by a proper error status return.
2002-03-12 19:49:03 +00:00
Yuri Syrota
ca63d83169 Updated Ukrainian translation 2002-03-12 19:38:18 +00:00
Jonathan Blandford
938cc404c1 new FAQ.
Tue Mar 12 00:29:31 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/question_index.sgml: new FAQ.

	* gtk/tmpl/gtktreemodel.sgml: clean up example
2002-03-12 05:36:12 +00:00
Jonathan Blandford
5c02002e2c fix totally broken foreach function.
Mon Mar 11 23:42:11 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_model_foreach): fix totally broken
	foreach function.
2002-03-12 04:48:50 +00:00
Matthias Clasen
7788a6a702 Document GdkScreen.
* gdk/tmpl/windows.sgml: Document GdkScreen.

	* gtk/gtk-sections.txt: Move a few Class structs to Standard sections.

	* gtk/tmpl/gtktreemodel.sgml, gtk/tmpl/gtkprogress.sgml,
	gtk/tmpl/gtksignal.sgml, gtk/tmpl/gtkimage.sgml: Generate proper
	markup for format strings in examples, also fix an oversight in
	the GtkTreeModel example.  (#74213)
2002-03-12 00:20:02 +00:00
Matthias Clasen
57c31b5000 Document gtk_{menu_item,widget}_set_accel_path() as the recommended API.
* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Document
	gtk_{menu_item,widget}_set_accel_path() as the recommended API.
	(#69244)
2002-03-11 22:07:05 +00:00
Matthias Clasen
0539632bff Add interfaces to get docs on their signals.
* gtk/gtk.types: Add interfaces to get docs on their signals.
2002-03-11 18:20:34 +00:00
Changwoo Ryu
d0783cf11a Updated Korean translation 2002-03-11 16:59:12 +00:00
James Henstridge
a3c349947c forgot to save ChangeLog before last commit 2002-03-11 07:42:21 +00:00
James Henstridge
3052da707d set CCAS and CCASFLAGS to get automake 1.6 compatibility without breaking
2002-03-11  James Henstridge  <james@daa.com.au>

	* configure.in: set CCAS and CCASFLAGS to get automake 1.6
	compatibility without breaking things for people using 1.4.
2002-03-11 07:40:16 +00:00
Jonathan Blandford
1e1b214a18 finally get the right behavior.
Sun Mar 10 21:04:30 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_button_press): finally get the
	right behavior.
2002-03-11 02:13:21 +00:00
Kristian Rietveld
9521c72344 compare path with cursor path and not with the selected iter in the
Mon Mar 11 01:25:14 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_button_press): compare path with
        cursor path and not with the selected iter in the 'decide to edit'
        check
2002-03-11 00:28:47 +00:00
Andraz Tori
886abba650 Updated Slovenian translation 2002-03-10 19:25:44 +00:00
Simos Xenitellis
daf7617f6c Updated Greek translation 2002-03-09 21:24:36 +00:00
Jonathan Blandford
3a4bb5f8fb Lots of docs.
Sat Mar  9 13:00:38 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/tmpl/gtktreemodel.sgml: Lots of docs.
2002-03-09 18:06:05 +00:00
Gediminas Paulauskas
6ce9f88339 So I am already late for 2.0.0 :(
Why GTK+ is so ahead of GNOME 2.....
2002-03-08 23:01:28 +00:00
Owen Taylor
796cfa8f0d List -I/opt/gtk/include not -I /opt/gtk/include.
Fri Mar  8 15:14:32 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/building.sgml: List -I/opt/gtk/include not
        -I /opt/gtk/include.

        * gtk/building.sgml: Add a gloss for XIM.
2002-03-08 20:16:30 +00:00
Owen Taylor
0714dd6612 ======== Released GTK+-2.0 ========
Fri Mar  8 14:45:00 2002  Owen Taylor  <otaylor@redhat.com>

        * ======== Released GTK+-2.0 ========
2002-03-08 20:00:44 +00:00
Kristian Rietveld
f18a6f79d7 handle gtk-tree-model-drop-append like the ListStore, includes some tweaks
Fri Mar  8 20:41:51 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): handle
        gtk-tree-model-drop-append like the ListStore, includes some
        tweaks to work right with trees
2002-03-08 19:40:15 +00:00
Owen Taylor
9c6d85da2b Some packing tweaks.
Fri Mar  8 14:22:43 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilesel.c (gtk_file_selection_init): Some packing
        tweaks.

        * configure.in: Include GLIB_LIBS when checking
        for bind_textdomain_codeset, to catch the case where
        it is in -lintl.
2002-03-08 19:28:50 +00:00
Jonathan Blandford
540751b9ab get rid of really bad focus loop. (gtk_tree_view_clamp_node_visible): only
Thu Mar  7 16:46:58 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (validate_visible_area): get rid of really
	bad focus loop.
	(gtk_tree_view_clamp_node_visible): only clamp the node when
	realized.  Need to replace this with scroll_to_cell sometime.
	(gtk_tree_view_header_focus): clickable or reorderable columns are
	focusable, #73656

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_widget): fix
	docs to reflect behaviour change, #73682
2002-03-08 17:58:22 +00:00
Owen Taylor
45b2212c77 Fix version numbers. (Johan Dahlin.)
Fri Mar  8 11:12:32 2002  Owen Taylor  <otaylor@redhat.com>

        * NEWS: Fix version numbers. (Johan Dahlin.)

        * INSTALL.in: Update, just refer to gtk-building.html
        rather than duplicating information.

        * README.in: Add release specific notes.

        * Makefile.am (EXTRA_DIST): Remove TODO and TODO.xml
        from the distribution.
2002-03-08 17:15:20 +00:00
Valek Frob
c88133e7bc Updated russian translation. 2002-03-08 17:07:49 +00:00
Matthias Warkus
4b58318973 Last-minute update to German translation 2002-03-08 12:05:48 +00:00
Owen Taylor
26ac563f16 Final updates for 2.0.0
Thu Mar  7 23:29:35 2002  Owen Taylor  <otaylor@redhat.com>

        * NEWS: Final updates for 2.0.0

        * README.in: Updates.
2002-03-08 05:53:51 +00:00
Tor Lillqvist
7b22d3bd3a Add missing .la suffix for libgdk_pixbuf.
2002-03-08  Tor Lillqvist  <tml@iki.fi>

	* gdk/Makefile.am (LDFLAGS): Add missing .la suffix for	libgdk_pixbuf.
2002-03-07 23:27:00 +00:00
Matthias Clasen
85a8b59044 Add some ids which are referenced from the object hierarchy.
* gdk-pixbuf/tmpl/animation.sgml, gdk-pixbuf/tmpl/gdk-pixbuf.sgml,
	gtk/tmpl/gtkrc.sgml, gtk/tmpl/gtktextview.sgml, gtk/tmpl/gtkiconfactory.sgml,
	gtk/tmpl/gtkaccelgroup.sgml: Add some ids which are referenced
	from the object hierarchy.

	* gtk/gtk-docs.sgml: Use parts as top-level division (#61575),
	include gtkaccessible docs.
2002-03-07 23:20:16 +00:00
Kristian Rietveld
ec7c323ca1 increase value of new_location by one if cmp_a > 0 and we hit the end of
Thu Mar  7 21:32:01 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed): increase
        value of new_location by one if cmp_a > 0 and we hit the end of
        the list.
2002-03-07 21:18:28 +00:00
Ole Laursen
9d54c79468 Updated Danish translation.
2002-03-07  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-03-07 21:05:16 +00:00
Vincent van Adrighem
f7feda6b53 Massive translation update from a joint translation attempt.
2002-03-07 Vincent van Adrighem <V.vanAdrighem@dirck.mine.nu>
* nl.po: Massive translation update from a joint translation attempt.
  Gathering.tweakers.net, a dutch forum with lots of nice people.
2002-03-07 20:51:56 +00:00
Matthias Clasen
04b082d1bd Some typo and markup fixes.
* gtk/building.sgml: Some typo and markup fixes.
2002-03-07 20:39:57 +00:00
Owen Taylor
a67723b05d Fix problem where there were two copies of the "do an arrow step" code,
Thu Mar  7 10:31:57 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_timer): Fix problem where
        there were two copies of the "do an arrow step" code,
        one correct for rotated notebooks, one not. (#73855,
        Thomas Leonard.)
2002-03-07 15:39:31 +00:00
Andraz Tori
1dad43b946 Updated Slovenian translation 2002-03-07 12:47:02 +00:00
Vincent van Adrighem
59f917ec35 Translation updated by Ronald Hummelink
2002-03-07 Vincent van Adrighem <V.vanAdrighem@dirck.mine.nu>
* nl.po: Translation updated by Ronald Hummelink
2002-03-07 12:40:39 +00:00
Jonathan Blandford
110e1cd711 start implementing
Thu Mar  7 02:58:16 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/tmpl/gtkliststore.sgml: start implementing

	* gtk/question_index.sgml: "I can set with the tree, but not
	get???!?!"

Wed Mar  6 23:20:51 2002  Jonathan Blandford  <jrb@redhat.com>
and			  Kristian Rietveld  <kris@gtk.org>

	Finishing touch for 2.0.0 release, fixes #70782, #72729, the
	'stealth' bug and other last-minute minor issues.

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): set dnd dest line
	drawing right. We can't draw the line at the position of the next
	row, because that one still has to be drawn. So draw everthing at
	a -1 offset.
	(validate_visible_area): add check for invalid descendants and
	NULL scroll_to_path path, get scrolling right.  Also, fix the
	area_above value.  Pretty amazing I got it wrong.
	(get_logical_dest_row): add gtk-tree-model-drop-append magic, so
	dragging a row to the end of the model works right.
	(gtk_tree_view_get_dest_row_at_pos): minor floating point fix
	(gtk_tree_view_start_editing): add call to validate_row
	(gtk_tree_view_tree_to_widget_coords): Never subtract
	HEADER_HEIGHT from y values anymore!!!
	(gtk_tree_view_widget_coords_to_tree): ditto.
	(gtk_tree_view_scroll_to_point): allow -1 as values for the
	scroll_to coords
	(gtk_tree_view_move_cursor_page_up_down): Don't need scroll_to_y
	as clamp_node_visible will make it work.

	* gtk/gtktreestore.c (gtk_tree_store_drag_data_received): also check
	path depth, as we can't get iters from empty paths

	* gtk/gtkliststore.c (gtk_list_store_drag_data_received): handle
	gtk-tree-model-drop-append

	* gtk/gtktreednd.c (gtk_tree_set_row_drag_data): free path_str

	* tests/testtreeflow.c (main): select path where we are scrolling to
2002-03-07 08:03:09 +00:00
Darin Adler
1845cc4349 Update offsets before finding where to insert the new value.
* gtk/gtktreemodelsort.c: (gtk_tree_model_sort_insert_value):
	Update offsets before finding where to insert the new value.

	* gtk/gtktreeview.c: (validate_visible_area): Make sure we redraw when
	we scroll, instead of just updating the scroll position variables.
2002-03-07 06:04:03 +00:00
Vincent van Adrighem
95ab890de0 Translation updated by Ronald Hummelink.
2002-03-07 Vincent van Adrighem <V.vanAdrighem@dirck.mine.nu>
* nl.po: Translation updated by Ronald Hummelink.
2002-03-07 00:46:57 +00:00
Owen Taylor
083b0e0432 Mention the need to subscribe to the GTK+ mailing lists.
Wed Mar  6 18:11:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/resources.sgml: Mention the need to subscribe
        to the GTK+ mailing lists.

        * gtk/building.sgml: Go into much more details about
        building the entire set of GTK+ libraries and about the
        dependencies that are required.

        * gtk/building.sgml: Add docs for --enable-explicit-deps,
        --with-xinput.
2002-03-06 23:36:37 +00:00
James Henstridge
9d16a01cfb link pixbuf engine against the gtk+ libraries, so that it can be used with
2002-03-07  James Henstridge  <james@daa.com.au>

	* Makefile.am (libpixmap_la_LIBADD): link pixbuf engine against
	the gtk+ libraries, so that it can be used with programs that
	dlopen gtk+ without the RTLD_GLOBAL flag (such as scripting
	languages and mozilla).
2002-03-06 23:34:11 +00:00
Carlos Perello Marin
03499d1e35 Updated Spanish translation.
2002-03-07  Carlos Perello Marin <carlos@gnome-db.org>

	* es.po: Updated Spanish translation.
2002-03-06 23:15:58 +00:00
Jonathan Blandford
c41442cd35 fix tyop 2002-03-06 19:29:08 +00:00
Jonathan Blandford
ba60ad9a94 docs
Wed Mar  6 14:12:34 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/tmpl/gtktreeselection.sgml: docs

	* gtk/tree_widget.sgml: clean up docs
2002-03-06 19:22:36 +00:00
Manish Singh
cc83c500e4 gdk/Makefile.am rework so that only things that really need to be done
2002-03-06  Manish Singh  <yosh@gimp.org>

        * gdk/Makefile.am
        * gtk/Makefile.am: rework so that only things that really need to be
        done post install are in the hook
2002-03-06 18:03:28 +00:00
Anders Carlsson
3e480fbf01 Register 16x16 version of properties stock icon.
2002-03-06  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkiconfactory.c (get_default_icons): Register 16x16 version
	of properties stock icon.

	* gtk/stock-icons/Makefile.am: Add stock_properties_16.png
2002-03-06 17:47:15 +00:00
Changwoo Ryu
ccd75fac3b Updated Korean translation.
* ko.po: Updated Korean translation.
2002-03-06 17:09:28 +00:00
Vincent van Adrighem
c81d0997d6 nl.po Dutch translation updated by Ronald Hummelink
2002-03-06 Vincent van Adrighem <V.vanAdrighem@dirck.mine.nu>
* nl.po Dutch translation updated by Ronald Hummelink
2002-03-06 13:17:40 +00:00
Owen Taylor
8ceb7aeed3 Fix various problems when truncating the inserted text to fit into the
Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
        when truncating the inserted text to fit into the GtkEntry
        size limit of 65kb. (#73119)
2002-03-06 13:17:11 +00:00
Kjartan Maraas
72b4001ba8 Updated Norwegian (bokml) translation.
2002-03-06  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-03-06 06:49:40 +00:00
Germán Poó Caamaño
321d7467e9 Updated spanish translation 2002-03-06 05:38:12 +00:00
Jonathan Blandford
d8dd3fb392 move event handling to the process_action function so we can have the
Wed Mar  6 00:20:59 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_cell_process_action): move event handling to
	the process_action function so we can have the event go to
	individual cells.
2002-03-06 05:27:29 +00:00
Owen Taylor
81538dec03 GTK+-2.0.0 rc1
Tue Mar  5 22:16:58 2002  Owen Taylor  <otaylor@redhat.com>

        * GTK+-2.0.0 rc1

        * docs/tutorial,faq/Makefile.am: Deal with the html directory
        already being there.

        * docs/faq/Makefile.am (EXTRA_DIST): Add gtk-faq.sgml to EXTRA_DIST.
2002-03-06 03:59:22 +00:00
Manish Singh
81e287cc83 gdk/Makefile.am use install-foo-hook instead of install-foo-local, since
2002-03-05  Manish Singh  <yosh@gimp.org>

        * gdk/Makefile.am
        * gtk/Makefile.am: use install-foo-hook instead of install-foo-local,
        since foo-local is run before the their respective builtin targets
        in automake 1.5
2002-03-06 02:57:42 +00:00
jacob berkman
5f46a6cb73 change an == to =
2002-03-05  jacob berkman  <jacob@ximian.com>

	* configure.in: change an == to =
2002-03-06 01:56:25 +00:00
Tor Lillqvist
34c06b2b6c gdk-pixbuf/gdk_pixbuf.rc.in gdk/win32/rc/gdk.rc.in Use GTK_API_VERSION.
2002-03-06  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf/gdk_pixbuf.rc.in
	* gdk/win32/rc/gdk.rc.in
	* gtk/gtk-win32.rc.in: Use GTK_API_VERSION.
2002-03-06 01:50:43 +00:00
Duarte Loreto
bb3c05cf5f Updated Portuguese translation.
2002-03-06  Duarte Loreto <happyguy_pt@hotmail.com>

        * pt.po: Updated Portuguese translation.
2002-03-06 01:08:34 +00:00
Manish Singh
36e5b91a50 Fix up the freetype checking logic. Suppress suprious "no" with
2002-03-05  Manish Singh  <yosh@gimp.org>

        * configure.in: Fix up the freetype checking logic. Suppress
        suprious "no" with --disable-modules.
2002-03-06 01:07:44 +00:00
Tor Lillqvist
d0ebbe9d77 Bypass calls to the grab/ungrab functions in gdkinput-win32.c, as they
2002-03-06  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_pointer_grab,
	gdk_pointer_ungrab): Bypass calls to the grab/ungrab functions in
	gdkinput-win32.c, as they don't effectively do anything anyway.
	(build_key_event_state): Set MOD2 bit if key is in AltGr group.
	(gdk_event_translate): Call _gdk_windowing_window_get_offsets()
	each time the offsets are used, on the window they refer to,
	instead of once in the beginning. The window in question might
	change due to event propagation.
	(gdk_event_translate): Set key event group to 0 for non-AltGr
	keys. Do set the SHIFT bit in the key event state also for
	ISO_Left_Tab. Now backtabbing finally works again.

	* gdk/win32/gdkunput-win32.c: Minor debugging output change.

	* gdk/win32/gdkkeys-win32.c (update_keymap): Set VK_TAB mapping to
	Gdk_Tab and GDK_ISO_Left_Tab, like on X11.
	(gdk_keymap_translate_keyboard_state): Add similar code as in the
	non-XKB case on X11 to generate a more correct
	consumed_modifiers. Add debugging output.
	(gdk_keyval_name): Use the U+xxxx format for UCS characters
	encoded as keyvals. Never return NULL, but hex number
	representation if keyval not in table.

	* gdk/win32/gdkwindow-win32.c (gdk_window_focus): Call
	SetFocus(). Doesn't seem to have any harmful effect, and probably
	is close to what this function is supposed to do. But it didn't
	fix GtkCombo as I had hoped.
	(gdk_window_set_type_hint): Don't intern the _NET_WM_* atoms that
	weren't used and wouldn't have any meaning on Win32 anyway.
2002-03-06 00:36:08 +00:00
Owen Taylor
2096715583 When setting the focus to NULL, clear the existing focus chain so that
Tue Mar  5 19:19:19 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_set_focus): When setting
        the focus to NULL, clear the existing focus chain so
        that when we focus into the window again, we start
        at the beginning. (Pointed out by Tim Janik.)
2002-03-06 00:30:52 +00:00
James Henstridge
4b7c51552e libpango is now called libpango-1.0
2002-03-06  James Henstridge  <james@daa.com.au>

        * configure.in: libpango is now called libpango-1.0
2002-03-06 00:03:55 +00:00
Jonathan Blandford
bcd7700649 remove sizing == AUTOSIZE check. Update docs.
Tue Mar  5 18:17:31 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
	remove sizing == AUTOSIZE check.  Update docs.
2002-03-05 23:22:27 +00:00
Owen Taylor
776870fcff Don't create ->font_entry, ->font_style_entry at all rather than just not
Tue Mar  5 17:43:43 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfontsel.c (gtk_font_selection_init): Don't
        create ->font_entry, ->font_style_entry at all rather
        than just not showing them to avoid the problem of
        them popping up if gtk_widget_show_all() is done
        on the dialog. (#72913, Charles Kerr.)
2002-03-05 23:10:11 +00:00
Jonathan Blandford
314a1b60d8 doc fix proposed by tvv@sparc.spb.su (Vitaly Tishkov), #73567.
Tue Mar  5 18:06:49 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_resizable):
	doc fix proposed by tvv@sparc.spb.su (Vitaly Tishkov), #73567.
2002-03-05 23:08:56 +00:00
Matthias Clasen
981574a9be Fix docs.
* gtk/gtktreemodel.c (gtk_tree_row_reference_deleted): Fix docs.

	* gtk/gtkwindow.c (gtk_window_remove_mnemonic):
	(gtk_window_add_mnemonic):
	(gtk_window_mnemonic_activate): Add docs.

	* gtk/gtktreeview.c (gtk_tree_view_get_search_equal_func): Fix
	typo in docs.

	* test-loaders.c, test-images.h: More random tests.

	* io-bmp.c (DecodeHeader): Fail gracefully on OOM here.

	* gtk/gtk-sections.txt: Remove gtk_win32_get_installation_directory.
2002-03-05 22:44:27 +00:00
Owen Taylor
9733428511 s/menu_new/menu_item_new/. (#69199, Akira Tagoh.)
Tue Mar  5 17:02:59 2002  Owen Taylor  <otaylor@redhat.com>

        * docs/tutorial/gtk-tut.sgml: s/menu_new/menu_item_new/.
        (#69199, Akira Tagoh.)
2002-03-05 22:05:21 +00:00
Owen Taylor
e81022da91 Build the docbook version, not the old linuxdoc version.
Tue Mar  5 16:53:05 2002  Owen Taylor  <otaylor@redhat.com>

        * docs/faq/Makefile.am: Build the docbook version, not
        the old linuxdoc version.
2002-03-05 21:57:08 +00:00
Owen Taylor
ec09f3ab15 Update version to 2.0.0
Tue Mar  5 15:47:54 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in test/makefile.msc **.pc.in **/*.am:
	Update version to 2.0.0

        * gtk/Makefile.am (MAINTAINERCLEANFILES): Add stamp
        files.

        * configure.in (GDK_PIXBUF_VERSION): Require GLib 2.0.0,
        Pango, Atk, 1.0.0.

        * m4macros/gtk-2.0.m4: Default to 2.0.0 as the minimum
        version.
2002-03-05 21:04:09 +00:00
Havoc Pennington
049771c5f6 don't assign yoffset here, just let it get updated in response to the
2002-03-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_size_allocate): don't assign
	yoffset here, just let it get updated in response to the
	value_changed. Fixes #72479
2002-03-05 20:31:54 +00:00
Owen Taylor
ef6685731c ue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
* Makefile.am (loaderdir): Put the modules into the
        GTK_BINARY_VERSION directory for consistency with
        immodules and theme engines.
2002-03-05 15:40:48 +00:00
Owen Taylor
3305137ff3 Don't use this same functions as idle callbacks and directly, to avoid
Tue Mar  5 10:29:09 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeview.c (do_presize_handler)
	gtk/gtktreeview.c (do_validate_rows): Don't use this
	same functions as idle callbacks and directly, to avoid
	threading deadlocks. (#72392, Scott Guilbeaux)

	* gtk/gtktable.c (gtk_table_size_request_init): Fix
	row/column confusion from recent patch. (#73505,
	Vitaly Tishkov.)
2002-03-05 15:30:52 +00:00
Christian Rose
1e5210355e Updated Swedish translation.
2002-03-05  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2002-03-05 02:03:47 +00:00
Matthias Clasen
0b46f4ab61 Make color selection and selection examples work.
* docs/tutorial/gtk-tut.sgml: Make color selection and selection
	examples work.

	* tests/testselection.c (selection_toggled, selection_clear):
	Use selection_widget as selection owner - otherwise clearing the
	selection doesn't work.
2002-03-04 22:19:47 +00:00
Matthias Clasen
5b374044c1 Move GtkOldEditable to the "Deprecated" section. (#68408)
* gtk/gtk-docs.sgml: Move GtkOldEditable to the "Deprecated"
	section.  (#68408)

	* gtk/tmpl/gtktreeview.sgml: Close linkend attribute.  (#73364)
2002-03-04 22:04:53 +00:00
Owen Taylor
b543bbff41 Fixes for non XKB operation. (#73103)
Mon Mar  4 12:43:48 2002  Owen Taylor  <otaylor@redhat.com>

        Fixes for non XKB operation. (#73103)

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Fix problem where GDK_Tab was converted to GDK_ISO_Left_Tab
        always, not just if Shift was pressed.

        * gdk/x11/gdkkeys-x11.c gdk/x11/gdkprivate-x11.c
        gdk/x11/gdkevents-x11.c: Move determination of group
        to _gdk_x11_get_group_for_state(), fix to handle non-XKB.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Only
        add in SHIFT_MASK | LOCK_MASK to consumed_modifiers if the shifted
        and unshifted keysyms are different. Only add in group_switch_mask
        if the group-switched and non-group-switched keysyms are diferent.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        When calling XKeycodeToKeysym, use group * keysyms_per_keycode / 2
        not group * keysyms_per_keycode. (Tor Lillquist)

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Remove the hack to fudge the return value for GDK_Tab + Shift
        since that didn't work -- it didn't affect the reverse mapping.
        Instead fudge the non-XKB keymap instead.
2002-03-04 20:19:04 +00:00
Owen Taylor
0c54d4be12 Fix memory leak. (#73370, Paolo Maggi).
Mon Mar  4 11:02:18 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_get_selections): Fix
	memory leak. (#73370, Paolo Maggi).
2002-03-04 16:04:31 +00:00
Owen Taylor
2a0aa82bf8 Fix docs in terms of what out of range @page_num does. (#73371, Vitaly
Mon Mar  4 10:35:28 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_set_current_page): Fix docs
        in terms of what out of range @page_num does. (#73371,
        Vitaly Tishkov.)
2002-03-04 15:54:09 +00:00
Stanislav Visnovsky
f38cb2a116 Updated Slovak translation.
2002-03-04  Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2002-03-04 15:48:23 +00:00
Havoc Pennington
3a1ca763ef const fix
2002-03-02  Havoc Pennington  <hp@pobox.com>

	* demos/gtk-demo/editable_cells.c (cell_edited): const fix
2002-03-04 03:24:57 +00:00
Manish Singh
85f9871f0c shut up CVS 2002-03-04 00:39:44 +00:00
Owen Taylor
d3a43f73b3 Fix to properly take the default window into account by setting a flag and
Sun Mar  3 18:47:13 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_parse_geometry): Fix
        to properly take the default window into account by
        setting a flag and in gtk_window_compute_configure_request_size ()
        multiplying by the increments and adding in the base
        size. (#72393)

        * tests/testgtk.c (create_gridded_geometry): Add a
        test for gridded geometry and for gtk_window_parse_geometry().
2002-03-04 00:11:25 +00:00
Hans Breuer
86dec809ba don't build gtk.defs anymore
2002-03-04  Hans Breuer  <hans@breuer.org>

	* gtk/makefile.msc.in : don't build gtk.defs anymore
2002-03-04 00:03:50 +00:00
Tor Lillqvist
963b317867 Remove obsolete Win32-only declaration of
2002-03-04  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkrc.h: Remove obsolete Win32-only declaration of
	gtk_win32_get_installation_directory().
2002-03-03 22:55:58 +00:00
Owen Taylor
8627dbda08 Back out changes to propagate keys to parent menu shells, since that broke
Sun Mar  3 17:03:30 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.c gtk/gtkmenubar.[ch]: Back out
        changes to propagate keys to parent menu shells, since
        that broke stuff; rather implement ::cycle-focus as
        a key binding on GtkMenuShell rather than on GtkMenuBar.

        * gtk/gtkmenushell.c (gtk_menu_shell_class_init): Add
        add bindings for ::cycle-focus. (In gtkmenubar.c, were
        mistakently bound to ::move-focus.)
2002-03-03 22:15:39 +00:00
Tor Lillqvist
d9f8121359 Minor edits.
2002-03-03  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Minor edits.
2002-03-03 21:52:28 +00:00
Tor Lillqvist
afd73d29e2 Update to match a recent configure-generated config.h
2002-03-03  Tor Lillqvist  <tml@iki.fi>

	* config.h.win32.in: Update to match a recent configure-generated
	config.h
2002-03-03 21:45:11 +00:00
Owen Taylor
fb90bb019b When increasing the row or column requisitions to make them sufficient for
Sun Mar  3 15:16:07 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktable.c: When increasing the row or column
        requisitions to make them sufficient for spanning widgets,
        favor rows or columns with expandable children in them.
        (#1261, Jonathan Blandford.)
2002-03-03 20:36:54 +00:00
Owen Taylor
c848fbbcfe Centralize lookup and caching of cursor GC's here.
Sun Mar  3 14:26:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.[ch] (_gtk_get_insertion_cursor_gc):
        Centralize lookup and caching of cursor GC's here.

        * gtk/gtkentry.[ch] gtk/gtktextview.[ch] gtk/gtktextdisplay.c
        gtk/gtklabel.c: Move to using _gtk_get_insertion_cursor_gc().

        * gtk/gtkentry.c (gtk_entry_expose): Draw cursors
        under the text, not over the text.

        * gtk/gtkwidget.c (gtk_widget_class_init): add
        a secondary-cursor-color property.

        * gtk/gtkwidget.c (gtk_widget_class_init): Decrease
        the default aspect ratio to 1/25 (0.04).

        * tests/testgtkrc (bell_duration): Comment out
        cursor color setting.
2002-03-03 19:59:29 +00:00
Andraz Tori
5d5cfcd435 Updated Slovenian translation 2002-03-03 19:58:36 +00:00
Soeren Sandmann
f280f6d080 change offset of cursor corner of navigation region from (-2, 2) to (-2,
Sun Mar  3 20:48:12 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenu.c (gtk_menu_set_submenu_navigation_region): change
	offset of cursor corner of navigation region from (-2, 2) to
	(-2, 0).
2002-03-03 19:50:50 +00:00
jacob berkman
50b364929e add sanitize-la.sh
2002-03-03  jacob berkman  <jacob@ximian.com>

	* Makefile.am (EXTRA_DIST): add sanitize-la.sh
2002-03-03 19:04:20 +00:00
Anders Carlsson
a71bd6c922 Fix tyop in docs.
2002-03-03  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/gdkwindow-x11.c (gdk_window_move_resize): Fix tyop
	in docs.
2002-03-03 17:36:32 +00:00
Kristian Rietveld
3263de0e77 move edit ifs above _set_cursor code, don't collapse/expand row on double
Sat Mar  2 03:49:31 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_button_press): move edit
        ifs above _set_cursor code, don't collapse/expand row on double
        click, only activate (#63269)
        (validate_visible_area): add two missing lines (#73161, #73162)
2002-03-03 17:29:50 +00:00
Owen Taylor
d69b02ec81 Fix typo where pangoxft was being required instead of pangox. (Reported by
Sun Mar  3 12:13:56 2002  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Fix typo where pangoxft was being
	required instead of pangox. (Reported by Miles
	Lane)
2002-03-03 17:15:29 +00:00
Owen Taylor
c78f465b7c When in split cursor mode, always add the cursor as both strong and weak
Sun Mar  3 11:12:16 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (add_cursor): When in split cursor
	mode, always add the cursor as both strong and weak
	so that it is drawn with the correct non-split color.
2002-03-03 16:16:08 +00:00
Owen Taylor
8b4034d843 Fix install location.
Sun Mar  3 11:05:13 2002  Owen Taylor  <otaylor@redhat.com>

        * modules/input/Makefile.am (moduledir): Fix
        install location.
2002-03-03 16:07:53 +00:00
Owen Taylor
74b53eed90 add missing dependency of objects on gtkmarshalers.h.
Sun Mar  3 10:28:32 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am: add missing dependency of objects on
        gtkmarshalers.h.

        * gtk/Makefile.am gtk/gtk-boxed.defs: Remove completely
        out of date and unused gtk-boxed.defs and the accompanying
        Makefile rule to generate the complete gtk.defs.
2002-03-03 15:37:40 +00:00
Hans Breuer
751705f9f0 make rewrite_event_for_window() static gtk_rc_clear_realized_style()
2002-03-03  Hans Breuer  <hans@breuer.org>

	* gtk/gtkmain.c : make rewrite_event_for_window() static
	* gtk/gtkrc.c : gtk_rc_clear_realized_style() static

	* gtk/makefile.msc.in : adapt to makeenums build changes

	* gtk.def : sorted alphabetical again
2002-03-03 15:04:56 +00:00
Sven Neumann
32dea2dbdc lowercase configure --help output.
2002-03-03  Sven Neumann  <sven@gimp.org>

	* m4macros/gtk-2.0.m4: lowercase configure --help output.
2002-03-03 12:38:24 +00:00
Kjartan Maraas
ad51485d18 Updated Norwegian (bokml) translation.
2002-03-03  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-03-03 08:46:36 +00:00
Jonathan Blandford
4a20e66f81 Write documentation Write documentation
Sun Mar  3 01:36:21 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/tmpl/gtktreeviewcolumn.sgml: Write documentation
	* gtk/tmpl/gtktreeview.sgml: Write documentation
2002-03-03 06:37:43 +00:00
Tim Janik
f0b58ab846 added compile time switch to put the tree views into a hpaned for owen to
Sun Mar  3 06:39:19 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkfilesel.c: added compile time switch to put the tree views
        into a hpaned for owen to play with.

        * gtk/gtktreedatalist.c (_gtk_tree_data_list_header_free):
        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func),
        (gtk_tree_view_column_finalize):
        * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func),
        (gtk_tree_store_set_sort_func), (gtk_tree_store_finalize):
        * gtk/gtktreeselection.c (gtk_tree_selection_finalize):
        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_reset_default_sort_func),
        (gtk_tree_model_sort_set_default_sort_func),
        (gtk_tree_model_sort_set_sort_func):
        * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func),
        (gtk_list_store_set_default_sort_func),
        (gtk_list_store_set_sort_func), (gtk_list_store_finalize):
        add reentrancy protection around destroy() function invocation.

        * gtk/gtktreeselection.c (gtk_tree_selection_set_select_function): fix
        destroy function invocation (which was missing).
2002-03-03 05:41:28 +00:00
Owen Taylor
b47b15f6ba Fixes for uninstalled operation with module suffixes other than .so and in
Sat Mar  2 23:08:23 2002  Owen Taylor  <otaylor@redhat.com>

        Fixes for uninstalled operation with module suffixes
        other than .so and in general for platforms like AIX where
        the module suffix isn't predictable. (#72185, problems
        reported by Miroslaw Dobrzanski-Neumann)

        * modules/input/Makefile.am (gtk.immodules): Query .la
        files rather than shared objects in .libs when creating the
        uninstalled gtk.immodules file.

        * gtk/gtkmain.c (_gtk_find_module): Look for .la files
        after looking for the normal soname extension to handle
        cases where the soname extension isn't predictable,
        like AIX.

        * gtk/gtkthemes.c (gtk_theme_engine_load): Don't
        call g_module_build_path... leave that to
        gtk_rc_find_module_in_path.

        * demos/gtk-demo/main.c (main) demos/pixbuf-init.c (pixbuf_init):
        tests/testgtk.c (test_init): tests/testtext.c (test_init)
        tests/testdnd.c (test_init): Point gdk-pixbuf to .la
        files rather than poking in .libs for .so files.

        * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Remove
        .libs from GDK_PIXBUF_MODULEDIR.
2002-03-03 04:16:30 +00:00
Owen Taylor
b3c0813b93 If we can't load the module using the g_module_build_path() filename, try
Sat Mar  2 22:11:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
        can't load the module using the g_module_build_path()
        filename, try loading it as a .la file.

        * test-loaders.c: Look for modules in current directory
        rather than .libs, so we find the right .la files.

        * test-loaders.c: Back out some accidental commits.
2002-03-03 03:17:22 +00:00
Owen Taylor
76cf3d95f6 Handle NO_WINDOW widgets with windows that are children of widget->window.
Sat Mar  2 20:58:30 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_reparent): Handle NO_WINDOW
	widgets with windows that are children of widget->window.
	(#50279)

	* tests/testgtk.c: Add eventboxes to the example so that
	we are reparenting between different GdkWindows.
2002-03-03 02:52:56 +00:00
Owen Taylor
809a11fea0 Shell script used to strip dependencies out of .la files.
* gdk/Makefile.am gtk/Makefile.am sanitize-la.sh: Shell script
        used to strip dependencies out of .la files.
2002-03-03 02:50:26 +00:00
Owen Taylor
ed5fc07f4e Bullet-proof against integer overflow.
Sat Mar  2 21:28:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
        overflow.
2002-03-03 02:35:25 +00:00
Owen Taylor
f5b8bde792 Add a note to the docs about how to use this in the context of changeable
Sat Mar  2 20:39:38 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
        Add a note to the docs about how to use this in the
        context of changeable accelerators. (#72382, Mark Patton)
2002-03-03 01:43:01 +00:00
Owen Taylor
80bef5ac25 Add -lX11 into x_libs.
Sat Mar  2 19:48:10 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Add -lX11 into x_libs.
2002-03-03 00:50:02 +00:00
Chyla Zbigniew
38373ed066 Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-03-03 00:16:53 +00:00
Andraz Tori
09064674b4 Updated Slovenian translation 2002-03-02 23:59:28 +00:00
Owen Taylor
15f8a55fba Add a --enable-explicit-deps option to control whether dependency
Fri Mar  1 00:46:49 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Add a --enable-explicit-deps option to control
        whether dependency libraries are written into .la files and .pc
        files.  Default is auto: if static libraries are off and shlib
        dependencies are found, don't write deps.

        * gdk/Makefile.am gtk/Makefile.am sanitize-la.sh: Shell script
        used to strip dependencies out of .la files.

        * Makefile.am: Add a slightly modified distcheck rule that passes
        --enable-gtk-doc to the configure inside.
        (So that 'make dist' succeeds inside.)

        * configure.in: If pango was compiled with
        --disable-explicit-deps, then repeat the checks for X and
        freetype ourselves so we don't depend on linking to libraries
        that pango doesn't reveal in the link line. Add some more paranoia
        for whether what we detect ourselves matches what Pango backends
        we found.
2002-03-02 23:29:02 +00:00
Tor Lillqvist
93d74e2574 Output gdk-pixbuf/gdk_pixbuf.rc.
2002-03-03  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Output gdk-pixbuf/gdk_pixbuf.rc.
2002-03-02 23:21:55 +00:00
Owen Taylor
ac8a994aa9 Move a couple of function docs into the C file.
Sat Mar  2 15:46:29 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/tmpl/gtkentry.sgml: Move a couple of function
        docs into the C file.
2002-03-02 23:21:45 +00:00
Tor Lillqvist
5d5f53d95d Remove.
2002-03-03  Tor Lillqvist  <tml@iki.fi>

	* gtk-pixbuf.rc.in: Remove.

	* gdk_pixbuf.rc.in: Name like this instead (wrong name used by
	mistake by Hans).

	* makefile.msc: Corresponding changes.

	* Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
2002-03-02 23:19:59 +00:00
Tor Lillqvist
7fee0db1f0 gdk/gdk.def Add and (trivially) implement
2002-03-03  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def
	* gdk/win32/gdkevents-win32.c: Add and (trivially) implement
	gdk_pointer_grab_info_libgtk_only() and
	gdk_keyboard_grab_info_libgtk_only().

2002-03-02  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (build_keypress_event): Reorder
	code, keyval should get a value in all cases now.
	(build_keyrelease_event): Set GDK_CONTROL_MASK here, too, if it
	was a control character produced with Alt+keypad digits.
	(gdk_event_translate): Minor cleanups to keyboard input
	handling. Still need more major work.
2002-03-02 22:49:45 +00:00
Owen Taylor
aba1c9a76e Don't do special focus handling if draw_indicator is not set. (#64723,
Sat Mar  2 16:12:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkradiobutton.c (gtk_radio_button_focus): Don't
        do special focus handling if draw_indicator is not set.
        (#64723, Damon Chaplin.)
2002-03-02 21:18:07 +00:00
Owen Taylor
8d3278f076 Clamp @max parameter passed in to [0, MAX_SIZE], improve docs. Fix default
Sat Mar  2 15:48:04 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_new_with_max_length,
        gtk_entry_set_max_length): Clamp @max parameter passed in to
        [0, MAX_SIZE], improve docs. Fix default and range
        for ::max-length property, range for ::ncursor_position,
        ::selection_bound properties. (#55916, Vitaly Tishkov)

        * gtk/gtkmain.c (rewrite_event_for_grabs): Fix typo
2002-03-02 21:01:20 +00:00
Owen Taylor
b54e5f4ca1 Robustify tracking of pointer grab window.
Fri Mar  1 18:39:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/{gdkevents-x11.c,gdkmain-x11.c,gdkprivate-x11.h,
        gdkwindow-x11.c}: Robustify tracking of pointer grab window.

        * gdk/x11/gdkmain-x11.c: Keep track of current keyboard
        grab window.

        * gdk/x11/gdkmain-x11.c (gdk_pointer_grab_info_libgtk_only,
        gdk_keyboard_grab_info_libgtk_only): Private libgtk => libgtk
        API for finding out current grab information.

        * gtk/gtkmain.c (rewrite_event_for_grabs): Rewrite events
        so that the effective behavior of owner_events = TRUE is changed
        to "deliver events to same window group normally" instead
        of "deliver events to same application normally. #69934

        * gtk/gtkrange.c: Use an explicit gtk_grab_add() so that
        it works within the GtkList combo, where there is a
        owner_events = FALSE gdk_pointer_grab() already in effect.
        (#65006, reported by Damon Chaplin)
2002-03-02 20:37:07 +00:00
Owen Taylor
dfe5724765 Default to --disable-gtk-doc (avoid Jade breakage) and --disable-static
Sat Mar  2 14:32:50 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Default to --disable-gtk-doc (avoid Jade
        breakage) and --disable-static (static linking causes
        problems with Xft changes.)

        * autogen.sh: Add --enable-gtk-doc by default.

        * Makefile.am: Add a 'mydistcheck' rule that passes
        --enable-gtk-doc to the configure since that is needed
        for 'make dist'.

        * docs/tutorial/Makefile.am (dist-hook): Don't distribute
        the PDF file. (Rule doesn't work on my system, plus it's
        big.)

        * gtk/Makefile.am: 'make dist' fixes.
2002-03-02 20:08:39 +00:00
Owen Taylor
f832e3484d Switch style of stamp file usage.
Sat Mar  2 13:26:58 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am: Switch style of stamp file usage.

        * gtk/Makefile.am gtk/typeutils.[ch]: Switch all the exported
        enumeration/fags TYPE variables over to macros for get_type() functions,
        for lazy definition and to get rid of expensive relocations.

        * gtk/gtkiconfactory.[ch] gtk/gtkselection.[ch] gtk/gtkstyle.[ch]
        gtk/gtktextiter.[ch] gtk/gtktexttag.[ch] gtk/gtktreemodel.[ch]
        gtk/gtktypeutils.[ch] gtk/gtkwidget.[ch]: Switch boxed type
        definitions over manually coded get_type() functions.

        * gtk/gtk.def: Updates for above

        * gtk/{genmarshal.pl,makeenums.awk,makeenums.h,maketypes.awk}:
        Remove from CVS, no longer used.

        * configure.in: Remove checks for awk.
2002-03-02 19:11:47 +00:00
Sven Neumann
36e686e6a7 updated German translation.
2002-03-02  Sven Neumann  <sven@gimp.org>

	* de.po: updated German translation.
2002-03-02 13:41:06 +00:00
Tim Janik
688c3bf04f fix typo.
Sat Mar  2 04:44:10 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelgroup.c (gtk_accel_group_connect_by_path): fix typo.
2002-03-02 03:55:00 +00:00
Kristian Rietveld
aa83195ad6 set first_cell to FALSE after first iteration
Fri Mar  1 23:59:35 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size): set
        first_cell to FALSE after first iteration

        * gtk/gtktreeview.c (validate_visible_area): reduce usage of
        GTK_RBNODE_GET_HEIGHT, check for node != NULL,
        (gtk_tree_view_top_row_to_dy): remove call to gtk_adjustment_changed
        (gtk_tree_view_search_iter): select iter after scrolling
2002-03-01 23:08:31 +00:00
Tor Lillqvist
58f74422ea Remove unneeded Win32 stuff inside #ifdef G_OS_WIN32. (Leftover from when
2002-03-02  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkitemfactory.c: Remove unneeded Win32 stuff inside #ifdef
	G_OS_WIN32. (Leftover from when gtkitemfactory.c handled files.)
2002-03-01 22:41:57 +00:00
Tor Lillqvist
d237e8557d gdk/gdkkeys.c (gdk_keyval_convert_case) If the keyval to be converted is
2002-03-01  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkkeys.c (gdk_keyval_convert_case)
	* gdk/x11/gdkkeys-x11.c (gdk_keyval_convert_case): If the keyval
	to be converted is one of those that consist of a Unicode
	character plus our special flag bit, use the
	g_unichar_to{lower,upper} functions (Bug#73112).

	* gdk/gdkkeys.c (gdk_keyval_convert_case): Drop the #ifdefs for
	the GDK keysym symbols. As we include gdkkeysyms.h, we know they
	are there. And if GDK keysyms some day are added/removed, this
	function needs changes, too, anyway.
2002-03-01 22:09:27 +00:00
Owen Taylor
b924594ef1 Fix some reported (but not significant) UMR's from purify. (#73160, Morten
Fri Mar  1 17:00:28 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpolyreg-generic.c: Fix some reported (but not significant)
	UMR's from purify. (#73160, Morten Welinder)
2002-03-01 22:01:51 +00:00
Owen Taylor
a6774264ee Initialize the scrollbar spacing variable in the class to -1, and then
Fri Mar  1 16:48:19 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkscrolledwindow.c: Initialize the scrollbar spacing
	variable in the class to -1, and then take that to mean
	"default" (3) rather than putting 3 in the class directly.
	This gives us some wiggle room to make it a per-instance
	rather than a per-class property later.
2002-03-01 21:53:22 +00:00
jacob berkman
3842f2f11d replace uses of test -e with more portable test -f
2002-03-01  jacob berkman  <jacob@ximian.com>

	* Makefile.am (install-data-hook):
	(dist-hook): replace uses of test -e with more portable test -f
2002-03-01 20:03:06 +00:00
Owen Taylor
206119c9c1 Don't delete forward across line boundaries when in overwrite mode.
Fri Mar  1 14:49:35 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_commit_text): Don't delete
	forward across line boundaries when in overwrite mode.
	(#73145, reported by Ettore Perazzoli)
2002-03-01 19:50:43 +00:00
Owen Taylor
f4c06611fd Fix signed-unsigned error that was accidentally causing negative values to
Fri Mar  1 10:31:14 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_reorder_child):
	Fix signed-unsigned error that was accidentally causing
	negative values to append, do it intentionally. Fix docs
	to say that negative values append. (Alexey A. Malyshev,
	#73108)
2002-03-01 15:41:59 +00:00
Owen Taylor
3098a031d6 Add note about gtk_notebook_reorder_child().
Fri Mar  1 10:35:15 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/changes-2.0.sgml: Add note about gtk_notebook_reorder_child().
2002-03-01 15:40:12 +00:00
Alexey Malyshev
30e9527d24 gtk+/gtk/gtkitemfactory.c fixed a little type in docs for
2002-03-01 Alexey Malyshev <maa@sparc.spb.su>

        * gtk+/gtk/gtkitemfactory.c
	fixed a little type in docs for gtk_notebook_set_show_border()
2002-03-01 14:46:38 +00:00
Owen Taylor
409fb50cfe Really make it work for paths with underline accelerators. (#69247)
Fri Mar  1 09:05:19 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkitemfactory.c (gtk_item_factory_delete_entries):
        Really make it work for paths with underline accelerators. (#69247)
2002-03-01 14:12:56 +00:00
Stanislav Visnovsky
d782d59eaf Updated Slovak translation.
2002-03-01  Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2002-03-01 12:07:24 +00:00
Yuri Syrota
b8d1794b2f Updated Ukrainian translation 2002-03-01 07:44:30 +00:00
Havoc Pennington
8836674aec free the tab array for custom tabs, reported by Paolo Maggi #72980
2002-02-28  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_finalize): free the tab array
	for custom tabs, reported by Paolo Maggi #72980
2002-03-01 04:39:00 +00:00
Owen Taylor
fce84d0535 include gdkkeysysms.h if compiling gdk_keyval_convert_case.
Thu Feb 28 19:55:01 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeys.c: include gdkkeysysms.h if
        compiling gdk_keyval_convert_case.

        * gtk/gtkmenubar.c (gtk_menu_bar_cycle_focus): Implement
        <Control>Tab <Control><Shift>Tab to cycle between
        all menu bars in a toplevel once one is up.

        * tests/testgtk.c: Add a second menubar, this
        example is already full of crack anyways.

        * gtk/gtkmenushell.c (gtk_menu_shell_key_press): Padd
        unhandled events up to the parent menu shell.

        * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): Only
        pop up the menu if the parent menu shell is still active.

        * gtk/gtkcontainer.[ch] (_gtk_container_focus_sort): Add a
        old_focus argument, export privately.
2002-03-01 01:05:11 +00:00
Darin Adler
8b26dc2cf1 Add missing NULL check.
* gtk/gtkfilesel.c: (open_new_dir): Add missing NULL check.
2002-02-28 23:46:18 +00:00
Tor Lillqvist
8beceb3846 Remove the event_mask, it is now in GdkWindowObject.
2002-03-01  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32): Remove
	the event_mask, it is now in GdkWindowObject.

	* gdk/win32/gdkwindow-win32.c: Change accordingly. Set the
	GDK_STRUCTURE_MASK in gdk_window_set_events(), as it is always set
	in gdk_window_new(), too. (Bug#72921)

	* gdk/win32/gdkevents-win32.c: Change accordingly here, too.
	(vk_from_char): New function, calculates the virtual keycode
	corresponding to the char in a WM_CHAR message.
	(build_keypress_event, build_keyrelease_event): Use it.
	(build_keypress_event): Call ImmReleaseContext() after using the
	input context. This might plug a memory or resource leak.
	(build_key_event_state): Remove #if 0 code.
	(gdk_event_translate): Actually, it would be preferrable to always
	handle just the WM_KEYDOWN and WM_KEYUP messages, not WM_CHAR at
	all, and thus drop the contorted logic with ignore_wm_char etc.

	* gdk/win32/gdkkeys-win32.c: (gdk_keymap_get_entries_for_keyval):
	Debugging output.
	(gdk_keymap_translate_keyboard_state): Return correct value. (But
	_gtk_key_hash_lookup() doesn't check the return value...)
2002-02-28 23:38:55 +00:00
Andraz Tori
ad17c36038 Updated Slovenian translation 2002-02-28 23:35:45 +00:00
Pauli Virtanen
b84b2c15b7 Updated Finnish translation.
2002-03-01  Pauli Virtanen  <pauli.virtanen@hut.fi>

	* fi.po: Updated Finnish translation.
2002-02-28 23:31:46 +00:00
Owen Taylor
3b906a9c8f Initialize private->event_mask from attributes we retrieved for the
Thu Feb 28 14:49:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): Initialize
        private->event_mask from attributes we retrieved for
        the window.
2002-02-28 21:09:04 +00:00
Havoc Pennington
e9af640cf9 This change went in a week ago, but I apparently didn't commit the
ChangeLog entry.

2002-02-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (save_range): change gravity of start/end
	marks so that text added at either end of the range doesn't end up
	inside the range.
	(gtk_text_buffer_real_insert_range): fix to handle pasting a range
	into itself.
2002-02-28 19:51:13 +00:00
Ole Laursen
d24deb7ea4 Updated Danish translation.
2002-02-28  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-02-28 19:09:09 +00:00
Matthias Clasen
3a4906e82d Move the call to correct_total() to the right spot. (#72732)
* pixops/pixops.c (tile_make_weights): Move the call to
	correct_total() to the right spot. (#72732)
2002-02-28 18:47:38 +00:00
Tivo Leedjrv
93aef1e229 Updated Estonian translation.
2002-02-28  Tivo Leedjrv  <leedjarv@interest.ee>

        * et.po: Updated Estonian translation.
2002-02-28 17:34:47 +00:00
Christophe Merlet
2e2d254b7e Updated French translation. 2002-02-28 15:40:25 +00:00
Chyla Zbigniew
6a8260ac0d Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-02-28 15:31:55 +00:00
Sven Neumann
54dbcdabfc beautified configure --help output.
2002-02-28  Sven Neumann  <sven@gimp.org>

	* configure.in: beautified configure --help output.
2002-02-28 10:15:55 +00:00
Christophe Merlet
aca4ba18b6 Updated French translation. 2002-02-28 08:52:57 +00:00
Tor Lillqvist
3244b86dd6 Move bdfcursor.c from libgdk_win32_la_SOURCES to EXTRA_DIST.
2002-02-28  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/Makefile.am: Move bdfcursor.c from
	libgdk_win32_la_SOURCES to EXTRA_DIST.

	* gdk/win32/gdkgc-win32.c (gdk_win32_colormap_color_pack): In the
	bitmap case, use just the LSB of the pixel value. Does this match
	X11 semantics? Or should it be pixel!=0?
2002-02-28 00:49:36 +00:00
Owen Taylor
7ea17ce7fd ed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
        * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
        * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
        * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
        * gdk/win32/gdkwindow-win32.c (gdk_window_new):
        * gdk/gdkwindow.h (struct _GdkWindowObject):
        * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
        Save the window's event mask in window->event_mask.

        * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
        generate expose events if GDK_EXPOSE_MASK is included
        window->event_mask. (#54506)
2002-02-28 00:26:51 +00:00
Christian Rose
07bdeb1871 Updated Swedish translation.
2002-02-28  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2002-02-28 00:22:28 +00:00
Owen Taylor
531861fb8f Allow focus-change events to be sent to unrealized widgets; they aren't
Wed Feb 27 18:50:29 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_event): Allow focus-change
        events to be sent to unrealized widgets; they aren't
        really normal events in that they have anything to
        do with widget->window. (#72914)
2002-02-27 23:53:29 +00:00
Andraz Tori
8ba3ebdef8 Updated Slovenian translation 2002-02-27 23:45:22 +00:00
Owen Taylor
80bf58e01d Use {} not () to group around string assigned to char[]. (#72767, Tomas
Wed Feb 27 18:33:04 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
	() to group around string assigned to char[]. (#72767,
	Tomas gren)
2002-02-27 23:45:05 +00:00
Owen Taylor
c16da246f1 Split big VARIABLES variable that was causing overlong lines into 6
Wed Feb 27 18:39:25 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/stock-icons/Makefile.am: Split big VARIABLES variable
        that was causing overlong lines into 6 variables with 20
        in each one.
2002-02-27 23:44:13 +00:00
Christian Meyer
b7c670666b Updated German translation. 2002-02-27 23:43:57 +00:00
Owen Taylor
485c2a5350 Mark <Control>, <Shift>, <Release>, <Alt> for translation.
Wed Feb 27 18:01:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccellabel.c (gtk_accelerator_name) po/POTFILES.in: Mark
        <Control>, <Shift>, <Release>, <Alt> for translation.

        * gtk/gtkfontsel.c: Mark PREVIEW_TEXT for translation.
        (Vlad Harchev, #53223)
2002-02-27 23:16:48 +00:00
Owen Taylor
9cbf37990b if CAN_FOCUS reserve focus_line_width + focus_line_pad extra space and
Wed Feb 27 17:32:09 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrange.c (gtk_range_get_props): if CAN_FOCUS
        reserve focus_line_width + focus_line_pad extra
        space and draw the focus in that space. #72027.
2002-02-27 22:41:33 +00:00
Soeren Sandmann
27b1d120e8 minor code cleanup
Wed Feb 27 23:02:55 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkhandlebox.c (gtk_handle_box_realize): minor code cleanup
2002-02-27 22:09:03 +00:00
Owen Taylor
90b7a9f68a Don't reserve space for border when the shadow type for the menubar is
Wed Feb 27 14:58:12 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenubar.c (gtk_menu_bar_size_request/allocate):
        Don't reserve space for border when the shadow type
        for the menubar is "none". (#61843)

        * gtk/gtkmenubar.c (gtk_menu_bar_size_allocate): Fix
        offset for right-justified menu items.
2002-02-27 21:57:27 +00:00
Owen Taylor
0be9b6fba8 Go back to old style of drawing children over the bevel. (#58615)
Wed Feb 27 14:45:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Go
        back to old style of drawing children over the bevel.
        (#58615)
2002-02-27 19:48:30 +00:00
Owen Taylor
39fc3c9a3c Add ko and zh to the locales where this is the default.
Wed Feb 27 14:08:26 2002  Owen Taylor  <otaylor@redhat.com>

        * modules/input/imxim.c: Add ko and zh to the locales
        where this is the default.
2002-02-27 19:09:35 +00:00
Owen Taylor
e6f466c12e Register all stock icons "unscaled" so that we don't have icons only
Wed Feb 27 12:34:21 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkiconfactory.c: Register all stock icons
	"unscaled" so that we don't have icons only available
	at some sizes. (#68896)

Wed Feb 27 11:59:05 2002  Owen Taylor  <otaylor@redhat.com>

	Some ASCII vs. locale fixes from Darin Adler (#55837)

	* gtk/gtkcombo.c (gtk_combo_find): Implement real
	case-insensitive comparison using g_utf8_casefold().

	* gtk/gtkaccellabel.c (gtk_accel_label_refetch): Fix
	assignment of gunichar to char by replacing g_unichar_totitle
	with g_ascii_toupper ... the contents would only be ascii
	here anyways.

	* gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale)
	* gtk/gtkfontsel.c (gtk_font_selection_show_available_fonts):
	Replace a calls to g_strcasecmp() with g_ascii_strcasecmp().
2002-02-27 17:35:58 +00:00
Hans Breuer
bc94033dd3 new file
2002-02-27  Hans Breuer  <hans@breuer.org>

	* demos/gtk-demo/makefile.msc.in : new file

	* gdk-pixbuf/gtk-pixbuf.rc.in : new file to include
	  version resource
	* gdk-pixbuf/makefile.msc : create and use gdk-pixbuf.res

	* gdk/win32/gdkkeys-win32.c : handle undefined LANG_URDU,
	(gdk_keyval_name) : fix endless looping

	* gtk/gtkfilesel.c : translate_win32_path() static
	* gtk/queryimmodules : print_escaped(), query_module() static

	* gtk/makefile.msc.in : added gtkkeyhash, build gtk-win32.res

	* gtk/stock-icons/makefile.msc : regenerated from directory
	listing (almost all filenames changed)
2002-02-27 16:37:04 +00:00
Owen Taylor
20eda0e6f1 After computing the clamped value, actually set it. (#62639, Sergey
Wed Feb 27 10:34:46 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrange.c (gtk_range_set_range): After computing
	the clamped value, actually set it. (#62639, Sergey Kuzminov)
2002-02-27 15:43:43 +00:00
Owen Taylor
a504e62e01 Clean up the code so < 0 == end wasn't just a side effect, remove most of
Tue Feb 26 22:22:37 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbox.c (gtk_box_reorder_child): Clean up
	the code so < 0 == end wasn't just a side effect,
	remove most of the manual linked list manipulation
	code in favor of g_list_* functions.

Tue Feb 26 22:01:59 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkbox.sgml: Fix docs to correspond to the code -
	negative @position indicates the end of the list.
2002-02-27 03:35:05 +00:00
Owen Taylor
0205a7bdf2 Remove these files from CVS so we more-or-less current versions from
Tue Feb 26 21:44:01 2002  Owen Taylor  <otaylor@redhat.com>

        * config.status config.guess: Remove these files
        from CVS so we more-or-less current versions from
        automake --add-missing. (Reported by Finlay Dobbie,
        #60342)

        * gdk/gdkkeyuni.c: Shouldn't map KP_Enter to '\n',
        or KP_Tab to \t' since we don't map the corresponding
        main keyboard characters in that way. (#61561,
        Padraig O'Briain)
2002-02-27 02:54:40 +00:00
Owen Taylor
807336c720 Shouldn't map KP_Enter to '\n', or KP_Tab to \t' since we don't map the
Tue Feb 26 21:35:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeyuni.c: Shouldn't map KP_Enter to '\n',
        or KP_Tab to \t' since we don't map the corresponding
        main keyboard characters in that way. (#61561,
        Padraig O'Briain)
2002-02-27 02:43:09 +00:00
Owen Taylor
a90baa8332 Call gtk_combo_set_popdown_strings() in case the combo is up currently.
Tue Feb 26 19:45:29 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcombo.c (gtk_combo_set_popdown_strings):
	Call gtk_combo_set_popdown_strings() in case
	the combo is up currently. (#63535, Skip Montaro)
2002-02-27 00:47:11 +00:00
Owen Taylor
ff16981dd6 Switch control-home/end and home/end with the idea that scrolled windows
Tue Feb 26 19:38:14 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init):
        Switch control-home/end and home/end with
        the idea that scrolled windows more typically contain
        vertical sets of controls and to correspond to the bindings
        in GtkTreeView.
2002-02-27 00:41:10 +00:00
Owen Taylor
2b33da526b Chain up before drawing the scale values so that the number is drawn in
Tue Feb 26 19:32:42 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk[hv]vscale.c (gtk_[hv]scale_expose): Chain
        up before drawing the scale values so that the number
        is drawn in the right place instead of one step
        back. (#61743, patch from Satyajit Kanungo)
2002-02-27 00:37:35 +00:00
Christian Rose
fad2f1f37f Fixed Swedish translation.
2002-02-27  Christian Rose  <menthos@menthos.com>

	* sv.po: Fixed Swedish translation.
2002-02-27 00:29:31 +00:00
Owen Taylor
0fd671aed5 Make sure Page_Up, Page_Down get those names, not Prior, Next.
Tue Feb 26 19:16:28 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/win32/gdkkeys-win32.c (gdk_keyval_name):
        * gdk/x11/gdkkeys-x11.c (gdk_keyval_name):
        Make sure Page_Up, Page_Down get those names, not Prior,
        Next.
2002-02-27 00:24:11 +00:00
Owen Taylor
df9151201f ue Feb 26 18:58:49 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccelgroup.c (gtk_accelerator_set_default_mod_mask):
        OR in the three default modifiers to any value passed
        in by the caller, so that the caller won't break the
        the default bindings. (#70142, Jody Goldberg, though he
        wasn't in favor of this particular way of solving it.)
2002-02-27 00:05:01 +00:00
Owen Taylor
386f8d1f62 Append mnemonics rather than prepending them so that the order is
Tue Feb 26 18:47:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_add_mnemonic): Append
        mnemonics rather than prepending them so that the
        order is typically forward rather than typically
        backward. (Partial fix for #52395)
2002-02-26 23:56:26 +00:00
Soeren Sandmann
ad64579ca0 Draw arrows better (without extra baseline)
Wed Feb 27 00:45:39 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkarrow.c, gtk/gtkmenuitem.c, gtk/gtkrange.c
	gtk/gtkspinbutton.c gtk/gtkstyle.c: Draw arrows better (without
	extra baseline)
2002-02-26 23:50:14 +00:00
Owen Taylor
1e9f8b7c0f Display any "g_unicode_isgraph()" char literally, not just latin1.
Tue Feb 26 18:38:17 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccellabel.c (gtk_accel_label_refetch):
	Display any "g_unicode_isgraph()" char literally,
	not just latin1. (#65679)
2002-02-26 23:46:23 +00:00
Owen Taylor
d1be9aea8d Don't to focus insensitive widgets. (#68203)
Tue Feb 26 18:01:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_grab_focus): Don't
        to focus insensitive widgets. (#68203)

        * gtk/gtkentry.c (gtk_entry_state_changed): Clear any
        current selection if we become insensitive. (#68203)

        * gtk/gtkentry.c (gtk_entry_grab_focus): Don't
        select the text if the entry isn't editable. (#67203)

        * gtk/gtkentry.c: Activate keybindings when not editable,
        but supress keybindings that change the text. (#65848, #68203)

        * gtk/gtkentry.c (gtk_entry_set_property): Reset the
        IM context for the entry when it is made not editable.
2002-02-26 23:06:34 +00:00
Owen Taylor
e7171e19c9 Emit ::color_changed every time we notify current_color. (Brute force fix
Tue Feb 26 17:04:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcolorsel.c (update_color): Emit ::color_changed
        every time we notify current_color. (Brute force
        fix for #72470, Matthias Clasen). Some fixes to improve
        reentrancy.
2002-02-26 22:16:06 +00:00
Owen Taylor
87ab3ced3a use the cursor position _after_ deleting the text as the position to
Tue Feb 26 15:04:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_enter_text): use
        the cursor position _after_ deleting the text
        as the position to insert at. (#72717, Jan Mynarik)
2002-02-26 20:10:52 +00:00
Vitaly Tishkov
a2cd674983 gtk/gtktreemodel.c misprints in documentation for
2002-02-26            Vitaly Tishkov       <tvv@sparc.spb.su>

        * gtk/gtktreemodel.c
	misprints in documentation for gtk_tree_row_reference_inserted()
        and gtk_tree_path_new () are fixed
2002-02-26 19:18:28 +00:00
Kristian Rietveld
07d3ebd017 take into account that a path from a rowref can be NULL. (#72623 and
Tue Feb 26 19:47:16 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (validate_visible_area): take into account
        that a path from a rowref can be NULL. (#72623 and #72650)

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_render_or_focus):
        let focus_rectangle be the same as cell_area for empty cells (#69900)
2002-02-26 18:56:53 +00:00
Owen Taylor
f255d50bbf Fix double free.
Tue Feb 26 11:51:56 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.c (_gtk_key_hash_remove_entry): Fix
        double free.
2002-02-26 16:56:58 +00:00
Owen Taylor
9b1ce99cb4 Handle a keyval of 0, by returning an empty list. (#72617, Kevin Breit)
Tue Feb 26 10:38:14 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval): Handle
        a keyval of 0, by returning an empty list. (#72617,
        Kevin Breit)
2002-02-26 15:52:20 +00:00
Richard Hult
23558e0a3b Fix #72586. Silently accept empty tree. (gtk_tree_view_collapse_all):
2002-02-26  Richard Hult  <rhult@codefactory.se>

	* gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix
	#72586. Silently accept empty tree.
	(gtk_tree_view_collapse_all): Likewise.
2002-02-26 15:14:42 +00:00
Andraz Tori
1ab0dcf514 Updated Slovenian translation 2002-02-26 15:01:29 +00:00
Stanislav Visnovsky
00404d7c46 Updated Slovak translation.
2002-02-26  Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2002-02-26 14:25:57 +00:00
Andraz Tori
a04b416d27 Updated Slovenian translation 2002-02-26 11:51:27 +00:00
Andraz Tori
e8e41237c3 Updated Slovenian translation 2002-02-26 11:49:34 +00:00
Christian Rose
bad992c1a8 Fixed Swedish translation.
2002-02-26  Christian Rose  <menthos@menthos.com>

	* sv.po: Fixed Swedish translation.
2002-02-26 10:41:18 +00:00
Tor Lillqvist
a12c1c8d2b A couple of name changes.
2002-02-26  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtk.def: A couple of name changes.
2002-02-26 07:09:48 +00:00
Owen Taylor
86e7c7dfe9 Fix double set of bindings for page-up/down. (#72605, Tor Lillquist)
Mon Feb 25 22:10:47 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): Fix
	double set of bindings for page-up/down. (#72605, Tor Lillquist)

	* gtk/gtkmenu.c (gtk_menu_key_press): Remove consumed modiifers
	when setting up accelerator to make accelerators look prettier.
	(#65416, Guillermo S. Romero)
2002-02-26 03:23:45 +00:00
Tor Lillqvist
93fa867e14 Implement the functions that until now just were non-functional stubs. For
2002-02-26  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkkeys-win32.c: Implement the functions that until
	now just were non-functional stubs. For "hardware keycodes", we
	use Windows virtual keycodes. Not scancodes, although that at
	first might seem more low-level and a better match to X11
	keycodes.

	The Windows API is really mixed up and confused with respect to
	scancodes and virtual keycodes. (Surprised?) Some scancodes are
	generated by two keys on the keyboard (!), and although the
	keyboard messages do have a flag to indicate which key the user
	pressed, other API that take a scan code as input don't let you
	specify which actual key you mean.

	(update_keymap): Function to build a X11-like representation of
	the keyboard. Each key has four keysyms: two levels (nonshifted
	and shifted) and two groups (normal and with AltGr).

	(gdk_keymap_get_direction): Use the codepage corresponding to the
	thread's input locale, not the system codepage.

	* gdk/win32/gdkglobals-win32.c
	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkwindow-win32.h
	* gdk/win32/gdkwindow-win32.c: Remove the input_locale and
	charset_info fields from GdkWindowImplWin32. Input locale is
	per-thread in Windows, and as GDK on Windows really only works
	when the GDI interaction all happens in just one thread anyway,
	this state can be global. Use globals _gdk_input_locale and
	_gdk_input_codepage instead. Set these based on the thread's input
	locale (keyboard layout, or which IME is active).

	* gdk/win32/gdkevents-win32.c: Set the group and hardware_keycode
	fields in GDK key events. On input locale change messages, set
	the global state variables, and inform update_keymap() that it
	has to rebuild the keymap.
2002-02-26 01:18:27 +00:00
Tor Lillqvist
c410128c7f Implement the functions that until now just were non-functional stubs. For
2002-02-26  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkkeys-win32.c: Implement the functions that until
	now just were non-functional stubs. For "hardware keycodes", we
	use Windows virtual keycodes. Not scancodes, although that at
	first might seem more low-level and a better match to X11
	keycodes.

	The Windows API is really mixed up and confused with respect to
	scancodes and virtual keycodes. (Surprised?) Some scancodes are
	generated by two keys on the keyboard (!), and although the
	keyboard messages do have a flag to indicate which key the user
	pressed, other API that take a scan code as input don't let you
	specify which actual key you mean.

	(update_keymap): Function to build a X11-like representation of
	the keyboard. Each key has four keysyms: two levels (nonshifted
	and shifted) and two groups (normal and with AltGr).

	(gdk_keymap_get_direction): Use the codepage corresponding to the
	thread's input locale, not the system codepage.

	* gdk/win32/gdkglobals.h
	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkwindow-win32.h
	* gdk/win32/gdkwindow-win32.c: Remove the input_locale and
	charset_info fields from GdkWindowImplWin32. Input locale is
	per-thread in Windows, and as GDK on Windows really only works
	when the GDI interaction all happens in just one thread anyway,
	this state can be global. Use globals _gdk_input_locale and
	_gdk_input_codepage instead. Set these based on the thread's input
	locale (keyboard layout, or which IME is active).

	* gdk/win32/gdkevents-win32.c: Set the group and hardware_keycode
	fields in GDK key events. On input locale change messages, set
	the global state variables, and inform update_keymap() that it
	has to rebuild the keymap.
2002-02-26 01:17:58 +00:00
Matthias Clasen
14a2eb7884 Fix typos in pkg-config invokations. (#72476)
* docs/tutorial/gtk-tut.sgml: Fix typos in pkg-config
	invokations.  (#72476)

	Fixes for #72478:

	* gtk/tmpl/gtkprogressbar.sgml: Add note about new GtkProgressBar
	API to introduction.

	* gtk/gtk-sections.txt: Reorder GtkProgressBar functions to move
	undeprecated API to top.
2002-02-26 00:44:36 +00:00
Andraz Tori
c0c90c9e58 Updated Slovenian translation 2002-02-26 00:31:54 +00:00
Owen Taylor
2bb933f9d8 Set the keyboard-mode flag before popping up the tooltip so that pop it up
Mon Feb 25 18:59:27 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktooltips.c (start_keyboard_mode): Set the keyboard-mode
        flag before popping up the tooltip so that pop it up
        in the right place. (#71917, Narayani Pattipati)
2002-02-26 00:05:59 +00:00
Kristian Rietveld
2544d7b719 call _gtk_tree_view_column_cell_set_dirty when visible, so this column
Mon Feb 25 22:11:34 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_visible): call
        _gtk_tree_view_column_cell_set_dirty when visible, so this column
        gets some space allocated. (#70996)

        * gtk/gtkliststore.c (gtk_list_store_get_path): add simple
        optimization for the tail case
        (gtk_list_store_real_set_value): remove unneeded _get_path calls
2002-02-25 21:20:25 +00:00
Owen Taylor
9953d39036 Fix precendence problem. (Sven Neumann)
Mon Feb 25 12:47:25 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Fix precendence problem. (Sven Neumann)
2002-02-25 17:48:32 +00:00
Christian Rose
4e49e2e49d Updated Swedish translation.
2002-02-25  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2002-02-25 09:35:40 +00:00
Owen Taylor
3ce820584f Convert over to using an GtkInvisible - selections don't work properly
Sun Feb 24 23:23:28 2002  Owen Taylor  <otaylor@redhat.com>

	* tests/testselection.c (main): Convert over to using
	an GtkInvisible - selections don't work properly
	with now NO_WINDOW GtkToggleButton. (Example really
	should be using GtkClipboard.)

	* gdk/x11/gdkselection-x11.c (gdk_selection_property_get):
	Fix  problems if sizeof(GdkAtom) != sizeof(Atom). (Unlikely)

	* gdk/x11/gdkproperty-x11.c (gdk_property_get): Set
	actual_length when converting atoms as well.
	(Gregory Merchan, #72074)
2002-02-25 05:12:14 +00:00
Havoc Pennington
f9debe2f69 add dx/dy to child allocation, don't subtract them. Also, copy code from
2002-02-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_value_changed): add dx/dy to
	child allocation, don't subtract them. Also, copy code from CList
	to recursively adjust the child allocation, instead of just
	adjusting immediate children. #69115
2002-02-25 04:55:56 +00:00
Havoc Pennington
8ddb92e491 change to pass in the cursor direction always, not just when we need an
2002-02-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkstyle.c (_gtk_draw_insertion_cursor): change to pass in
	the cursor direction always, not just when we need an arrow, so we
	can flip the cursor around its axis for RTL. Resolves #72372

	* gtk/gtkentry.c (gtk_entry_draw_cursor): update for
	draw_insertion_cursor change

	* gtk/gtklabel.c (gtk_label_draw_cursor): ditto

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): ditto
2002-02-25 04:19:05 +00:00
Alexander Larsson
3e7279cff4 Always NULL out bg_pixmap, even when it used to be None or parent
2002-02-24  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_background):
	Always NULL out bg_pixmap, even when it used to be None
	or parent relative.
2002-02-25 04:00:37 +00:00
Havoc Pennington
0ca2aa50c6 parent_class variable was GtkObjectClass instead of GObjectClass
2002-02-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextbuffer.c (parent_class): parent_class variable was
	GtkObjectClass instead of GObjectClass

	* gtk/gtktextview.c (widget_to_buffer): fix this the way
	buffer_to_widget was fixed, to avoid duplicating
	the code that computes text_window->allocation.x/y
2002-02-25 02:47:19 +00:00
Owen Taylor
8ae6ab42b6 Fix off-by-one error. (Pointed out by Anders Carlsson)
Sun Feb 24 21:18:20 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksocket.c (gtk_socket_end_embedding): Fix
	off-by-one error. (Pointed out by Anders Carlsson)
2002-02-25 02:23:00 +00:00
Matthias Clasen
4beaa9e4a6 Forgotten ChangeLog. 2002-02-25 01:51:27 +00:00
Matthias Clasen
9f1363013f More GTK+ 2.0 updates.
* docs/tutorial/gtk-tut.sgml, docs/tutorial/images/*, examples/*: More
	 GTK+ 2.0 updates.

	* docs/tutorial/Makefile.am: build and dist the new tutorial, not
	the old Linuxdoc one.
2002-02-25 01:47:44 +00:00
Kristian Rietveld
4d06c9d09f free iter before going to done
Mon Feb 25 01:14:26 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktextlayout.c (find_display_line_above): free iter before
        going to done

        * gtk/gtktreeview.c (validate_visible_area): free above_path,
        (set_destination_row): free path before returning,
        (gtk_tree_view_set_drag_dest_row): free current_dest
2002-02-25 00:14:07 +00:00
Owen Taylor
60c1630edc Take border width into account.
Sun Feb 24 14:15:45 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c (widget_to_buffer): Take border
        width into account.

        * gtk/gtklabel.c (get_label_wrap_width): Don't use GdkFont
        to compute wrap width ... GdkFont will pull in X11 core
        fonts.
2002-02-24 19:56:14 +00:00
Matthias Warkus
a93987de00 Updated for release. 2002-02-24 18:43:49 +00:00
Hasbullah Bin Pit
55359006df Updated Malay Translation.
2002-02-24  Hasbullah Bin Pit <sebol@ikhlas.com>

* ms.po: Updated Malay Translation.
2002-02-24 09:38:54 +00:00
Owen Taylor
2bf3857a0c Released 1.3.15.
Sun Feb 24 00:06:58 2002  Owen Taylor  <otaylor@redhat.com>

        * Released 1.3.15.

        * configure.in: Version 1.3.15, binary, interface age 0.

        * NEWS: Updates

        * configure.in: Update version requirements.
2002-02-24 06:05:50 +00:00
Owen Taylor
23a249a043 Sanity check default font family name and size.
Sat Feb 23 22:37:23 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.c (gtk_style_init): Sanity check default
        font family name and size.

        * gtk/gtkwindow.c (gtk_window_set_default_size): Remove
        incorrect comment about the geometry widget.

        * gtk/gtkwindow.c (gtk_window_move_resize): Unset the
        gtk_window_resize)() information once we've set the size
        once, to avoid it coming back next time we queue a resize.
        (#72359)

        * gtk/gtkwindow.c (gtk_window_move_resize): Remove
        setthing of ->need_default_size from here, Havoc
        says that it should correspond more or less exactly
        to GTK_WIDGET_MAPPED (window).
2002-02-24 05:05:15 +00:00
Owen Taylor
c44a49fa0c Document gtk_tree_path_new_root(), gtk_tree_model_get_iter_root() as
Sat Feb 23 23:39:14 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/tmpl/gtktreemodel.sgml: Document gtk_tree_path_new_root(),
        gtk_tree_model_get_iter_root() as compatibility macros.

        * gtk/gtk-sections.txt: Updates.
2002-02-24 04:45:31 +00:00
Jonathan Blandford
a265926e2f at Feb 23 23:00:48 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.h: add () to function macros as per owen's
	request.

	* gtk/gtkfontsel.c: (gtk_font_selection_select_best_style),
	(gtk_font_selection_show_available_sizes),
	(gtk_font_selection_set_font_name):
	* gtk/gtktreemodel.c: (gtk_tree_model_get_iter_first),
	(gtk_tree_model_foreach):
	* gtk/gtktreemodelsort.c: (gtk_tree_model_sort_sort_level),
	(gtk_tree_model_sort_build_level):
	* gtk/gtktreeselection.c: (gtk_tree_selection_selected_foreach):
	* gtk/gtktreeview.c: (validate_visible_area),
	(gtk_tree_view_focus_to_cursor), (gtk_tree_view_set_model),
	(gtk_tree_view_map_expanded_rows), (gtk_tree_view_search_move),
	(gtk_tree_view_search_init):
	* tests/testtreeview.c: (run_automated_tests): change iter_root
	to iter_first
2002-02-24 04:18:44 +00:00
Jonathan Blandford
5d973ef32e change new_root to new_first to avoid confusion.
Sat Feb 23 22:10:52 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_path_new_first): change new_root to
	new_first to avoid confusion.
	(gtk_tree_model_get_iter_first): ditto.
2002-02-24 03:43:08 +00:00
Owen Taylor
82b76bbee3 gtk/gtksettings.c gtk/gtkstyle.c: Patch from Richard Hestilow to add a
Sat Feb 23 20:59:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.c gtk/gtkrc.[ch]: gtk/gtksettings.c gtk/gtkstyle.c:
        Patch from Richard Hestilow to add a gtk-font-name GtkSetting.

        * gdk/x11/gdkevents-x11.c: Add Gtk/FontName XSETTING.
2002-02-24 02:24:51 +00:00
Tor Lillqvist
d21ebc724c Move inclusion of <windows.h> before inclusion of <winsock.h>, to actually
2002-02-24  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkfilesel.c: Move inclusion of <windows.h> before inclusion
	of <winsock.h>, to actually get STRICT prototypes for Win32
	API. Include glib.h early to get G_OS_WIN32 and G_WITH_CYGWIN.
	Don't declare static functions that aren't defined if !HAVE_PWD_H
	or if G_OS_WIN32.
	(win32_gtk_add_drives_to_dir_list): Remove #if 0 code, reindent.
	(gtk_file_selection_get_selections): Don't crash if nothing has
	been selected.
2002-02-24 02:09:16 +00:00
Owen Taylor
6a802b24b3 Implement accelerator propagation using a custom XEMBED_GTK_KEY_GRAB
Sat Feb 23 20:33:29 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/xembed.h: Implement
        accelerator propagation using a custom XEMBED_GTK_KEY_GRAB
        XEMBED_GTK_KEY_UNGRAB pair of messages.

        * gtk/gtkwindow.[ch]: private export _gtk_window_keys_foreach().

        * gtk/gtkplug.c (gtk_plug_set_is_child): Clear focus and default
        widgets.
2002-02-24 01:52:14 +00:00
Havoc Pennington
f97ae50153 change gravity of start/end marks so that text added at either end of the
2002-02-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (save_range): change gravity of start/end
	marks so that text added at either end of the range doesn't end up
	inside the range.
	(gtk_text_buffer_real_insert_range): fix to handle pasting a range
	into itself. #71412
2002-02-24 00:38:59 +00:00
Jonathan Blandford
779ce437d7 Didn't refind node when it was NULL. Bug found by Tor Lillqvist.
Sat Feb 23 19:05:34 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (validate_visible_area): Didn't refind node
	when it was NULL.  Bug found by Tor Lillqvist.
2002-02-24 00:19:20 +00:00
Tor Lillqvist
591fe66d00 Set also group in the key press/release events, always to zero for now.
2002-02-24  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (build_keypress_event,
	build_keyrelease_event, gdk_event_translate): Set also group in
	the key press/release events, always to zero for now.
2002-02-23 23:51:19 +00:00
Anders Carlsson
660183e179 Alpha-pad icons so they get the correct size.
2002-02-24  Anders Carlsson  <andersca@gnu.org>

	* gtk/stock-icons/stock_dialog_error_48.png:
	* gtk/stock-icons/stock_sort_ascending_16.png:
	* gtk/stock-icons/stock_undelete_24.png:
	* gtk/stock-icons/stock_sort_descending_16.png:
	Alpha-pad icons so they get the correct size.
2002-02-23 23:46:24 +00:00
Owen Taylor
3fceb353bf Patch from Matthias Clasen to remove some excessive ::changed signals for
Sat Feb 23 16:52:38 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c: Patch from Matthias Clasen to remove some
        excessive ::changed signals for GtkEntry. (#53130)
2002-02-23 22:18:27 +00:00
Tor Lillqvist
b74d849bf2 Include the gtkrc files for themes.
2002-02-23  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Include the gtkrc files for themes.
2002-02-23 22:13:17 +00:00
Anders Carlsson
8466617e25 Rename strikeout to strikethrough.
2002-02-23  Anders Carlsson  <andersca@gnu.org>

	* gtk/Makefile.am (HTML_IMAGES): Rename strikeout to
	strikethrough.
2002-02-23 22:00:13 +00:00
Anders Carlsson
1eae84bced Register 16x16 versions of most icons.
2002-02-23  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkiconfactory.c (get_default_icons): Register 16x16
	versions of most icons.

	* gtk/stock-icons: Add 16x16 versions
	of most icons.
2002-02-23 21:59:43 +00:00
Jonathan Blandford
b2539ba480 delay scrolling until we try to draw the window.
Wed Feb 20 16:44:05 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): delay
	scrolling until we try to draw the window.

	* gtk/gtktreeview.c (validate_visible_area): Implement
	scroll_to_cell.
2002-02-23 21:53:04 +00:00
Tor Lillqvist
e59e91bf93 Add missing gtk_file_selection_get_select_multiple. Remove
2002-02-23  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtk.def: Add missing gtk_file_selection_get_select_multiple.
	Remove gtk_tree_view_column_cell_* entry points that were made
	private.
2002-02-23 21:47:59 +00:00
Owen Taylor
50fbc10b83 Make button draw depressed whenever the user clicks / activates it,
Sat Feb 23 15:43:46 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktogglebutton.c: Make button draw depressed whenever
        the user clicks / activates it, whether it's off/on/inconsistent.
2002-02-23 20:47:03 +00:00
Owen Taylor
e5d1ea8cfe Massive padding addition to class structures.
Sat Feb 23 11:54:12 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/*.h gdk/*.h: Massive padding addition to class structures.

        * gtk/gtktextmark.h: Fix a FIXME about G_CONST_RETURN.
2002-02-23 20:22:05 +00:00
Owen Taylor
96882ebc61 Applied patch from Thomas Leonard to make stepper click to scroll take
Fri Feb 22 20:28:18 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrange.c: Applied patch from Thomas Leonard to make
        stepper click to scroll take effect immediately, rather than after
        a delay (#67649).

        * gtk/gtkrange.c: Remove right-click == step in trough since it
        isn't a useful binding and it's a large area to hit accidentally.
        (Leave it on the steppers since its more useful there and less
        likely to do accidentally.)
2002-02-23 14:46:21 +00:00
Kjartan Maraas
70ace6c018 Updated Norwegian (bokml) translation.
2002-02-23  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-02-23 13:35:56 +00:00
Ole Laursen
1ff589bdd5 Updated Danish translation.
2002-02-23  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-02-23 13:13:36 +00:00
Pablo Saratxaga
2ff7322f9e Added Welsh file 2002-02-23 13:00:24 +00:00
Jody Goldberg
86ce9fdf04 lower case the key_val. (gtk_accel_group_connect_by_path) : ditto.
2002-02-23  Jody Goldberg <jody@gnome.org>

	* gtk/gtkaccelgroup.c (gtk_accel_group_connect) : lower case the
	  key_val.
	(gtk_accel_group_connect_by_path) : ditto.
	(gtk_accel_group_disconnect_key) : ditto.

	* gtk/gtkwidget.c (gtk_widget_real_key_release_event) : simplify.
	(gtk_widget_real_key_press_event) : ditto.
2002-02-23 07:56:41 +00:00
Jonathan Blandford
095ae0c09d Documented undocumented functions.
Sat Feb 23 00:28:47 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviecolumn.c: Documented undocumented functions.
2002-02-23 07:05:55 +00:00
Jonathan Blandford
95c0835107 Documented undocumented functions.
Sat Feb 23 00:28:47 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c: Documented undocumented functions.
2002-02-23 05:45:40 +00:00
Kristian Rietveld
c1a26cc321 honor min_width and max_width while resizing columns (pointed out by Jorn
Sat Feb 23 03:10:20 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_key_press): honor min_width and
        max_width while resizing columns (pointed out by Jorn Baayen)
2002-02-23 02:13:10 +00:00
Owen Taylor
53171867b5 Patch from Matthias Clasen (#54488)
Fri Feb 22 19:17:46 2002  Owen Taylor  <otaylor@redhat.com>

        Patch from Matthias Clasen (#54488)

        * gtk/gtkwindow.c: Set/unset HAS_FOCUS flags here,
        and do ::has-focus notifications.

        * gtk/gtkclist.c gtk/gtkentry.c gtk/gtksocket.c
        gtk/gtktext.c gtk/gtktextview.c gtk/gtkwidget.c:
        Remove unecessary focus_in/out handles and unecessary
        flag setting.

        * gtk/gtkwidget.c: Adda missing notification on ::parent.
2002-02-23 00:36:49 +00:00
Owen Taylor
a504db9e83 Fixes for AIX compilation from Miroslaw Dobrzanski-Neumann, #72182.
Fri Feb 22 18:36:45 2002  Owen Taylor  <otaylor@redhat.com>

	Fixes for AIX compilation from Miroslaw Dobrzanski-Neumann,
	#72182.

	* demos/gtk-demo/main.c gtk/gtktreeview.c gtk/gtktoolbar.c
	gtk/gtkpaned.c gtk/gtkobject.c gtk/gtkcontainer.c
	gtk/gtkcolorsel.c gtk/gtkcellrender.c gdk/x11/xsettings-client.h:
	Squash trailing commas on enumerations.

	* gdk/gdktypes.h: Drop GDK_RELEASE_MASK to 1 << 30 instead
	of 1 << 31 to work around AIX compiler problem. (C standard
	seems to imply that compiler is required to use an unsigned
	type for the enum value in this case.)

	* gdk/gdkpixbuf-drawable.c: Fix lvalue casts.

	* gtk/gtkwindow.h: Fix use of enum types for bitfields ...
	compilers may choose to use a signed type for bitfields.
2002-02-23 00:13:17 +00:00
Kristian Rietveld
c73054c5a9 Let's mention the bug number 2002-02-22 23:40:52 +00:00
Kristian Rietveld
c096137be5 leave threads before returning
Sat Feb 23 00:34:01 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (validate_rows_handler): leave threads before
        returning
2002-02-22 23:37:56 +00:00
Anders Carlsson
7d69cbedcf Rename icons.
2002-02-22  Anders Carlsson  <andersca@gnu.org>

	* gtk/stock-icons/*: Rename icons.

	* gtk/stock-icons/Makefile.am: Update for new icon names.

	* gtk/gtkiconfactory.c (init_icon_sizes): Set the
	GTK_ICON_SIZE_BUTTON size to be 20x20.
	(get_default_icons): Change stock names.

2002-02-22  Anders Carlsson  <andersca@gnu.org>

	* gtk/Makefile.am (HTML_IMAGES): Update for name changes.
2002-02-22 21:48:06 +00:00
Kristian Rietveld
45d646ebe9 add last_single_clicked and last_single_clicked_2 rowrefs and add
Fri Feb 22 22:39:59 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeprivate.h: add last_single_clicked and
        last_single_clicked_2 rowrefs and add disable_popdown to the
        bitfield

        * gtk/gtktreeview.c (gtk_tree_view_destroy): add destroy stuff
        for two new rowrefs
        (gtk_tree_view_button_press): add some 'advanced' button handling,
        so double click is being handled right (double click madness was
        discovered by Anders Carlsson)

        * gtk/gtktreeview.c (gtk_tree_view_set_property): add missing
        break
        (gtk_tree_view_class_init): default value of headers_visible
        should be TRUE (both pointed out by Damon Chaplin, #71986)

        * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
        connect to populate_popup,
        (gtk_tree_view_search_disable_popdown): new function,
        (gtk_tree_view_real_search_enable_popdown): ditto,
        (gtk_tree_view_search_enable_popdown): ditto,
        (gtk_tree_view_search_dialog_destroy): check for
        gtk-tree-view-popdown-disabled (#71868)

        * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): move
        ->priv->reorderable assignment to bottom. (#72122)
2002-02-22 21:36:48 +00:00
Havoc Pennington
ccfab158ec subtract 1 from line endpoint, to avoid cursor dirt in the text widget.
2002-02-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkstyle.c (_gtk_draw_insertion_cursor): subtract 1 from
	line endpoint, to avoid cursor dirt in the text widget.
	zero-width lines appear to draw the endpoint always. #67999
2002-02-22 17:16:59 +00:00
Havoc Pennington
5109ff0262 implement more cleanly by using text_window->allocation.x/y instead of
2002-02-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (buffer_to_widget): implement more cleanly by
	using text_window->allocation.x/y instead of recomputing it.
	Fixes a bug caused by leaving out the border width here.
2002-02-22 16:12:13 +00:00
Havoc Pennington
a07ef43710 call gtk_size_group_queue_resize to avoid invalidating the widget every
2002-02-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (changed_handler): call
	gtk_size_group_queue_resize to avoid invalidating the widget every
	time its requisition changes. Instead we use the btree invalid
	lines to know what to redraw. Fixes #71429
2002-02-22 15:55:14 +00:00
Søren Sandmann Pedersen
fb291194e1 remove conflict marker 2002-02-22 13:35:03 +00:00
Soeren Sandmann
5d81847f20 feedback when check and radio buttons are depressed.
Fri Feb 22 14:08:38 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkradiobutton.c, gtk/gtkcheckbutton.c, gtkbutton.h,
	gtktogglebutton.c: feedback when check and radio buttons are
	depressed.
2002-02-22 13:34:28 +00:00
Havoc Pennington
96387b40ea remove C++-commented debug spew, reported by David L. Cooper
2002-02-21  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
	C++-commented debug spew, reported by David L. Cooper
2002-02-22 02:00:57 +00:00
Matthias Clasen
6b11e5cf51 s/columns/rows/ in docs. (#70199)
* gtk/gtktreeview.c (gtk_tree_view_set_reorderable):
	s/columns/rows/ in docs.  (#70199)

	* gtk/gtktreestore.c (gtk_tree_store_insert): s/before/after/ in
	docs. (#71852, #68405)

	* gtk/gtkcalendar.c (gtk_calendar_select_day): Correct a comment.

	* gtk/tmpl/gtksignal.sgml, gtk/tmpl/gtkimage.sgml: s/%d/%%d/ in
	examples.  (#71479)

	* gtk/tmpl/gtkmenu.sgml: Document gtk_menu_set_active as
	quasi-private.  (#69788)

	* gtk/tmpl/gtkcalendar.sgml: Document month as zero-based and
	selected_day as one-based.  (#57169)
2002-02-22 00:26:54 +00:00
Kristian Rietveld
4deb783e6b add keynav handling for unselect all, focus column header, change focus
Thu Feb 21 23:02:29 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.[ch]: add keynav handling for unselect all,
        focus column header, change focus with arrow keys in column headers,
        column reordering, column resizing, small try to fix page up/down
        (this fixes #70889, and fixes a great deal of #53580)
2002-02-21 22:15:14 +00:00
Owen Taylor
e5e5a52112 Add GDK_ISO_Next_Group/Prev_Group/Level3_Shift/ First_Group/Last_Group to
Thu Feb 21 16:51:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelgroup.c (gtk_accelerator_valid): Add
        GDK_ISO_Next_Group/Prev_Group/Level3_Shift/
        First_Group/Last_Group to list of invalid accelerators.
        (A lot more that should be added, but probably would
        want a range mechanism. These are the ones found in
        the standard XFree86 config files.)

        * gtk/gtkbindings.c (gtk_bindings_activate): Fix problem
        that broke bindings for menus.

        * gtk/gtkwindow.[ch]: Export _gtk_window_activate_key()
        privately.

        * gtk/gtkmenushell.c (gtk_menu_shell_key_press): Use
        _gtk_window_activate_key(), gtk_bindings_activate_event().
2002-02-21 22:03:09 +00:00
Owen Taylor
196c1f5a02 Remove some workarounds for +/= and shift key handling.
Thu Feb 21 12:24:22 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkctree.c (gtk_ctree_class_init): Remove some workarounds
        for +/= and shift key handling.
2002-02-21 17:29:01 +00:00
Owen Taylor
708e1a9574 Implement "fuzzy" key binding lookups; allow matches on key and level but
Wed Feb 20 14:26:47 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.[ch]: Implement "fuzzy" key binding lookups;
        allow matches on key and level but not group. Also, implement
        ignoring "consumed modifiers correctly."

        * gtk/gtkaccelgroup.c gtk/gtkbindings.c: Convert to using
        GtkKeyHash.

        * gtk/gtkdebug.h gtk/gtkmain.c: Support GTK_DEBUG=keybindings

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fill in
        the group for key release events as well as key press events.

        * gdk/gdkkeys.h gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Rename unused_modifiers to consumed_modifiers, make the docs and
        non-Xkb implementation match the Xkb implementation.

        * gdk/linux-fb/gdkkeyboard-fb.c gdk/win32/gdkkeys-win32.c: Propagate
        doc and parameter name changes.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        XkbTranslateKeyCode doesn't handle LockMask, we need to handle
        it ourselves.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Force
        <Shift>Tab to give GDK_ISO_Left_Tab, since we need consistency
        to allow dealing with ISO_Left_Tab.

        * gtk/gtkwindow.c gtk/gtktextview.c gtk/gtkscrolledwindow.c
        gtk/gtkpaned.c gtk/gtkcombo.c  gtk/gtknotebook.c:
        Remove inappropriate uses of GDK_ISO_Left_Tab. (GDK_ISO_Left_Tab
        or <Shift>Tab both are equivalent as a binding specifier.)

        * gtk/gtkbutton.c (gtk_button_class_init): Make ::activate
        GTK_RUN_ACTION, so you can bind an accelerator to it.

        * gtk/gtklabel.c (gtk_label_set_uline_text_internal): Call
        gdk_unicode_to_keyval on the mnemonic character.

        * tests/testgtk.c: Add a test for the new fuzzy key binding matching.
2002-02-21 17:14:10 +00:00
Fatih Demir
3b94ae4be5 Updated. 2002-02-21 14:44:51 +00:00
jacob berkman
f27c2d5e95 inconsitent files are .pngs too
2002-02-21  jacob berkman  <jacob@ximian.com>

	* gtk/theme-bits/Makefile.am (EXTRA_DIST): inconsitent files are
	.pngs too
2002-02-21 07:10:02 +00:00
Owen Taylor
e6d7f5e196 Set the property as type ATOM_PAIR, not ATOM. (#72074, Gregory Merchan.)
Wed Feb 20 21:52:13 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkselection.c (gtk_selection_request): Set the property
        as type ATOM_PAIR, not ATOM. (#72074, Gregory Merchan.)

        * gdk/x11/gdk{property,selecton}-x11.c: Auto-convert properties
        of type ATOM_PAIR as well as properties of type ATOM.
2002-02-21 03:00:40 +00:00
Matthias Clasen
639c8cac7a screenshots of examples.
* docs/tutorial/images/*.png: screenshots of examples.

	* docs/tutorial/gtk-tut.sgml: remove deprecated widgets, add
	screenshots, fix chapters 1-4 for GTK+ 2.0.

	* demos/gtk-demo/Makefile.am (INCLUDES): add -DGDK_PIXBUF_DISABLE_DEPRECATED.
2002-02-21 00:40:16 +00:00
Soeren Sandmann
cdd97348e6 Many cleanups and fixes. Draw exclusively in expose handler. Feedback when
Thu Feb 21 00:31:41 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkspinbutton.c: Many cleanups and fixes. Draw exclusively
	in expose handler. Feedback when buttons are depressed.

	* gtk/gtkstyle.c: update for changes in gtkspinbutton.c. Fix
	spinbuttons for RTL langauges.
2002-02-20 23:36:28 +00:00
Soeren Sandmann
0ca5c75224 new radio buttons. handle inconsistent state for check- and radiobuttons.
Wed Feb 20 23:00:08 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkstyle.c: new radio buttons. handle inconsistent state for
	check- and radiobuttons.

	* gtk/theme-bits/check-13-inconsistent.png,
	gtk/theme-bits/radio-13-inconsistent.png: new files

	* gtk/theme-bits/radio-13.png: new radio buttons

	* gtk/theme-bits/Makefile.am (EXTRA_DIST): add new
	-inconsistent.png files
2002-02-20 22:09:25 +00:00
Owen Taylor
6fd8f4aab0 Add a XSETTING mapping for gtk-can-change-accels. (#70218, Thomas
Wed Feb 20 16:19:49 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c: Add a XSETTING mapping for
	gtk-can-change-accels. (#70218, Thomas Leonard.)
2002-02-20 21:22:22 +00:00
Sven Neumann
55b46cc8d4 check handler_id before disconnecting the signal handler since it might
2002-02-20  Sven Neumann  <sven@gimp.org>

	* gtk/gtkcolorsel.c (gtk_color_selection_finalize): check
	handler_id before disconnecting the signal handler since it might
	have never been connected if the GtkColorSelection is destroyed
	before it was realized.
2002-02-20 11:56:17 +00:00
Matthias Clasen
8ac97865e8 Fold back Svens g_signal fixes from the examples.
* docs/tutorial/gtk-tut.sgml: Fold back Svens g_signal fixes from
	the examples.

	* docs/tutorial/gtk-tut.sgml, examples/progressbar/progressbar.c,
	examples/progressbar/Makefile: Make the progressbar example
	deprecation-clean.
2002-02-20 01:40:15 +00:00
Sven Neumann
c53f6b6713 gtk/gtk-sections.txt updated for treeviewcolumn changes.
2002-02-20  Sven Neumann  <sven@gimp.org>

	* gtk/gtk-sections.txt
	* gtk/tmpl/gtktreeviewcolumn.sgml: updated for treeviewcolumn changes.
2002-02-19 23:22:05 +00:00
Kristian Rietveld
1f42693a0f Another fix -- get bug number right *grumble* 2002-02-19 21:24:17 +00:00
Kristian Rietveld
29522c9495 fixing ChangeLog 2002-02-19 21:19:48 +00:00
Kristian Rietveld
19f961d46a new function (gtk_tree_view_column_create_button): use g_signal_* instead
Tue Feb 19 22:10:59 2002  Kristian Rietveld  <kris@gtk.org>

        * gtktreeviewcolumn.c (gtk_tree_view_column_mnemonic_activate): new
        function
        (gtk_tree_view_column_create_button): use g_signal_* instead of
        gtk_signal_*, hook up _mnemonic_activate callback
        (gtk_tree_view_column_update_button): use
        gtk_label_set_text_width_mnemonic instead of gtk_label_set_text
        (#69095)

        * gtktreeview.c (gtk_tree_view_class_init): remove key bindings
        for C-f and C-b, let treeview search use C-f (instead of C-s)
        (#61886)

        * gtkrc.key.emacs: add some GtkTreeView bindings
2002-02-19 21:16:49 +00:00
Soeren Sandmann
fde8cad894 fix bug (skipping all black pixels).
Tue Feb 19 20:56:32 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/theme-bits/decompose-bits.c (do_part): fix bug (skipping all
	black pixels).
2002-02-19 19:59:37 +00:00
Sven Neumann
6dea3cae13 finish conversion to g_signal_* functions by using G_OBJECT and G_CALLBACK
2002-02-19  Sven Neumann  <sven@gimp.org>

	* examples/*/*.c: finish conversion to g_signal_* functions by
	using G_OBJECT and G_CALLBACK and other assorted changes.
2002-02-19 19:47:16 +00:00
Kristian Rietveld
601302c7a3 change gtk_tree_view_column_cell_render, gtk_tree_view_column_cell_focus,
Tue Feb 19 17:36:31 2002  Kristian Rietveld  <kris@gtk.org>

        * gtktreeprivate.h, gtktreeviewcolumn.[ch], gtktreeview.c: change
        gtk_tree_view_column_cell_render,
        gtk_tree_view_column_cell_focus,
        gtk_tree_view_column_cell_draw_focus and
        gtk_tree_view_column_cell_set_dirty to be private functions.

        * gtktreeviewcolumn.[ch]: add install_handler argument to
        _cell_set_dirty to control if _mark_rows_col_dirty (which calls
        install_presize_handler) gets called, set widths correctly so
        autosizing works (#71870)

        * gtktreeview.c (gtk_tree_view_column_autosize): new function,
        (gtk_tree_view_button_press): make double click on column
        separator resize the row (#71870)
        (gtk_tree_view_get_dest_row_at_pos): change DnD threshold to 33%
        (#71869, suggestion by Anders Carlsson)
2002-02-19 18:21:50 +00:00
Owen Taylor
a255d9cd01 Add routines _gtk_find_module(), _gtk_get_module_path() to look up a
Mon Feb 18 23:16:16 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmain.[ch]: Add routines _gtk_find_module(),
        _gtk_get_module_path() to look up a module of an arbitrary type in
        a standard fashion. (#68474)

        * gtk/gtkrc.c: Make module_path keyword warn and do
        nothing. Remove the im_module_path keyword.

        * gtk/gtkrc.c (gtk_rc_get_im_module_path): Fix
        to return the standard path instead of one determined
        from im_module_path and GTK_IM_MODULE_PATH.

        * gtk+-2.0.pc.in: Add gtk_host to go along with gtk_binary_version.
2002-02-19 05:33:34 +00:00
Matthias Clasen
bd73a312f0 Trivial formatting fixes to all examples, simple functional fixes to
* docs/tutorial/gtk-tut.sgml, docs/examples/*: Trivial formatting
	fixes to all examples, simple functional fixes to rangewidgets example.
2002-02-19 01:25:26 +00:00
Owen Taylor
c3940d4a07 Select the right item in the family list. (Reported by Mark Patton, Patch
Mon Feb 18 18:27:45 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Select
        the right item in the family list. (Reported by Mark Patton,
        Patch from Satajyit Kanungo, #64240)

        * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Update
        the size and face entry lists as well, fix memory leak.
        (Also #64240)

        * gtk/gtkfontsel.c (gtk_font_selection_show_available_sizes):
        Allow fractional sizes, unselect the selected row if none
        matches.

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_focus): Fix
        a bug where the scrolled window would always get focus
        when focusing out of the child.
2002-02-18 23:43:25 +00:00
Hans Breuer
911700a37e process WM_PAINT messages for bg_pixmap == GDK_NO_BG, fixes The GIMP's
2002-02-18  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkevents-win32.c : process WM_PAINT messages
	for bg_pixmap == GDK_NO_BG, fixes The GIMP's canvas
	rendering glitches on win32

	* gdk/win32/gdkinput-win32.c : use g_object_new to create
	GdkDevice instead of g_new

	* gtk/gtkpaned.c : make LAST_SIGNAL the last in enum.
	This avoids to smash totally unrelated static data and
	resulting random crashes. (as reported on gtk-devel-list,
	2002-02-10 : testgtk crashes)

	* gtk/gtk.def : add new file selection entry points
2002-02-18 22:56:57 +00:00
Owen Taylor
7ea9e8046f Remove support for the poorly defined text/plain type for now. (#55117)
Mon Feb 18 17:34:43 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c gtk/gtktextview.c: Remove support for
        the poorly defined text/plain type for now. (#55117)
2002-02-18 22:36:04 +00:00
Owen Taylor
8fe564e37a Add some docs for GTK_NEED_REQUEST GTK_NEED_ALLOCATION.
Mon Feb 18 16:44:00 2002  Owen Taylor  <otaylor@redhat.com>

        * docs/widget_system.txt: Add some docs for GTK_NEED_REQUEST
        GTK_NEED_ALLOCATION.

        * gtk/gtkmenu.c (gtk_menu_popup): Scroll the menu
        to the right place before showing the menu to
        avoid spurious enter events.

        * gtk/gtkmenu.c (gtk_menu_realize): Only scroll
        if there is an active menu item.

        * gtk/gtkwidget.c (gtk_widget_init): Set RESIZE_NEEDED
        ALLOC_NEEDED initially.
2002-02-18 22:08:41 +00:00
Matthias Clasen
a2bf986bd0 fix the version number in NEWS 2002-02-18 21:33:08 +00:00
Manish Singh
78c6308a01 ack, remove conflict marker 2002-02-18 20:32:58 +00:00
Manish Singh
a3b1cd22c4 don't comment out the lines to dist the packer example, just simply remove
2002-02-18  Manish Singh  <yosh@gimp.org>

        * Makefile.am: don't comment out the lines to dist the packer
        example, just simply remove it. (the continuation line confused
        make even though it was in the comment, barf)
2002-02-18 20:32:14 +00:00
Manish Singh
ded86e553c really remove 2002-02-18 20:14:42 +00:00
Owen Taylor
211c469646 Fix problems with stuck grab (#60132, reported by Nicolas Setton) and
Mon Feb 18 14:40:22 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcombo.c (gtk_combo_popdown_list): Fix problems
	with stuck grab (#60132, reported by Nicolas Setton) and
	stuck prelighting. Combine duplicated code in three
	places for popping down the list.
2002-02-18 20:03:34 +00:00
Owen Taylor
b2b29ea184 gtk/gtkclist.c (adjust_adjustments) gtk/gtklayout.c
Mon Feb 18 14:17:59 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkclist.c (adjust_adjustments)
        * gtk/gtklayout.c (gtk_layout_size_allocate)
        * gtk/gtktextview.c (gtk_text_view_size_allocate)
        * gtk/gtktreeview.c (gtk_tree_view_size_allocate)
        * gtk/gtkviewport.c (gtk_viewport_size_allocate):
        Standardize on a page increment of page minus 1 line
        rather than half a page (#51027, Eric Fischer)

        * gtk/gtkviewport.c (gtk_viewport_size_allocate):
        Change step increment to be 0.1 * page_size height rather than
        a fixed 10 pixels.
2002-02-18 19:20:31 +00:00
Owen Taylor
6f58c368d8 Don't commit unless we got at least one hex digit. (#70619)
Mon Feb 18 12:31:52 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress):
	Don't commit unless we got at least one hex digit. (#70619)
2002-02-18 17:35:58 +00:00
Owen Taylor
2e8d083c3c Released 1.3.14
Sun Feb 17 21:30:49 2002  Owen Taylor  <otaylor@redhat.com>

        * Released 1.3.14

        * configure.in: Version 1.3.14, interface, binary age 0.

        * gdk/gdkregion-generic.c (miSubtractO): Fix out-of-bounds
        read. (#71619, reported by Morten Welinder)

        * gtk/gtkmenu.c (gtk_menu_class_init): Fix setting default.

        * gtk/gtkfilesel.c (gtk_file_selection_class_init): Add
        a select_multiple property to go along with thenew
        get/set_select_multiple.

        * gdk/gdkwindow.c: Patch from Soeren Sandmann to improve
        update debugging code. (#71703)
2002-02-18 03:29:00 +00:00
Owen Taylor
e0f2974885 Updated for filesel changes.
Sun Feb 17 21:33:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk-sections.txt: Updated for filesel changes.
2002-02-18 02:34:58 +00:00
Tor Lillqvist
28bfe19594 Don't set the PC_EXPLICIT flag for unused palette entries, that might have
2002-02-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkcolor-win32.c (free_colors): Don't set the
	PC_EXPLICIT flag for unused palette entries, that might have
	undesired side effects. Just set them to black. Black is always
	present in a palette, so having superfluous black entries won't
	cause any extra allocations from the system palette either when
	realized.

	* gdk/win32/gdkevents-win32.c
	(gdk_event_translate:WM_QUERYNEWPALETTE): Don't do anything if the
	system visual is static color, i.e. the user has told GDK to use
	just the 16 static colors. In that case no need to redraw
	anything, as the colors are static and by definition always
	correctly mapped in the system palette.
	(WM_PALETTECHANGED): Ditto, no need to call UpdateColors() either.
2002-02-17 22:03:29 +00:00
Matthias Clasen
38d639c0e8 Make the paned example deprecation-clean.
* docs/tutorial/gtk-tut.sgml, examples/paned/paned.c,
	examples/paned/Makefile: Make the paned example deprecation-clean.

	* various ChangeLog files: correct my email.
2002-02-17 19:59:33 +00:00
jacob berkman
f1f5cc1a91 remove the packer example files as they don't exist in CVS.
2002-02-17  jacob berkman  <jacob@ximian.com>

	* Makefile.am: remove the packer example files as they don't exist
	in CVS.
2002-02-17 06:51:31 +00:00
Manish Singh
cfca364ba3 hm, check buttons look better for below.
2002-02-16  Manish Singh  <yosh@gimp.org>

        * tests/testgtk.c: hm, check buttons look better for below.
2002-02-17 01:26:52 +00:00
Manish Singh
0adb1b260a redid the filesel test. Added a way to set select multiple as a toggle
2002-02-16  Manish Singh  <yosh@gimp.org>

        * tests/testgtk.c: redid the filesel test. Added a way to set select
        multiple as a toggle button, and made show/hide fileops toggle
        buttons as well. get_selections() is called on OK and all the
        filenames selected are printed.
2002-02-17 01:16:24 +00:00
Tor Lillqvist
efbdfddbf2 Remove comment about the gtk-1-3-win32-production branch having more
2002-02-17  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Remove comment about the gtk-1-3-win32-production
	branch having more functionality.
2002-02-17 00:35:41 +00:00
Tor Lillqvist
bc1ec5c14a Massive changes. Too many to list here, but I'll try a summary:
2002-02-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/*.c: Massive changes. Too many to list here, but I'll
	try a summary:

	1) Unify GdkPixmap and GdkImage implementation: For each
	GdkPixmap, allocate a GdkImage, and vice versa.
	GdkPixmapImplWin32Data has a pointer to the GdkImage.
	GdkImage::windowing_data is a pointer to the GdkPixmap.

	This simplifies many pixmap and image related functions a lot, and
	reduces duplicated code snippets. For instance, there is only one
	place in gdk/win32 where CreateDIBSection() is called, in the
	function _gdk_win32_new_pixmap(). Converting a bitmap (GdkPixmap)
	to a Windows region is almost trivial, with the bitmap bits being
	readily accessible in the associated GdkImage.

	All blitting between GdkPixmaps, GdkWindows and GdkImages goes
	through handled the _gdk_win32_blit() function, which calls
	different functions to handle the cases of blitting from pixmaps,
	inside windows (scrolling), or from windows, which all require
	somewhat different handling.

	2) Support 256-color mode. This has long been very broken, now it
	works more or less OK. Keep the logical palette for each colormap
	as small as possible while allocating and freeing colors. Select
	and realize the logical palette associated with a GdkColormap into
	a DC before drawing or blitting.

	When the display is in 256-color mode, make it possible for the
	user to override the size of the palette(s) used with either the
	GDK_WIN32_MAX_COLORS environment variable, or a -max-colors
	command line option. It is possible to reduce the palette size all
	the way down to using just the 16 static colors (which causes the
	system visual to be of type GDK_VISUAL_STATIC_COLOR. This could
	possibly be useful if one desperately wants to avoid color
	flashing. (Note that in order for this to work properly, an as of
	yet not commited fix to gdkrgb.c is needed.)

	Handle the palette messages. On WM_PALETTECHANGED, call
	UpdateColors() for the given window hierarchy. Do this only if a
	window in some other top-level window hierarchy caused the palette
	change (realized a palette). Do this max five times in a row (an
	arbitrarily chosen limit), though, otherwise redraw by generating
	expose events. On WM_QUERYNEWPALETTE, cause a redraw of the whole
	window hierarchy by generating GDK_EXPOSE events.

	3) Code cleanup in general. For instance, remove the "emulated"
	X11 structs ColormapStruct, Visual and XStandardColormap. Use the
	new GDK_DEBUG_* flags for debugging output in the relevant source
	files. Remove the unused colormap hash table in gdkcolor-win32.c

	4) Plug some resource leaks.

2002-02-14  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Use
	g_filename_to_uri() to actually create legal URIs in the
	text/uri-list data.
2002-02-17 00:25:05 +00:00
Manish Singh
ff612419cd Added multiple selection API
2002-02-16  Manish Singh  <yosh@gimp.org>

        * gtk/gtkfilesel.[ch]: Added multiple selection API
2002-02-17 00:07:48 +00:00
Manish Singh
665723279c use fabs() on a double instead of abs()
2002-02-16  Manish Singh  <yosh@gimp.org>

        * gdk/linux-fb/miarc.c: use fabs() on a double instead of abs()
2002-02-17 00:06:00 +00:00
Matthias Clasen
b3d5f148e6 More work on #71430.
* examples/*/Makefile (CFLAGS): add deprecation guards.

	* docs/tutorial/gtk-tut.sgml, examples/*/*.c: make most examples
	deprecation-clean; the major offenders right now are the examples
	that make heavy use of completely deprecated or broken widgets:
	list, tree, text, pixmap, paned and progressbar. These will have
	to be redone from scratch.

	* demos/Makefile.am (INCLUDES): add -DGDK_PIXBUF_DISABLE_DEPRECATED.
2002-02-16 23:52:30 +00:00
Kristian Rietveld
554838e4f6 This commit lands the 'dy patch'.
Sun Feb 17 00:13:06 2002  Kristian Rietveld  <kris@gtk.org>

        This commit lands the 'dy patch'.

        * gtk/gtktreeview.c (validate_rows_handler): update top_row or dy,
        (gtk_tree_view_top_row_to_dy): new function,
        (gtk_tree_view_row_changed): update top_row or dy,
        (gtk_tree_view_rows_reordered): update top_row
2002-02-16 23:13:37 +00:00
Matthias Clasen
21ac424e41 rearrange rules to not emit the example start and end markers.
* examples/extract.awk: rearrange rules to not emit the example
	start and end markers.

	* docs/tutorial/gtk-tut.sgml: turn the start and end markers into
	SGML comments, so they don't clutter the formatted tutorial.
2002-02-16 18:31:14 +00:00
Matthias Clasen
e07fabae62 Forgot to actually remove these. 2002-02-16 18:05:19 +00:00
Tivo Leedjrv
8f7ef45410 Updated Estonian translation.
2002-02-16  Tivo Leedjrv  <leedjarv@interest.ee>

        * et.po: Updated Estonian translation.
2002-02-16 16:51:54 +00:00
Havoc Pennington
e672dd6112 take GDK_HINT_RESIZE_INC into account, and handle negative coordinates
2002-02-16  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.c (gtk_window_parse_geometry): take
	GDK_HINT_RESIZE_INC into account, and handle negative coordinates
	correctly. (Can't email Owen - hope this is OK.)
2002-02-16 14:41:15 +00:00
Owen Taylor
59fc8ff804 Add key bindings on GtkScrolledWindow for arrow keys, PageUp/PageDown
Fri Feb 15 20:09:45 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkscrolledwindow.[ch] gtk/gtkmarshallers.list:
        Add key bindings on GtkScrolledWindow for arrow keys,
        PageUp/PageDown Home/End to scroll the window.
        Bind Control-[Shift]-Tab to focus out of the scrolled
        window entirely. Allow the scrolled window to be
        focused if no child can be focused. (#63480)

        * gtk/gtkwidget.c (gtk_widget_hide): Remove the REALIZED()
        check - if we have visible but not mapped widgets
        (inside a unshown notebook tab, for instance), we need
        to track their size. (#65087, reported by Damon Chaplin.)

        * gtk/gtkcolorsel.c (palette_change_color): Shut up
        a warning.
2002-02-16 01:34:26 +00:00
Tor Lillqvist
c69c19c791 Depend on gtk.ico.
2002-02-16  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/rc/Makefile.am (gdk-win32res.lo): Depend on gtk.ico.

	* gdk/win32/rc/gtk.ico: Use the real GTK logo. Thanks to Jernej
	Simoncic for providing the nice multi-resolution .ico file.
2002-02-15 23:55:42 +00:00
Matthias Clasen
bc90028d8d New function to make sure that the weights sum up to the correct total
* pixops/pixops.c (correct_total): New function to make sure
	that the weights sum up to the correct total without introducing
	negative weights.
	(tile_make_weights, bilinear_make_fast_weights,
	bilinear_make_weights): Use correct_total.
2002-02-15 21:11:25 +00:00
Alexey Malyshev
dbe4dbe8e9 gtk/tmpl/gtkimage.sgml removed wrong sentence from gtk_image_new() docs
2002-02-15            Alexey Malyshev       <maa@sparc.spb.su>
        * gtk/tmpl/gtkimage.sgml
	removed wrong sentence from gtk_image_new() docs
2002-02-15 19:22:37 +00:00
Kristian Rietveld
baf21fbfa2 new function (gtk_tree_store_clear): traverse the tree, so we emit
Fri Feb 15 19:38:00 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreestore.c (gtk_tree_store_clear_traverse): new function
        (gtk_tree_store_clear): traverse the tree, so we emit row_deleted
        for every node. This way we don't have confused row refs crashing the
        application. (#70631)
2002-02-15 18:38:02 +00:00
Richard Hult
d7f8af9af0 Only queue a draw on the handle, not the whole widget. #71530.
2002-02-14  Richard Hult  <rhult@codefactory.se>

	* gtk/gtkpaned.c (gtk_paned_enter): Only queue a draw on the
	handle, not the whole widget. #71530.
	(gtk_paned_leave): Likewise.
2002-02-15 08:53:14 +00:00
Jody Goldberg
f0ed36b324 add new signal 'adjust_bounds' to potentialy change the bounds before
2002-02-14  Jody Goldberg <jody@gnome.org>

	* gtk/gtkrange.c (gtk_range_class_init) : add new signal
	  'adjust_bounds' to potentialy change the bounds before assigning the
	  new value and camping it to the existing bounds.
	(gtk_range_internal_set_value) : used here. #68800.
	* gtk/gtkmarshalers.list : add VOID:DOUBLE
2002-02-15 05:53:08 +00:00
Owen Taylor
27455dcd90 File Edit Options Buffers Tools Help Thu Feb 14 21:08:49 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkglobals.c: Remove GDKVAR from C file, see
        if anyone complains. (#71317, Morten Welinder.)
2002-02-15 02:45:09 +00:00
Matthias Clasen
542dec4ce1 The following changes are the beginning of the work on #71430.
* examples/extract.sh, examples/extract.awk: Make extraction work.

	* examples/Makefile (SUBDIRS): Remove packer.

	* examples/packer/pack.c, examples/packer/Makefile: Removed.

	* docs/tutorial/gtk-tut.sgml: Fix the included examples far
	enough to make them compile and (mostly) work, remove the packer
	example.
2002-02-14 22:49:57 +00:00
Owen Taylor
8f5c2c7625 Patch from Bill Haneman and Padraig O'Briain to add cursor_aspect_ratio
Thu Feb 14 16:46:48 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c gtk/gtktextdisplay.c gtk/gtklabel.c
	gtk/gtkstyle.[ch] gtk/gtkwidget.c: Patch from Bill
	Haneman and Padraig O'Briain to add cursor_aspect_ratio
	style property to GtkWidget to allow theming the aspect
	ratio of the cursor.

	* gtk/gtkentry.c gtk/gtktextview.c gtk/gtklabel.c
	gtk/gtkwidget.c tests/testgtkrc: Move cursor-color style property
	to GtkWidget.
2002-02-14 21:49:02 +00:00
Owen Taylor
f412d947c5 Fix bug where we called get_surrounding on the context,. not the slave.
Thu Feb 14 11:13:22 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_surrounding):
        Fix bug where we called get_surrounding on the context,.
        not the slave.
2002-02-14 16:18:32 +00:00
Owen Taylor
b4edb9da99 Only pop the tooltip down on a select set of events, not on any unknown
Thu Feb 14 00:10:09 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktooltips.c (gtk_tooltips_event_handler): Only
        pop the tooltip down on a select set of events, not
        on any unknown event. (#71157, Jody Goldberg)

        * gtk/gtktooltips.c (gtk_tooltips_event_handler):
        Fix some warnings.
2002-02-14 05:18:44 +00:00
Owen Taylor
a5915e5638 A bunch of small allocation/drawing fixes.
Thu Feb 14 00:02:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcalendar.c (gtk_calendar_size_request): A bunch of
        small allocation/drawing fixes.

        * gtk/gtkcalendar.c: Replace DAY_XPAD, DAY_YPAD with
        GtkWidget::focus-padding
2002-02-14 05:05:45 +00:00
Owen Taylor
5389f51db8 Patch from Bill Haneman to draw to focus using gtk_paint_focus() with the
Wed Feb 13 23:01:20 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalendar.c: Patch from Bill Haneman to draw
	to focus using gtk_paint_focus() with the focus width
	GtkWidget::focus-width. (#63075)

	* gtk/gtkcalendar.c (gtk_calendar_size_request): Initialize
	label_char_ascent/descent to 0. (#56925)
2002-02-14 04:05:13 +00:00
Havoc Pennington
07002791f7 validate a larger area, proportional to widget size, to fix #71427
2002-02-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_flush_scroll): validate a
	larger area, proportional to widget size, to fix
	#71427 reported by Dennis Bjorklund
2002-02-14 00:06:13 +00:00
Havoc Pennington
a760ad804e just go ahead and flush all the first validate stuff if it hasn't been
2002-02-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_paint): just go ahead and flush
	all the first validate stuff if it hasn't been done, presumably
	someone called process_updates at a weird time.

	* tests/testtext.c (do_apply_colors): terminate on >= end, not >
	end, avoids infinite loop when end is at the end of the buffer.

	* gtk/gtktextbtree.c (_gtk_text_btree_delete): when creating a
	line data, we were adding it to the wrong line ("line" instead of
	"start_line")
2002-02-13 23:44:03 +00:00
Joe Shaw
3a4a6edb79 Don't chain up to the container's expose event. Instead call
2002-02-13  Joe Shaw  <joe@ximian.com>

	* gtk/gtktreeitem.c (gtk_tree_item_expose): Don't chain up to the
	container's expose event.  Instead call
	gtk_tree_item_expose_child() on each child.  Avoids a failed
	g_assert() in gtk_container_propagate_expose().
	(gtk_tree_item_expose_child): Added.  Synthesize an expose event
	for our children.  Basically gtk_container_propagate_expose()
	minus the g_assert().  (#71396)
2002-02-13 22:49:40 +00:00
Tor Lillqvist
d000d2bb6d Add some more GdkDebugFlags, for more fine-grained debugging output
2002-02-13  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkinternals.h: Add some more GdkDebugFlags, for more
	fine-grained debugging output (mainly used in the Win32 backend).

	* gdk/gdk.c: Corresponding additions to the gdk_debug_keys table.
2002-02-13 21:59:47 +00:00
Owen Taylor
803a1f6fbc Implement Control-F1 as toggle-tooltips-mode.
Wed Feb 13 15:42:42 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.[ch] gtkwidget.c: Implement Control-F1
	as toggle-tooltips-mode.

	* gtk/gtktooltips.c: Remove parsing of tooltips style
	string from here ... now in gtkrc.c.
2002-02-13 20:54:11 +00:00
Owen Taylor
6b838a22d1 g_warning() if setting the local fails, like gdk_set_locale() did.
Wed Feb 13 12:41:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmain.c (gtk_init_check): g_warning() if setting
        the local fails, like gdk_set_locale() did.

        * gdk/x11/gdkselection-x11.c (gdk_text_property_to_utf8_list):
        Don't free local_list if local_count == 0. (#71241, reported
        by Kevin Vandersloot.)

        * gdk/x11/gdkselection-x11.c (gdk_text_property_to_text_list):
        Clean up list == NULL handling and failure.
2002-02-13 17:48:01 +00:00
Owen Taylor
294e8eb7bb Cast GType to long and use %ld to fix warning. (#71318, Morten Welinder)
Wed Feb 13 11:27:31 2002  Owen Taylor  <otaylor@redhat.com>

	* tests/testtreeview.c (typesystem_recurse): Cast GType
        to long	and use	%ld to	fix warning. (#71318, Morten Welinder)
2002-02-13 16:40:31 +00:00
Tim Janik
f42cc7f7fb fix figuring accel path and changing behaviour.
Wed Feb 13 13:26:39 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenu.c: fix figuring accel path and changing behaviour.
2002-02-13 12:28:33 +00:00
Tim Janik
aa18bbf0ed partly revert my recent expanding change to not expand the table if all
Wed Feb 13 06:42:37 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
        my recent expanding change to not expand the table if all children
        have not epxand behaviour. this fixes palette views which often
        use homogeneous non-expanding tables.
2002-02-13 05:48:56 +00:00
Matthias Clasen
a9a06ee44e Add a (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
* test-images.h (tiff1_test_3), test-loaders.c (main): Add a
	(#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().

	* io-ico.c (DecodeHeader): Check that pixbuf could be allocated.

	* test-images.h (ico_test_2), test-loaders.c (main): Test the
	previous change.

	* io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
	beyond the end of buffer if width % 8 != 0.

	* io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
	the supported types, otherwise parse_data_for_row () will not make
	any progress, leading to an infinite loop.
2002-02-12 23:28:05 +00:00
Kristian Rietveld
67051d64f4 emit row_deleted before we start unreffing the nodes ourselves
Tue Feb 12 14:27:41 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit
        row_deleted before we start unreffing the nodes ourselves
        (gtk_tree_model_sort_increment_stamp): always increment the stamp,
        and not only if the stamp equals 0 (pointed out by Darin Adler)

        * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): we want
        to continue the while loop and not the nested for loop.
2002-02-12 17:48:02 +00:00
Tim Janik
1cc88c4cf8 always spread out the extra space allocated for the homogeneous case, as
Tue Feb 12 02:19:49 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtktable.c (gtk_table_size_allocate_pass1): always spread out
        the extra space allocated for the homogeneous case, as we don't
        properly deal with readjusting table allocation within it. (for  this
        purpose, a GtkAlignment can be used as table parent).
2002-02-12 01:39:28 +00:00
Darin Adler
c823b8f6fd Consider reordering the row even when there's no sort column, if there's a
* gtk/gtktreemodelsort.c: (gtk_tree_model_sort_row_changed):
        Consider reordering the row even when there's no sort column, if
        there's a default sort function.
        (gtk_tree_model_sort_rows_reordered): Use symbolic constants.
        (gtk_tree_model_sort_level_find_insert): Add code to handle the
        case where there is no sort column, but a default sort function.
        (gtk_tree_model_sort_insert_value): Add code to handle the case
        where there is no sort column an no default sort function.
        (gtk_tree_model_sort_set_model): Use symbolic constant.
        (gtk_tree_model_sort_reset_default_sort_func): Use symbolic constant.
2002-02-12 01:00:22 +00:00
Kjartan Maraas
fa5f2b7463 Updated Norwegian (bokml) translation.
2002-02-12  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-02-12 00:53:11 +00:00
Duarte Loreto
05c3f2f061 Updated Portuguese translation.
2002-02-11  Duarte Loreto <happyguy_pt@hotmail.com>

        * pt.po: Updated Portuguese translation.
2002-02-11 23:52:37 +00:00
Søren Sandmann Pedersen
244d3b9452 Fix ChangeLog 2002-02-11 22:21:19 +00:00
Sven Neumann
8e110a965d converted the "Delete File" dialog to GtkMessageDialog. Marked missing
2002-02-11  Sven Neumann  <sven@gimp.org>

	* gtk/gtkfilesel.c: converted the "Delete File" dialog to
	GtkMessageDialog. Marked missing strings for translation.
2002-02-11 21:17:11 +00:00
Soeren Sandmann
abc8455dea Opaque resizing + prelighting for paned widget. move reszing logic to
Mon Feb 11 22:03:15 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkpaned.[ch]: Opaque resizing + prelighting for paned widget.
	* gtk/gtkvpaned.c, gtk/gtkvpaned.h: move reszing logic to gtkpaned.c
2002-02-11 21:10:33 +00:00
Kristian Rietveld
d456e05b81 Implements DnD scrolling and fixes #71139
Mon Feb 11 21:42:17 2002  Kristian Rietveld  <kris@gtk.org>

        Implements DnD scrolling and fixes #71139

        * gtk/gtktreeview.c (gtk_tree_view_vertical_autoscroll): new function,
        (scroll_row_timeout): new function,
        (gtk_tree_view_drag_motion): create scroll_timeout, so
        scroll_row_timeout gets called
2002-02-11 20:46:49 +00:00
Owen Taylor
01b9bd9310 Fix handing of overall alpha.
Mon Feb 11 14:31:53 2002  Owen Taylor  <otaylor@redhat.com>

        * pixops/pixops.c (bilinear_make_weights): Fix handing of
        overall alpha.
2002-02-11 19:36:12 +00:00
Kristian Rietveld
8d8fb0cd5f set upper member of hadjustment correct, so the hscrollbars of lists
Mon Feb 11 17:54:46 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_size_allocate): set upper
        member of hadjustment correct, so the hscrollbars of lists smaller
        than 1 page (in width) are somewhat saner
2002-02-11 16:58:23 +00:00
jacob berkman
6480d8bd50 fix signature to match implementation
2002-02-11  jacob berkman  <jacob@ximian.com>

	* gdk/gdkwindow.h (gdk_get_default_root_window): fix signature to
	match implementation
2002-02-11 16:34:27 +00:00
Kristian Rietveld
bd6985590f set value of func to NULL during initialization (we don't use func in the
Mon Feb 11 16:48:34 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtkliststore.c (gtk_list_store_set_valist): set value of
        func to NULL during initialization (we don't use func in the
        !SORTED case, so we just silent the compiler here) (#71029)
2002-02-11 15:48:22 +00:00
Kristian Rietveld
105781a0e3 install presize handler, so the validate_rows_handler will always be run
Mon Feb 11 16:40:44 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_set_model): install presize
        handler, so the validate_rows_handler will always be run (#70997)
2002-02-11 15:37:53 +00:00
Kristian Rietveld
cb3a60abed Get the damn fix right, see my latest ChangeLog entry. 2002-02-11 15:06:59 +00:00
Kristian Rietveld
50974e7cc8 Add bug number 2002-02-10 23:03:05 +00:00
Kristian Rietveld
1aefb11605 increase value of new_location by one if cmp_a > 0 and we hit the end of
Sun Feb 10 22:20:46 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): increase
        value of new_location by one if cmp_a > 0 and we hit the end of
        the list and pass NULL instead of a 'NULL-iter' with
        _rows_reordered
2002-02-10 22:53:20 +00:00
Matthias Clasen
73aa2bfe05 Enable some tests which should work now.
* test-loaders.c (main): Enable some tests which should work
	now.

	* io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
	invalid image dimensions and insufficient memory.

	* io-tga.c (try_preload): Detect invalid image dimensions.
	(gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.

	* io-ico.c (DecodeHeader): Detect some invalid headers and
	don't segfault.
2002-02-10 21:06:15 +00:00
Owen Taylor
8846275862 Add three Ethiopic input methods from Daniel Yacob.
Sun Feb 10 12:32:44 2002  Owen Taylor  <otaylor@redhat.com>

        * modules/input/Makefile.am modules/input/{imam-et.c, imti-er.c,
        imti-et.c} po/POTFILES.in: Add three Ethiopic input methods from
        Daniel Yacob.
2002-02-10 17:46:08 +00:00
Anders Carlsson
3619eade7c Set finalize handler; (gtk_calendar_finalize): Rename gtk_calendar_destroy
2002-02-10  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkcalendar.c (gtk_calendar_class_init): Set finalize handler;
	(gtk_calendar_finalize): Rename gtk_calendar_destroy to gtk_calendar_finalize
	since ::destroy can be called multiple times, resulting in double-freeing memory.
2002-02-10 14:33:06 +00:00
Hans Breuer
6d33d1c7e3 don't reduce the scroll rect size by the scroll amount
2002-02-10  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkgeometry-win32.c : don't reduce the scroll
	rect size by the scroll amount

	* gdk/win32/gdkwindow-win32.c
	* gdk/win32/gdkselection-win32.c : added some casts to
	make it compile with msvc's strict type checking

	* gtk/fnmatch.c : #include <ctype.h> again for tolower
	prototype. The fnmatch() code assumes to be in the crt
	locale though it is feeded by utf8 strings from gtkfilesel.c

	* gtk/gtkfilesel.c : let ->cmpl_text be a strdup managed by
	_CompletionDir instead of referencing already freed memory

	* gtk/gtktooltips.c (gtk_tooltips_init) : fix typo to
	gtk_rc_parse_string (theDefaultTooltipColor) once as it
	was intended

	* tests/makefile.msc : added more tests

	* tests/testgtk.c (create_list) : don't try to load gtkenums.h
	from the current directory use ../gtk/gtkenums.h instead
2002-02-10 13:18:51 +00:00
Kjartan Maraas
f42f2a646e Fix a double The typo in a string.
2002-02-10  Kjartan Maraas  <kmaraas@gnome.org>

	* gtk/gtksizegroup.c: Fix a double The typo in a string.
2002-02-10 11:11:01 +00:00
Kjartan Maraas
efe1ca21eb Updated Norwegian (bokml) translation.
2002-02-10  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-02-10 10:36:09 +00:00
Ole Laursen
425ad2da64 Updated Danish translation.
2002-02-09  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-02-09 22:24:23 +00:00
Matthias Clasen
dc46b476e3 Avoid segfault for selectable tab labels (even without a segfault, they
* gtk/gtknotebook.c (gtk_notebook_set_focus_child): Avoid segfault
	for selectable tab labels (even without a segfault, they make the
	notebook almost unusable, though).  (#69985)

	* gtk/gtkmenuitem.c (gtk_menu_item_set_accel_path): Silently do
	nothing if the parent is not a menu.  (#66492)

	* gtk/gtkitemfactory.c (gtk_item_factory_from_widget,
	gtk_item_factory_path_from_widget): Try fetching the return value
	from menu_item->submenu as a fallback.  (#69020)
2002-02-09 22:12:04 +00:00
Kristian Rietveld
1e40b8cb18 convert the iter to a child iter again, after doing _iter_children. It's
Sat Feb  9 22:57:43 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_build_level): convert
        the iter to a child iter again, after doing _iter_children. It's
        possible that _iter_children added some rows and updated the stamp.
2002-02-09 21:56:30 +00:00
Pauli Virtanen
210838470b Updated Finnish translation and converted it to UTF-8.
2002-02-09  Pauli Virtanen  <ptvirtan@cc.hut.fi>

	* fi.po: Updated Finnish translation and converted it to UTF-8.
2002-02-09 21:55:40 +00:00
Daniel Elstner
49eeb6c02d Use == rather than = in sanity checks. Ouch!
2002-02-09  Daniel Elstner  <daniel.elstner@gmx.net>

* gtk/gtktextchild.c: Use == rather than = in sanity checks.  Ouch!
2002-02-09 20:44:12 +00:00
Daniel Elstner
67e3121dec Add missing curled braces so that it doesn't always return. Also indent
2002-02-09  Daniel Elstner  <daniel.elstner@gmx.net>

* gtk/gtktextchild.c (CHECK_IN_BUFFER_RETURN): Add missing curled braces so that it doesn't always return.  Also indent both CHECK_IN_BUFFER* macros properly, and make use of G_STMT_START/G_STMT_END.
2002-02-09 19:14:54 +00:00
Owen Taylor
ee8d7f478f Add prototype for _gtk_binding_reset_parsed().
Sat Feb  9 13:27:14 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkbindings.h: Add prototype for
        _gtk_binding_reset_parsed().
2002-02-09 18:37:40 +00:00
Owen Taylor
009d54122e add missed changelog entry 2002-02-09 18:22:12 +00:00
Owen Taylor
368d401585 Add tools and images used for creating the check/radio button images in
Sat Feb  9 13:19:20 2002  Owen Taylor  <otaylor@redhat.com>

	* configure.in gtk/Makefile.am gtk/theme-bits/*: Add
	tools and images used for creating the check/radio
	button images in the default theme.
2002-02-09 18:20:45 +00:00
Gediminas Paulauskas
c890585867 update a bit 2002-02-09 18:17:56 +00:00
Soeren Sandmann
f38b529c6a Keyboard navigation for GtkPaned F6: cycle between panes. F8: focus handle
Sat Feb  9 13:58:41 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkpaned.[ch]: Keyboard navigation for GtkPaned
	F6: cycle between panes.
	F8: focus handle (#53584)

	* tests/testgtk.c: Add test cases for GtkPaned keyboard
	navigation.
2002-02-09 13:05:02 +00:00
Owen Taylor
60542887d5 XCopyArea with subwindow_mode = IncludeInferiors. (#70999)
Sat Feb  9 00:16:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image):
        XCopyArea with subwindow_mode = IncludeInferiors.
        (#70999)

        * demos/testpixbuf-save.c (configure_cb): Fix a minor
        memory management problem.
2002-02-09 05:24:25 +00:00
Owen Taylor
e16d01d6a6 Force all weight arrays to sum exactly to 65535. (Fixes #70971, reported
Fri Feb  8 23:11:15 2002  Owen Taylor  <otaylor@redhat.com>

        * pixops/pixops.c: Force all weight arrays to sum exactly
        to 65535. (Fixes #70971, reported by Federico Mena Quintero)

        * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
        libpixops.la.
2002-02-09 04:14:53 +00:00
Owen Taylor
9ff27f0f4c Fix problem with string-valued parameters (#70012, Johan Dahlin.)
Fri Feb  8 20:24:58 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbindings.c (binding_compose_params): Fix problem
	with string-valued parameters (#70012, Johan Dahlin.)

	* gtk/gtkentry.c (gtk_entry_delete_whitespace): Fix
	white space deletion.
2002-02-09 01:29:14 +00:00
Jonathan Blandford
d243e3ec4a fix evil ref bug where the wrong row and a deleted row was unreffed. Found
Fri Feb  8 21:25:56 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): fix
	evil ref bug where the wrong row and a deleted row was unreffed.
	Found by Darin Adler <darin@bentspoon.com>
2002-02-09 01:28:00 +00:00
Owen Taylor
7b79dfbef8 Add a function to delete all bindings add by gtk_binding_parse_binding()
Fri Feb  8 18:46:13 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbindings.[ch] (_gtk_binding_reset_parsed): Add
	a function to delete all bindings add by
	gtk_binding_parse_binding() when rereading RC files.

	* gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): Reset
	binding set content as well as RC content.

	* gtk/gtkbindings.c (binding_compose_params): Fix
	various GValue handling problems.

	* gtk/gtkentry.c (gtk_entry_class_init): Remove bindings
	for C-b, C-f, M-b, M-f, C-a, C-e, C-w, C-y, M-space, C-u,
	C-k, M-\, M-d, C-d.

	* gtk/gtktextview.c (gtk_text_view_class_init): Remove
	same bindings as GtkEntry, plus C-n, C-p, C-space

        * gtk/gtkrc.key.default gtk/gtkrc.key.emacs gtk/Makefile.am:
	Add Emacs and Default key themes.
2002-02-09 00:19:29 +00:00
Darin Adler
6c07eadbbe Remove a tiny bit more dead code.
* gtk/gtktreeview.c: (gtk_tree_view_map_expanded_rows_helper):
	Remove a tiny bit more dead code.
2002-02-09 00:12:30 +00:00
Darin Adler
9e5a9e13a9 Fix stale pointer bug.
* gtk/gtktreeview.c: (gtk_tree_view_map_expanded_rows_helper):
	Fix stale pointer bug.
2002-02-08 23:26:29 +00:00
Federico Mena Quintero
3ce4e21f09 Fix comment; PixopsInterpType -> GdkInterpType.
2002-02-08  Federico Mena Quintero  <federico@ximian.com>

	* pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
2002-02-08 19:52:23 +00:00
Owen Taylor
ac447dc59b Return FALSE if not shoing the titles. (#70959, Thomas Leonard)
Fri Feb  8 14:30:14 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (title_focus_in): Return FALSE if
	not shoing the titles. (#70959, Thomas Leonard)
2002-02-08 19:39:26 +00:00
Darin Adler
6ec06edbbf isspace -> g_ascii_isspace Remove gdki8n.h include. Remove <ctype.h>
* demos/gtk-demo/main.c: (load_file): isspace -> g_ascii_isspace
	* gdk/x11/gdkim-x11.c: Remove gdki8n.h include.
	* gdk/x11/gdkkeys-x11.c: Remove <ctype.h> include.
	* gdk/x11/gdkmain-x11.c: Remove <ctype.h> include.
	* gtk/fnmatch.c: Remove <ctype.h> include.
	* gtk/gtkaccelgroup.c: Remove <ctype.h> include.
	* gtk/gtkaccellabel.c: (gtk_accel_label_refetch): toupper ->
	g_unichar_toupper, toupper -> g_unichar_totile
	* gtk/gtkbindings.c: Remove <ctype.h> include.
	* gtk/gtkfontsel.c: Remove <ctype.h> include.
	* gtk/gtkiconfactory.c: Remove <ctype.h> include.
	* gtk/gtkinputdialog.c: Remove <ctype.h> include.
	* gtk/gtklabel.c: Remove <ctype.h> include.
	* gtk/gtkmain.c: Remove <ctype.h> include.
	* gtk/gtkmenu.c: Remove <ctype.h> include.
	* gtk/gtkoldeditable.c: Remove <ctype.h> include.
	* gtk/gtkrc.c: Remove <ctype.h> include.
	* gtk/gtktextbtree.c: Remove <ctype.h> include.
	* gtk/gtktextiter.c: Remove <ctype.h> include.
	* gtk/gtktextsegment.c: Remove <ctype.h> include.
2002-02-08 19:12:34 +00:00
Darin Adler
27fec072e3 Wean this from <ctype.h>.
* io-xbm.c: (next_int): Wean this from <ctype.h>.
2002-02-08 19:08:20 +00:00
Sven Neumann
0d18cf961a gtk/gtkfilesel.c gtk/gtkgamma.c use stock labels for dialog action
2002-02-08  Sven Neumann  <sven@gimp.org>

	* gtk/gtkfilesel.c
	* gtk/gtkgamma.c
	* gtk/gtkinputdialog.c: use stock labels for dialog action buttons.
2002-02-08 17:35:06 +00:00
Darin Adler
e0e8197e1c Pass the ref_node and unref_node calls through to the child model.
* gtk/gtktreemodelsort.c: (gtk_tree_model_sort_ref_node),
	(gtk_tree_model_sort_unref_node): Pass the ref_node and
	unref_node calls through to the child model.
2002-02-08 17:13:14 +00:00
Laszlo Peter
54ddc51ec3 s/__FUNCTION__/G_GNUC_FUNCTION/ ditto
2002-02-08  Laszlo Peter  <laca@ireland.sun.com>

	* gtk/gtktextchild.c: s/__FUNCTION__/G_GNUC_FUNCTION/
	* gtk/gtktextview.c: ditto
2002-02-08 16:23:05 +00:00
Yuri Syrota
765dc8f350 Updated Ukrainian translation 2002-02-08 14:56:33 +00:00
Yuri Syrota
651273c27f Updated Ukrainian translation 2002-02-08 13:58:26 +00:00
Yuri Syrota
11f1fb1209 Updated Ukrainian translation 2002-02-08 10:16:14 +00:00
Owen Taylor
d13fe604bd clean up a little 2002-02-08 03:25:31 +00:00
Havoc Pennington
b0c6f4f27b add change_value virtual function, to fix build
2002-02-07  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkspinbutton.h (struct _GtkSpinButtonClass): add
	change_value virtual function, to fix build

	* gtk/gtkpixmap.c (gtk_pixmap_class_init): parent_class was
	from GtkWidget not GtkMisc. Not that it ever mattered.
2002-02-08 02:38:44 +00:00
Owen Taylor
23c6be552c Add ::move-focus-out signal to handle Control[-Shift]-Tab and
Thu Feb  7 19:52:00 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.[ch]: Add ::move-focus-out signal
	to handle Control[-Shift]-Tab and Control-arrow
	bindings and implement bindings as per #53612.

	* gtk/gtktextview.c (gtk_text_view_move_focus): Fix
	fetching the toplevel for plug-socket.

	* gtk/gtknotebook.c (gtk_notebook_class_init): Remove
	bindings for Return/Enter to select the page.

	* gtk/gtknotebook.c (gtk_notebook_change_current_page):
	Beep at ends.

	* gtk/gtknotebook.c (focus_tabs_move): Don't wrap around
	and beep at ends.

	* gtk/gtknotebook.c (gtk_notebook_focus): When focusing into
	the page with the arrow keys, focus the first widget,
	not the directionally closest widget.
2002-02-08 01:10:25 +00:00
Owen Taylor
aa88182321 Convert to using binding set for doing key bindings. (#62622, Requested by
Thu Feb  7 19:00:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkspinbutton.c (gtk_spin_button_key_release): Convert
        to using  binding set for doing key bindings. (#62622,
        Requested by Skip Montaro)

        * gtk/gtkwindow.c (gtk_window_class_init): Add control-arrow
        bindings as overrides along with control-tab bindings.

        * gtk/gtknotebook.c (gtk_notebook_class_init): Fix return
        type for ::focus_tab signal.
2002-02-08 00:02:52 +00:00
Kristian Rietveld
67046197d4 Fixes #70782 and some drag dest rectangle/line issues
Thu Feb  7 19:39:27 2002  Kristian Rietveld  <kris@gtk.org>

        Fixes #70782 and some drag dest rectangle/line issues

        * gtk/gtktreeview.c (gtk_tree_view_set_model): set
        GTK_TREE_VIEW_IS_LIST flag (we can switch from a TreeStore to a
        ListStore for example)
        (gtk_tree_view_get_path_at_pos): revert previous change, we
        shouldn't correct for the header, because we are taking bin_window
        coordinates here
        (gtk_tree_view_set_drag_dest_row): queue old drag_dest row and
        upper/lower neighbors for draw, so the drag dest rectangle/line will
        be cleared correctly
        (gtk_tree_view_get_dest_row_at_pos): correct for treeview header
        here, as drag_y is relative to the widget and _get_path_at_pos wants
        coords relative to bin_window, draw black outline rectangle after
        drawing the cells
2002-02-07 18:43:59 +00:00
Owen Taylor
31bd536b5c Use layout text (which may be affected by invisible char) to compute
Thu Feb  7 10:53:12 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_text): Use layout text
	(which may be affected by invisible char) to compute
	selection bounds, not entry text. (#70733, Alex Larsson)
2002-02-07 15:57:32 +00:00
Padraig O'Briain
49ea86bccd Change show_help signal to return gboolean instead of void. This allows
* gtk/gtkwidget.[ch]:
Change show_help signal to return gboolean instead of void. This
allows the keypress which invokes the signal to be propagated to the
focus widgets ancestors if not handled by the focus widget.

* gtk/gtktoolips.[ch]
Change _gtk_tooltips_show_tip () to return a gboolean indicating
whether widget has tooltip to display.
2002-02-07 15:45:17 +00:00
Padraig O'Briain
5bc235001a Change popup_menu signal to return gboolean instead of void. This allows
* gtk/gtkwidget.[ch]:
Change popup_menu signal to return gboolean instead of void. This
allows the keypress which invokes the signal to be propagated to the
focus widgets ancestors if not handled by the focus widget.

* gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtktextview.c:
Change signature of popup_menu signal handler to return gboolean
instead of void and return TRUE in the signal handler
2002-02-07 09:39:21 +00:00
Owen Taylor
ac939d3355 Add gradient rendering -- if the source width/height is zero, render a
Thu Feb  7 00:21:21 2002  Owen Taylor  <otaylor@redhat.com>

        * pixbuf-render.c (pixbuf_render): Add gradient
        rendering -- if the source width/height is zero,
        render a gradient from the surrounding values.
2002-02-07 05:43:55 +00:00
Anders Carlsson
a166fcbeac Free the setting name.
2002-02-07  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/xsettings-common.c (xsettings_setting_free): Free
	the setting name.
2002-02-07 04:06:16 +00:00
Changwoo Ryu
ae3a7b12d6 Updated Korean translation 2002-02-07 02:03:27 +00:00
Kristian Rietveld
1c0e6dd0ad Fixes #70708
Wed Feb  6 23:28:39 2002  Kristian Rietveld  <kris@gtk.org>

        Fixes #70708

        * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): we're dealing
        with widget coordinates here, so take the header height into
        account while converting
        (gtk_tree_view_widget_to_tree_coords): take header height into
        account
        (gtk_tree_view_tree_to_widget_coords): ditto
        (gtk_tree_view_get_dest_row_at_pos): we were passing coords
        relative to the tree with _get_path_at_pos, while that function
        wants coords relative to the widget
2002-02-06 22:37:04 +00:00
Havoc Pennington
e58c6eca32 remove unused variable (gtk_text_view_get_window): add warning about how
2002-02-06  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_scroll_hpages): remove unused variable
	(gtk_text_view_get_window): add warning about how you
	can't get the private window. #70683, and avoid default: in the
	switch so we get "enum value unhandled" warnings
2002-02-06 22:22:37 +00:00
Havoc Pennington
99b7d4a189 Add warnings if you try to use a child anchor that isn't inside a buffer.
2002-02-06  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextchild.c: Add warnings if you try to use a child
	anchor that isn't inside a buffer. Really kind of lame;
	we should separate the anchor from the buffer. But not worth
	fixing for now. #70601
2002-02-06 22:07:47 +00:00
Kristian Rietveld
2d1b1a623c rip out all the debugging ifdefs, as modelsort seems to be stable (and
Wed Feb  6 18:25:24 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c: rip out all the debugging ifdefs, as
        modelsort seems to be stable (and nobody complained :)
2002-02-06 17:24:28 +00:00
Owen Taylor
9a8f790e8a Keep the length of the anti-expose queue finite, by if it gets too long,
Tue Feb  5 19:13:42 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgeometry-x11.c (gdk_window_queue): Keep
        the length of the anti-expose queue finite, by if
        it gets too long, first doing a XSync() and checking
	the event queue, and if that doesn't work, simply
        discarding all anti-expose items in the queue.

	* gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Fix ordering
	on ConfigureNotify (#56349, Thomas Leonard)
2002-02-06 00:41:07 +00:00
Havoc Pennington
d18c9de808 offset area being gotten from pixmap by the align/padding offsets, so we
2002-02-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkimage.c (gtk_image_expose): offset area being gotten from
	pixmap by the align/padding offsets, so we don't get warnings
	in gdk_pixbuf_get_from_drawable (and so it works, of course)
2002-02-05 23:07:07 +00:00
Matthias Clasen
6370cf3b8e Remove a (now) misleading comment.
* gtk/gtkrc.c (gtk_rc_parse_file): Remove a (now) misleading comment.

	* gtk/tmpl/gtkrc.sgml: Update the description of RC file loading
	to match recent code changes. Also document font_name and engine.
2002-02-05 22:50:31 +00:00
Federico Mena Quintero
9b8cf1d532 Do not #include <gdk/gdkwindow.h>.
2002-02-05  Federico Mena Quintero  <federico@ximian.com>

	* gdk/gdkwindow.h: Do not #include <gdk/gdkwindow.h>.
2002-02-05 22:06:33 +00:00
Kristian Rietveld
f84fca8b0a let's set the path, which we're going to pass with the emission of
Tue Feb  5 22:54:16 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtkliststore.c (gtk_list_store_insert_after): let's set the
        path, which we're going to pass with the emission of row_inserted, to
        the iter we inserted and not its sibling.
2002-02-05 21:53:51 +00:00
Owen Taylor
8b9531a6c6 Remove the objectionably short cursor blink time setting.
Sat Feb  2 17:43:00 2002  Owen Taylor  <otaylor@redhat.com>

        * tests/testgtkrc: Remove the objectionably short cursor blink
        time setting.
2002-02-05 20:55:35 +00:00
Jonathan Blandford
6c02ea8eb3 update a little 2002-02-04 19:30:00 +00:00
Padraig O'Briain
402f5b9d93 Fix leak of GdkEvent (#70519)
* gtk/gtkmenu.c (gtk_menu_popup):
Fix leak of GdkEvent (#70519)
2002-02-04 17:46:33 +00:00
Owen Taylor
9c61501877 Fix from Matthias Clasen to clear background appropriately for theme by
Mon Feb  4 10:40:28 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.c (gtk_default_draw_resize_grip):
        Fix from Matthias Clasen to clear background appropriately
        for theme by calling gtk_style_apply_default_background().
        (#70449)
2002-02-04 15:43:09 +00:00
Owen Taylor
aea7e2c13a on Feb 4 10:06:49 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c: gtk-double-click-time,
        not gtk-double-click-timeout. (#70501)
2002-02-04 15:13:26 +00:00
Stanislav Visnovsky
cb19160cf0 Updated Slovak translation.
2002-02-04  Stanislav Visnovsky <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2002-02-04 11:37:05 +00:00
Havoc Pennington
b96ec2e0b2 rename "signal" arg to "name" to avoid compiler warnings about shadowing
2002-02-04  Havoc Pennington  <hp@pobox.com>

	* gtk/gtksignal.c (gtk_signal_connect_while_alive):
	(gtk_signal_connect_object_while_alive): rename
	"signal" arg to "name" to avoid compiler warnings
	about shadowing signal(). #70453
2002-02-04 06:08:28 +00:00
Anders Carlsson
4eca4af11b Add flipping support to the expanders.
2002-02-03  Anders Carlsson  <expander-master@gtk.org>

	* gtk/gtkstyle.c (gtk_default_draw_expander): Add
	flipping support to the expanders.
2002-02-03 21:18:44 +00:00
Hasbullah Bin Pit
79b8237cc6 Updated Malay Translation.
2002-02-03  Hasbullah Bin Pit <sebol@ikhlas.com>

* ms.po: Updated Malay Translation.
2002-02-03 03:22:32 +00:00
Owen Taylor
ab65e77988 RC file lookup improvements (#68234, suggestions from Matthias Clasen.)
Sat Feb  2 21:54:01 2002  Owen Taylor  <otaylor@redhat.com>

        RC file lookup improvements (#68234, suggestions
        from Matthias Clasen.)

        * gtk/gtkrc.c (gtk_rc_parse_file): Look for the
        locale suffix variants (gtkrc.en_US, gtkrc.en) for
        all RC files we parse, not just the default RC
        files.

        * gtk/gtkrc.c (gtk_rc_parse_default_files): Remove
        support for charset specific RC files.
2002-02-03 03:02:07 +00:00
Owen Taylor
ae7521bd9d Non-exported _gtk_menu_select_first() function that selects the first item
Sat Feb  2 20:16:04 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.c (_gtk_menu_shell_select_first):
        Non-exported _gtk_menu_select_first() function that
        selects the first item of the menu in a standard
        way. (Skipping tearoffs.)

        * gtk/gtkmenushell.c gtk/gtkentry.c gtk/gtktextview.c
        gtkmenuitem.c: Use _gtk_menu_shell_select_first().

        * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Remember
        if we are starting the timeout from a keypress so
        we can set menushell->ignore_enter properly.

        * gtk/gtknotebook.c (focus_child_in): Return something
        meaningful if there are no children.

        * gtk/gtkmenu.c (gtk_menu_key_press): Fix precendence
        problem.
2002-02-03 01:25:32 +00:00
Owen Taylor
0ed21b67d9 Fix some bugs in the determination of xgrab_shell.
Sat Feb  2 19:15:42 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_popup): Fix some bugs in
        the determination of xgrab_shell.
2002-02-03 00:18:41 +00:00
Owen Taylor
d6622d38d6 Add a GtkSetting (gtk-entry-select-on-focus) controlling whether the
Sat Feb  2 17:43:00 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_grab_focus): Add a GtkSetting
	(gtk-entry-select-on-focus) controlling whether the
	contents of an entry are selected on focus in.

	* gtk/gtkmenu.c (gtk_menu_key_press): Add a GtkSetting
	(gtk-can-change-accels) controlling whether accelerators can be
	changed on the fly or not. (#51902)

	* gtk/gtkmenu.c (gtk_menu_key_press): Allow unmodified
	accelerators, now that accelerator changing can be turned
	off for those who won't expect it. (#61285)

	* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Allow
	Backspace/Delete/KP_Delete as valid accelerators.

	* gtk/gtkmenu.c (gtk_menu_key_press): Allow setting of
	Delete/Backspace as accelerators by making them toggle
	the menu item between empty and the pressed key.
	(#58605)

	* tests/testgtkrc: Remove the objectionably short cursor blink
	time setting.
2002-02-02 22:52:22 +00:00
Owen Taylor
2ee08d8ec6 To get around the fact that we may have a owner_events = FALSE grab in
Sat Feb  2 16:43:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_popup): To get around the fact
        that we may have a owner_events = FALSE grab in effect
        when we pop up a window, make a temporary grab on a
        different window, then grab on the real window. Fixes
        a problem where if a context menu popped up under the
        cursor, the first item would be stuck unselected.
        (#59812, reported by Arnaud Charlet.)
2002-02-02 21:50:46 +00:00
Peter Williams
9e31153e9b Install gtkrc.default from $(srcdir) for when $(builddir) is different.
2002-02-02  Peter Williams  <peterw@ximian.com>

	* gtk/Makefile.am (install-data-local): Install gtkrc.default
	from $(srcdir) for when $(builddir) is different.
2002-02-02 20:12:53 +00:00
Kristian Rietveld
ea9e0c772c remove TESTGTK_RCFILE define
Sat Feb  2 19:00:39 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/Makefile.am: remove TESTGTK_RCFILE define
2002-02-02 17:58:07 +00:00
Owen Taylor
67ad02989f Remove the "select first item if popped up from keypress" hack -- was
Sat Feb  2 11:37:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_popup): Remove the
        "select first item if popped up from keypress" hack --
        was causing more problems than it was worth
        (#53191, #68483)

        * gtk/gtktextview.c (popup_targets_received):
         gtk/gtkentry.c (popup_targets_received): If activated
        from keyboard, select first item of popup menu.
2002-02-02 17:52:01 +00:00
Kristian Rietveld
7bb3d17abe set upper member of vadjustment correct, so the vscrollbars of lists
Sat Feb  2 18:07:51 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_size_allocate): set upper member
        of vadjustment correct, so the vscrollbars of lists smaller than
        1 page are somewhat saner (#66905)

        * gtk/gtkliststore.c (gtk_list_store_remove_silently): do not
        increment the stamp, liststore is a model with persisting iters
2002-02-02 17:07:49 +00:00
Owen Taylor
a998112472 Support engine "" {} to mean override to the default engine. (#70205)
Fri Feb  1 23:54:00 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.[ch] (gtk_rc_parse_engine): Support
        engine "" {} to mean override to the default
        engine. (#70205)
2002-02-02 16:37:23 +00:00
Ole Laursen
69f27e1792 Updated Danish translation.
2002-02-02  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-02-02 15:44:15 +00:00
Owen Taylor
1c9b864974 Parse the RC string here when the first object is created rather than in
Fri Feb  1 23:25:33 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.c (gtk_tooltips_init): Parse the
	RC string here when the first object is created
	rather than in the class_init to not break doc
	building. (#70341, Havoc Pennington.)

	* gtk/gtkrc.c (parse_include_file): Use the directories
	for the currently parsed files as the starting point
	to look for include files. (#59975)
2002-02-02 04:34:09 +00:00
Manish Singh
47a43e8f72 use gtk_label_new_with_mnemonic for labels that actually have mnemonics
Fri Feb  1 20:21:56 2002  Manish Singh  <yosh@gimp.org>

        * gtk/gtkinputdialog.c: use gtk_label_new_with_mnemonic for labels
        that actually have mnemonics
2002-02-02 04:26:48 +00:00
Owen Taylor
caf1d42427 Fix use of ! in shell.
Fri Feb  1 19:57:59 2002  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Fix use of ! in shell.

	* gtk/gtktooltips.c (gtk_tooltips_class_init) gtkrc.default:
	Move the setting of default tooltips colors to gtktooltips.c
	from gtkrc.default. (Use default priority so themes will
	override.) (#58542)
2002-02-02 01:00:42 +00:00
Owen Taylor
5288e07931 Fix ordering of priorities so that priorities take precendence over the
Fri Feb  1 17:48:51 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c (gtk_rc_get_style): Fix ordering of
        priorities so that priorities take precendence over
        the ordering by type. (#70205)

        * test/testgtkrc tests/testgtk.c (create_rc_file): Add
        some labels to test priorities in testgtkrc.
2002-02-02 00:44:52 +00:00
Matthias Clasen
cfaea03b10 Build the tga loader as a static library. (#70157)
* Makefile.am: Build the tga loader as a static library. (#70157)
2002-02-01 23:59:52 +00:00
Matthias Clasen
50e6308388 Merge 16- and 32-bit ico support from the stable branch. (#61179)
* io-ico.c: Merge 16- and 32-bit ico support from the stable
        branch.  (#61179)

        * io-gif.c: Recomposite all images if the animation size changes
        while loading.  (#70055)

        * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
        (#70055)
2002-02-01 23:43:07 +00:00
Kristian Rietveld
4eb836706c use y coordinate relative to the tree and not the treeview window (fixes
Fri Feb  1 00:37:49 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): use
        y coordinate relative to the tree and not the treeview window
        (fixes the PgDn/PgUp brokenness)
2002-02-01 23:36:10 +00:00
Kristian Rietveld
87a0cbcffc adjust cell_area and background_area for possible treeview scroll (fixes
Fri Feb  1 23:40:31 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_button_press): adjust
        cell_area and background_area for possible treeview scroll
        (fixes #70283, #70065)
2002-02-01 22:41:39 +00:00
Kristian Rietveld
435235b8a4 (committed this again -- broken pipe and ChangeLog update)
Fri Feb  1 22:20:13 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_size_allocate): use
        height - page_size not height - allocation->height (fixes #66269)
2002-02-01 21:21:01 +00:00
Kristian Rietveld
0bb8e8d069 use height - page_size not height - allocation->height
Fri Feb  1 22:20:13 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_size_allocate): use
        height - page_size not height - allocation->height
2002-02-01 21:18:17 +00:00
Christian Rose
2dfec2d057 Updated Swedish translation.
2002-02-01  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2002-02-01 20:54:08 +00:00
Owen Taylor
17eaeb6feb Fix typo in property description. (Christian Rose.)
Fri Feb  1 15:22:23 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimage.c (gtk_image_class_init): Fix typo
	in property description. (Christian Rose.)
2002-02-01 20:23:12 +00:00
Owen Taylor
ff95eb051b Handle reparsing any strings if the theme changes. (#69465)
Fri Feb  1 14:50:36 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c (gtk_rc_parse_string): Handle reparsing
        any strings if the theme changes. (#69465)

        * tests/testgtk.c: Add a test for gtk_rc_parse_string().
2002-02-01 20:14:02 +00:00
Kjartan Maraas
dcd6d764a7 Updated Norwegian (bokml) translation.
2002-02-01  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-02-01 20:01:12 +00:00
Kristian Rietveld
593bc65f54 set tree to NULL if tree_view->priv->tree is NULL (#70152, patch by John
Fri Feb  1 20:50:29 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_dy_to_top_row): set tree to
        NULL if tree_view->priv->tree is NULL (#70152, patch by John Harper).
2002-02-01 19:49:49 +00:00
Owen Taylor
a7d3cece47 ri Feb 1 12:51:20 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (focus_child_in): Catch the
        cur_page == NULL (no children) case. (#70287,
        Paolo Maggi.)
2002-02-01 17:53:56 +00:00
Ole Laursen
d0b536eeba Updated Danish translation.
2002-02-01  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-02-01 17:53:10 +00:00
Owen Taylor
6fa24ee83e s/directory/folder/ in all labels and messages.
Fri Feb  1 12:12:12 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilesel.c (attempt_file_completion):
        s/directory/folder/ in all labels and messages.
2002-02-01 17:41:47 +00:00
Owen Taylor
7650f90550 Feb 1 08:57:38 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmain.c (gtk_exit_func): Remove this useless
        atexit handler. (existance pointed out by Stefan Kost)

        * gtk/gtkmain.c (gtk_init_check): Warning fixes.
2002-02-01 14:15:56 +00:00
Jonathan Blandford
5759992c98 unref the model after the last use, not before.
Thu Jan 31 18:46:10 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_row_reference_free): unref the
	model after the last use, not before.
2002-01-31 23:47:23 +00:00
Owen Taylor
91698f9a70 Install a Default RC file that sets the tooltips color to yellow. (#58542)
Thu Jan 31 14:50:16 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.default gtk/Makefile.am: Install a Default
        RC file that sets the tooltips color to yellow. (#58542)

        * gtk/gtksettings.c (gtk_settings_class_init): make
        the default theme "Default", not NULL.
2002-01-31 22:05:38 +00:00
Owen Taylor
cb26587ff8 Install a Default RC file that sets the tooltips color to yellow. (#58542)
Thu Jan 31 14:50:16 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.default gtk/Makefile.am: Install a Default
        RC file that sets the tooltips color to yellow. (#58542)

        * gtk/gtksettings.c (gtk_settings_class_init): make
        the default theme "Default", not NULL.
2002-01-31 20:14:18 +00:00
Owen Taylor
160725555e Fix another missing static.
Thu Jan 31 11:33:52 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkproperty-x11.c (insert_atom_pair): Fix
        another missing static.

        * gtk/gtkimmodule.c (n_loaded_contexts): And another.

        * gdk/x11/Makefile.am gdk/x11/gxid_lib.c: Don't
        build gxid sources at all except in the vanishingly
        rare case of --with-xinput=xfree.
2002-01-31 16:37:27 +00:00
Owen Taylor
2947596ca5 Try to make sure that we have some focused widget on map. (#50339)
Wed Jan 30 13:55:59 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_show): Try to make
        sure that we have some focused widget on map. (#50339)

        * gtk/gtkdialog.c (gtk_dialog_map): Handling picking
        a focus widget here differently so that if a
        response button gets picked, it's the default one.

        * tests/testgtk.c (make_message_dialog): Set the
        default response for the dialogs.
2002-01-31 16:13:12 +00:00
Mark McLoughlin
60dd9e5477 make static.
2002-01-31  Mark McLoughlin  <mark@skynet.ie>

        * gdk/gdkimage.c: (scratch_image_info_for_depth): make static.

        * gdk/x11/gdkimage-x11.c: (get_full_image): ditto.

        * gdk/x11/gxid_lib.[ch]: (_gxid_claim_device), (_gxid_release_device):
        renamed from gxid_(claim|release)_device.

        * gdk/x11/gdkinput-gxi.c: (_gdk_input_enable_window),
        (_gdk_input_disable_window): upd for gxid change.

        * gtk/gtkimage.c: (animation_timeout): make static.

        * gtk/gtkstyle.c: (draw_thin_shadow), (draw_spin_entry_shadow): make
        static.

        * gtk/gtktextutil.c: (bidi_menu_entries): make static.
2002-01-31 15:48:58 +00:00
Owen Taylor
bb3ddb39f6 Handle the case where bin->child is NULL. (#70153, Padraig O'Briain)
Thu Jan 31 10:21:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.c (gtk_plug_focus): Handle the case where
        bin->child is NULL. (#70153, Padraig O'Briain)

        * gtk/gtktextutil.c (_gtk_text_util_append_special_char_menuitems):
        Actually call gettext() on the labels; previously they
        were marked with N_() but we never called gettext().
2002-01-31 15:26:52 +00:00
Owen Taylor
3528097330 Add missing files (Christian Rose #70165)
Thu Jan 31 09:41:09 2002  Owen Taylor  <otaylor@redhat.com>

        * POTFILES.in: Add missing files (Christian Rose
        #70165)
2002-01-31 15:08:41 +00:00
Christian Rose
5ed93d48af Updated Swedish translation.
2002-01-31  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2002-01-31 13:00:35 +00:00
Jonathan Blandford
9725d9958e save last minute changes before committing.
Wed Jan 30 20:15:49 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_set_valist): save last minute
	changes before committing.
2002-01-31 01:17:21 +00:00
Jonathan Blandford
78d39ef504 only emit the signal if an interesting column changes.
Wed Jan 30 18:46:14 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c (gtk_list_store_set_valist): only emit the
	signal if an interesting column changes.

	* gtk/gtktreestore.c: ditto.

	* gtk/gtktreeview.c (gtk_tree_view_set_cursor): change behavior so
	that it no longer grabs
2002-01-30 23:51:04 +00:00
Manish Singh
2cfa52b1ee remove unused variable.
2002-01-30  Manish Singh  <yosh@gimp.org>

        * gtk/gtkhandlebox.c (gtk_handle_box_destroy): remove unused
        variable.

        * gtk/gtkwindow.c (gtk_window_get_icon): function returns a value,
        so return NULL with g_return_val_if_fail instead of g_return_if_fail.
2002-01-30 23:35:08 +00:00
Matthias Clasen
53e7265067 Add bug number to my last entry. 2002-01-30 22:35:12 +00:00
Ole Laursen
8ea8bc7fcb Updated Danish translation.
2002-01-30  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2002-01-30 22:33:07 +00:00
Matthias Clasen
4dddfb2dc6 Remove excess calls to g_return_if_fail from static and virtual functions. 2002-01-30 22:29:03 +00:00
Anders Carlsson
95ab2a72b4 Allow a -1 icon size.
2002-01-30  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkstyle.c (gtk_default_render_icon): Allow a -1 icon size.
2002-01-30 21:00:49 +00:00
Tim Janik
bb974b6bd4 fix revrted bug fix. (use a define for max digits).
Wed Jan 30 20:29:01 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkscale.c (gtk_scale_set_digits): fix revrted bug fix.
        (use a define for max digits).
2002-01-30 19:29:59 +00:00
Owen Taylor
2a9af2ff42 Try to make sure that we have some focused widget on map. (#50339)
Wed Jan 30 13:55:59 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_show): Try to make
	sure that we have some focused widget on map. (#50339)

	* gtk/gtkdialog.c (gtk_dialog_map): Handling picking
	a focus widget here differently so that if a
	response button gets picked, it's the default one.

	* tests/testgtk.c (make_message_dialog): Set the
	default response for the dialogs.
2002-01-30 18:58:31 +00:00
Owen Taylor
4e8a284f86 1.3.13
Tue Jan 29 22:52:36 2002  Owen Taylor  <otaylor@redhat.com>

        * 1.3.13

        * configure.in: Micro version 13, interface, binary
        age 0. Require GLIB-1.3.13, Pango 0.24.

        * docs/Makefile.am (EXTRA_DIST): Add widget_geometry.txt,
        sizing-test.txt, tree-column-sizing.txt

        * docs/Makefile.am (EXTRA_DIST): Don't distribute
        Changes-1.2.txt, Changes-2.0.txt, README.linux-fb,
        since they are no longer canonical.

        * gtk/gtk.def: Convert spaces to tabs in front of
        gtk_widget_set_accel_path in case it matters.

        * NEWS: Updated for 1.3.13.
2002-01-30 04:54:06 +00:00
Owen Taylor
5379f5fa97 add extra templates files 2002-01-30 04:43:08 +00:00
Owen Taylor
e4cd6ef7d9 Add x11.sgml.
Tue Jan 29 23:41:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am (content_files): Add x11.sgml.

        * gtk/changes-2.0.sgml: SGML fix.

        * gtk/gtk-sections.txt: Updated.
2002-01-30 04:42:29 +00:00
Owen Taylor
eb5f7ace65 Export gtk_widget_set_accel_path().
Tue Jan 29 22:31:07 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.[ch] gtkmenuitem.c gtkitemfactory.c: Export
        gtk_widget_set_accel_path().

        * gtk/gtk.def: Add gtk_widget_set_accel_path.
2002-01-30 03:32:13 +00:00
Owen Taylor
a75a0d494b Consistently use GdkModifierType. (#66950, Mark Patton)
Tue Jan 29 21:50:28 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelmap.[ch] gtk/gtkbindings.[ch] gtk/gtkwidget.[ch]:
        Consistently use GdkModifierType. (#66950, Mark Patton)

        * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
        For consistency with gtk_button_new_from_stock(), fall back
        to gtk_image_menu_item_new_with_mnemnonic(). (#65944,
        Havoc Pennington)

        * gtk/gtkitemfactory.[ch] (gtk_item_factory_path_from_widget):
        Make G_CONST_RETURN. (#68527, Matt Wilson)
2002-01-30 03:07:14 +00:00
Owen Taylor
36655ffa79 Deprecate GtkPreviewType, GtkSignalRunType, GtkSideType,
Tue Jan 29 19:51:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkenums.h: Deprecate GtkPreviewType,
        GtkSignalRunType, GtkSideType, GtkSubmenuPlacement, GtkSubmenuDirection
        (#68183, Matthias Clasen)

        * gtk/gtkmenuitem.h: Remove _gtk_menu_item_set_placement() from
        the public header to avoid having to use GtkSubmenuPlacement.

        * gtk/{gtkmenuitem.c,gtkmenubar.c,gtkmenushell.c}: #define
        GTK_MENU_INTERNALS to preserve access to GtkSubmenu*.

        * gdk/gdki18n.h: Deprecate contents. (Darin Adler.)
2002-01-30 02:01:10 +00:00
Owen Taylor
9602e6c3f0 Document that the end points are included in the range. (#69783, Jeffrey
Tue Jan 29 20:56:13 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk[vh]scale.c (gtk_[vh]scale_new_with_range): Document
        that the end points are included in the range. (#69783,
        Jeffrey Baker)
2002-01-30 01:58:01 +00:00
Owen Taylor
ebebafc095 Revert the last changes to make the number of digits only effect drawing,
Tue Jan 29 20:38:04 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkscale.[ch]: Revert the last changes to make the
        number of digits only effect drawing, instead, don't
        round unless we are in the 'draw_value' mode -- this
        is the behavior of GTK+-1.2, and keeps the behavior that
        if the user sees a displayed value, it is the correct value.
2002-01-30 01:47:27 +00:00
Owen Taylor
ea4135b064 ue Jan 29 19:51:05 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkenums.h: Deprecate GtkPreviewType,
        GtkSignalRunType, GtkSideType, GtkSubmenuPlacement, GtkSubmenuDirection
        (#68183, Matthias Clasen)

        * gtk/gtkmenuitem.h: Remove _gtk_menu_item_set_placement() from
        the public header to avoid having to use GtkSubmenuPlacement.

        * gtk/{gtkmenuitem.c,gtkmenubar.c,gtkmenushell.c}: #define
        GTK_MENU_INTERNALS to preserve access to GtkSubmenu*.

        * gdk/gdki18n.h: Deprecate contents. (Darin Adler.)
2002-01-30 01:02:43 +00:00
Owen Taylor
f40f1d91a5 Fix wrong usage of g_value_set/get_object for PROP_TABS and memory leak in
Tue Jan 29 19:32:47 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_get/set_property):
        Fix wrong usage of g_value_set/get_object for PROP_TABS
        and memory leak in getter for PROP_TABS. (Jeff Franks)
2002-01-30 00:35:51 +00:00
Owen Taylor
6488296fc0 Document that a size of (GtkIconSize)-1 means don't scale.
Tue Jan 29 19:04:41 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.c (gtk_style_render_icon): Document that
        a size of (GtkIconSize)-1 means don't scale.

        * gtk/gtkstyle.c (gtk_default_render_icon): Obey the
        -1 convention.

        * gtk/gtkimage.c (gtk_image_expose): Pass in -1 to
        gtk_style_render_icon() to make sure that we catch it
        obviously if the style's render function tries to
        scale.
2002-01-30 00:08:41 +00:00
Havoc Pennington
708b3f408d Optimize exposes of partial insensitive images.
Tue Jan 29 18:50:59 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimage.c (gtk_image_expose): Optimize exposes of
        partial insensitive images.

2002-01-24  Havoc Pennington  <hp@redhat.com>

        * gtk/gtkimage.c (gtk_image_expose): create insensitive version of
        the image regardless of storage type, #63305

        * demos/gtk-demo/images.c: add toggle button to demonstrate that
        GtkImage makes its contents insensitive
2002-01-29 23:59:21 +00:00
Owen Taylor
ccb9077861 Call _gdk_draw_pixbuf(), thus enabling using this function for pixbufs
Tue Jan 29 17:40:02 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
        Call _gdk_draw_pixbuf(), thus enabling using this function
        for pixbufs with alpha. (#68801)

        * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Move
        implementation of gdk_pixbuf_render_to_drawable()
        to here.
2002-01-29 22:46:21 +00:00
Owen Taylor
d3b83098ad Patch from Jacob Berkman to fix problem when the height/width of a layout
Tue Jan 29 17:16:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtklayout.c: Patch from Jacob Berkman to fix problem
        when the height/width of a layout was set before the
        adjustments were added. (#66294)

        * gtk/gtktreeview.c: Warning cleanups.
2002-01-29 22:27:17 +00:00
Owen Taylor
c12b1607a4 Small fix to size of torn off window (#60271, Detlef Reichl)
Tue Jan 29 16:35:04 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkhandlebox.c (gtk_handle_box_motion): Small
	fix to size of torn off window (#60271, Detlef Reichl)

	* gtk/Makefile.am: Don't install gtkhsv.h. (Pointed out
	by Ross Burton)
2002-01-29 22:14:19 +00:00
Kristian Rietveld
6284428f64 free cursor_path after usage
Tue Jan 29 18:50:46 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): free
        cursor_path after usage
        (gtk_tree_view_real_start_interactive_search): use new g_signal
        and g_object calls
        (gtk_tree_view_search_dialog_destroy): use g_object calls and free
        selected_iter if set
        (gtk_tree_view_search_position_func): rework so it will never ever
        appear offscreen (#68492)
        (gtk_tree_view_search_move): use new g_object calls
        (gtk_tree_view_search_init): free selected_iter if set, use new
        g_object calls
        (gtk_tree_view_leave_notify): don't destroy interactive search
        dialog

Tue Jan 29 23:07:03 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
        send focus in event
        (gtk_tree_view_search_dialog_destroy): send focus out event (#66466)
2002-01-29 22:08:12 +00:00
Chyla Zbigniew
86a1024053 Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-01-29 21:49:11 +00:00
Anders Carlsson
1ae1f1ba6e Show correct size in the size entry.
2002-01-29  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkfontsel.c (gtk_font_selection_select_size): Show correct
	size in the size entry.
2002-01-29 21:29:55 +00:00
Owen Taylor
eb50860063 Use gtk_tree_view_set_cursor() instead of
Tue Jan 29 16:11:55 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c (gtk_font_selection_show_available_sizes): Use
	gtk_tree_view_set_cursor() instead of gtk_tree_selection_select_iter().

	* gtk/gtkfontsel.c (gtk_font_selection_init): Add mnemonic to
	preview field. (#52433, patch from Anders Carlsson)

	* gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Remove the
	dialog separator. (#69558, Alex Larsson, patch from Anders Carlsson)
2002-01-29 21:17:13 +00:00
Owen Taylor
833b99fca2 Switch over to GtkTreeView from GtkCList. Remove the entries above the
Tue Jan 29 15:24:59 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfontsel.[ch]: Switch over to GtkTreeView from
        GtkCList. Remove the entries above the font/face lists
        since they were a little confusing. (Not sure about this
        change, so the code is still there the entries are
        just hidden.) (#68890)

        * gtk/gtkfilesel.c: Switch over to GtkTreeView from
        GtkCList. Add mnemonics for fileops. Allow Control/Shift
        Tab to focus out.

        * gtk/gtkfilesel.c: Make fileop dialogs transient-for
        the fileselector. (#69336, patch from Melvin Hadasht)

        * gtk/gtkgamma.c (button_clicked_callback): Fix handling
        of gamma dialog a bit. (#69336, Matthias Clasen.)
2002-01-29 20:53:17 +00:00
Owen Taylor
53ca71377d Return boolean (and FALSE from focus_in / focus_out handlers. (#69528,
Tue Jan 29 14:56:28 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtksocket.c (toplevel_focus_out_handler): Return boolean
        (and FALSE from focus_in / focus_out handlers. (#69528,
        Padraig O'Briain)
2002-01-29 19:58:43 +00:00
Owen Taylor
b2388ec7b4 Remove the scary startup warning.
Tue Jan 29 14:47:54 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmain.c (gtk_init_check): Remove the scary startup
        warning.
2002-01-29 19:49:26 +00:00
Owen Taylor
854372b9be Add <Control>Tab bindings for "move-focus" so that Control-Tab to escape
Tue Jan 29 14:24:49 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_class_init): Add <Control>Tab
        bindings for "move-focus" so that Control-Tab to escape from
        something that eats Tab just works if not otherwise overriden.

        * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range)
        * gtk/gtkvscale.c (gtk_vscale_new_with_range)
        * gtk/gtkhscale.c (gtk_hscale_new_with_range): Use a page_size
        of zero for the adjustment, since at times we think that the range
        is lower to upper - page_size. A page size equally to the
        step_increment is, in any case, not meaningful.
2002-01-29 19:44:49 +00:00
Tor Lillqvist
cac17ab7b4 Add comment about gtk-1-3-win32-production branch currently being ahead in
2002-01-29  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Add comment about gtk-1-3-win32-production branch
 	currently being ahead in functionality and code cleanliness (in
 	gdk/win32). Just in case somebody looks at the code in gdk/win32
 	here and starts fixing it, when it is going to change soonish
 	anyway.
2002-01-29 13:59:47 +00:00
Sven Neumann
16ce67f81b don't install an empty icon_set if none of the image files could be found
2002-01-29  Sven Neumann  <sven@gimp.org>

	* gtk/gtkrc.c: don't install an empty icon_set if none of the image
	files could be found in the pixmap_path (bug #69398).
2002-01-29 12:24:02 +00:00
Sven Neumann
2c0e16e403 fixed a segfault that showed up when using the color picker.
2002-01-29  Sven Neumann  <sven@gimp.org>

	* gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): fixed a segfault
	that showed up when using the color picker.
2002-01-29 11:47:15 +00:00
Tim Janik
c8a1ae5bce fix default value for ::digits property, leave as 1 as per havoc's
Tue Jan 29 11:51:14 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkscale.[hc]: fix default value for ::digits property,
        leave as 1 as per havoc's request.
        don't apply the draw_digits value to range->round_digits,
        so we don't perform gross quantization by default.
2002-01-29 11:35:28 +00:00
Havoc Pennington
5d82c0a4b6 fix assertion failure by creating the line data, but not validating it at
2002-01-25  Havoc Pennington  <hp@redhat.com>

        * gtk/gtktextbtree.c (_gtk_text_btree_delete): fix assertion
        failure by creating the line data, but not validating it at this
        stage. Also, remove old code related to the "bogus newline" mess
        that removed all tags from the last char in the buffer if you
        tried to delete it.
        (_gtk_text_line_data_new): put this here and prepend underscore,
        remove from gtktextlayout.c
2002-01-29 04:55:48 +00:00
Chyla Zbigniew
c5c5ff650d Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-01-29 02:01:59 +00:00
Owen Taylor
1de50ecf17 modules/input/imhangul.c modules/input/imhangul-defs.h po/POTFILES.in. Add
Mon Jan 28 19:57:39 2002  Owen Taylor  <otaylor@redhat.com>

        * modules/input/imhangul.c modules/input/imhangul-defs.h
        po/POTFILES.in. Add port of Emacs korean-hangul input
        method from Yusuke Tabata (#67665)
2002-01-29 01:36:05 +00:00
Owen Taylor
41fafb88c5 ChangeLog fixups 2002-01-28 23:38:37 +00:00
Owen Taylor
ecd7479a37 Paint focus before shadow to give theme engines a bit more flexibility.
Mon Jan 28 18:25:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_draw_frame): Paint focus
        before shadow to give theme engines a bit more
        flexibility. (#69857)
2002-01-28 23:28:16 +00:00
Szabolcs Ban
cb133a75a8 Hungarian translations 2002-01-28 21:58:31 +00:00
Jonathan Blandford
76237096a8 no longer g_assert.
Mon Jan 28 16:23:20 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_dy_to_top_row): no longer
	g_assert.
2002-01-28 21:24:27 +00:00
Owen Taylor
cef69b57fe Fix hint computation again.
Mon Jan 28 15:34:43 2002  Owen Taylor  <otaylor@redhat.com>

	* pixbuf-render.c (compute_hint): Fix hint computation
	again.
2002-01-28 20:36:38 +00:00
Jon Trowbridge
ddff4ea49f When setting the GtkTreeView's model, set prelight_node, prelight_tree,
2002-01-28  Jon Trowbridge  <trow@gnu.org>

	* gtk/gtktreeview.c (gtk_tree_view_set_model): When setting the
	GtkTreeView's model, set prelight_node, prelight_tree,
	button_pressed_node and button_pressed_tree to NULL. (#69603)
2002-01-28 20:28:52 +00:00
Bill Haneman
011cb31f18 Changes to gtktreeview to better support thicker focus lines,
and enhancements to the visibility of the default expander when
its size has been increased.
2002-01-28 20:19:42 +00:00
Jonathan Blandford
d8068f867c Only activate/edit the row if shift is not pressed, #69248
Mon Jan 28 14:44:40 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): Only
	activate/edit the row if shift is not pressed, #69248
2002-01-28 19:48:48 +00:00
Anders Carlsson
7160e77b6b Fix build.
2002-01-28  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkcurve.c (gtk_curve_set_vector): Fix build.
2002-01-28 19:37:47 +00:00
Matthias Clasen
e2b730ac43 General property notification cleanup. 2002-01-28 18:52:49 +00:00
Owen Taylor
929c8ed53e Fix problems in computing MISSING hint.
Mon Jan 28 12:17:07 2002  Owen Taylor  <otaylor@redhat.com>

        * pixbuf-render.c (compute_hint): Fix problems in computing
        MISSING hint.
2002-01-28 17:25:14 +00:00
Jonathan Blandford
eb83e73898 Forgot to commit this last week. 2002-01-28 17:08:54 +00:00
Duarte Loreto
f18d08fb9b Converted to UTF-8 (I read the README but forgot to do it before).
2002-01-28  Duarte Loreto <happyguy_pt@hotmail.com>

        * pt.po: Converted to UTF-8 (I read the README but
                 forgot to do it before).
2002-01-28 12:32:29 +00:00
Anders Carlsson
03a1601190 & with the default mod mask so accels work when numlock is on.
2002-01-28  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkaccelgroup.c (gtk_accel_groups_activate): & with the
	default mod mask so accels work when numlock is on.
2002-01-28 07:43:26 +00:00
Owen Taylor
6090d199a5 Optimize the case where a component is entirely transparent by skipping
Sun Jan 27 23:58:13 2002  Owen Taylor  <otaylor@redhat.com>

        * pixbuf-render.c (compute_hint): Optimize the case
        where a component is entirely transparent by skipping
        drawing it.

        * pixbuf-rc-style.c (theme_parse_image): Catch case
        where background or overlay border/stretch are specified
        without a background image.

        * pixbuf-render.c (theme_pixbuf_destroy): Actually free
        the structure and filename.
2002-01-28 05:34:17 +00:00
Kristian Rietveld
624b01a92e ugh, I also forgot to add the date in the ChangeLog ... 2002-01-27 22:24:33 +00:00
Kristian Rietveld
2d0eb8a588 add _gtk_rbtree_mark_invalid (my previous commit already needed this ...)
Sun Jan 27 23:23:23  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
        commit already needed this ...)

(/me broke the build for the first time ... :)
2002-01-27 22:21:27 +00:00
Kristian Rietveld
ad219f2e3a Fix for bug #69586
Sun Jan 27 22:13:02  Kristian Rietveld  <kris@gtk.org>

        Fix for bug #69586

        * gtk/gtktreeprivate.h: get rid of tab_offset, introduce
        expander_size

        * gtk/gtktreeview.c: get rid of ->priv->tab_offset, introduce
        expander_size caching (from style), fix CELL_HEIGHT macro,
        use MAX ("RBNODE_HEIGHT", expander_size) (differs per case) for
        row height calculation, added style_set callback
2002-01-27 21:11:29 +00:00
Anders Carlsson
529a9205e0 Set the cursor to GDK_XTERM.
2002-01-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtklabel.c (gtk_label_create_window): Set the cursor to
	GDK_XTERM.
2002-01-27 18:54:36 +00:00
Anders Carlsson
8290dc99dc add mouse_cursor_obscured.
2002-01-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktextview.h (struct _GtkTextView): add mouse_cursor_obscured.

	* gtk/gtkentry.h (struct _GtkEntry): Add mouse_cursor_obscured.

	* gtk/gtktextview.c (set_invisible_cursor): New function.
	(gtk_text_view_obscure_mouse_cursor): Likewise.
	(gtk_text_view_key_press_event): Call obscure_cursor if text
	has been inserted.
	(gtk_text_view_motion_event): Restore the mouse cursor.

	* gtk/gtkentry.c (gtk_entry_realize): Add GDK_POINTER_MOTION_MASK.
	(set_invisible_cursor): New function.
	(gtk_entry_obscure_mouse_cursor): Likewise.
	(gtk_entry_key_press): call obscure_cursor if text has been inserted.
	(gtk_entry_motion_notify): Restore the mouse cursor.
2002-01-27 18:39:22 +00:00
Ole Laursen
f03d717b59 Fixed a few type errors. :-)
2002-01-27  Ole Laursen  <olau@hardworking.dk>

	* da.po: Fixed a few type errors. :-)
2002-01-27 17:30:12 +00:00
Ole Laursen
0b26c798db Updated Danish translation and converted it to UTF-8.
2002-01-27  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation and converted it to UTF-8.
2002-01-27 17:15:14 +00:00
Sven Neumann
f20c585eba removed unused return value.
2002-01-27  Sven Neumann  <sven@gimp.org>

	* gtk/gtkstyle.c (sanitize_size): removed unused return value.
2002-01-27 16:39:29 +00:00
Owen Taylor
1a60d00ed9 Don't send MODALITY_ON/OFF if socket->same_app (More fixes for #69735)
Sat Jan 26 19:27:23 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtksocket.c (gtk_socket_grab_notify): Don't
        send MODALITY_ON/OFF if socket->same_app (More fixes for #69735)
2002-01-27 00:36:38 +00:00
Owen Taylor
887c5ad832 Return FALSE not true in the grab_widget == NULL case. (Bug reported by
Sat Jan 26 19:04:37 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (check_is_grabbed): Return FALSE not true
	in the grab_widget == NULL case. (Bug reported by
	Padraig O'Briain, #69735)

	* gtk/gtkplug.c (handle_modality_on): Realize the modality
	window so gtk_widget_event() doesn't complain :-((((.
2002-01-27 00:19:31 +00:00
Federico Mena Quintero
2ca60b920b Merge from gdk-pixbuf stable.
2002-01-25  Federico Mena Quintero  <federico@ximian.com>

	Merge from gdk-pixbuf stable.

	* gdk-pixbuf-xlib-drawable.c (rgb565msb): Fixed the endianness
	conversion --- swap the individual 16 bit values instead of taking
	everying as a 32 bit value.
	(rgb565lsb): Likewise.
	(rgb555lsb): Likewise.
	(rgb555msb): Likewise.
2002-01-25 21:38:13 +00:00
Federico Mena Quintero
165e970296 Merge from gdk-pixbuf stable.
2002-01-25  Federico Mena Quintero  <federico@ximian.com>

	Merge from gdk-pixbuf stable.

	* gdk/gdkpixbuf-drawable.c (rgb565msb): Fixed the endianness
	conversion --- swap the individual 16 bit values instead of taking
	everying as a 32 bit value.
	(rgb565lsb): Likewise.
	(rgb555lsb): Likewise.
	(rgb555msb): Likewise.
2002-01-25 21:34:18 +00:00
Alex Larsson
588e9d1dc0 Implement copy_to_image instead of get_image
2002-01-25  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_drawable_impl_fb_class_init):
	Implement copy_to_image instead of get_image

	* gdk/linux-fb/gdkimage-fb.c:
	Implement _gdk_image_new_for_depth, _gdk_windowing_get_bits_for_depth and
	_gdk_fb_copy_to_image.
	Based in part on patch from Mathieu Lacage <mathieu_lacage@realmagic.fr>

	* gdk/linux-fb/gdkmain-fb.c:
	Make ENABLE_FB_MANAGER region larger.

	* gdk/linux-fb/gdkprivate-fb.h:
	Change _gdk_fb_get_image to _gdk_fb_copy_to_image.
2002-01-25 17:10:03 +00:00
Sven Neumann
54b6e6f76b changed the comment so that gtk-doc doesn't get confused.
2002-01-25  Sven Neumann  <sven@gimp.org>

	* gtk/gtkwindow.c (gtk_window_get_size): changed the comment so
	that gtk-doc doesn't get confused.
2002-01-25 14:34:20 +00:00
Tim Janik
9c6dc3d52d assert that the passed in arrow is always _UP or _DOWN, this catches false
Fri Jan 25 14:03:36 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): assert
        that the passed in arrow is always _UP or _DOWN, this catches
        false invocations which lead to drawing artefacts.
        (start_spinning): likewise, i.e. sanity check the passed in arrow.
        (gtk_spin_button_button_release): fix arrow redrawing.
        (gtk_spin_button_button_press): must set click_child for
        button3 even if we don't take spinning action right away.

        * gtk/gtkspinbutton.h (struct _GtkSpinButton): document
        valid values for click_child.
2002-01-25 13:22:00 +00:00
Kristian Rietveld
2ccd6fd5d7 update docs, return current FALSE if x is smaller than the current visible
Thu Jan 24 23:03:24 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): update docs,
        return current FALSE if x is smaller than the current visible area,
        not than the requested area, don't correct y coordinate,
        TREE_WINDOW_Y_TO_RBTREE_Y will do that. Fixes #67477.
2002-01-24 22:07:35 +00:00
Hasbullah Bin Pit
b0f37124de Updated Malay Translation.
2002-01-24 Hasbullah Bin Pit <sebol@ikhlas.com>

        * ms.po : Updated Malay Translation.
2002-01-24 21:49:44 +00:00
Jonathan Blandford
902c6a48d5 fix column reordering fully. (gtk_tree_view_size_allocate): fix evil bug.
Thu Jan 24 15:41:08 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c
	 (gtk_tree_view_motion_draw_column_motion_arrow): fix column
	 reordering fully.
	 (gtk_tree_view_size_allocate): fix evil bug.
2002-01-24 20:42:48 +00:00
Owen Taylor
bc5dfe106d Don't clear the model until we clean up all the other objects that might
Thu Jan 24 11:53:19 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_destroy): Don't clear
	the model until we clean up all the other objects
	that might refer to the object.
2002-01-24 16:54:54 +00:00
Mark McLoughlin
44047a30e2 include gtk/gtkwidget.h
2002-01-24  Mark McLoughlin  <mark@skynet.ie>

        * gtk/gtkaccessible.h: include gtk/gtkwidget.h
2002-01-24 15:59:37 +00:00
Owen Taylor
c431ffffc6 Use insensitive state for insensitive arrows, not just an "etched state".
Wed Jan 23 20:28:59 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_draw_arrow):
	Use insensitive state for insensitive arrows, not
	just an "etched state". (#67172, Adrian Custer)
2002-01-24 01:36:39 +00:00
Manish Singh
1b3a7630f2 use a variable that's actually been declared.
2002-01-23  Manish Singh  <yosh@gimp.org>

        * gtk/gtkentry.c (gtk_entry_set_text): use a variable that's actually
        been declared.
2002-01-24 00:29:49 +00:00
Damon Chaplin
ea23df6106 set minimum gtk-doc version to 0.9, since we need to use the new
2002-01-23  Damon Chaplin  <damon@ximian.com>

	* configure.in (gtk_doc_min_version): set minimum gtk-doc version to
	0.9, since we need to use the new --type-init-func argument for
	gtkdoc-scangobj.
2002-01-23 23:58:41 +00:00
Damon Chaplin
92ceb73a35 added SCANGOBJ_OPTIONS to set the type-init-func to pass to
2002-01-23  Damon Chaplin  <damon@ximian.com>

	* gtk/Makefile.am: added SCANGOBJ_OPTIONS to set the type-init-func
	to pass to gtkdoc-scangobj.
2002-01-23 23:52:43 +00:00
Matthias Clasen
321db896a4 Remove excessive g_return_if_fail() calls. (#57615)
* gtk/gtkentry.c, gtk/gtkwidget.c: Remove excessive
        g_return_if_fail() calls. (#57615)
2002-01-23 23:46:25 +00:00
Matthias Clasen
d67b5ce070 Make it work for paths with underline accelerators. (#69247)
* gtk/gtkitemfactory.c (gtk_item_factory_delete_entries): Make
        it work for paths with underline accelerators. (#69247)
2002-01-23 22:51:01 +00:00
Owen Taylor
c099271bb5 Stop spinning if widget becomes insensitive. (#56248)
Wed Jan 23 15:12:16 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkspinbutton.c (gtk_spin_button_state_changed):
        Stop spinning if widget becomes insensitive. (#56248)
2002-01-23 20:15:48 +00:00
Owen Taylor
44d727eaa1 Decreate value since we now use doubles.
Wed Jan 23 14:44:12 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkspinbutton.c (EPSILON): Decreate value since
	we now use doubles.
2002-01-23 19:51:43 +00:00
Jonathan Blandford
864cc237d4 Oops. Minor fix 2002-01-23 03:53:36 +00:00
Manish Singh
2f4b56176a remove old files (they live in the tests dir now)
-Yosh
2002-01-22 23:06:11 +00:00
Manish Singh
db083331a9 shut up CVS 2002-01-22 22:57:51 +00:00
Jonathan Blandford
60afa9e14e Fix sizing bug I introduced accidentally, #69358
Tue Jan 22 16:58:37 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): Fix sizing bug
	I introduced accidentally, #69358
2002-01-22 22:13:30 +00:00
Padraig O'Briain
e060f59406 Update last change to prevent core dump
* gtk/gtktreestore.c (gtk_tree_store_iter_children):
Update last change to prevent core dump
2002-01-22 15:44:20 +00:00
Jonathan Blandford
eb12558675 change guint16 to gint to reflect changes in the code, found by Jody
Mon Jan 21 23:39:42 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/tmpl/gtkfixed.sgml: change guint16 to gint to reflect
	changes in the code, found by Jody Goldberg <jody@gnome.org>
2002-01-22 05:00:50 +00:00
Kristian Rietveld
f0c42465b9 add some more stamp checks (pointed out by Anders Carlsson)
Mon Jan 21 01:21:54 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreestore.c: add some more stamp checks (pointed out
        by Anders Carlsson)

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): don't
        assume _row_changed will insert sort (because _row_changed doesn't
        need to follow this signal), so apply insert sort here
        (gtk_tree_model_sort_level_find_insert): header doesn't need to be
        set here, so use a return instead of g_return_val_if_fail.
2002-01-22 00:21:40 +00:00
Jonathan Blandford
969279b54e Update top_row. Remove extraneous print statements.
Mon Jan 21 18:28:17 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): Update
	top_row.  Remove extraneous print statements.
2002-01-21 23:30:17 +00:00
Matthias Clasen
236118bf89 Document allowed values for ifactory.
* gtk/gtkitemfactory.c (gtk_item_factory_popup,
        gtk_item_factory_popup_with_data): Document allowed values
        for ifactory.

        * gtk/gtkitemfactory.c (gtk_item_factory_delete_entry): Make
        it work for paths with underline accelerators.
2002-01-21 18:44:20 +00:00
Jonathan Blandford
19c5e80ce7 only resize the window.
Fri Jan 18 16:31:21 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): only resize the
	window.
2002-01-21 17:38:28 +00:00
Owen Taylor
382cc81163 Trap the case where there is no default widget and the entry is the focus
Mon Jan 21 11:56:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_real_activate): Trap the
        case where there is no default widget and the entry
        is the focus widget, since this also causes infinite
        recursion. (#69158)
2002-01-21 17:04:47 +00:00
Owen Taylor
da117dcdca Set the fallback program class here, rather than
Mon Jan 21 11:46:39 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.c (gdk_init_check): Set the fallback program class here,
        rather than lazilygdk_get_program_class(), since we don't want
        -name to override it. (#69123, Ryan Lovett)
2002-01-21 16:50:45 +00:00
Owen Taylor
599b862f98 Fix wrong types for command line arguments (#69124, Ryan Lovett)
Mon Jan 21 10:29:45 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c: Fix wrong types for command line arguments
	(#69124, Ryan Lovett)

	* gdk/gdk.c (gdk_arg_context_parse): Fix bug in parsing
	parsing '--arg VALUE'.

	* gdk/gdk.c: Remove unused variable gdk_error_trap_free_list.
2002-01-21 15:41:47 +00:00
Erwann Chenede
13d48a3b85 file movedemo.c was initially added on branch gtk-multihead. 2002-01-21 13:37:16 +00:00
Erwann Chenede
c20aededc6 file multidisplay.c was initially added on branch gtk-multihead. 2002-01-21 13:37:16 +00:00
Erwann Chenede
864f940cf6 file multiscreen.c was initially added on branch gtk-multihead. 2002-01-21 13:37:16 +00:00
Erwann Chenede
248e223b2a file virtualscreen.c was initially added on branch gtk-multihead. 2002-01-21 13:37:16 +00:00
Havoc Pennington
fffbc2b16e mention that window arg can be NULL
2002-01-21  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkwindow.c (gdk_window_add_filter): mention that window
	arg can be NULL
2002-01-21 05:58:33 +00:00
Manish Singh
1530c14531 Made sure all the error cases involving jpeg or png load/saves clean
Sat Jan 19 20:49:20 2002  Manish Singh  <yosh@gimp.org>

        * io-jpeg.c, io-png.c: Made sure all the error cases involving
        jpeg or png load/saves clean themselves up properly. Marked some
        variables needed for cleanup volatile so they aren't clobbered by
        setjmp.
2002-01-20 04:52:47 +00:00
Owen Taylor
188ceabf8b Move back into gtk-engines 2002-01-20 02:16:54 +00:00
Kristian Rietveld
4aebf9326a fix a load of open line ends (cell_edited): modified patch from German Poo
Sat Jan 19 20:49:41 2002  Kristian Rietveld  <kris@gtk.org>

        * demos/gtk-demo/editable_cells.c: fix a load of open line ends
        (cell_edited): modified patch from German Poo Caaman~o
        to fix up old_text declaration and free the memory
        (do_editable_cells): unref the model after creating the treeview

        * demos/gtk-demo/list_store.c: fix a load of open line ends,
        (add_columns): set the sort column id, so we can sort

        * demos/gtk-demo/tree_store.c: fix a load of open line ends,
        (do_tree_store): unref the model after creating the treeview
2002-01-19 20:15:56 +00:00
Havoc Pennington
31283d57ca link to new X11 section in a lot of places when mentioning the window
2002-01-19  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.c: link to new X11 section in a lot of places when
	mentioning the window manager.

	* gtk/gtkwidget.c (gtk_widget_hide_on_delete): don't mention
	window manager since we're portable.

2002-01-19  Havoc Pennington  <hp@pobox.com>

	* gtk/x11.sgml: add a mostly-empty X11 section

	* gtk/framebuffer.sgml: make title consistent with windows section

	* gtk/tmpl/gtkdrawingarea.sgml: couple of fixes
2002-01-19 18:51:48 +00:00
Jeff Garzik
b292358479 Wrap case values in GPOINTER_TO_UINT(). Fixes build with gcc 3.x.
Sat Jan 19 08:47:41 2002  Jeff Garzik  <jgarzik@mandrakesoft.com>

        * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
        Wrap case values in GPOINTER_TO_UINT().  Fixes build with gcc 3.x.

        * gtk/gtkmain.c:  Include sys/types.h if G_OS_UNIX.
        Fixes build with gcc 3.x and -ansi.
2002-01-19 17:54:11 +00:00
Duarte Loreto
6f05c41a0a Updated Portuguese translation.
2002-01-19  Duarte Loreto <happyguy_pt@hotmail.com>

        * pt.po: Updated Portuguese translation.
2002-01-19 17:30:46 +00:00
Owen Taylor
029b235234 Catch invalid borders, and warn.
Sat Jan 19 02:45:17 2002  Owen Taylor  <otaylor@redhat.com>

        * src/pixbuf-render.c (theme_pixbuf_compute_hints): Catch
        invalid borders, and warn.
2002-01-19 07:52:52 +00:00
Owen Taylor
4661db56ae fix image file names 2002-01-19 07:28:56 +00:00
Owen Taylor
465dfdf2ec add missed file 2002-01-19 07:24:59 +00:00
Owen Taylor
eb9406c2b3 Fix problems when an engine declaration occurs in a reopened style, and
Fri Jan 18 23:01:37 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c (gtk_rc_parse_style): Fix problems when
        an engine declaration occurs in a reopened style, and
        g_free() of objects when errors occur.
2002-01-19 06:45:45 +00:00
Owen Taylor
c77a8b9183 Add an extrodinarily ugly example.
Sat Jan 19 00:32:14 2002  Owen Taylor  <otaylor@redhat.com>

        * examples/*: Add an extrodinarily ugly example.

        * src/pixbuf-draw.c (draw_simple_image): Never shape
        the window, even if we are allowed to. Shaping is
        ugly -- if the widget isn't NO_WINDOW (most are),
        you'll just have to draw it rectangular.

        * src/pixbuf-render.c (pixbuf_render): Always use
        gdk_pixbuf_render_alpha() with FULL_ALPHA() as the
        type.

        * pixbuf.h src/pixbuf-render.c (theme_pixbuf_compute_hints): To
        speed up scaling, cache whether pixbufs have constant rows
        or constant columns.

        * src/pixbuf-render.c (pixbuf_render): Speed up scaling
        by using the hints from compute_hints().
2002-01-19 05:39:43 +00:00
Owen Taylor
3f100bb819 Fix for changes to draw_focus.
Fri Jan 18 18:14:11 2002  Owen Taylor  <otaylor@redhat.com>

        * src/pixbuf-draw.c (draw_focus): Fix for changes to draw_focus.
2002-01-18 23:14:45 +00:00
Matthias Clasen
fc85da54ca Clarify documentation. (#69026)
* gtk/gtkitemfactory.c (gtk_item_factory_get_widget_by_action):
        Clarify documentation. (#69026)

        * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Fix
        missing initialization of adjustment. (#69025)
2002-01-18 21:37:31 +00:00
Yuri Syrota
251e37b652 Updated Ukrainian translation 2002-01-18 10:08:16 +00:00
Raja R Harinath
dcb3638a7d Simplify Makefiles. <URL: http://bugzilla.gnome.org/show_bug.cgi?id=68969>
Simplify Makefiles.
<URL: http://bugzilla.gnome.org/show_bug.cgi?id=68969>
* gdk/Makefile.am: Remove use of automake conditionals to pick
library to build.
* gtk/Makefile.am: Likewise.

* gdk/Makefile.am (LDFLAGS): Use $(libdir), not @prefix@/lib.
* gtk/Makefile.am (LDFLAGS): Likewise.
2002-01-18 04:21:24 +00:00
Owen Taylor
a8e2fc3082 Fix missing allocation.x/y offsets. (#68962, Jacob Berkman)
Thu Jan 17 20:13:14 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_redraw_tabs): Fix
	missing allocation.x/y offsets. (#68962, Jacob
	Berkman)

	* gtk/gtknotebook.c (gtk_notebook_size_allocate):
	Queue a redraw on the entire widget if we hide
	the last page or show the first. (Also #68962)
2002-01-18 01:18:05 +00:00
Havoc Pennington
c6a3df0474 change GTK_MOVEMENT_PARAGRAPHS to go to start/end of paragraph before it
2002-01-17  Havoc Pennington  <hp@redhat.com>
	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): change
	GTK_MOVEMENT_PARAGRAPHS to go to start/end of paragraph before it
	starts to go up/down paragraphs. This makes Ctrl+Up/Ctrl+Down work
	as in the keynav spec, though it makes the interpretation of
	GTK_MOVEMENT_PARAGRAPHS different from the interpretation of some
	of the other GTK_MOVEMENT_ thingies, maybe, as if that enum makes
	any sense anyhow.
2002-01-18 00:45:50 +00:00
Jonathan Blandford
6bc31ea4d9 For some reason, I was activating a row while just selecting it. Reported
Thu Jan 17 16:34:55 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): For
	some reason, I was activating a row while just selecting it.
	Reported by andersca.
	(gtk_tree_view_size_request): add a
	validate_rows_handler to give us a rough width of the widget.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
	Queue a resize here just in case.  It's needed in over half the
	cases, and I don't want to do a diff to figure out exactly when
	it's needed.
2002-01-18 00:23:26 +00:00
Matthias Clasen
841e8424ab More composite children. 2002-01-18 00:10:23 +00:00
Matthias Clasen
77c286304e Mark children as composite. (#66360)
* gtk/gtkcolorsel.c, gtk/gtkfilesel.c, gtk/gtkfontsel.c:
        Mark children as composite. (#66360)

        * gtk/gtkwidget.c (gtk_widget_push_composite_child): Explain
        composite children some more. (#66360)
2002-01-17 23:43:23 +00:00
Matthias Clasen
26b4dd28af tiny markup fix 2002-01-17 23:04:19 +00:00
Havoc Pennington
9e404f2a1e new function (which I then decided not to use but I think it's needed to
2002-01-17  Havoc Pennington  <hp@redhat.com>
	* gtk/gtktextlayout.c (_gtk_text_layout_get_line_xrange): new
	function (which I then decided not to use but I think it's needed
	to fix #68963
	* gtk/gtktextview.c: add page_horizontally action signal and
	implement Ctrl+PgUp, Ctrl+PgDown based on patch from Padraig,
	hackily modified to avoid adding GTK_MOVEMENT_ API. Part of
	#53934
	* gtk/gtkmarshalers.list: add NONE:INT,BOOL
2002-01-17 22:38:18 +00:00
Owen Taylor
cf25093441 Call gtk_selection_remove_all() here, not in destroy/ finalize. (#66636,
Thu Jan 17 17:02:38 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_real_unrealize): Call
	gtk_selection_remove_all() here, not in destroy/
	finalize. (#66636, Sergey Vlasov)

	* gtk/gtkselection.c (gtk_selection_request): Fix
	reentrancy problem with multiple conversions.

	* gtk/gtkselection.c (gtk_selection_remove_all):
	Don't remove incrs, we don't need the widget for
	maintain the incr.

	* gtk/gtkselection.c (struct _GtkIncrInfo): Remove
	the widget field from here, we don't need it.
2002-01-17 22:28:02 +00:00
Owen Taylor
c8698f924d Move here, and save/restore the X error handler to allow people using GTK+
Thu Jan 17 13:08:34 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkmain-x11.c (gdk_error_trap_push): Move
	here, and save/restore the X error handler to allow
	people using GTK+ to set the X error handler to something
	custom without disturbing the operation of GDK.

	* gdk/linux-fb/gdkmain-fb.c (gdk_error_trap_push)
	* gdk/win32/gdkmain-win32.c (gdk_error_trap_pop): Add
	dummy implementations.

	* gdk/x11/gdkmain-x11.c gdk/x11/gdkevents-x11.c
	gdk/x11/gdkdnd-x11.c: Use gdk_error_trap_push()/pop()
	for all error trapping.

	* gdk/x11/gdkdnd-x11.c: Remove '#if 0' code.

	* gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Fix
	problem where we would add the results anyways,
	and then add it again if no error occurred, and problem
	where we could leave _gdk_error_warnings() unset.
2002-01-17 20:45:23 +00:00
Owen Taylor
5ce4d1588a Fix calculation error in the (shouldn't happen) case where
Wed Jan 16 12:16:37 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Fix
        calculation error in the (shouldn't happen) case where
        option_menu->height < child_requisition.height. (Patch
        from Jacob Berkman, #66969)
2002-01-17 01:37:31 +00:00
Owen Taylor
9961ddc205 Fix "deleting" filename by adding another boolean parameter to
Wed Jan 16 20:28:38 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c: Fix "deleting" filename by adding
	another boolean parameter to file_selection_populate() -
	whether to clear the entry. Also, never fill in the
	entry when the user clicks on something in the
	directory list. (#6791, Reported by Jos Dehaes and many,
	many, many others.)
2002-01-17 01:37:06 +00:00
Havoc Pennington
fe622071f6 update cursor_y_pos with clamped delta rather than theoretical delta
2002-01-16  Havoc Pennington  <hp@redhat.com>
	* gtk/gtktextview.c (gtk_text_view_scroll_pages): update
	cursor_y_pos with clamped delta rather than theoretical delta
	(#68788). Also, if we can't page up/down further then jump
	to top/bottom of the document.
2002-01-17 01:08:59 +00:00
Owen Taylor
396f5ab1f6 Refresh the dialog on map. (#52877, inspired by request from Murray
Wed Jan 16 19:33:41 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_map): Refresh
	the dialog on map. (#52877, inspired by request from
	Murray Cumming)
2002-01-17 00:53:50 +00:00
Owen Taylor
ee2d7c4556 Support "optional" bindings. If a binding signal has a boolean return
Wed Jan 16 19:23:04 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbindings.c (gtk_binding_entry_activate):
	Support "optional" bindings. If a binding signal
	has a boolean return value, and returns FALSE it
	is as if it didn't exist all.

	* gtk/gtkbindings.c (binding_compose_params): Switch
	over to GValue.

	* gtk/gtknotebook.[ch]: Make the select_page() and
	change_current_page() signals only take effect when
	the focus is on the tab area so that key presses
	in children pass up to the toplevel correctly.
2002-01-17 00:34:58 +00:00
Matthias Clasen
226b2fa14b Deprecate. (#68183)
* gtk/gtkenums.h (GtkMatchType): Deprecate. (#68183)

        * gtk/gtkscale.h (gtk_scale_value_width): Remove useless
        compatibility macro. (#67730)

        * gtk/changes-2.0.sgml: Details about GtkRange and subclasses
        rewrite. (#67730)
2002-01-16 19:12:47 +00:00
Owen Taylor
5b96321c3a Fix typo in --help output. (Arnaud Charlet).
Wed Jan 16 10:54:38 2002  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Fix typo in --help output.
	(Arnaud Charlet).
2002-01-16 15:55:38 +00:00
Owen Taylor
476d48ddd1 Add gtkstockpixbufs.h.
Wed Jan 16 10:18:42 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/stock-icons/Makefile.am (EXTRA_DIST): Add
	gtkstockpixbufs.h.

	* configure.in: Make TIFF, JPEG, PNG loaders mandatory
	unless you configure with --without-libtiff, etc.
	(#54045, Brian Cameron)
2002-01-16 15:31:42 +00:00
Yuri Syrota
37d1686ac6 Updated Ukrainian translation 2002-01-16 15:11:21 +00:00
Yuri Syrota
0434ecadff Updated Ukrainian translation 2002-01-16 14:26:02 +00:00
Yuri Syrota
e6b83b4519 Updated Ukrainian translation 2002-01-16 14:02:47 +00:00
Yuri Syrota
c1385e03cf Updated Ukrainian translation 2002-01-16 11:02:22 +00:00
Yuri Syrota
9874cd3971 Updated Ukrainian translation 2002-01-16 10:19:32 +00:00
Padraig O'Briain
b573dba9e0 Avoid unexpected warning message when navigating menu (#68517)
* gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
Avoid unexpected warning message when navigating menu (#68517)
2002-01-16 08:53:15 +00:00
Jody Goldberg
337982738d set_boxed will copy the color and will use a mem_chunk to do it. Avoid an
2002-01-13  Jody Goldberg <jody@gnome.org>

        * gtk/gtktexttag.c (get_color_arg) : set_boxed will copy the color
	  and will use a mem_chunk to do it.  Avoid an unnecessary copy, a
	  leak, and confusion.
2002-01-16 06:02:41 +00:00
Jody Goldberg
691be10dbc It is possible that a GtkLayout may have been scrolled _before_ it was
2002-01-15  Jody Goldberg <jody@gnome.org>

	* gtk/gtklayout.c (gtk_layout_realize) : It is possible that a
	GtkLayout may have been scrolled _before_ it was realized.
2002-01-16 06:01:31 +00:00
Roy-Magne Mo
affd934c32 Updated Norwegian (nynorsk) translation. 2002-01-16 01:21:03 +00:00
Owen Taylor
815ffe2edd Stop the timer on destroy, or when we are notified that we are shadowed by
Tue Jan 15 18:10:24 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): Stop
	the timer on destroy, or when we are notified that we are
	shadowed by a modal dialog.

	* gtk/gtkspinbutton.c: Remove explicit gtk_grab_add()/remove() -
	not needed any more.

	* gtk/gtkmain.c (gtk_grab_notify): Fix problem where notifications
	weren't sent out for the default grab group.

	* gtk/gtkmain.c (gtk_grab_notify): Fix notification of widgets that
	were getting events because they were part of the previous grab.
2002-01-16 01:07:11 +00:00
Owen Taylor
08431c79ba focus the activated tab, not the page. (#53612)
Tue Jan 15 12:23:33 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_mnemonic_activate_switch_page):
	focus the activated tab, not the page. (#53612)

	* gtk/gtknotebook.c (gtk_notebook_set_focus_child): Track
	the last focus descendant of the page.

	* gtk/gtknotebook.c (gtk_notebook_real_switch_page): If the focus
	was on the previous page, move it to the last focused widget /
	first element on the new page, if possible, or if not, to the
	notebook itself. (#68224, reported by Jonathan Blandford)

	* gtk/gtknotebook.c (focus_tabs_in): Don't focus tabs
	tabs aren't visible. (#65462, Damon Chaplin, fixed based
	on patch from Anders Carlsson)
2002-01-15 17:40:44 +00:00
Vitaly Tishkov
3b3eee9304 gtk/gtkstyle.c a misprint in documentation for gtk_style_render_icon () is
2002-01-15            Vitaly Tishkov       <tvv@sparc.spb.su>

        * gtk/gtkstyle.c
	a misprint in documentation for gtk_style_render_icon () is fixed
2002-01-15 16:35:01 +00:00
Tim Janik
1d43dcc334 map event_window after mapping child, so we don't loose events.
Mon Jan 14 23:21:47 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenuitem.c (gtk_menu_item_map): map event_window after
        mapping child, so we don't loose events.
2002-01-15 13:24:03 +00:00
Sven Neumann
29ccea0889 gtk/gtkaccellabel.h fixed documentation by syncing the parameter names
2002-01-15  Sven Neumann  <sven@gimp.org>

	* gtk/gtkaccellabel.h
	* gtk/gtkitemfactory.c: fixed documentation by syncing the parameter
	names used in headers and code.
2002-01-15 11:20:00 +00:00
jacob berkman
57fa80a0ff close a comment block
2002-01-14  jacob berkman  <jacob@ximian.com>

	* gtk/gtkrc.c (gtk_rc_get_im_module_path): close a comment block
2002-01-15 02:48:04 +00:00
Kristian Rietveld
953e0702b9 fix a load of open line ends, (gtk_tree_model_sort_set_model): only free
Tue Jan 15 01:13:51 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c: fix a load of open line ends,
        (gtk_tree_model_sort_set_model): only free root level if it's
        !NULL
2002-01-15 00:12:30 +00:00
Matthias Clasen
322100dc38 Documentation additions.
* gtk/gtkoldeditable.c, gtk/gtkrc.c,
        gtk/gtkstyle.c: Documentation additions.

        * gtk/gtkmenu.c (gtk_menu_set_accel_path),
        gtk/gtkmenuitem.c (gtk_menu_item_set_accel_path),
        gtk/gtkwidget.c (gtk_widget_add_accelerator): Typo and markup fixes.

        * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Document.

        * gtk/gtkaccelmap.c (gtk_accel_map_add_filter): Explain intended use.

        * gtk/running.sgml: Add ids to some elements to make them
        addressable as link targets.
2002-01-14 23:24:47 +00:00
Matthias Clasen
5c886d0b6c Documentation additions.
* gtk/gtkoldeditable.c, gtk/gtkrc.c,
        gtk/gtkstyle.c: Documentation additions.

        * gtk/gtkmenu.c (gtk_menu_set_accel_path),
        gtk/gtkmenuitem.c (gtk_menu_item_set_accel_path),
        gtk/gtkwidget.c (gtk_widget_add_accelerator): Typo and markup fixes.

        * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Document.

        * gtk/gtkaccelmap.c (gtk_accel_map_add_filter): Explain intended use.

        * gtk/running.sgml: Add ids to some elements to make them
        addressable as link targets.
2002-01-14 23:24:02 +00:00
Owen Taylor
9f95840a7f Don't mangle sequences of consecutive \n or \r.
Mon Jan 14 17:14:13 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/x11/gdkselection-x11.c (sanitize_utf8): Don't
        mangle sequences of consecutive \n or \r.
2002-01-14 23:11:35 +00:00
Jonathan Blandford
cb939843ba allow cancel to happen.
Mon Jan 14 17:42:28 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_stop_editing): allow cancel to
	happen.

	* gtk/gtktreeview.c (install_presize_handler): only install the
	handler if we're realized, #68056
2002-01-14 22:00:26 +00:00
Owen Taylor
6dc3eb34c2 Unset initial_pos_set after the first configure request.
Mon Jan 14 16:35:58 2002  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkwindow.c (gtk_window_move_resize): Unset
        initial_pos_set after the first configure request.
2002-01-14 21:52:15 +00:00
Owen Taylor
a4d411eeeb Fix problem where widget->requisition was being used instead of
Sun Jan 13 23:23:22 2002  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkwindow.c (gtk_window_compute_hints): Fix problem where
	widget->requisition was being used instead of
	gtk_widget_get_child_requisition (), causing geometry widgets
	with usizes to misbehave.
2002-01-14 08:20:22 +00:00
Sven Neumann
83bcca308f g_getenv() returns a const string.
2002-01-14  Sven Neumann  <sven@gimp.org>

	* gtk/gtkrc.c: g_getenv() returns a const string.
2002-01-14 07:42:45 +00:00
Hasbullah Bin Pit
d8ac56c058 Added ms at ALL_LINGUAS. Added Malay Translation. But not all translated
2002-01-14  Hasbullah Bin Pit  <sebol@ikhlas.com>

        * configure.in: Added ms at ALL_LINGUAS.
        * po/ms.po: Added Malay Translation.
  But not all translated :(
2002-01-14 01:39:24 +00:00
Matthias Clasen
d9306707db Minor fix. 2002-01-14 00:45:31 +00:00
Matthias Clasen
dee0596686 Documentation.
* gtk/gtkitemfactory.c: Documentation.

        * gtk/tmpl/gtkrc.sgml: Minor fixes.
2002-01-14 00:41:20 +00:00
Sven Neumann
555292237c documentation cleanups.
2002-01-13  Sven Neumann  <sven@gimp.org>

	* gdk/gdkwindow.c: documentation cleanups.
2002-01-13 20:13:34 +00:00
Vasif Ismailoglu MD
ad68d94852 Updated Azerbaijani translation file
* az.po: Updated Azerbaijani translation file
2002-01-13 10:57:24 +00:00
Kristian Rietveld
86f07fb5bd various cleanups, (get_child_iter_from_elt): removed,
Sun Jan 13 01:15:45 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c: various cleanups,
        (get_child_iter_from_elt): removed,
        (gtk_tree_model_sort_elt_get_path): rewritten to be a lot cleaner
        and especially faster,
        (gtk_tree_model_convert_iter_to_child_iter): use
        gtk_tree_model_sort_elt_get_path
2002-01-13 00:22:04 +00:00
Matthias Clasen
6046d50cd4 forgotten ChangeLog entry. 2002-01-12 22:02:54 +00:00
Sven Neumann
79dbfed158 Removed conflict markers from ChangeLog. 2002-01-12 17:48:45 +00:00
Kristian Rietveld
aeceb39d47 revert Owen's change (using a strdupped string as object data), so the
Sat Jan 12 16:57:31 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
        revert Owen's change (using a strdupped string as object data), so
        the interactive search works again
2002-01-12 15:58:56 +00:00
Havoc Pennington
c627d7299b sgml fixes
2002-01-11  Havoc Pennington  <hp@pobox.com>

	* gtk/running.sgml: sgml fixes

	* gtk/tmpl/gtksignal.sgml: sgml fixes

	* gtk/tmpl/gtklabel.sgml: do the intro section

2002-01-11  Havoc Pennington  <hp@pobox.com>

	* gtk/gtklabel.c: put in more links to Pango markup format docs
	(gtk_label_set_justify): mention gtk_misc_set_alignment
2002-01-12 04:39:07 +00:00
Owen Taylor
73e0e35a04 Credit Michael Hore for last two changes 2002-01-12 00:26:25 +00:00
Tor Lillqvist
ffcd60398a Fixes contributed by Archaeopteryx Software: This is a first small part of
2002-01-12  Tor Lillqvist  <tml@iki.fi>

	Fixes contributed by Archaeopteryx Software: This is a first small
	part of their changes. Will commit more later.

	* gdk/win32/*.c: Add some more checks for failed GDI calls. If a
	call fails, don't use bogus values.

	* gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): Plug
	memory leak: g_free() the AND and XOR bitmaps after use.
	(_gdk_cursor_destroy): If we are destroying the current Windows
	cursor, set the Windows cursor to none first.

	* gdk/win32/gdkgc-win32.c (predraw_set_foreground): Delete the old
	brush that was in the DC, like the win32-procution branch does. I
	guess this plugs a resource leak? With the HDC cache, the old
	brush might be something we created ourselves, and not a stock
	brush. And it doesn't do any harm to call DeleteObject on stock
	brushes.

	* gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_finalize): If
	the window has a cursor which is the current Windows cursor,
	before destroying it set the current Windows cursor to none.
	(gdk_window_set_cursor): Also here, if destroying the current
	Windows cursor, set the current Windows cursor to none first.
	(gdk_window_get_pointer): Revamp logic.
2002-01-11 23:56:28 +00:00
Owen Taylor
dee2b1e0b2 Fix integer overflow for the values passed to the pixel functions.
Fri Jan 11 18:05:07 2002  Owen Taylor  <otaylor@redhat.com>

	* pixops/pixops.c: Fix integer overflow for the values
	passed to the pixel functions. (#55148)
2002-01-11 23:08:44 +00:00
Owen Taylor
a458dd72e5 Remove meaningless FIXME.
Fri Jan 11 17:53:58 2002  Owen Taylor  <otaylor@redhat.com>

        * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
        FIXME.

        * pixops/pixops.c (pixops_process): Comment the computation
        of run_end_index and fix some edge cases.

        * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
        composite_line_color_22_4a4_mmx.S}: Handle the case where
        dest <= dest_end properly. (#52001)
2002-01-11 22:54:53 +00:00
Kjartan Maraas
9022abe3cd Updated Norwegian (bokml) translation.
2002-01-11  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2002-01-11 22:51:27 +00:00
Matthias Clasen
74fabedaff Expand.
* gdk/tmpl/general.sgml (gdk_set_program_class): Expand.

        * gtk/running.sgml: New file.

        * gtk/building.sgml: Document a few more configure options.

        * gtk/Makefile.am (content_files): Add running.sgml.

        * gtk/gtk-docs.sgml: Include running.sgml, sort H and V
        variants of widgets to be next to each other.
2002-01-11 22:39:03 +00:00
Tim Janik
5972d435b0 get rid of extraneous prototype 2002-01-11 03:47:49 +00:00
jacob berkman
bebd021547 actually iterate through the list rather than infinitely loop
2002-01-10  jacob berkman  <jacob@ximian.com>

	* gtk/gtkwidget.c (gtk_widget_add_events): actually iterate
	through the list rather than infinitely loop
2002-01-11 00:49:42 +00:00
Matthias Clasen
e5bba6a165 Rename to reset_rc_styles_recurse(). (#68084)
* gtk/gtkwidget.c (gtk_widget_set_style_recurse): Rename to
        reset_rc_styles_recurse(). (#68084)

        * gtk/tmpl/gtkaccellabel.sgml: Remove duplicate docs.

        * gdk-pixbuf/Makefile.am (content_files): Add
        gdk-pixbuf-from-drawables.sgml. (#68232)

        * gtk/tmpl/gtkwidget.sgml: Improve docs for GTK_NO_REPARENT
        and GTK_APP_PAINTABLE. (#68060)
2002-01-10 23:10:34 +00:00
Owen Taylor
868603bc15 Replace some hardcoded values with the SUBSAMPLE
Thu Jan 10 16:48:30 2002  Owen Taylor  <otaylor@redhat.com>

        * pixops/pixops.c: Replace some hardcoded values with the
        SUBSAMPLE
2002-01-10 21:49:39 +00:00
Vitaly Tishkov
f74dd2386a gtk/gtkimage.c gtk/gtkimcontext.c gtk/gtktreemodel.c
2002-01-10            Vitaly Tishkov       <tvv@sparc.spb.su>
        * gtk/gtkimage.c
	* gtk/gtkimcontext.c
	* gtk/gtktreemodel.c
	* gtk/gtktreemodelsort.c
	* gtk/gtkwindow.c
	* docs/reference/gtk/tmpl/gtkselection.sgml
	fix docs
2002-01-10 16:36:25 +00:00
Chyla Zbigniew
d3eb836dd4 Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-01-10 15:22:28 +00:00
Jonathan Blandford
50a641ae48 get the types as well as the symbols because we need them in
Wed Jan  9 20:56:42 2002  Jonathan Blandford  <jrb@redhat.com>

	* gdk/x11/gdkkeys-x11.c (get_xkb): get the types as well as the
	symbols because we need them in MyEnhancedXkbTranslateKeyCode.
2002-01-10 02:02:59 +00:00
Tor Lillqvist
1b7cff4755 Apply the same fixes and improvements as to the gtk-1-3-win32-production
2002-01-10  Tor Lillqvist  <tml@iki.fi>

	Apply the same fixes and improvements as to the
	gtk-1-3-win32-production branch: Bug fixes and cleanup of
	selection and DND functionality. Still doesn't work as well as the
	win32-production branch, though, but getting closer.

	After this, need to add Archaeopteryx Software's OLE2 DND support.

	* gdk/win32/gdkselection-win32.c (gdk_selection_owner_set,
	gdk_selection_send_notify, generate_selection_notify): Don't use
	SendMessage() to generate events for the same app, instead use
	gdk_event_put().

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c
	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkevents-win32.c: Thus, remove declaration, definition,
	initialisation and handling of gdk_selection_notify_msg,
	gdk_selection_request_msg and gdk_selection_clear_msg.

	* gdk/win32/gdkselection-win32.c (gdk_text_property_to_text_list,
	gdk_free_text_list, gdk_string_to_compound_text,
	gdk_free_compound_text): Implement trivially, witrh a text_list
	always having a single element, and a compound text always
	consisting of just a single (UTF-8!) string. Let's see how well
	this works.

	* gdk/win32/gdkselection-win32.c (gdk_selection_convert): Fix
	non-ASCII paste from the clipboard: Try getting the same formats
	from the Windows clipboard that gdk_property_change() puts there:
	CF_UNICODETEXT, UTF8_STRING or CF_TEXT+CF_LOCALE.

	* gdk/win32/gdkproperty-win32.c (gdk_property_change): When
	storing text on the clipboard, handle non-ASCII text
	correctly. The logic is as follows:

	If we have only ASCII characters, use CF_TEXT.

	Else, if we are on NT, use CF_UNICODETEXT.

	Else (we are on Win9x), if all the characters are present in the
	code page of some installed locale, use CF_TEXT and also set
	CF_LOCALE to that locale.

	Else (still on Win9x) store as RTF. We use a very simple RTF
	string, just the text, no fonts or other crap, with the non-ASCII
	characters as Unicode \uN keywords. Additionally, also store the
	UTF-8 string as such, under the format "UTF8_STRING", so that GDK
	can also paste from the Clipboard what it has copied there. (Thus
	no need to implement any RTF parser.)

	(find_common_locale): New function, implements the search for a
	locale for case 3 above.

	* gdk/win32/gdkglobals-win32.c: New global variables
	compound_text, text_uri_list, utf8_string, cf_rtf and
	cf_utf8_string.

	* gdk/win32/gdkim-win32.c (_gdk_ucs2_to_utf8): New function,
	converts from a wchar_t string to UTF-8.
	(_gdk_utf8_to_ucs2): Rename from _gdk_win32_nmbstowchar_ts.
	(_gdk_utf8_to_wcs): Rename from gdk_nmbstowchar_ts.

	* gdk/win32/gdkevents-win32.c (build_keypress_event): Use
	_gdk_ucs2_to_utf8().

	* gdk/win32/gdkselection-win32.c: Remove some unnecessary logging.

	* gdk/win32/gdkdnd-win32.c: Plug memory leaks, the
	gdk_drag_context_ref() was called unnecessarily in a couple of
	places, meaning drag contexts were never freed. The same memory
	leaks seem to be present in gdk/linux-fb/gdkselection-fb.c, BTW.

	(gdk_drop_reply): For WIN32_DROPFILES drops, free the temporarily
	stored file list.

	* gdk/win32/gdkselection-win32.c: Clarify the use of the
	sel_prop_table. Now it is used only for storing the GDK_SELECTION
	"properties".

	The file names dropped with WM_DROPFILES -style DND is stored
	temporarily (between the drop and the target picking them up) in a
	separate place.

	Have a separate hash table to map selection atoms to owner
	windows. This used to be quite mixed up.

	(_gdk_dropfiles_store): New function, to store the dropped file
	list for the drop target to possibly fetch, and clear it
	afterwards, from gdk_drop_reply().

	(gdk_selection_owner_get): Much simplified now.
2002-01-10 00:53:39 +00:00
jacob berkman
f3f0ad29f1 set the background of our bin window also (fixes #58957)
2002-01-09  jacob berkman  <jacob@ximian.com>

	* gtk/gtklayout.c (gtk_layout_style_set): set the background of
	our bin window also (fixes #58957)
2002-01-10 00:32:22 +00:00
Jonathan Blandford
ed50ebfb28 Now we test we can unselect nodes before selecting new ones.
Wed Jan  9 19:10:07 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c
	(_gtk_tree_selection_internal_select_node): Now we test we can
	unselect nodes before selecting new ones.
	(gtk_tree_selection_real_select_node): be careful comparing booleans.
2002-01-10 00:11:32 +00:00
Kristian Rietveld
b99088974e pass NULL to gtk_tree_model_rows_reordered and not an iter with user_data
Wed Jan  9 21:31:44 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtkliststore.c (gtk_list_store_sort): pass NULL to
        gtk_tree_model_rows_reordered and not an iter with user_data
        set to NULL (which is an invalid liststore iter, so
        iter_n_children failed, etc)
2002-01-09 20:43:11 +00:00
Owen Taylor
add14c9ef4 Include glib-object.h, Add G_BEGIN_DECLS/END_DECLS to
Wed Jan  9 11:29:44 2002  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am (s-enum-types-h): Include glib-object.h,
	Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
	Mikael Hermansson)

	* *.h: G_BEGIN_DECLS cleanups.
2002-01-09 16:36:20 +00:00
Sven Neumann
89cfdce4e6 declared internal functions static.
2002-01-09  Sven Neumann  <sven@gimp.org>

	* tests/prop-editor.c: declared internal functions static.
2002-01-09 16:23:19 +00:00
Owen Taylor
d36fa9bd2f Fix problem with menus without accel groups, such as the menus for option
Wed Jan  9 11:13:12 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenuitem.c (_gtk_menu_item_refresh_accel_path):
        Fix problem with menus without accel groups, such as the
        menus for option menus.

        * gtk/gtkpaned.c (gtk_paned_expose): Only conditionalize
        drawing of handle on whether both children are visible,
        not the drawing of the other child!. (#68325, Diego Gonzalez)
2002-01-09 16:15:21 +00:00
Owen Taylor
63e511bcf4 Check for RENDER before trying to use it... XRenderFindFormat() prints
Wed Jan  9 10:20:16 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c gdk/x11/gdkgc-c11.c: Check for
	RENDER before trying to use it... XRenderFindFormat() prints
	warnings if called when extension isn't present.
2002-01-09 15:23:30 +00:00
Tim Janik
9b2a1356f0 update the accel path upon parent changes.
Wed Jan  9 15:20:40 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenuitem.c (gtk_menu_item_parent_set): update the accel
        path upon parent changes.
2002-01-09 14:22:34 +00:00
Tim Janik
cdcb272fdf small but important fix to force vadjustments at size_alocate time from
Wed Jan  9 13:20:14 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkviewport.c (gtk_viewport_size_allocate): small but important
        fix to force vadjustments at size_alocate time from Xavier Ordoquy
        <mcarkan@users.sourceforge.net>.
2002-01-09 12:24:03 +00:00
Tim Janik
adb892f2c9 don't cast a possible NULL pointer.
Wed Jan  9 11:23:39 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtklayout.c (gtk_layout_get_property):
        * gtk/gtkspinbutton.c (gtk_spin_button_get_property):
        * gtk/gtktreeview.c (gtk_tree_view_get_property):
        * gtk/gtkwidget.c (gtk_widget_get_property):
        * gtk/gtkfontsel.c (gtk_font_selection_get_property):
        * gtk/gtkrange.c (gtk_range_get_property):
        * gtk/gtkviewport.c (gtk_viewport_get_property):
        * gtk/gtkprogressbar.c (gtk_progress_bar_get_property): don't cast a
        possible NULL pointer.
2002-01-09 10:28:02 +00:00
Mike Kestner
8ccfa3edb9 Use G_TYPE_INSTANCE_GET_INTERFACE. ditto. ditto. ditto. Don't reference
2002-01-08  Mike Kestner  <mkestner@speakeasy.net>

	* gtk/gtkcelleditable.h : Use G_TYPE_INSTANCE_GET_INTERFACE.
	* gtk/gtktreednd.h : ditto.
	* gtk/gtktreemodel.h : ditto.
	* gtk/gtktreesortable.h : ditto.
	* gtk/gtkwidget.h : Don't reference incomplete _GdkRectangle type.
2002-01-09 06:52:19 +00:00
Matthias Clasen
3d818fe5c8 Improve wording. 2002-01-09 00:34:21 +00:00
Matthias Clasen
4127a267f1 Speak of window IDs rather than XIDs in the docs.
* gtk/gtkplug.c, gtk/gtksocket.c: Speak of window IDs rather
        than XIDs in the docs.

        * gtk/gtkclipboard.c (gtk_clipboard_clear): Fix docs.

        * gtk/tmpl/gtksocket.sgml, gtk/tmpl/gtkplug.sgml: speak of
        window IDs rather than XIDs.
2002-01-09 00:02:30 +00:00
Jonathan Blandford
9f35f36661 wow! Am I a moron or what 0 < 1 is not equivalent to strcmp ("a", "b")
Tue Jan  8 18:39:23 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): wow!
	Am I a moron or what 0 < 1 is not equivalent to strcmp ("a", "b")
2002-01-08 23:48:30 +00:00
Owen Taylor
5c71539c26 Handle TOGGLE/RADIOBUTTON as well. (#68201, Damon Chaplin.)
Tue Jan  8 18:04:01 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktoolbar.c (gtk_toolbar_set_icon_size):
	Handle TOGGLE/RADIOBUTTON as well. (#68201,
	Damon Chaplin.)

	* gtk/gtktoolbar.c (get_first_child): Fix stupid
	bug, just introduced.
2002-01-08 23:05:46 +00:00
Owen Taylor
cc605cf5f4 Fix coordinate translations, once and for all.
Tue Jan  8 15:53:28 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_find_widget): Fix coordinate
	translations, once and for all.

	* gtk/gtktextbuffer.c (paste_from_buffer): Free
	the ClipboardRequest structure. (#66198, HideToshi
	Tajima)
2002-01-08 21:17:55 +00:00
jacob berkman
c4591330a2 queue a resize on
2002-01-08  jacob berkman  <jacob@ximian.com>

	* gtk/gtklayout.c (gtk_layout_move_internal): queue a resize on
2002-01-08 20:20:32 +00:00
Owen Taylor
74e8826793 Don't draw the handle if we aren't showing both children. (#68135, Diego
Tue Jan  8 14:51:19 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_expose): Don't draw
	the handle if we aren't showing both children.
	(#68135, Diego Gonzalez)
2002-01-08 19:56:37 +00:00
Owen Taylor
17fef0f841 Fix leak of result of gtk_container_get_children().
Tue Jan  8 14:45:43 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_add_events): Fix
	leak of result of gtk_container_get_children().
2002-01-08 19:47:13 +00:00
Owen Taylor
fda8a3de95 Fix leaks of results of gtk_container_get_children(). (#68199, Damon
Tue Jan  8 14:42:19 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktoolbar.c: Fix leaks of results of
	gtk_container_get_children(). (#68199, Damon Chaplin)
2002-01-08 19:44:34 +00:00
Owen Taylor
07d4e54cc6 Fix problem where child->requisition was accessed directly instead of
Tue Jan  8 14:19:43 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcheckbutton.c (gtk_check_button_size_allocate):
	Fix problem where child->requisition was accessed
	directly instead of calling get_child_requisition()
	(#68199, Damon Chaplin)
2002-01-08 19:21:55 +00:00
Owen Taylor
b24d44e421 - Massive cleanup, make actually legible. - Fix some clamp-to-range bugs
Tue Jan  8 10:58:04 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
         - Massive cleanup, make actually legible.
         - Fix some clamp-to-range bugs found by Jim Cape (#68231).
         - Add a g_return_if_fail() if src and dest alpha don't match.
         - Allow for src_rowstride != dest_rowstride.
2002-01-08 16:12:49 +00:00
James Henstridge
fff24bb03d add trailing */ on doc comment.
2001-01-08  James Henstridge  <james@daa.com.au>

        * gtk/gtkstyle.c: add trailing */ on doc comment.
2002-01-08 03:40:05 +00:00
Owen Taylor
f1742682c4 Fix a problem where were the offset into the image was passed into
Mon Jan  7 22:19:32 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
        problem where were the offset into the image was passed
        into convert_to_format() wrong.

        * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
        gdk_x11_drawable_update_picture_clip () before using
        the picture; allow update_picture_clip() to take a NULL gc
        to mean no clipping.
2002-01-08 03:22:13 +00:00
Matthias Clasen
c1808baa01 Doc typo fix. (#68172)
* gtk/gtksocket.c (gtk_socket_get_id): Doc typo fix. (#68172)

        * gtk/gtktreemodel.c (gtk_tree_path_is_descendant): Fix docs.

        * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Document.

        * gtk/gtkwindow.c (gtk_window_remove_accel_group): Fix docs.

        * gtk/gtkrc.c (gtk_rc_get_style_by_paths),
        gtk/gtkwidget.c (gtk_widget_get_toplevel,
        gtk_widget_push_composite_child), gtk/gtkdialog.c
        (gtk_dialog_new_with_buttons, gtk_dialog_run): Keep gtk-doc
        from messing up the indentation of inline examples.

        * gtk/gtkmain.c, gtk/gtkrc.c: Consistently call g_getenv()
        instead of getenv().

        * gtk/gtktreemodel.c, gtk/gtkaccelgroup.c, gtk/gtkclipboard.c,
        gtk/gtkdnd.c, gtk/gtkiconfactory.c, gtk/gtkrc.c,
        gtk/gtkstyle.c, gtk/gtkselection.c: Doc fixes.

        * gtk/gtkaccelmap.c (gtk_accel_map_add_filter,
        gtk_accel_map_foreach_unfiltered, gtk_accel_map_load_scanner):
        Document.

        * gtk/tmpl/gtksocket.sgml: Mention gtk_socket_get_id()
        instead of GTK_WINDOW_XWINDOW().  (#68172)

        * gtk/gtk-sections.txt: Move functions which are documented
        as "private" or "internal" into Private subsections.

        * gtk/tmpl/gtkdnd.sgml, gtk/tmpl/gtkobject.sgml,
        gtk/tmpl/gtkrc.sgml, gtk/tmpl/gtktooltips.sgml,
        gtk/tmpl/gtkwidget.sgml, gtk/tmpl/gtkclipboard.sgml,
        gtk/tmpl/gtkstyle.sgml, gtk/tmpl/gtkselection.sgml,
        gtk/tmpl/gtkfeatures.sgml: Minor markup fixes.

        * gtk/tmpl/gtksignal.sgml: Add link to GLib signal docs.

        * gtk/tmpl/gtkpreview.sgml, gtk/tmpl/gtktext.sgml,
        gtk/tmpl/gtktree.sgml: Remove "deprecated" from short desc.

        * gtk/tmpl/gtkrc.sgml: Correct names of default RC files.
2002-01-08 00:04:57 +00:00
Chyla Zbigniew
947c91dca7 Updated Polish translation by GNOME PL Team <translators@gnome.pl> 2002-01-07 20:54:27 +00:00
Anders Carlsson
8ab98f3a58 Remove unused pixels and rowstride variables.
2002-01-07  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Remove
	unused pixels and rowstride variables.
	(gtk_cell_renderer_pixbuf_get_size): Check for non-NULL width.
2002-01-07 08:02:23 +00:00
Tim Janik
1901d4ebd7 don't forget to offset the pointer by x/y_offset into the new window when
Mon Jan  7 08:48:23 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkdnd.c (gtk_drag_find_widget): don't forget to offset
        the pointer by x/y_offset into the new window when we found
        the drag destination.

        * gtk/gtkaccelmap.c (internal_change_entry): fix return code
        for simulation when the entry already contains the required
        accel key and mod.
2002-01-07 07:59:08 +00:00
Matthias Clasen
ed29c8ddd8 Replace GTK_NO_CHECK_CASTS by G_DISABLE_CAST_CHECKS.
* docs/debugging.txt: Replace GTK_NO_CHECK_CASTS by
        G_DISABLE_CAST_CHECKS.

        * gtk/gtkaccelgroup.c (gtk_accel_group_from_accel_closure,
        gtk_accel_group_query, gtk_accel_group_find,
        gtk_accel_groups_from_object): Document.

        * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_closure): Document.

        * gtk/tmpl/gtktypeutils.sgml: Replace GTK_NO_CHECK_CASTS by
        G_DISABLE_CAST_CHECKS, fix some markup and add stuff.

        * gtk/tmpl/gtkaccelgroup.sgml, gtk/tmpl/gtkwidget.sgml: Additions.

        * gtk/gtk-sections.txt: Make gtk_accel_group_get_type private.
2002-01-07 00:13:33 +00:00
Havoc Pennington
ef121a06ff a few more questions I thought of
2002-01-06  Havoc Pennington  <hp@pobox.com>

	* gtk/question_index.sgml: a few more questions I thought of
2002-01-06 21:51:04 +00:00
Havoc Pennington
824e8e2d9d remove gtk- prefix from TreeView and a few other entities, more consistent
2002-01-06  Havoc Pennington  <hp@pobox.com>

	* gtk/gtk-docs.sgml: remove gtk- prefix from TreeView and a few
	other entities, more consistent anyway (I thought this would make
	links to "GtkTreeView" etc. go to the ref page, not the struct,
	but it wasn't the problem, the issue is the way gtkdoc-mkdb
	decides what's an object, see CheckIsObject() routine)

	* gtk/changes-1.2.sgml: sgml fixes to get rid of warnings

	* gtk/changes-2.0.sgml: ditto

	* gtk/question_index.sgml: add some questions
2002-01-06 21:09:26 +00:00
Hans Breuer
ec81d4a8af need to cast image->mem away from void* to avoid 'error C2036: 'void *' :
2002-01-04  Hans Breuer  <hans@breuer.org>

	* gdk/gdkdraw.c gdk/gdkpixbuf-drawable.c :
	need to cast image->mem away from void* to avoid
	'error C2036: 'void *' : unknown size'. Doing pointer
	arithmetics on void pointers is a GCCism afaik.

	* gdk/gdkpixbuf-render.c : #include "gdkinternals.h" for
	_gdk_draw_pixbuf ()

	* gdk/makefile.msc gdk/win32/makefile.msc
        gdk/gtk/makefile.msc.in : use -FI msvc_recommended_pragmas.h

	* gdk/win32/gdkdrawable-win32.c : use _gkd_win32_copy_to_image
	and take care of image->visual possibly NULL.

	* gdk/win32/gdkimage-win32.c : implement _gdk_image_new_for_depth(),
	_gdk_win32_copy_to_image() and _gdk_windowing_bits_for_depth().
	Again take care of image->visual possibly NULL.

	* gdk/win32/gdkprivate-win32.h : declare _gdk_win32_copy_to_image()

	* gdk/win32/gdkevents-win32.c : use gdk_drawable_get_colormap
	instead of private field access

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) : adapt
	colormap setting to the gdk-X behaviour
2002-01-05 19:07:13 +00:00
Hans Breuer
40cab0a2fb don't export functions prefixed with underscore
2002-01-04  Hans Breuer  <hans@breuer.org>

	* gdk_pixbuf.def : don't export functions prefixed
	with underscore

	* makefile.msc : use -FImsvc_recommende_pragmas.h
2002-01-05 18:59:24 +00:00
Matthias Clasen
74a6929146 Documentation additions.
* gtk/gtkwidget.c: Documentation additions.

        * gtk/tmpl/gtkwidget.sgml: Additions.
2002-01-05 15:46:46 +00:00
Matthias Clasen
2f14e89bc4 Fix a comment.
* gtk/gtkobject.c (gtk_object_dispose): Fix a comment.

        * gtk/gtkwidget.c (gtk_widget_set_sensitive): tiny docs change

        * gtk/changes-1.2.sgml, gtk/changes-2.0.sgml: SGML fixes.

        * gtk/tmpl/gtkobject.sgml: Document GTK_IN_DESTRUCTION.

        * gtk/tmpl/gtkwidget.sgml: Additions.
2002-01-04 23:49:20 +00:00
Havoc Pennington
89acf06327 tiny docs change
2002-01-04  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwidget.c (gtk_widget_set_sensitive): tiny docs change

2002-01-04  Havoc Pennington  <hp@pobox.com>

	* gtk/question_index.sgml: add question to help people find
	gtk_widget_set_sensitive() if they're used to another term for
	that.
2002-01-04 21:50:43 +00:00
Owen Taylor
b2015798aa At least don't infinite loop if the widget and window heirarchies don't
Fri Jan  4 13:05:15 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkdnd.c (gtk_drag_find_widget): At least
        don't infinite loop if the widget and window heirarchies
        don't correspond.

        * gtk/gtkdnd.c (gtk_drag_find_widget): Handle changes
        in heirarchy in ::drag_motion, ::drag_drop callbacks
        by referencing child widget lists. (Patch from Tim)

        * gtk/gtkdnd.c (gtk_drag_find_widget): Fix a problem
        with widgets where window.x != widget->allocation.
2002-01-04 18:28:18 +00:00
Stanislav Visnovsky
3267c4efe3 Updated Slovak translation.
2002-01-04  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

        * sk.po: Updated Slovak translation.
2002-01-04 15:16:23 +00:00
Owen Taylor
734702e6d5 Optimize a little bit. (More for consistency than because it makes much of
Fri Jan  4 01:36:48 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c (convert_to_format): Optimize
	a little bit. (More for consistency than because it
	makes much of a difference.)
2002-01-04 06:38:32 +00:00
Owen Taylor
d12c9702a4 Private function to tell if we have RENDER extension.
Thu Jan  3 22:18:15 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c gdk/x11/gdkprivate-x11.h
	(_gdk_x11_have_render): Private function to tell if we have RENDER
	extension.

	* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_get_fg_picture): Return
	None if we don't have RENDER extension.

	* gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Don't
	use Xft unless we have render extension.

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_picture):
	Handle missing render extension.

	* gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkpixmap.c gdk/gdkwindow.c
	gdk/gdkinternals.h: Add a private copy_to_image() virtual function
	to the GdkDrawable vtable that extends get_image() to allow
	copying onto existing images.  Make the default implementation of
	get_image() use this so that backends don't have to implement
	both. Add private wrapper _gdk_drawable_copy_to_image().

	* gdk/x11/gdkimage-x11.c gdk/x11/gdkprivate-x11.c
	gdk/x11/gdkdrawable-x11.c (_gdk_x11_copy_to_image): Implement
	copy_to_image() semantics, speed up by using ShmPixmaps and
	XCopyArea when possible, XFlush() after ungrabbing the server,
	generally redo the logic once again.

	* gdk/gdkinternals.h gdk/x11/gdkimage-x11.c
	_gdk_windowing_bits_per_depth(): Function to convert from depth to
	bits-per-pixel. (We assume only one bpp per depth - X requires
	this.)

	* gdk/gdkinternals.h gdk/gdkrgb.c gdk/gdkimage.c: Move the GdkRGB
	scratch image code into a generic _gdk_image_get_scratch() chunk
	of code that we can use other places we need scratch images.

	* gdk/gdkimage.c gdk/x11/gdkimage.c gdk/gdkinternals.h:
	Add _gdk_image_new_for_depth() as the backend
	to _gdk_image_new() to allowing creating images with
	a depth and no visual.

	* gdk/gdkpixbuf-drawable.c: Fix so that getting
	parts of images not at 0,0 actually works.

	* gdk/gdkdrawable.h gdk/gdkinternals.h gdk/gdkdraw.c
	gdk/gdkwindow.c gdk/gdkpixmap.c gdk/gdkpixbuf-render.c:
	 - Add a new GdkDrawableClass vfunc _draw_pixbuf, and
	  _gdk_draw_pixbuf() [ will be made public later ], to allow
	  backends to accelerate drawing pixbufs.
	 - Move the implementation of gdk_pixbuf_render_to_drawable_alpha()
	   to be the default implementation.
	 - Update docs for gdk_pixbuf_render_to_drawable_alpha().
	 - Optimize the default implementation by using
	   _gdk_image_copy_to_pixmap() and scratch shared images, and
	   special casing the compositing.

	* gdk/x11/gdkdrawable-x11.c: Accelerate _gdk_draw_pixbuf()
	with alpha using the RENDER extension.

        * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
	Optimize by _gdk_image_copy_to_pixmap() and scratch images.

	* tests/testrgb.c: Add test for speed of alpha composition,
	reduce the number of iterations since alpha composition
	can be a bit slow.

	* gdk/x11/gdkimage-x11.c gdk/gdkprivate-x11.h (_gdk_x11_image_get_shm_pixmap):
	Private function to get a ShmPixmap for an image, if possible.
2002-01-04 05:58:01 +00:00
Havoc Pennington
a755adc58d add mention of gtk_widget_add_events() and GTK_CAN_FOCUS
2002-01-03  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtkdrawingarea.sgml: add mention of
	gtk_widget_add_events() and GTK_CAN_FOCUS
2002-01-04 03:34:12 +00:00
Anders Carlsson
55f699ed80 Add my cool list of integers.
2002-01-04  Anders Carlsson  <andersca@gnu.org>

	* tests/testtreesort.c: Add my cool list of integers.
2002-01-04 00:47:29 +00:00
Owen Taylor
90eb9ef041 Fix problem where retrieved atoms weren't properly returned.
Thu Dec 27 18:12:55 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkproperty-x11.c (gdk_property_get): Fix
	problem where retrieved atoms weren't properly returned.
2002-01-04 00:38:15 +00:00
Owen Taylor
c96a394cc2 Fix and uncomment non-MMX version.
Thu Jan  3 19:31:58 2002  Owen Taylor  <otaylor@redhat.com>

	* pixops/pixops.c (scale_line_22_33): Fix and uncomment
	non-MMX version.

	* pixops/pixops.c (pixops_composite_nearest): Remove a
	division.

	* pixops/pixops.c (pixops_composite): Add some docs
	about the parameters.

	* pixops/README: Add notes about the correct algorithms
	for alpha compositing and how to implement them quickly.
2002-01-04 00:34:06 +00:00
Matthias Clasen
317ba5b267 Small additions.
* gtk/tmpl/gtktextview.sgml: Small additions.

        * gtk/tmpl/gtksignal.sgml: Explain what to use instead.

        * gtk/question_index.sgml, gtk/text_widget.sgml, gtk/tree_widget.sgml,
        gtk/changes-1.2.sgml, gtk/changes-2.0.sgml,
        gtk/framebuffer.sgml: SGML fixes and additions.

        * gtk/tmpl/gtksignal.sgml, gtk/tmpl/gtkdialog.sgml,
        gtk/tmpl/gtkeditable.sgml, gtk/tmpl/gtkfilesel.sgml,
        gtk/tmpl/gtkmain.sgml, gtk/tmpl/gtkmenu.sgml,
        gtk/tmpl/gtkmessagedialog.sgml, gtk/tmpl/gtkrc.sgml,
        gtk/tmpl/gtktogglebutton.sgml, gtk/tmpl/gtkspinbutton.sgml,
        gtk/tmpl/gtkpaned.sgml, gtk/tmpl/gtkwindow.sgml:
        Replace references to deprecated functions.
2002-01-03 23:04:44 +00:00
Anders Carlsson
39900836ca When tab is pressed and the text view isn't editable, move the focus
2002-01-03  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): When
	tab is pressed and the text view isn't editable,
	move the focus instead.
2002-01-03 18:27:16 +00:00
Matthias Clasen
0ea3acb02e Add markup.
* gtk/changes-1.2.sgml, gtk/changes-2.0.sgml,
        gtk/framebuffer.sgml: Add markup.
2002-01-03 00:36:09 +00:00
Anders Carlsson
a11baab148 Free dash list if necessary.
2002-01-03  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkstyle.c (gtk_default_draw_focus): Free dash list if
	necessary.

	* gtk/gtkhsv.c (gtk_hsv_get_focus_gc): Free dash list.

	* gtk/gtkcolorsel.c (get_focus_gc): Free dash list.

	* gtk/gtkdnd.c (set_icon_stock_pixbuf): Don't unref the mask
	if it's NULL.
2002-01-03 00:30:39 +00:00
Anders Carlsson
88edb0e58e Rename gtk_tree_view_queue_draw_node to _gtk_tree_view_queue_draw_node.
2002-01-03  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeview.c: Rename gtk_tree_view_queue_draw_node to
	_gtk_tree_view_queue_draw_node.
	(gtk_tree_view_row_has_child_toggled): Only redraw one node.

	* gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func):
	sort_column_id can be 0.

	* gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
	Only redraw one the node being selected.

	* gtk/gtktreeprivate.h: Add _gtk_tree_view_queue_draw_node.
2002-01-02 23:51:03 +00:00
Tim Janik
bc879373a2 don't ignore realized but visible && !mapped resize containers (which is
Wed Jan  2 23:09:06 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c (_gtk_container_queue_resize): don't ignore
        realized but visible && !mapped resize containers (which is
        possible with unset CHILD_VISIBLE now).
2002-01-02 22:08:49 +00:00
jacob berkman
11ae67f9eb automake still doesn't support libsomething_la_LDFLAGS, so fix the build
2002-01-02  jacob berkman  <jacob@ximian.com>

	* gtk/Makefile.am (LDFLAGS): automake still doesn't support
	libsomething_la_LDFLAGS, so fix the build again
2002-01-02 18:34:55 +00:00
Havoc Pennington
290e4efdfe propagate exposes to no window children not in the buffer window.
2002-01-01  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_expose_event): propagate
	exposes to no window children not in the buffer window.
	(gtk_text_view_class_init): add move_focus bindings for Ctrl-Tab
	- is this the right way to do it?
	(gtk_text_view_focus): add focus method, just chains up for now,
	I'm not sure why the GtkContainer implementation doesn't work

	* gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): fill
	in the text line for the child anchor segment

	* tests/testtext.c (do_add_focus_children): add another test
	example (to put focusable buttons into the widget)
2002-01-02 03:49:09 +00:00
Havoc Pennington
e7153de001 move README.linux-fb in here
2002-01-01  Havoc Pennington  <hp@pobox.com>

	* gtk/framebuffer.sgml: move README.linux-fb in here

	* gtk/tmpl/gtkpreview.sgml: explain what to use instead

	* gtk/tmpl/gtkseparator.sgml: typo fix

	* gtk/tmpl/gtkstock.sgml: add some overview docs

	* gtk/Makefile.am (content_files): add new files

	* gtk/changes-1.2.sgml: move Changes-1.2.txt in here

	* gtk/changes-2.0.sgml: move Changes-2.0.txt in here

	* gdk/tmpl/threads.sgml: mention gdk_threads_init() in the
	overview docs, copy in the examples from the FAQ

	* gtk/gtk-docs.sgml: change DTD to 3.1, and add
	question_index.sgml and changes-1.2, changes-2.0

	* gtk/tmpl/gtkdrawingarea.sgml: fixups to reflect 2.0 changes

	* gtk/question_index.sgml: new section with question-based
	index of the manual

	* gtk/text_widget.sgml: fix some cross-references

2002-01-01  Havoc Pennington  <hp@pobox.com>

	* docs/README.linux-fb: note that this file is obsolete

	* docs/Changes-2.0.txt, docs/Changes-1.2.txt: Add notes to these
	files that they should not be edited and look in the reference
	manual instead. Probably these files should just be replaced by
	the note, and their main contents deleted.

	* gtk/gtktextview.c: docs

	* gtk/gtktextmark.c: docs

	* gtk/gtktextchild.c: docs

	* gtk/gtktextbuffer.c: docs stuff

	* gtk/gtkclipboard.c (gtk_clipboard_get): fool with docs to maybe
	give people more leads in sorting out PRIMARY vs. CLIPBOARD
2002-01-01 23:51:00 +00:00
Tor Lillqvist
c8940d6fdc Append EXEEXT to ../gdk-pixbuf/gdk-pixbuf-csource.
2002-01-01  Tor Lillqvist  <tml@iki.fi>

	* demos/Makefile.am (test-inline-pixbufs.h): Append EXEEXT to
	../gdk-pixbuf/gdk-pixbuf-csource.

2001-12-31  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (predraw_set_foreground): Improved error
	handling.
	(gdk_win32_hdc_get,gdk_win32_hdc_release): Silence gcc -Wall.

	* gdk/win32/gdkimage-win32.c (_gdk_win32_get_image): Silence gcc
	-Wall.  Use GDK_IS_PIXMAP_IMPL_WIN32 instead of GDK_IS_PIXMAP in
	one more place.

	* gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Silence gcc
	-Wall.

	* gtk/Makefile.am (libgtk_win32_1_3_la_LDFLAGS): Add -lwsock32.
2002-01-01 22:17:09 +00:00
Havoc Pennington
77b8bac91d doc fix
2002-01-01  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_get_default_attributes): doc
	fix

2002-01-01  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtktexttag.sgml: docs updates, mention that invisible
	property isn't implemented

	* gtk/text_widget.sgml: small tweaks
2002-01-01 17:44:46 +00:00
Havoc Pennington
07e5b7f6ad docs updates, mention that invisible property isn't implemented
2002-01-01  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtktexttag.sgml: docs updates, mention that invisible
	property isn't implemented

	* gtk/text_widget.sgml: small tweaks

2002-01-01  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_get_default_attributes): doc
	fix
2002-01-01 17:43:44 +00:00
Havoc Pennington
6ee899e592 Replace call to gtk_widget_size_request() that expected to actually
2002-01-01  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (changed_handler): Replace call to
	gtk_widget_size_request() that expected to actually compute the
	request with a direct use of widget_class->size_request, so we get
	our size request right; fixes remaining part of #63065 reported by
	Matthias Clasen
2002-01-01 17:17:22 +00:00
Havoc Pennington
d07cd9f865 remove backward_char since we no longer have bogus newline
2001-12-31  Havoc Pennington  <hp@pobox.com>

	* tests/testtext.c (do_insert_and_scroll): remove backward_char
	since we no longer have bogus newline
	(dialog_response_callback): remove another backward_char horkage,
	reported by Matthias Clasen #63065
2001-12-31 22:35:20 +00:00
Havoc Pennington
9b185ed750 fix an incorrect assertion that the "valid" flag is always correct in a
2001-12-31  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextbtree.c (gtk_text_btree_node_view_check_consistency):
	fix an incorrect assertion that the "valid" flag is always correct
	in a node and add explanatory comment. This keeps me from
	reproducing #59101, but I'm remembering that 59101 was actually
	about incorrect pixel totals, so I'm not sure 59101 is actually
	fixed. May just have stopped happening due to some change in
	how C-k works.
2001-12-31 22:17:26 +00:00
Havoc Pennington
64891890fb extend selection if shift is down, bug #50939
2001-12-31  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_start_selection_drag): extend
	selection if shift is down, bug #50939
	(gtk_text_view_button_press_event): add double/triple click
	selection to the current selection if shift is down
2001-12-31 17:58:04 +00:00
Havoc Pennington
a307ffbf11 fix to use ensure_byte_offsets not ensure_char_offsets, patch from Padraig
2001-12-31  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index): fix
	to use ensure_byte_offsets not ensure_char_offsets, patch
	from Padraig O'Briain bug #67356
2001-12-31 16:31:51 +00:00
Havoc Pennington
5c6ef7990c fix GtkDialogFlags to have the right values, reported by Jeff Franks
2001-12-30  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkdialog.h (GtkDialogFlags): fix GtkDialogFlags to have
	the right values, reported by Jeff Franks
2001-12-31 04:43:07 +00:00
Matthias Clasen
da1c339092 Remove references to nonexisting functions.
* gtk/tmpl/gtkbbox.sgml: Remove references to nonexisting functions.

        * gtk/tmpl/gtkcolorseldlg.sgml, gtk/tmpl/gtkdrawingarea.sgml,
        gtk/tmpl/gtkmain.sgml, gtk/tmpl/gtkhseparator.sgml,
        gtk/tmpl/gtktree.sgml, gtk/tmpl/gtkradiobutton.sgml,
        gtk/tmpl/gtkradiomenuitem.sgml:
        Replace references to deprecated functions.

        * gtk/tmpl/gtkhbbox.sgml,gtk/tmpl/gtkvbbox.sgml: Minor fixes.
2001-12-31 00:05:30 +00:00
Matthias Clasen
d925a72d34 Additions.
* gtk/tmpl/gtkpixmap.sgml, gtk/tmpl/gtkscale.sgml,
        gtk/tmpl/gtkmain.sgml, gtk/tmpl/gtkimcontextsimple.sgml: Additions.

        * gtk/gtkwindow.c, gtk/gtkimcontextsimple.c: Minor documentation tweaks.
2001-12-30 22:56:05 +00:00
Tor Lillqvist
c7401decdb Add makefile.msc.
2001-12-29  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am (EXTRA_DIST): Add makefile.msc.
2001-12-29 10:09:50 +00:00
Matthias Clasen
5b291073b0 GDK instead of Gdk.
* gdk-pixbuf/porting-from-imlib.sgml: GDK instead of Gdk.

        * gdk-pixbuf/tmpl/gdk-pixbuf-xlib-init.sgml: Replace references to
        deprecated functions.

        * gdk/tmpl/event_structs.sgml, gdk/tmpl/gcs.sgml,
        gdk/tmpl/images.sgml: Replace references to deprecated functions.

        * gdk/tmpl/properties.sgml, gdk/tmpl/selections.sgml: Additions.

        * gdk/x11/gdkproperty-x11.c, gdk/x11/gdkselection-x11.c:
        Minor documentation tweaks.
2001-12-29 00:24:25 +00:00
Vasif Ismailoglu MD
3c6225f6e0 az:po * updating 2001-12-28 22:06:43 +00:00
Tor Lillqvist
12c7fc52d8 Use G_N_ELEMENTS(). (unicode_classify): Don't return -1 on encountering an
2001-12-28  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkfont-win32.c: Use G_N_ELEMENTS().
	(unicode_classify): Don't return -1 on encountering an
	unclassified character, but play it safe and return U_BASIC_LATIN.
2001-12-28 21:52:04 +00:00
Vitaly Tishkov
b18a75d869 additional fix for #59314 ('<programlisting>' is changed to '<literal>' in
2001-12-28	Vitaly Tishkov <tvv@sparc.spb.su>
	* gtkwindow.sgml: additional fix for #59314 ('<programlisting>' is
	changed to '<literal>' in docs for gtk_window_set_policy ())
2001-12-28 15:48:45 +00:00
Owen Taylor
6d51fcd95a Make interpretation of misc->xpad/ypad consistent with GtkLabel. Do
Thu Dec 27 16:05:30 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkarrow.c gtk/gtkimage.c gtkpixmap.c: Make interpretation
        of misc->xpad/ypad consistent with GtkLabel. Do
        directional flipping when interpreting misc->xalign/yalign.
        Fix off-by-one error for negative x,y. (#67472, reported
        by Mathieu Lacage)
2001-12-27 21:42:02 +00:00
Owen Taylor
7aeb18a51c Remove optimization that was causing problems because we called
Thu Dec 27 15:45:41 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_style_internal):
	Remove optimization that was causing problems because
	we called gtk_widget_size_request() before we called
	gtk_widget_queue_resize() so RESIZE_NEEDED was not
	set. Optimization shouldn't mattter now that we
	are smart about needlessly size requesting or allocating
	widgets. (#67598, reported by Jacob Berkman)
2001-12-27 20:50:49 +00:00
Owen Taylor
095d7c33d7 Call gdk_window_get_pointer() on menu->bin_window not menu->window, so we
Thu Dec 27 15:38:20 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_stop_navigating_submenu_cb):
        Call gdk_window_get_pointer() on menu->bin_window not
        menu->window, so we get the correct window for the
        menu item. (#65213, Guillermo S. Romero)
2001-12-27 20:43:58 +00:00
Owen Taylor
aae695ab65 Allow unsetting the title by setting to NULL. Move docs inline. Update the
Thu Dec 27 15:13:44 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_set_title): Allow unsetting
	the title by setting to NULL. Move docs inline.
	Update the title if the tearoff window already
	exists. Code cleanup. (Fixes #65190, reported by
	Vitaly Tishkov.)
2001-12-27 20:22:16 +00:00
Owen Taylor
95f4d72e62 gtk/gtkplug.c (gtk_plug_key_press_event): Don't do special handling of key
Thu Dec 27 14:04:22 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksocket.c (gtk_socket_key_press_event):
	gtk/gtkplug.c (gtk_plug_key_press_event): Don't do
	special handling of key presses unless we are doing
	iter-app embedding. (Fixes #67590, Anders Carlsson)
2001-12-27 19:20:23 +00:00
Kristian Rietveld
2282ef41d1 fix a few places where I was confused between modelsort iters and other
Thu Dec 27 16:37:04 2001  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted),
        (gtk_tree_model_sort_sort_level),
        (gtk_tree_model_sort_insert_value): fix a few places where
        I was confused between modelsort iters and other iters. This was
        really going to happen someday ;)
2001-12-27 15:38:10 +00:00
Kristian Rietveld
51ba172920 ensure we are unprelighted before reordering
Wed Dec 26 23:41:41 2001  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): ensure
        we are unprelighted before reordering

        * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): we
        need to break out of the for loop, not return

        * gtk/gtktreemodelsort.c: more fixage and cleanups. It seems to
        be pretty stable now, though it still needs some more code
        cleanups.
2001-12-26 22:43:53 +00:00
Owen Taylor
c56a3caad3 Document the fact that gtk_paned_set_handle_size() has been removed.
Wed Dec 26 12:32:31 2001  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-2.0.txt: Document the fact that
	gtk_paned_set_handle_size() has been removed.

	* gtk/gtkpaned.h Remove gtk_paned_handle_size() compat macro,
	since it pointed to gtk_paned_set_handle_size(), which
	was removed. (#66760, Matt Wilson)
2001-12-26 17:38:39 +00:00
Owen Taylor
1a0be4a67a Connect gtk_drag_hightlight_expose _after_, so it works with widgets that
Wed Dec 26 12:28:24 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkdnd.c (gtk_drag_highlight): Connect
        gtk_drag_hightlight_expose _after_, so it works with
        widgets that paint there entire background. (#66735)
2001-12-26 17:31:40 +00:00
Owen Taylor
b48e255d91 Assign the allocation to widget->allocation. (Fixes #67290, Chris Phelps.)
Wed Dec 26 12:17:06 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.c (gtk_plug_size_allocate): Assign the
        allocation to widget->allocation. (Fixes #67290,
        Chris Phelps.)
2001-12-26 17:21:31 +00:00
Owen Taylor
e1033f5f5a (#67542, reported by Anders Carlsson)
Wed Dec 26 11:49:01 2001  Owen Taylor  <otaylor@redhat.com>

        (#67542, reported by Anders Carlsson)

        * gtk/gtkstyle.c (gtk_style_real_init_from_rc): Merge
        rc_style->font_desc with defaul style instead of replacing
        it.

        * gtk/gtkrc.c (gtk_rc_style_real_merge): Allow partial
        font descriptions in RC styles by calling
        pango_font_description_merge().
2001-12-26 17:06:13 +00:00
Vasif Ismailoglu MD
9ad1895548 updating Azerbaijani po file
updating Azerbaijani po file
2001-12-24 19:32:43 +00:00
Owen Taylor
16375d3c90 1.3.12, interface, binary age 0.
Sat Dec 22 12:38:03 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in: 1.3.12, interface, binary age 0.
2001-12-24 01:49:19 +00:00
James Henstridge
99ce496b97 s/<!>/<!-- -->/ to make the doc valid with both SGML and XML.
2001-12-24  James Henstridge  <james@daa.com.au>

        * gtk/gtkdialog.h (doc comment): s/<!>/<!-- -->/ to make the doc
        valid with both SGML and XML.
2001-12-24 01:34:29 +00:00
Owen Taylor
cd6070461e 1.3.12, interface, binary age 0.
Sat Dec 22 12:38:03 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in: 1.3.12, interface, binary age 0.

        * configure.in: Require new versions of Glib, Pango, ATK.

        * NEWS: Updated.

        * configure.in: Make explicit what libtool we are executing.
        (Tomas Ogren)

        * gdk/gdkcolor.c gdk/gdkgc.c gdk/gdkwindow.c: Doc fixes.

        * gtk/gtkwidget.c (gtk_widget_[class]path) gtkrc.h : Fix
        parameter names for docs.

Sat Dec 22 22:35:29 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_realize)
          gtk/gtkplug.c (gtk_plug_realize): Include GDK_KEY_RELEASE_MASK.

        * gtk/gtkentry.c (gtk_entry_key_release)
          gtk/gtktextview.c (gtk_text_view_key_release_event): Pass
        key release events to the input method.

        * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress):
        Handle release of Control/Shift to end hex sequence.

        * modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress):         Handle key releases as well as presses.
2001-12-23 22:59:30 +00:00
Owen Taylor
1806c0eed8 Fix trailing "," in enumeration.
Sat Dec 22 15:31:20 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixdata.h: Fix trailing "," in enumeration.
2001-12-23 22:55:53 +00:00
Owen Taylor
856a93cb85 Add gtktextutil.h
Sat Dec 22 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am (IGNORE_HFILES): Add gtktextutil.h

        * gtk/text_widget.sgml (linkend): SGML fixes.

        * gtk/gtk-sections.txt: Update

        * gdk/gdk-sections.txt: Update.

        * gdk/tmpl/cursors.sgml: SGML fix.

        * gdk/gdk-docs.sgml: Add PNG handling magic.
2001-12-23 22:55:17 +00:00
Vasif Ismailoglu MD
afc1c7c917 *** empty log message *** 2001-12-22 20:14:31 +00:00
Vasif Ismailoglu MD
ca1591c402 routine update for Azeri translation file
routine update for Azeri translation file
2001-12-22 20:06:39 +00:00
Marius Andreiana
d9f87029e1 updated
2001-12-22  Marius Andreiana  <mandreiana@yahoo.com>

        * ro.po: updated
2001-12-22 12:04:35 +00:00
Matthias Clasen
6efa24e2f3 Forgotten files, the log entries are already in. 2001-12-20 23:45:48 +00:00
Matthias Clasen
237a59fce9 Forgotten files. 2001-12-20 23:44:19 +00:00
Matthias Clasen
cd7243dfba Forgotten log entry. 2001-12-20 23:42:08 +00:00
Matthias Clasen
08b9fbc90d Trivial doc adjustment. 2001-12-20 23:38:24 +00:00
Matthias Clasen
3aabcd2891 More precise documentation about underscores and mnemonics. (#66380)
* gtk/gtklabel.c (gtk_label_new_with_mnemonic),
        gtk/gtkbutton.c (gtk_button_new_with_mnemonic): More precise
        documentation about underscores and mnemonics. (#66380)

        * gtk/gtktextiter.c (gtk_text_iter_backward_word_starts): Fix
        cyclic reference in docs.

        * gtk/gtklabel.c (gtk_label_set_justify): Correct documentation
        of default value. (#65402)

        * gtk/gtkmain.c (gtk_set_locale, gtk_disable_set_locale):
        Markup fixes.

        * gdk-pixbuf-io.c, gdk-pixbuf-animation.c, gdk-pixbuf-data.c,
        gdk-pixbuf-loader.c, gdk-pixbuf-scale.c, gdk-pixbuf-util.c,
        gdk-pixdata.c: Markup fixes.

        * gtk/text_widget.sgml: More precise wording. (#63388)

        * gtk/tmpl/gtksignal.sgml (GTK_SIGNAL_OFFSET): Add docs.

        * gtk/resources.sgml: Fix markup of mail URLs.

        * gtk/tmpl/gtkpaned.sgml, gtk/tmpl/gtkobject.sgml: Markup fixes.

        * gtk/tmpl/gtktoolbar.sgml (gtk_toolbar_{prepend,append}_element):
        Expand documentation. (#60471)

        * gtk/tmpl/gtkmain.sgml: Remove misleading information about
        gtk_set_locale().  (#65758)
2001-12-20 23:09:29 +00:00
Anders Carlsson
ecfd1affa6 Don't call map here.
2001-12-20  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeview.c (gtk_tree_view_realize): Don't call
	map here.
2001-12-20 04:06:01 +00:00
Christian Rose
caa2415db0 Updated Swedish translation.
2001-12-19  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2001-12-19 20:22:32 +00:00
Vasif Ismailoglu MD
b757152fbf routine update 2001-12-19 19:09:57 +00:00
Owen Taylor
7a67ca02d6 Explicitely deprecate gdk_gc_set_font() (reported by Jeff Franks.)
Tue Dec 18 16:15:55 2001  Owen Taylor  <otaylor@redhat.com>
        * gdk/gdkgc.h: Explicitely deprecate gdk_gc_set_font()
        (reported by Jeff Franks.)
2001-12-18 21:17:49 +00:00
Owen Taylor
6d9afff749 Fix prototype for direction_changed. (Reported by Jeff Franks.)
Tue Dec 18 16:07:28 2001  Owen Taylor  <otaylor@redhat.com>
        * gdk/gdkkeys.h (struct _GdkKeymapClass): Fix
        prototype for direction_changed. (Reported by
        Jeff Franks.)
2001-12-18 21:10:04 +00:00
Anders Carlsson
6cd2abbf09 Change GdkWidget to GtkWidget. Fixes #67162.
2001-12-18  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtkdrawingarea.sgml: Change GdkWidget to
	GtkWidget. Fixes #67162.
2001-12-18 16:28:17 +00:00
Yuri Syrota
eb6f3673a4 Updated Ukrainian translation 2001-12-18 11:15:26 +00:00
Padraig O'Briain
b2925eba12 Fix typo (list->data becomes list->next)
* gtk/gtktreeview.c (gtk_tree_view_get_expander_column):
Fix typo (list->data becomes list->next)
2001-12-18 08:06:34 +00:00
Matthias Clasen
786fe283d8 Markup fixes.
* gdk-pixbuf/tmpl/creating.sgml,
        gdk-pixbuf/tmpl/gdk-pixbuf-xlib-from-drawables.sgml,
        gdk-pixbuf/tmpl/gdk-pixbuf-xlib-init.sgml,
        gdk-pixbuf/tmpl/gdk-pixbuf-xlib-rendering.sgml,
        gdk-pixbuf/tmpl/refcounting.sgml: Markup fixes.

        * gtk/building.sgml, gtk/resources.sgml: Markup fixes.

        * gtk/gtk.types: Remove gtk_text_layout_get_type(). (???)

        * gdk/tmpl/general.sgml: Use <envar>, not <envvar>.

        * gdk-pixbuf-io.c, gdk-pixbuf-animation.c, gdk-pixbuf-data.c,
        gdk-pixbuf-loader.c, gdk-pixbuf-scale.c, gdk-pixbuf-util.c,
        gdk-pixdata.c: Markup fixes.
2001-12-17 23:07:49 +00:00
Matthias Clasen
7ee423dba0 Markup fixes.
* gdk-pixbuf/tmpl/creating.sgml,
        gdk-pixbuf/tmpl/gdk-pixbuf-xlib-from-drawables.sgml,
        gdk-pixbuf/tmpl/gdk-pixbuf-xlib-init.sgml,
        gdk-pixbuf/tmpl/gdk-pixbuf-xlib-rendering.sgml,
        gdk-pixbuf/tmpl/refcounting.sgml: Markup fixes.

        * gtk/building.sgml, gtk/resources.sgml: Markup fixes.

        * gtk/gtk.types: Remove gtk_text_layout_get_type(). (???)

        * gdk/tmpl/general.sgml: Use <envar>, not <envvar>.

        * gdk-pixbuf-io.c, gdk-pixbuf-animation.c, gdk-pixbuf-data.c,
        gdk-pixbuf-loader.c, gdk-pixbuf-scale.c, gdk-pixbuf-util.c,
        gdk-pixdata.c: Markup fixes.
2001-12-17 23:06:47 +00:00
Havoc Pennington
8a44bc0455 Add Unicode control char menu, based on patch from Dov. Bug #63495
2001-12-06  Havoc Pennington  <hp@redhat.com>

        Add Unicode control char menu, based on patch from Dov.
        Bug #63495

        * gtk/gtkentry.c (gtk_entry_commit_cb): share code via
        gtk_entry_enter_text
        (gtk_entry_enter_text): function to do "typing in text"
        (popup_targets_received): add the Unicode menu items

        * gtk/gtktextview.c (popup_targets_received): add missing mnemonic
        on Input Methods item, and add the unicode menu items.

        * gtk/gtktextutil.h, gtk/gtktextutil.c: private utilities to be
        used in GtkEntry and GtkTextView - may become public later.
2001-12-17 16:46:08 +00:00
Havoc Pennington
8280fa8d44 put _simple variants at the top of the docs
2001-12-16  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf/gdk-pixbuf-sections.txt: put _simple variants at the
	top of the docs
2001-12-16 21:12:13 +00:00
Havoc Pennington
a7d0944194 small doc tweaks, specifically some "just do XYZ" advice next to the
2001-12-16  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf/tmpl/scaling.sgml: small doc tweaks, specifically
	some "just do XYZ" advice next to the InterpMode technojargon.

2001-12-16  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf-scale.c: docs enhancements
2001-12-16 21:09:30 +00:00
Matthias Clasen
a83f8f3cf1 Add something about GdkModifierType.
* gdk/tmpl/windows.sgml: Add something about GdkModifierType.
2001-12-16 19:32:19 +00:00
Kjartan Maraas
b1a099e94b Fix a typo. Fix a typo.
2001-12-16  Kjartan Maraas  <kmaraas@gnome.org>

	* gtk/gtkprogressbar.c: Fix a typo.
	* gtk/gtkpaned.c: Fix a typo.
2001-12-16 17:00:55 +00:00
Darin Adler
20a870a6e0 Fix some warnings.
* gdk/x11/gdkproperty-x11.c: (gdk_property_get): Fix wrong type in
	g_new -- bug if sizeof (GtkAtom) != sizeof (GtkAtom *).
	* gdk/x11/gdkwindow-x11.c: (create_moveresize_window): FALSE -> NULL
	* gtk/gtkaccellabel.c: (gtk_accel_label_refetch): Remove unused local.
	* gtk/gtklistitem.c: (gtk_list_item_expose): Remove unused local.
	* gtk/gtktextiter.c: (_gtk_text_iter_backward_indexable_segment):
	Restructure loop to get rid of uninitialized variable warning. Also
	gives a tiny efficiency gain.
2001-12-15 17:17:56 +00:00
Christian Rose
dd00b8878e Updated Swedish translation.
2001-12-15  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2001-12-15 15:38:31 +00:00
Murray Cumming
e1bb381e16 Fixed first arg type of GtkScale's format_value signal's function pointer.
* Fixed first arg type of GtkScale's format_value signal's
function pointer.
2001-12-15 11:11:42 +00:00
Marius Andreiana
3501b44ff1 updated
2001-12-15  Marius Andreiana  <mandreiana@yahoo.com>

        * ro.po: updated
2001-12-15 07:13:02 +00:00
Vitaly Tishkov
231fbb3086 2001-12-14 Vitaly Tishkov tvv@sparc.spb.su
docs/reference/gtk/tmpl/gtkcelleditable.sgml
                gtkcelleditable -> GtkCellEditable
        docs/reference/gtk/tmpl/gtktreesortable.sgml
                gtktreesortable -> GtkTreeSortable
2001-12-14 18:57:39 +00:00
Sebastian Wilhelmi
c1e9dd9dbd Use g_ascii_strcasecmp() instead of g_strcasecmp().
2001-12-14  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
2001-12-14 09:40:20 +00:00
Sebastian Wilhelmi
d99bd97fe8 Remove assorted G_OBJECT casts where unnecessary.
2001-12-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
	io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
	assorted G_OBJECT casts where unnecessary.

	* gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
	instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
	resp.

	* gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
	io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
	io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
	gdk_pixbuf_unref.

	* Makefile.am, pixops/Makefile.am: Compile everything with
	-DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED

	* gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().

	* io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().

	* demos/testpixbuf-drawable.c, demos/testpixbuf-save.c,
	demos/testpixbuf-scale.c, demos/testpixbuf.c: Call g_object_ref
	and g_object_unref instead of gdk_pixbuf_ref and gdk_pixbuf_unref
	resp.
2001-12-13 21:22:12 +00:00
Kristian Rietveld
d3403353cb free path at the end
Thu Dec 13 22:02:41 2001  Kristian Rietveld   <kris@gtk.org>

        * gtk/gtktreeview.c (validate_visible_area): free path
        at the end
2001-12-13 21:01:46 +00:00
Kjartan Maraas
fbc4cda55d Updated Norwegian (bokml) translation.
2001-12-13  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2001-12-13 19:59:18 +00:00
Matthias Clasen
fc4a6b955d Markup fixes.
* gtk/gtkdialog.c, gtk/gtkrc.c, gtk/gtkwidget.c: Markup fixes.

        * gdk-pixbuf-io.c: Markup fixes.

        * gdk-pixbuf/tmpl/scaling.sgml, gdk/tmpl/fonts.sgml,
        gdk/tmpl/general.sgml, gdk/tmpl/rgb.sgml, gdk/tmpl/visuals.sgml,
        gdk/tmpl/windows.sgml, gtk/gtk-docs.sgml, gtk/tmpl/gtkaccellabel.sgml,
        gtk/tmpl/gtkcombo.sgml, gtk/tmpl/gtkdialog.sgml,
        gtk/tmpl/gtkdrawingarea.sgml, gtk/tmpl/gtkeditable.sgml,
        gtk/tmpl/gtkfilesel.sgml, gtk/tmpl/gtkfontseldlg.sgml,
        gtk/tmpl/gtkimage.sgml, gtk/tmpl/gtkmain.sgml, gtk/tmpl/gtkmenu.sgml,
        gtk/tmpl/gtkmessagedialog.sgml, gtk/tmpl/gtkobject.sgml,
        gtk/tmpl/gtkpaned.sgml, gtk/tmpl/gtkradiobutton.sgml,
        gtk/tmpl/gtkrc.sgml, gtk/tmpl/gtkscale.sgml, gtk/tmpl/gtksignal.sgml,
        gtk/tmpl/gtksocket.sgml, gtk/tmpl/gtkspinbutton.sgml,
        gtk/tmpl/gtktogglebutton.sgml, gtk/tmpl/gtksignal.sgml,
        gtk/tmpl/gtktooltips.sgml, gtk/tmpl/gtkwindow.sgml,
        gdk/tmpl/regions.sgml, gtk/tmpl/gtkfontsel.sgml,
        gtk/tmpl/gtkpixmap.sgml, gtk/tmpl/gtkprogress.sgml,
        gtk/tmpl/gtkselection.sgml, gtk/tmpl/gtktable.sgml,
        gtk/tmpl/gtktipsquery.sgml: Markup fixes (mainly examples).
2001-12-13 19:51:24 +00:00
Kristian Rietveld
fe655f3919 do not try to find the clicked node in the tree when tree == NULL
Thu Dec 13 20:37:27 2001  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_button_press): do not try
        to find the clicked node in the tree when tree == NULL
2001-12-13 19:36:40 +00:00
Anders Carlsson
5a3de51ba1 Compare event->state with the default mod mask.
2001-12-13  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeview.c (gtk_tree_view_button_press): Compare
	event->state with the default mod mask.
2001-12-13 17:25:22 +00:00
Stanislav Visnovsky
3c458b09fa Updated Slovak translation.
2001-12-13  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

        * sk.po: Updated Slovak translation.
2001-12-13 13:33:22 +00:00
jacob berkman
3c9634c648 s/obj/klass/ where appropriate
2001-12-12  jacob berkman  <jacob@ximian.com>

	* gtk/gtk*.h (GTK_IS_*_CLASS): s/obj/klass/ where appropriate
2001-12-12 23:04:12 +00:00
Owen Taylor
9a25f879ab Reset the existing slave before removing it to give it a chance to commit
Wed Dec 12 17:22:45 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
	Reset the existing slave before removing it to give
	it a chance to commit and emit "preedit_changed"
	in case there was still a preedit string.
2001-12-12 22:35:31 +00:00
Matthias Clasen
43851fe034 Typo fixes Typo fix. (#66746)
* gtk/gtktextlayout.c: Typo fixes
        * gtk/gtkwindow.c (gtk_window_set_position): Typo fix. (#66746)

        * gtk/gtkwidget.c (gtk_widget_send_expose, gtk_widget_get_toplevel,
        gtk_widget_get_default_direction): Doc fixes. (#66727, #66737, #66744)

        * gtk/gtkstyle.h (GTK_STYLE_NUM_STYLECOLORS): Remove. (#66467)

        * gtk/tmpl/gtklist.sgml: Markup fixes.

        * gdk/tmpl/selections.sgml, gtk/tmpl/gtksocket.sgml: s/succesful/successful/g.

        * gtk/gtk-sections.txt, gtk/tmpl/gtkstyle.sgml: Remove
        GTK_STYLE_NUM_STYLECOLORS. (#66467)
2001-12-12 22:29:53 +00:00
Matthias Clasen
3a3db4003a define G_LOG_DOMAIN for GdkPixbuf. 2001-12-12 22:20:36 +00:00
Jonathan Blandford
f3f62347b3 Remove validate_rows_timer in unrealize. Reported by Matthew Wilson.
Wed Dec 12 16:43:10 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_unrealize): Remove
	validate_rows_timer in unrealize.  Reported by Matthew Wilson.
2001-12-12 22:15:27 +00:00
Matthias Clasen
5b20006878 Markup fixes.
* gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
2001-12-12 22:11:37 +00:00
Owen Taylor
af7ab9c630 Remove support for "prepainting" the menu before realizing other than via
Wed Dec 12 16:18:26 2001  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkmenu.c (gtk_menu_realize): Remove support for
        "prepainting" the menu before realizing other than
        via gtk_style_set_background() - this was broken when
        we added menu scroll support.
        * gtk/gtkmenu.c (gtk_menu_paint): Pay attention to the
        window in the expose event -- fixes problem with border
        flashing during scrolling.
2001-12-12 21:30:08 +00:00
Owen Taylor
a906e7c6a9 Support using names/nicks for the gdk_settings values for enum valued
Wed Dec 12 15:11:49 2001  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtksettings.c (gtk_settings_get_property): Support
        using names/nicks for the gdk_settings values for enum valued
        types. (#57678, reported by Anders Carlsson)
2001-12-12 20:26:50 +00:00
Jonathan Blandford
59bdb19b0e keep in sync with insert_page_menu. Code duplication is bad.
Wed Dec 12 15:01:33 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_set_tab_label): keep in sync
	with insert_page_menu.  Code duplication is bad.

	* gtk/gtklabel.c (gtk_label_mnemonic_activate): Whoops -- got the
	wrong fix yesterday.
2001-12-12 20:10:52 +00:00
Owen Taylor
a4d12691fb Fix check for modifiers.
Wed Dec 12 14:27:30 2001  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkmenubar.c (window_key_press_handler): Fix check for
        modifiers.
2001-12-12 19:30:01 +00:00
James Henstridge
44b9c2d13f check GTK_MENU_ITEM (menu_item)->accel_path first when looking up the
2001-12-12  James Henstridge  <james@daa.com.au>

	* gtk/gtkmenu.c (gtk_menu_key_press): check GTK_MENU_ITEM
	(menu_item)->accel_path first when looking up the accel path.
2001-12-12 12:21:52 +00:00
Havoc Pennington
793bbc7a7f add another example
2001-12-12  Havoc Pennington  <hp@pobox.com>

	* gtk/text_widget.sgml: add another example
2001-12-12 06:40:08 +00:00
Owen Taylor
389bc8ebad Only draw for events on the bin window.
Tue Dec 11 19:18:21 2001  Owen Taylor  <otaylor@redhat.com>

        * tests/testgtk.c (layout_expose_handler): Only draw
        for events on the bin window.
2001-12-12 00:23:45 +00:00
Jonathan Blandford
9361b2c2e4 Small fix to let mnemonics work with notebooks.
Tue Dec 11 18:55:16 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtklabel.c (gtk_label_mnemonic_activate): Small fix to let
	mnemonics work with notebooks.
2001-12-11 23:56:46 +00:00
Jonathan Blandford
97f4886426 Change bin_window to be located at y=TREE_VIEW_HEADER_HEIGHT(tree_view).
Tue Dec 11 15:25:06 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): Change
	bin_window to be located at y=TREE_VIEW_HEADER_HEIGHT(tree_view).
	Makes some flicker while scrolling go away.
2001-12-11 20:28:21 +00:00
Michael Natterer
3b72a77047 added new keyboard shortcut 'a' which adds alpha to the pixbuf; re-load
2001-12-11  Michael Natterer  <mitch@gimp.org>

	* demos/testpixbuf-save.c: added new keyboard shortcut 'a' which
	adds alpha to the pixbuf; re-load the saved pixbuf and
	pixel-by-pixel compare it with the original one.
2001-12-11 17:31:52 +00:00
Michael Natterer
3339931f8f gdk_pixbuf__png_image_save: removed wrong endian conversion stuff; don't
2001-12-11  Michael Natterer  <mitch@gimp.org>

	* io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
	conversion stuff; don't copy RGB pixbufs' lines around before
	saving them.
2001-12-11 17:30:53 +00:00
Wang Jian
8157885492 *** empty log message *** 2001-12-11 15:36:36 +00:00
Soeren Sandmann
3ff157456d Fix wrong ChangeLog entry Fix drawing of top right corner
Tue Dec 11 15:39:08 2001  Soeren Sandmann  <sandmann@daimi.au.dk>

	* ChangeLog: Fix wrong ChangeLog entry
	* gtk/gtkstyle.c (gtk_default_draw_shadow_gap): Fix drawing of top
	right corner
2001-12-11 14:39:16 +00:00
Søren Sandmann Pedersen
9663cca0da *** empty log message *** 2001-12-11 14:28:18 +00:00
Jonathan Blandford
32231fe142 remove <<<<<<< 2001-12-11 01:40:54 +00:00
jacob berkman
01db478914 do not grab things if the nograb debug flag is set
2001-12-10  jacob berkman  <jacob@ximian.com>

	* gdk/x11/gdkinput-xfree.c (_gdk_input_grab_pointer):
	* gdk/x11/gdkmain-x11.c (gdk_pointer_grab):
	(gdk_keyboard_grab): do not grab things if the nograb debug flag
	is set

	* gdk/gdkinternals.h:
	* gdk/gdk.c: add nograbs debug flag to disable grabs of the
	keyboard / mouse
2001-12-11 01:33:02 +00:00
Jacob Berkman
ee17d020eb *** empty log message *** 2001-12-11 01:08:33 +00:00
Jonathan Blandford
2b6c3b4dcb stupid bug where I didn't reset the timer.
Mon Dec 10 19:42:29 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (validate_rows_handler): stupid bug where I
	didn't reset the timer.
2001-12-11 00:45:25 +00:00
Matthias Clasen
74db59e9d1 Close comment.
* gtk/gtkcontainer.c (gtk_container_child_type): Close comment.

        * gtk/gtkviewport.c: Add docs.
2001-12-10 21:50:36 +00:00
Jonathan Blandford
5db2bde6ca New function to fixup parity. RBTree corruption bug--
Mon Dec 10 16:21:38 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_fixup_parity): New function to fixup parity.
	RBTree corruption bug--
2001-12-10 21:24:15 +00:00
Anders Carlsson
ba464807f6 Return if edited_column is NULL, also grab focus before removing the
2001-12-10  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeview.c (gtk_tree_view_remove_widget): Return
	if edited_column is NULL, also grab focus before removing
	the cell_editable.
2001-12-10 03:43:10 +00:00
George Lebl
c66ca2dfb3 check for 0 value on the denominator in the horizontal case just like we
Sun Dec 09 15:06:51 2001  George Lebl <jirka@5z.com>

	* gtk/gtkrange.c (gtk_range_calc_layout): check for 0 value on the
	  denominator in the horizontal case just like we do in the vertical
	  case (why I didn't notice that there were two cases the first time
	  around is beyond me:).  Also fix indentation in the vertical case.
2001-12-09 22:32:50 +00:00
Anders Carlsson
17f81739f7 Update xsettings name.
2001-12-09  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/gdkevents-x11.c: Update xsettings name.

	* gtk/gtkdnd.c (gtk_drag_check_threshold): Use the
	gtk-dnd-drag-threshold GtkSetting.

	* gtk/gtksettings.c (gtk_settings_class_init): Add
	setting for dnd drag threshold.
2001-12-09 22:08:30 +00:00
Matthias Clasen
0212048af6 Add docs.
* gtk/gtkcontainer.c: Add docs.

        * gtk/tmpl/gtkmain.sgml: Markup fixes.

        * gtk/gtk-docs.sgml: Add an empty entity to suppress
        crossreferencing in programlistings.
2001-12-09 21:34:39 +00:00
Matthias Clasen
96cee90cd7 Add docs.
* gtk/gtkcontainer.c: Add docs.

        * gtk/tmpl/gtkmain.sgml: Markup fixes.

        * gtk/gtk-docs.sgml: Add an empty entity to suppress
        crossreferencing in programlistings.
2001-12-09 21:32:24 +00:00
Matthias Clasen
63b4e37957 Doc markup fix.
* gtk/gtkwidget.c: Doc markup fix.

        * gtk/gtktreeviewcolumn.c: Markup fixes. (#66447)

        * gtk/gtktreestore.c: Typo fixes. (#66445)

        * gtk/gtkaccelgroup.c: Misc doc markup. (#66425)

        * gtk/gtkclipboard.c (gtk_clipboard_get_owner): Fix reference
        to gtk_clipboard_set_with_owner(). (#66424)

        * gtk/tmpl/gtkclipboard.sgml: Fix references to
        get_clipboard_set_with_owner(). (#66424)
2001-12-08 21:39:34 +00:00
Christopher Blizzard
1d0e9b7f28 Fallback to setting the prgname to "<unknown>" if someone doesn't pass in
Sat Dec  8 16:12:10 2001  Christopher Blizzard  <blizzard@redhat.com>

        * gdk/gdk.c (gdk_init_check): Fallback to setting the prgname to
        "<unknown>" if someone doesn't pass in a valid argc.  (Patch from
        Fabrice Bellet <fabrice@gnu.org>, #54127).
2001-12-08 21:13:02 +00:00
Jonathan Blandford
6793f772fc Add debug spew to lots of places, so that people with crashy trees can
Sat Dec  8 10:04:54 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_gtk_rbtree_debug_spew): Add debug spew to lots
	of places, so that people with crashy trees can just run their
	program with GTK_DEBUG=TREE.
2001-12-08 20:14:15 +00:00
Kristian Rietveld
a6ce5ae38d nuke the stamp++, per jrb's request
Sat Dec  8 20:57:24 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkliststore.c (gtk_list_store_remove): nuke the stamp++,
        per jrb's request
2001-12-08 19:58:05 +00:00
Christian Rose
46c52f2aca Updated Swedish translation.
2001-12-08  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2001-12-08 17:40:54 +00:00
Anders Carlsson
744e6f6fb7 Don't return TRUE since then the default GtkLayout expose handler won't be
2001-12-08  Anders Carlsson  <andersca@gnu.org>

	* tests/testgtk.c (layout_expose_handler): Don't return TRUE
	since then the default GtkLayout expose handler won't be called.
2001-12-08 15:44:45 +00:00
Jonathan Blandford
9bec4e275a remove g_return_if_fail.
Fri Dec  7 23:42:50 2001  Jonathan Blandford  <jrb@webwynk.net>

	* gtk/gtktreeview.c (validate_rows_handler): remove
	g_return_if_fail.

	* gtk/gtktreeview.c (validate_visible_area): Patch from Manish
	Singh <yosh@gimp.org> to fix bug when rendering Tree with an
	empty model.
2001-12-08 04:53:10 +00:00
Jonathan Blandford
82c5ace889 get logic right, #66249
Fri Dec  7 20:06:14 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (validate_visible_area): get logic right,
	#66249

	* gtk/gtkrbtree.c (_gtk_rbtree_remove_node): fix bug where
	removing a node ended up with a corrupt tree.  Really really nasty
	bug.
	(_gtk_rbtree_debug_spew): new debug helper function
	(_fixup_validation): new inline function to clean up code
	readability a lot.
2001-12-08 01:10:52 +00:00
Owen Taylor
203d7df363 Close comment.
Fri Dec  7 19:34:51 2001  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
        Close comment.
2001-12-08 00:41:58 +00:00
Matthias Clasen
13e498cae8 Typo fixes.
* gtk/gtkstyle.h: Typo fixes.

        * gtk/gtkstyle.c, gtk/gtktoolbar.c: Add docs.

        * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Fix docs.

        * gtk/tmpl/gtktypeutils.sgml, gtk/tmpl/gtkobject.sgml,
        gtk/tmpl/gtkstyle.sgml: Add docs.
2001-12-07 23:39:54 +00:00
Owen Taylor
9fd70c6bf5 Display the XIM status callbacks with a popup window. (Patch from
Fri Dec  7 16:05:22 2001  Owen Taylor  <otaylor@redhat.com>

        * modules/input/gtkimcontextxim.c: Display the XIM
        status callbacks with a popup window. (Patch from
        HideToshi Tajima, #50628, somewhat modified.)
2001-12-07 23:15:32 +00:00
Tim Janik
880d279933 each source generation rule needs to use its own temporary file, to avoid
Fri Dec  7 12:07:15 2001  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: each source generation rule needs to use its own
        temporary file, to avoid clashes for parallel builds. fixed rules
        for gtkmarshalers.h and gtkmarshalers.c to use their own temp files.
2001-12-07 11:08:17 +00:00
Havoc Pennington
6c98b1cb04 fix up my list of "cursors that are actually useful" in gdk_cursor_new()
2001-12-07  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_new): fix up my list of
	"cursors that are actually useful" in gdk_cursor_new() docs
2001-12-07 05:27:17 +00:00
Owen Taylor
ef3b6dbe71 Fix errors in computing the size of the second child.
Thu Dec  6 23:09:21 2001  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): Fix errors
        in computing the size of the second child.
2001-12-07 04:16:16 +00:00
Owen Taylor
49587ba050 Make button 1 clicks on the trough do pages, button 3 steps. (Patch from
Thu Dec  6 16:50:17 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c: Make button 1 clicks on the trough
	do pages, button 3 steps. (Patch from Hans Breuer
	#63735)
2001-12-06 23:32:48 +00:00
Matthias Clasen
e8aef16911 Forgotten file. 2001-12-06 21:48:22 +00:00
Matthias Clasen
31df9723e5 Fix docs. (#66383)
* gtk/gtklabel.c: Fix docs. (#66383)

        * gtk/gtkbbox.c (gtk_button_box_set_child_secondary): Fix docs.
        (#66278, #66280)

        * gdk/gdkwindow.h (gdk_window_get_deskrelative_origin),
        gdk/gdkimage.h (gdk_image_get): Deprecate. (#66208)

        * gtk/gtkcolorsel.c (gtk_color_selection_set_update_policy):
        Don't emit a g_warning() about being deprecated. (#66208)

        * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_widget): Add docs.

        * gtk/gtkcontainer.c: Doc fixes.

        * gtk/gtkliststore.c (gtk_list_store_clear): Add docs; misc doc fixes.

        * gtk/gtkstyle.c (gtk_style_attach): Add docs.

        * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
        gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
        Deprecate. (#66208)

        * gtk/tmpl/gtklabel.sgml: Remove redundant docs. (#66383)

        * gtk/tree_widget.sgml: Typo fix. (#66256)

        * gdk-pixbuf/Makefile.am (SCAN_OPTIONS): Add --deprecated-guards.

        * gtk/tmpl/gtktext.sgml, gtk/tmpl/gtktree.sgml,
        gtk/tmpl/gtktreeitem.sgml: Updates.
2001-12-06 21:38:12 +00:00
Sven Neumann
83fbfac8f4 uhmm, I obviously forgot to commit my ChangeLog entry yesterday... 2001-12-05 13:55:14 +00:00
Kjartan Maraas
f4b4fca460 Updated Norwegian (bokml) translation.
2001-12-05  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2001-12-05 09:23:00 +00:00
Hidetoshi Tajima
0657d7410b restore the else case of #ifdef __GNUC__ #66225
* gtk/gtktreeprivate.h: restore the else case of #ifdef __GNUC__
	#66225
2001-12-05 05:49:41 +00:00
Manish Singh
9605ec8a03 gtk/gtkmain.c g_module_symbol takes a gpointer *, not just a gpointer.
2001-12-04  Manish Singh  <yosh@gimp.org>

        * gtk/gtkmain.c
        * gtk/queryimmodules.c: g_module_symbol takes a gpointer *, not just
        a gpointer.

        * gtk/gtkwidget.c (gtk_widget_push_composite_child): minor cosmetic
        correction to docs.

        * demos/gtk-demo/item_factory.c: add GTK_WINDOW() cast
2001-12-05 02:49:32 +00:00
Sven Neumann
57f508467e close comment.
2001-12-05  Sven Neumann  <sven@gimp.org>

	* gtk/gtkwidget.c (gtk_widget_reset_shapes): close comment.

	* gtk/queryimmodules.c: g_dir_read_name() returns const.
2001-12-05 02:14:27 +00:00
Havoc Pennington
6b1407a3ec remove g_assert_not_reached() that was bogus, since we demand-create the
2001-12-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (gtk_text_btree_remove_tag_info): remove
	g_assert_not_reached() that was bogus, since we demand-create the
	tag info. reported by Chris Phelps

        Jump through assorted hoops to fix bug from Chris Phelps where
	removing tags from the table resulted in btree trying to
	access tag->table

	* gtk/gtktextbuffer.c: set up mechanics of adding/removing
	ourselves to the tag table

	* gtk/gtktexttagtable.c (_gtk_text_tag_table_add_buffer)
	(_gtk_text_tag_table_remove_buffer): private cruft to
	let us notify buffer of disappearing tags

	* gtk/gtktexttag.h: remove BTreeNode typedef from this public
	header, put it in tagprivate

	* gtk/gtktextbtree.c (_gtk_text_btree_new): don't connect to
	tag_removed; it's emitted too late.
	(_gtk_text_btree_notify_will_remove_tag): rename tag_remove_cb to
	this

	Padding for ABI-compat expansion

	* gtk/gtktexttag.h (struct _GtkTextAttributes): pad this
	(struct _GtkTextAppearance): one pad in here too

	* gtk/gtktextlayout.h (struct _GtkTextLayoutClass): padding here

	* gtk/gtktextview.h (struct _GtkTextViewClass): more padding,
	since action signals etc. seem pretty likely

	* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): padding

	* gtk/gtktexttag.h (struct _GtkTextTagClass): padding

	* gtk/gtktexttagtable.h (struct _GtkTextTagTableClass): padding
2001-12-05 01:43:48 +00:00
Matthias Clasen
a7bab735ad Deprecate. (#65851)
* gdk/gdkcolor.h (gdk_colormap_change): Deprecate. (#65851)

        * gdk/gdktypes.h (GdkKeyInfo): Remove. (#66025)

        * gtk/gtkwindow.c, gtk/gtkwidget.c: Add docs, markup fixes.

        * gtk/tmpl/gtkwidget.sgml: Updates.
        * gtk/Makefile.am (IGNORE_HFILES): Remove gtktextchild.h.
2001-12-05 00:06:40 +00:00
Jonathan Blandford
af05ac0e50 remove gtk_tree_view_column_cell_event, #62084.
Tue Dec  4 18:51:44 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.h: remove gtk_tree_view_column_cell_event,
	#62084.
2001-12-04 23:52:14 +00:00
Jonathan Blandford
d1a858c837 Minor fix.
Tue Dec  4 18:38:35 2001  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/main.c: (create_tree): Minor fix.

	* docs/tree-column-sizing.txt: Update

	* gtk/gtkrbtree.[ch]: Massive work to support validation.

	* gtk/gtktreemodel.c: Doc fixes.

	* gtk/gtktreeview.c: Incremental reflow added.
	* gtk/gtktreeviewcolumn.c: ditto
	* gtk/gtktreeviewcolumn.h: ditto
2001-12-04 23:49:57 +00:00
Jonathan Blandford
57506c438b Minor fix.
Tue Dec  4 18:38:35 2001  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/main.c: (create_tree): Minor fix.

	* docs/tree-column-sizing.txt: Update

	* gtk/gtkrbtree.[ch]: Massive work to support validation.

	* gtk/gtktreemodel.c: Doc fixes.

	* gtk/gtktreeview.c: Incremental reflow added.
	* gtk/gtktreeviewcolumn.c: ditto
	* gtk/gtktreeviewcolumn.h: ditto

itty bitty ChangeLog entry.  Big 'ol changes.
2001-12-04 23:42:27 +00:00
Havoc Pennington
f6f4353615 add a warning for "invisible" property, #65999
2001-12-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttag.c (gtk_text_tag_set_property): add a warning for
	"invisible" property, #65999
2001-12-04 22:53:12 +00:00
Matt Wilson
f27cf774c6 fixed docs
2001-12-04  Matt Wilson  <msw@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_insert): fixed docs
2001-12-04 20:12:42 +00:00
Owen Taylor
b36b22988c Simplify, make more efficient and fix memory leak when turning quark into
Tue Dec  4 12:16:31 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtksettings.c (gtk_settings_set_property_value):
	Simplify, make more efficient and fix memory leak
	when turning quark into a string. (#66103, HideToshi
	Tajima)
2001-12-04 17:20:41 +00:00
Owen Taylor
feca5a64e2 Ref and sink priv->tooltips in init() and unref priv->tooltips in destroy
Tue Dec  4 12:06:13 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkcolorsel.c: Ref and sink priv->tooltips in
	init() and unref priv->tooltips in destroy rather
	than calling gtk_object_destroy() which has no
	effect on memory management. (#66104, HideToshi
	Tajima)
	* gtk/gtkcolorsel.c (palette_set_color): Use g_object_set_data_full()
	so we free the when the object is freed. (Fixes memory
	leak, #66096, HideToshi Tajima)
	* gdk/gdkevents.c (gdk_synthesize_window_state): Use
	a full GdkEvent structure to avoid reads of uninitialized/
	invalid memory in gdk_event_put() (#65877, patch
	from Hidetoshi Tajima)
2001-12-04 17:12:35 +00:00
Owen Taylor
76030813c7 Fill in color fields to black for transparent colors since we'll later
Tue Dec  4 11:45:45 2001  Owen Taylor  <otaylor@redhat.com>
	* io-xpm.c (pixbuf_create_from_xpm): Fill in color
	fields to black for transparent colors since we'll
	later initialize pixels from them. (Fixes purify
	errors, #66093, HideToshi Tajima)
2001-12-04 16:47:49 +00:00
Owen Taylor
f84b1ed087 Revert my last mistaken change - toggle-size-request doesn't take a
Tue Dec  4 11:06:54 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenuitem.c: Revert my last mistaken change -
        toggle-size-request doesn't take a requisition.

        * gtk/gtkmenuitem.c (gtk_menu_item_class_init): Fix
        reference to marshaler that no longer exists.
2001-12-04 16:08:18 +00:00
Stanislav Visnovsky
4d7a33b0db Updated Slovak translation.
2001-12-04  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

        * sk.po: Updated Slovak translation.
2001-12-04 09:24:15 +00:00
Owen Taylor
7537825b34 Patch from Bill Haneman (with many modifications) to make the focus color
Mon Dec  3 16:39:17 2001  Owen Taylor  <otaylor@redhat.com>

	Patch from Bill Haneman (with many modifications) to make
	the focus color work on dark themes and to make the
	focus line width configurable. (#61079, #63074)

        * gtk/gtkwidget.c: Add style properties,
	::focus-widget, ::focus-line-width, and ::focus-padding.

	* gtk/gtkstyle.[ch]: Make gtk_paint_focus() take a
	state argument as well so we can use fg[STATE] to
	draw instead of always drawing with black.
	Cange paint_focus() to respect GtkWidget::focus-width
	and GtkWidget::focus-line-pattern. Fix continuity
	problem where the default 1-1 stipple had a blob
	in one corner and a gap in the other. Change the
	interpretation of x/y/width/height to be the bounding
	box of the focus rect instead of the rectangle
	passed to gdk_draw_rectangle.

	* gtk/gtkcheckbutton.c gtk/gtklistitem.c gtk/gtknotebook.c
	gtk/gtkoptionmenu.c gtk/gtkradiobutton.c gtk/gtkspinbutton.c
	gtk/gtktextview.c gtk/gtktreeview.c: Handle ::focus-width
	and ::focus-line-padding.

	* gtk/gtkentry.c: Handle :;focus-width property; cleanup
	and remove duplicated code; fix drawing of focus rectangle
	when interior-focus = FALSE. (#63072, #63073)

	* gtk/gtkrange.c gtk/gtktext.c gtk/gtktreeitem.c
	gtk/gtktreeviewcolumn.c: Basic fixups to make compile;
	Range and TreeViewColumn will need more extensive fixing.

	* gtk/gtkcolorsel.c: Honor focus line attributes when
	drawing the focus on the color swatches. (#63071)

	* gtk/gtkhsv.c: Honor focus line attributes when
	drawing the focus for the ring and triangle.

	* docs/widget_geometry.txt: Start at documenting how
	various widgets are drawn.

	* gtk/gtkbutton.c (_gtk_button_paint): Export
	_gtk_button_paint() librarywide, so we don't have
	duplicate a bunch of code in gtktogglebutton.c.

	* gtk/gtktogglebutton.c: Use _gtk_button_paint().
2001-12-04 03:27:30 +00:00
Jonathan Blandford
cac3ad3131 remove VOID:BOXED,POINTER and NONE:POINTER. and now everyone else has to
Mon Dec  3 21:04:13 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkmarshalers.list: remove VOID:BOXED,POINTER and
	NONE:POINTER.
and now everyone else has to recompile their GTK too.... (-:
2001-12-04 02:06:21 +00:00
Christian Rose
8ba54afef4 Updated Swedish translation.
2001-12-04  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2001-12-04 00:36:50 +00:00
Alex Larsson
c7cd3421f7 Return FALSE from expose handlers.
2001-12-03  Alex Larsson  <alexl@redhat.com>

	* gtk/gtkaccellabel.c:
	* gtk/gtkarrow.c:
	* gtk/gtkcolorsel.c:
	* gtk/gtkcontainer.c:
	* gtk/gtklabel.c:
	* gtk/gtktextview.c:
	* gtk/gtktogglebutton.c:
	* gtk/gtktreeview.c:
	* gtk/gtkwindow.c:
	Return FALSE from expose handlers.
2001-12-03 22:11:40 +00:00
Matthias Clasen
dd92af8c05 Updates.
* gdk/tmpl/input_devices.sgml,
        gdk/gdk-sections.txt, gdk/tmpl/windows.sgml: Updates.
2001-12-03 21:28:47 +00:00
Kristian Rietveld
5a2ebedc20 if we use pointers, we should free the previous pointer first (if it
Mon Dec  3 21:15:59 2001  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreedatalist.c (_gtk_tree_data_list_value_to_node): if
        we use pointers, we should free the previous pointer first (if
        it exists), before we set a new pointer. (#64726)

        * gtk/gtktreeprivate.h: get rid of cursor_drag

        * gtk/gtktreeview.c (gtk_tree_view_unrealize): remove check
        for cursor_drag
        (gtk_tree_view_bin_expose): don't directly return in the while
        loop
        (gtk_tree_view_class_init): indentend expanders by default
        (gtk_tree_view_header_focus): only give the button focus
        if it's clickable, visible and the column is reorderable
        (#65539)

        * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
        create and free cursor
2001-12-03 21:20:12 +00:00
Yuri Syrota
6b38775043 Updated Ukrainian Translation 2001-12-03 15:47:47 +00:00
Owen Taylor
168b7505fe Fix some bugs with size requisition. (From Bill Haneman) Draw headers and
Mon Dec  3 10:23:07 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkcalendar.c (gtk_calendar_size_request): Fix
	some bugs with size requisition. (From Bill Haneman)
	* gtk/gtkcalendar.c: Draw headers and selection in
	base/text[SELECTED] instead of fg/bg[SELECTED].
	* gtk/gtkcalendar.c: Miscellaneous cleanups to drawing
	code and formatting.
2001-12-03 15:24:25 +00:00
Yuri Syrota
df22934140 Updated Ukrainian Translation 2001-12-03 10:17:15 +00:00
Havoc Pennington
35fcacbf8c Hmm, setter functions normally assign the new value to the object field.
2001-12-03  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (set_window_height):
	(set_window_width): Hmm, setter functions normally assign the new
	value to the object field. Reported by Chris Phelps.
2001-12-03 05:21:53 +00:00
Erwann Chenede
b15bf68d9e file virtual_screen.sgml was initially added on branch gtk-multihead. 2001-12-03 00:06:43 +00:00
Matthias Clasen
a41519815b Updates.
* gdk/tmpl/dnd.sgml: Updates.
2001-12-02 22:27:26 +00:00
Tor Lillqvist
d935361476 Add gdk_pixbuf_get_option.
2001-11-30  Tor Lillqvist  <tml@iki.fi>

	* gdk_pixbuf.def: Add gdk_pixbuf_get_option.
2001-12-02 18:03:52 +00:00
Kjartan Maraas
22b73c76d3 Updated Norwegian (bokml) translation.
2001-12-01  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2001-12-02 16:36:44 +00:00
Havoc Pennington
e57211cb1b add brief explanation of how to use GtkOptionMenu
2001-12-01  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtkoptionmenu.sgml: add brief explanation of how to use
	GtkOptionMenu
2001-12-01 18:30:49 +00:00
Erwann Chenede
8a6a8e914c file multihead.sgml was initially added on branch gtk-multihead. 2001-12-01 16:24:52 +00:00
jacob berkman
5e0b93dc25 set the signal id to 0 after we disconnect from it
2001-11-30  jacob berkman  <jacob@ximian.com>

	* gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set the
	signal id to 0 after we disconnect from it
2001-11-30 23:17:29 +00:00
Matthias Clasen
101d44881c Deprecate.
* gdk/gdkdrawable.h (gdk_drawable_ref, gdk_drawable_unref),
        gdk/gdkcolor.h (gdk_colormap_ref, gdk_colormap_unref),
        gdk/gdkdnd.h (gdk_drag_context_ref, gdk_drag_context_unref),
        gdk/gdkgc.h (gdk_gc_ref, gdk_gc_unref):  Deprecate.

        * gdk/gdkvisual.h: Use GDK_DISABLE_DEPRECATED, not
        GTK_DISABLE_DEPRECATED.

        * gdk/gdkcolor.c (gdk_colormap_ref, gdk_colormap_unref),
        gdk/gdkgc.c (gdk_gc_ref, gdk_gc_unref): Document.

        * gdk/tmpl/colors.sgml, gdk/tmpl/pixmaps.sgml, gdk/tmpl/dnd.sgml,
        gdk/tmpl/gcs.sgml: Document ref and unref functions as deprecated.
2001-11-30 22:55:28 +00:00
Owen Taylor
d2b64a0b83 Sanitize move/resize code, removing various bad, non-functional hacks.
Fri Nov 30 16:37:01 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkcombo.c (gtk_combo_popup_list): Sanitize
	move/resize code, removing various bad, non-functional
	hacks. (Fixes #65048, reported by Damon Chaplin.)
2001-11-30 21:51:46 +00:00
Owen Taylor
845d3701f7 Patch from Hidetoshi Tajima to fix bad match error when target drawable is
Fri Nov 30 16:12:21 2001  Owen Taylor  <otaylor@redhat.com>
	* gdk/gdkpango.c: Patch from Hidetoshi Tajima to fix
	bad match error when target drawable is not the
	same depth as the root window. (#65841)
	* HACKING: Update.
2001-11-30 21:14:07 +00:00
Owen Taylor
2de8e8bf5e Fix alignment problem in deserialization, (#65785, reported by Hidetoshi
Fri Nov 30 15:55:34 2001  Owen Taylor  <otaylor@redhat.com>
	* gdk-pixdata.c (gdk_pixdata_deserialize): Fix
	alignment problem in deserialization, (#65785,
	reported by Hidetoshi Tajima)
2001-11-30 21:01:01 +00:00
Matthias Clasen
24aef23aab Typo fix.
* gdk/gdkwindow.c: Typo fix.

        * gtk/gtk-sections.sgml: Add GtkTextChildAnchor.

        * gdk/tmpl/dnd.sgml: Updates.

        * gdk/tmpl/pango_interaction.sgml: Document GdkPangoAttrEmbossed
        and GdkPangoAttrStipple.
2001-11-29 23:08:38 +00:00
Kristian Rietveld
209d0867e6 add checks for empty menu items to behave like insensitive items (#59456)
Thu Nov 29 21:35:56 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkmenu.c (gtk_menu_motion_notify): add checks for
        empty menu items to behave like insensitive items (#59456)

        * gtk/gtkmenuitem.c (gtk_real_menu_item_activate_item): select
        next item if the first item in the menu is a tear off item
        (#59456-2, suggestion by Matthias Clasen)

        * gtk/gtkmenushell.c (gtk_menu_shell_button_press),
        (gtk_menu_shell_button_release), (gtk_menu_shell_entry_notify),
        (gtk_menu_shell_leave_notify), (gtk_real_menu_shell_move_current),
        (gtk_real_menu_shell_activate_current): add check, so empty
        menu items behave like insensitive items (#59456)

        * gtk/gtkmenuitem.[ch]: add _gtk_menu_item_is_selectable to make
        the checks more readable ...

        * gtk/gtkmenushell.c (gtk_menu_shell_button_press),
        (gtk_menu_shell_button_release): causes the menu to dropdown if the
        caption is clicked again (#64977)
2001-11-29 20:36:12 +00:00
Havoc Pennington
ddfc7377d4 assertion here that we were at the end iterator was not correct; change
2001-11-29  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
	assertion here that we were at the end iterator was not correct;
	change code to move us to the end iterator. bug #65731
2001-11-29 20:09:41 +00:00
Manish Singh
a0dd3bc884 Fill in missing error parameters to DecodeHeader and DecodeColormap.
2001-11-28  Manish Singh  <yosh@gimp.org>

        * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
        in missing error parameters to DecodeHeader and DecodeColormap.
2001-11-29 01:39:34 +00:00
Owen Taylor
ea644d3572 Remove improper use of g_locale_to_utf8() to convert from latin-1, and do
Wed Nov 28 20:05:44 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkaccellabel.c (gtk_accel_label_refetch): Remove
	improper use of g_locale_to_utf8() to convert from
	latin-1, and do it the easy way by building the string
	correctly in the first place.
2001-11-29 01:15:52 +00:00
Owen Taylor
51f1c2a73c Convert atoms to and from atoms for properties of type XA_ATOM. (#65555,
Wed Nov 28 19:34:15 2001  Owen Taylor  <otaylor@redhat.com>
	* gdk/x11/gdkproperty-x11.c (gdk_property_change, gdk_property_get):
	Convert atoms to and from atoms for properties of type XA_ATOM.
	(#65555, patch from Hidetoshi Tajima)
2001-11-29 00:43:24 +00:00
Federico Mena Quintero
ab13c8803d Fix Ximian bug #12125; merged from gdk-pixbuf stable.
2001-11-21  Federico Mena Quintero  <federico@ximian.com>

	Fix Ximian bug #12125; merged from gdk-pixbuf stable.

	* gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
	a simple state machine instead of a scary if/else chain.
	(DecodeHeader): Set the reading state.
	(DecodeColormap): Set the reading state.
	(decode_bitmasks): New function, decodes the bitmasks for
	BI_BITFIELDS coding.
	(OneLine32): Handle BI_BITFIELDS coding.
	(OneLine16): Likewise.
2001-11-29 00:13:02 +00:00
Owen Taylor
3e3322608c Rename 'id' parameter to avoid problems with Objective C.
Wed Nov 28 18:37:04 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtksocket.[ch] (gtk_socket_add_id): Rename 'id' parameter
	to avoid problems with Objective C.
2001-11-28 23:54:30 +00:00
Matthias Clasen
a381648faa Typo fixes. (#65607)
* gtk/gtkaccelmap.c: Typo fixes. (#65607)

        * gtk/gtkfixed.c (gtk_fixed_set_has_window, gtk_fixed_get_has_window):
        Fix docs. (#65505)

        * gtk/gtkwindow.c (gtk_window_set_mnemnonic_modifier): Document.

        * gtk/tmpl/gtkwindow.sgml: Document gtk_window_position.

        * gdk/tmpl/dnd.sgml: Document GdkDragProtocol and GdkDragContext.

        * gdk/tmpl/events.sgml: Document gdk_setting_get.

        * gdk/tmpl/fonts.sgml: Document gdk_font_full_name_get and
        gdk_font_full_name_free.

        * gdk/tmpl/windows.sgml: Document gdk_window_register_dnd.
2001-11-28 23:41:12 +00:00
Owen Taylor
476d2a84b7 Move accounting of menu->tearoff_scrollbar width to here and make sure we
Wed Nov 28 18:19:12 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_set_tearoff_hints): Move
        accounting of menu->tearoff_scrollbar width to here
        and make sure we have the correct requisition.

        * gtk/gtkmenu.c (gtk_menu_position): Fix fixme
        by using gtk_window_move().

        * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Force
        the requisition to be updated by calling
        gtk_widget_size_request() (#65440)

        * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_activate):
        queue resize before calling gtk_menu_set_tearoff_state().
2001-11-28 23:26:17 +00:00
Kristian Rietveld
2418e92303 fix typo
Wed Nov 28 22:20:44 2001  Kristian Rietveld  <kristian@planet.nl>

        * demos/gtk-demo/editable_cells.c: fix typo

        * demos/gtk-demo/list_store.c (add_columns): remove call to
        gtk_tree_view_column_set_clickable which didn't make sense
2001-11-28 21:19:40 +00:00
Havoc Pennington
53da925c9b put the warning explaining the validation error in front of the
2001-11-28  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_paint): put the warning
	explaining the validation error in front of the G_BREAKPOINT

	* gtk/gtkrange.c (gtk_range_adjustment_value_changed): call
	process updates with include_children = FALSE instead of TRUE, so
	we redraw the range only, not the whole darn window.  Making
	GtkRange a NO_WINDOW widget had weirdly caused the text widget
	Trace/breakpoint trap bug to become much easier to trigger.
2001-11-28 20:42:15 +00:00
Owen Taylor
931fe180ff Remove reference to gdkcursors.h.
Wed Nov 28 14:12:03 2001  Owen Taylor  <otaylor@redhat.com>
	* gdk/Makefile.am (gdk_public_h_sources): Remove reference
	to gdkcursors.h.
2001-11-28 19:32:18 +00:00
Matthias Clasen
fa7f30239b Add markup to docs.
* gtk/gtkwindow.c (gtk_window_move): Add markup to docs.
2001-11-28 19:08:36 +00:00
Matthias Clasen
af4bb73f59 gdk/tmpl/windows.sgml, gdk/tmpl/general.sgml,
gdk/tmpl/pixmaps.sgml, gdk/tmpl/drawing.sgml,
        gdk/tmpl/gcs.sgml: Updates.
2001-11-28 19:05:58 +00:00
Matthias Clasen
0b0b2b6483 forgotten Changelog entry. 2001-11-28 18:47:27 +00:00
Matthias Clasen
4ee972a5c9 Directly include the contents of gdkcursors.h in the GdkCursorType enum.
* gdk/gdkcursor.h: Directly include the contents
        of gdkcursors.h in the GdkCursorType enum.

        * gdk/gdkcursors.h: Deleted.

        * gdk/gdkkeysyms.h: Remove XFree86-specific keysyms, add
        header boilerplate.

        * gdk/Makefile.am: Remove the X-derived-headers rule.

        * gdk/tmpl/cursors.sgml: Document GdkCursor and standard cursors.
2001-11-28 18:38:43 +00:00
Carlos Perell Marn
04a076158e Some fixes.
2001-11-28  Carlos Perell Marn <carlos@gnome-db.org>

	* es.po: Some fixes.
2001-11-28 12:17:36 +00:00
Owen Taylor
488463ef21 Notify on the ::active property _here_, not in
Tue Nov 27 20:17:55 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_activate):
	Notify on the ::active property _here_, not in
	gtk_check_menu_item_set_active.
2001-11-28 01:20:14 +00:00
Jonathan Blandford
b2676e9229 add 2 properties (PIXBUF_EXPANDER_OPEN and PIXBUF_EXPANDER_CLOSED)
Mon Nov 26 19:11:18 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrendererpixbuf.c
	(gtk_cell_renderer_pixbuf_class_init): add 2 properties
	(PIXBUF_EXPANDER_OPEN and PIXBUF_EXPANDER_CLOSED)
2001-11-27 00:14:42 +00:00
Owen Taylor
6a252271fb Add long, but horribly sketchy comment about what is going on in this
Sun Nov 25 21:19:02 2001  Owen Taylor  <otaylor@redhat.com>
	* gdk/x11/gdkgeometry-x11.c: Add long, but horribly sketchy
	comment about what is going on in this file.
	* gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
	x/y problem.
2001-11-26 02:20:06 +00:00
Akira TAGOH
c117249322 Added -version-info.
2001-11-26  Akira TAGOH  <tagoh@redhat.com>

	* Makefile.am (libgdk_pixbuf_xlib_1_3_la_LDFLAGS):
	Added -version-info.
2001-11-26 00:42:29 +00:00
Owen Taylor
bc99cf97a2 Calculate size based on the _child_ of the menu item, not the menuitem.
Sun Nov 25 18:59:19 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkoptionmenu.c (gtk_option_menu_calc_size):
	Calculate size based on the _child_ of the menu item,
	not the menuitem. (#65005, Damon Chaplin)
	* gtk/gtklistitem.c (gtk_list_item_new_with_label): Add
	some extra vertical padding to the label widget ... restores
	GTK+-1.2 spacing. (#65085, Damon Chaplin.)
2001-11-26 00:19:31 +00:00
Tor Lillqvist
9a60bfac0c demos/pixbuf-demo.c M_PI -> G_PI.
2001-11-26  Tor Lillqvist  <tml@iki.fi>

	* demos/pixbuf-demo.c
	* demos/gtk-demo/pixbufs.c: M_PI -> G_PI.

	* demos/gtk-demo/main.c (read_line): No flockfile() or
	getc_unlocked() on Win32.

2001-11-25  Tor Lillqvist  <tml@iki.fi>

	* configure.in
	* acconfig.h: As we now use GDir, no need to check for dirent.h.
2001-11-25 23:36:29 +00:00
Kristian Rietveld
7a181cf52b free font_desc when finished (#65266)
Sun Nov 25 23:18:39 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktexttag.c (gtk_text_tag_set_property): free font_desc
        when finished (#65266)

Sun Nov 25 23:16:29 2001  Kristian Rietveld  <kristian@planet.nl>

        * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): free
        data after we set the property. (#65264)

Sun Nov 25 23:14:06 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkbutton.c: add destroy method so label_text gets freed
        if it has been allocated (#65268)
2001-11-25 22:19:22 +00:00
Manish Singh
dc0b9c8021 gdk/linux-fb/gdkdrawable-fb2.c update to latest Pango API
Sat Nov 24 13:39:51 2001  Manish Singh  <yosh@gimp.org>

        * gdk/linux-fb/gdkdrawable-fb2.c
        * gdk/linux-fb/gdkpango-fb.c: update to latest Pango API

        * gdk/linux-fb/gdkwindow-fb.c: implement gdk_window_show_unraised

        * gdk/linux-fb/gdkfont-fb.c (gdk_font_load): plug memleak on
        set_family

        * gdk/linux-fb/gdkfbswitch.c: minor cleanups
2001-11-24 21:52:50 +00:00
Kristian Rietveld
51eb87f3bd don't deactivate menu when menu_item isn't sensitive (#61389)
Sat Nov 24 22:05:27 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkmenushell.c (gtk_menu_shell_button_release): don't
        deactivate menu when menu_item isn't sensitive (#61389)
2001-11-24 21:05:10 +00:00
Owen Taylor
38dfbda4bc Fix invalid UTF-8.
Sat Nov 24 13:19:58 2001  Owen Taylor  <otaylor@redhat.com>

	* nl.po: Fix invalid UTF-8.
2001-11-24 18:20:21 +00:00
Kristian Rietveld
b95c4f0bb3 free path before we return (in case of a failure here)
Sat Nov 24 15:35:26 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodel.c (gtk_tree_model_foreach): free path before
        we return (in case of a failure here)
2001-11-24 17:32:27 +00:00
Owen Taylor
4da8e00b62 Handle events in windows other than widget->event_window properly.
Fri Nov 23 19:22:50 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtknotebook.c: Handle events in windows other
	than widget->event_window properly. (#65079, reported
	by Damon Chaplin)
	* gdk/gdkevents.c (gdk_event_get_coords): Fix x/y bug.
2001-11-24 00:24:18 +00:00
Owen Taylor
06ac4f721b Align the image at the top, #65020, request from Seth Nickell)
Fri Nov 23 18:57:46 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkmessagedialog.c (gtk_message_dialog_init): Align
	the image at the top, #65020, request from Seth Nickell)
2001-11-24 00:05:17 +00:00
Dirk-Jan C. Binnema
ad9dc1b108 - fixes, additions, updates (dutch translation) 2001-11-24 00:04:16 +00:00
Owen Taylor
46a8d6e80d Remove some strange arithmetic that was resulting in rows being drawn too
Fri Nov 23 18:49:53 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/{gtkclist,gtkctree.c} (draw_row): Remove some strange
	arithmetic that was resulting in rows being drawn too low.
	(#65001, reported by Damon Chaplin)
2001-11-23 23:55:19 +00:00
Owen Taylor
1123956779 Offset invalidated range correctly. Fix scrolling of title window.
Fri Nov 23 18:36:42 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkrange.c (gtk_range_button_press): Offset
	invalidated range correctly.
	* gtk/gtkclist.c (hadjustment_value_changed): Fix scrolling
	of title window. (#65001, reported by Damon Chaplin)
	* gtk/gtkcombo.c (gtk_combo_button_event_after): Replace
	horrible hack with use of ::event_after.
2001-11-23 23:42:30 +00:00
Owen Taylor
2936c8e942 Version 1.3.11 Require GLib-1.3.11, Pango-0.22, ATK-0.7. Restore to
Thu Nov 22 15:01:03 2001  Owen Taylor  <otaylor@redhat.com>
        * Version 1.3.11
        * configure.in (ATK_REQUIRED_VERSION): Require
        GLib-1.3.11, Pango-0.22, ATK-0.7.
        * tests/prop-editor.c (property_widget): Restore
        to working as well as it did before.
        * gtk/gtklistitem.h: Mark deprecated since it is
        an integral part of GtkList.
        * demos/gtk-demo/demo-common.h: New header file,
        for a common functions not important to the meat
        of the demos.

        * demos/gtk-demo/main.c (demo_ifind_file): Add a utility
        function to search for a file used by the demo.
        * demos/*.c: Use demo_find_file.
2001-11-23 21:46:44 +00:00
Owen Taylor
393c47573e Add windows.sgml Revert last diff to get things to build.
Fri Nov 23 15:12:07 2001  Owen Taylor  <otaylor@redhat.com>
        * gtk/Makefile.am (content_files): Add windows.sgml
        * gdk/tmpl/cursors.sgml: Revert last diff to get things to
        build.
2001-11-23 20:44:13 +00:00
Matthias Clasen
dcfc387678 Actually commit typo fixes already mentioned in ChangeLog entry on
* gtk/gtktextbuffer.c (gtk_text_buffer_create_tag),
        gtk/gtkruler.c (gtk_ruler_get_metric): Actually commit typo
        fixes already mentioned in ChangeLog entry on 2001-11-14.

        * docs/reference/gdk/tmpl/drawing.sgml: Minor markup fixes.
2001-11-23 20:20:38 +00:00
Hans Breuer
36ddd7d958 reflect Pango API change
2001-11-23  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkfont-win32.c (gdk_font_from_description) :
	reflect Pango API change

	* gtk/gtk.def : updated externals

	* gtk/gtkfixed.c (gtk_fixed_get_has_window) : use
	g_return_val_if_fail() to avoid 'function must return a value'

	* gtk/gtkrc.c : added spaces to fix small coding style issues
	* gtk/gtkwidget.c : ... and linebreaks. Also a static for
	'static correctness'

	* gtk/makefile.msc.in : temporary(?) disable gtk<plug|socket>
	because they only can be build on win32 after applying my patch
2001-11-23 16:05:39 +00:00
Matthias Clasen
a259f181fb Add better explanation of proximity events.
* gdk/tmpl/event_structs.sgml: Add better explanation of proximity
        events.

        * gdk/tmpl/cursors.sgml: Document GdkCursor and standard cursors.

        * gdk/images/*.png: The standard X cursors as pngs.

        * gdk/Makefile.am (HTML_IMAGES): Add the images.
2001-11-22 22:06:37 +00:00
Tim Janik
656ff6e8fa raise event window afte children, in order for the input pnly window to
Wed Nov 21 22:55:37 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkbutton.c (gtk_button_map): raise event window afte
        children, in order for the input pnly window to stay *above*
        children.

Wed Nov 21 22:44:27 2001  Tim Janik  <timj@gtk.org>

        * tests/testtreeview.c: make hackery worse ;) by checking fundamental
        type walks againts G_TYPE_FUNDAMENTAL_MAX.

        * tests/prop-editor.c: disable type hackery.
2001-11-21 23:49:17 +00:00
Owen Taylor
aa1a46e26b Fix problem with lost parameter.
Wed Nov 21 17:41:39 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkimage.c (gdk_image_get): Fix problem with
        lost parameter.
2001-11-21 22:42:50 +00:00
Owen Taylor
9b6c73271f Remove trailing commas in enum declarations.
Wed Nov 21 17:01:25 2001  Owen Taylor  <otaylor@redhat.com>
	* gtk/gtkcellrenderer.h gtk/gtktreemodel.h
	gtk/gtktreeprivate.h gtk/gtktreesortable.h: Remove
	trailing commas in enum declarations.
2001-11-21 22:08:09 +00:00
Owen Taylor
bffb11e1d6 Version 1.3.11, interface, binary age 0.
Wed Nov 21 15:21:26 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in (GTK_MICRO_VERSION): Version 1.3.11,
	interface, binary age 0.

	* NEWS: Updates

	* gtk/gtktreemodel.c gtk/gtkrc.c gtk/gtkentry.c: SGML
	fixes in docs.

	* gtk/gtkmain.h: Remove unused and misnamespaced
	get_gtk_win32_directory() prototype.

	* gdk/gdkimage.c (gdk_image_get): Fix parameter names
	to match header.

	* gdk/gdkwindow.h: Fix parameters to gdk_window_shape_combine_mask(),
	gdk_window_set_transient_for(), gdk_window_set_geometry_hints(),
	to match docs.

	* gdk/gdkevents.c (gdk_event_get_coords)
	  gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_active)
	  gtk/gtkdnd.c (gtk_drag_set_icon_stock):
	Fix parameter names in docs.

	* docs/faq/Makefile.am (FAQ_FILES): Add missing files.
	(#64961, Akira Tagoh)
2001-11-21 21:44:08 +00:00
Owen Taylor
b56118cf13 Updates
Wed Nov 21 15:57:29 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk-sections.txt: Updates

        * gtk/tmpl/gtkstock.sgml: Close end tags.

        * gtk/gtk.types: Remove interface types which gtk-doc
        can't handle currently.

        * gtk/tmpl/gtknotebook.sgml: Fix some garbage in file.

        * gdk/tmpl/x_interaction.sgml: Fix SGML errors.

        * gdk/gdk-overrides.txt gdk/gdk-sections.txt: Updates.
2001-11-21 21:43:47 +00:00
Owen Taylor
c860866dd7 Ref-sink the tooltips object. Ref-sink the tooltips object. Fix some
Wed Nov 21 11:41:29 2001  Owen Taylor  <otaylor@redhat.com>
	* tests/testgtk.c (create_tooltips): Ref-sink the tooltips object.
	* gtk/gtktoolbar.c (gtk_toolbar_init): Ref-sink the tooltips object.
	* gtk/gtkfilesel.c (open_new_dir): Fix some constness warnings.
	* gtk/gtkaccelgroup.c: Rename gtk_accel_groups_from_acceleratable()
	back to gtk_accel_groups_from_object(), change @acceleratable
	parameter to gtk_accel_groups_activate() accordingly.
	* gtk/gtkaccelmap.c (gtk_accel_map_lookup_entry): Remove
	left-over comment about quark return.
	* gtk/gtkaccelmap.h: Fix spelling of gtk_accel_map_foreach_unfiltered().
 	* gtk/gtk-boxed.defs (GtkIconSource): added as a boxed type.
        (Patch from Matt Wilson)
	* gtk/gtkobject.c (gtk_object_finalize): Warn if a floating
	object is finalized.
2001-11-21 17:04:35 +00:00
Havoc Pennington
d5db986a0b fix docs for gtk_window_set_policy() to reflect existence of
2001-11-20  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtkwindow.sgml: fix docs for gtk_window_set_policy() to
	reflect existence of gtk_window_set_resizable()
2001-11-21 03:08:56 +00:00
Tim Janik
9800f731e0 applied patch from owen to get rid of accel map notifiers. changed things
Tue Nov 20 21:25:08 2001  Tim Janik  <timj@gtk.org>

	* applied patch from owen to get rid of accel map notifiers.
	changed things to fix reentrancy and API as discussed on gtk-devel.

	* gtk/gtkaccelgroup.[hc]:
	(gtk_accel_group_finalize): unregister this accel group from all
	accel map paths.
	(accel_closure_invalidate): handle invalidation of closures by
	disconnecting their accelerators.
	(quick_accel_add): move closure connection and changed notification
	into this function to reduce code duplication. don't emit change
	notification on closurers without accelerators.
	(quick_accel_remove): rewrite, do the exact opposite of quick_accel_add
	for a GtkAccelGroupEntry.
	(gtk_accel_group_connect): get rid of the accel_path_quark argument.
	(gtk_accel_group_connect_by_path): new function to add accelerators
	with an accel path.
	(gtk_accel_group_disconnect_closure): new function, disconnect a
	closure from of an accel group.
	(gtk_accel_group_disconnect): loop over all closure for a accel_ley,
	accel_mods pair and remove them.
	(_gtk_accel_group_reconnect): new function that basically does
	gtk_accel_group_disconnect_closure() and
	gtk_accel_group_connect_by_path() once an accel path changed.
	(gtk_accel_groups_disconnect_closure): remove this, there's
	gtk_accel_group_disconnect_closure().

	* gtk/gtkaccelmap.[hc]: keep list of accel groups per entry now,
	nuke notifiers.
	(_gtk_accel_path_is_valid): make this non-static for
	gtkwidget.c and gtkaccelgroup.c assertions.
	(gtk_accel_map_add_notifer): removed this function.
	(gtk_accel_map_remove_notifer): same.
	(_gtk_accel_map_add_group):
	(_gtk_accel_map_remove_group): (un-)register accel groups, with
	accel paths for correct propagation.
	(gtk_accel_map_add_entry): return void.
	(gtk_accel_map_lookup): return gboolean instead of GQuark.

	* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): always
	set accel_path on widgets.

	* gtk/gtkwidget.[hc]:
	(accel_path_changed): got rid of this, changes are handled by
	accel maps internally now.
	(_gtk_widget_set_accel_path): get things to work without notifiers.
	(gtk_widget_list_accel_closures): list accel closures of a widget.

	* gtk/gtkwindow.[hc]: rename ::accels_changed, to ::keys_changed.
2001-11-20 23:43:03 +00:00
Matthias Clasen
9ea603f15d Typo fix.
* gtk/gtkcontainer.c (gtk_container_propagate_expose): Typo fix.

        * gdk/tmpl/event_structs.sgml: Small fixes.
2001-11-20 22:40:41 +00:00
Kristian Rietveld
e1634f474b replace gboolean free_last in the function parameters with gint depth.
Tue Nov 20 23:01:01 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path):
        replace gboolean free_last in the function parameters with
        gint depth. Changes to reflect new situation.

        * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
        replace gboolean free_last, with gint depth, add gint current_depth.
        Changes to reflect new situation.

        * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): changes
        to reflect new situation

        * gtk/gtktreemodel.c (gtk_tree_row_reference_free): ditto
2001-11-20 22:04:00 +00:00
Owen Taylor
cbab863627 Fix problem where notebook gap was double shifted by allocation.x/y
Tue Nov 20 12:37:10 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_paint): Fix problem
	where notebook gap was double shifted by allocation.x/y

	* gtk/gtknotebook.c (gtk_notebook_unmap): Chain up
	to unmap children.
2001-11-20 17:42:56 +00:00
Tim Janik
2394977634 fix allocation to be relative to paned->allocation, now that this is a
Tue Nov 20 14:49:59 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): fix
        allocation to be relative to paned->allocation, now
        that this is a NO_WINDOW widget.
        * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): same here.

        * gtk/gtkaccellabel.c (gtk_accel_label_class_init): ::closure
        needs to be a boxed property.
2001-11-20 13:55:08 +00:00
Sven Neumann
5b9a4753c9 shut up CVS 2001-11-20 08:11:53 +00:00
Kwok-Koon Cheung
05351d8de8 Usual update. 2001-11-19 23:16:34 +00:00
Owen Taylor
f4f196c133 Use the widget's state when drawing the indicator, as in GtkCheckButton.
Mon Nov 19 17:34:40 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
	Use the widget's state when drawing the indicator, as
	in GtkCheckButton. This gives us color changes for
	un-prelighted checkbuttons. (#63308, Matt Wilson)
2001-11-19 22:39:03 +00:00
Owen Taylor
0e8a7fb48e (Fixes related to #64428, Michael Meeks)
Mon Nov 19 17:11:23 2001  Owen Taylor  <otaylor@redhat.com>

	(Fixes related to #64428, Michael Meeks)

	* gtk/gtkplug.c (gtk_plug_set_is_child): Unmap the
	widget, so it gets mapped again properly when we
	add to a parent.

	* gtk/gtkplug.c (_gtk_plug_add_to_socket): Set
	plug->socket_window.

	* gtk/gtkplug.c (_gtk_plug_remove_from_socket): Set
	socket_window to NULL, not FALSE.
2001-11-19 22:18:23 +00:00
Michael Natterer
2268abe48f show notebook->event_window with gdk_window_show_unraised(), so it doesn't
2001-11-19  Michael Natterer  <mitch@gimp.org>

	* gtk/gtknotebook.c: show notebook->event_window with
	gdk_window_show_unraised(), so it doesn't catch the events which
	should go to the tab widgets first.
2001-11-19 22:04:24 +00:00
Jonathan Blandford
94a097ef5d Add a "resizable" property, to get rid of the
Mon Nov 19 15:30:51 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add a
	"resizable" property, to get rid of the
	GTK_TREE_VIEW_COLUMN_RESIZABLE sizing flag.
	(gtk_tree_view_column_set_resizable): New function to set resizable.
	(gtk_tree_view_column_set_resizable): getter.

	* tests/testtreecolumns.c (add_clicked): modify for above change.

	* Makefile.am (install-data-hook): remove old .pc files before
	installing the new one.  We used to symlink this, and it will
	break old installs.
2001-11-19 21:18:22 +00:00
Havoc Pennington
650e82680a put in a test for negative indentation values
2001-11-19  Havoc Pennington  <hp@pobox.com>

	* tests/testtext.c (fill_example_buffer): put in a test for
	negative indentation values
2001-11-19 20:55:46 +00:00
Owen Taylor
96e6febed8 Change default for justify to GTK_JUSTIFY_LEFT. Assuming that multiline
Mon Nov 19 14:08:18 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_init): Change default for
	justify to GTK_JUSTIFY_LEFT. Assuming that multiline
	labels are most often wrapped labels, this gives better
	compatibility with GTK+-1.2, where justification was
	ignored for wrapped labesl and is a more sensible
	default in any case. (#64489)

	* gtk/gtklabel.c (gtk_label_class_init): Fix default
	for wrap property to FALSE.
2001-11-19 19:20:21 +00:00
jacob berkman
c059e8564c add gtkmarshal.list
2001-11-19  jacob berkman  <jacob@ximian.com>

	* gtk/Makefile.am (gtk_extra_sources): add gtkmarshal.list
2001-11-19 19:17:49 +00:00
Owen Taylor
7fb44279fa Use RevertToParent, not RevertToNone. (#64613, Matthias Clasen)
Mon Nov 19 13:56:45 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
        RevertToParent, not RevertToNone. (#64613,
        Matthias Clasen)
2001-11-19 18:59:57 +00:00
Owen Taylor
9915762836 label_xalign and label_yalign need to be float properties to correspond to
Mon Nov 19 12:28:02 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkframe.c (gtk_frame_class_init): label_xalign
	and label_yalign need to be float properties to
	correspond to GTK+-1.2, to gtk_frame_set_label_align,
	and to the types of the xalign and yalign properties of GtkMisc.
	(#63484, Vitaly Tishkov)

Mon Nov 19 12:24:30 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksocket.h (struct _GtkSocketClass): Fix return
	of plug_added vfunc. (#64408, Jeff Franks)
2001-11-19 17:32:54 +00:00
Owen Taylor
3a6bf7b6cc Fix return of plug_added vfunc. (#64408, Jeff Franks)
Mon Nov 19 12:24:30 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksocket.h (struct _GtkSocketClass): Fix return
	of plug_added vfunc. (#64408, Jeff Franks)
2001-11-19 17:25:15 +00:00
Elliot Lee
1032bbebfa remove "temporary" file that has been in CVS for past year or so 2001-11-19 17:15:39 +00:00
Owen Taylor
befe411e6a Undef HAVE_STDLIB_H before checking for jpeg, because jconfig.h has this
Mon Nov 19 12:07:20 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in (deps): Undef HAVE_STDLIB_H before
	checking for jpeg, because jconfig.h has this
	in it too (%#$@!). Fix from Matthias Clasen, #64500.
2001-11-19 17:10:22 +00:00
Owen Taylor
d2e2773146 Fix a memory leak when retrieving atom names. (Michael Meeks, #64508)
Mon Nov 19 11:30:03 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkproperty-x11.c (get_atom_name): Fix a
	memory leak when retrieving atom names. (Michael Meeks,
	#64508)
2001-11-19 16:31:34 +00:00
Alex Larsson
ecbfe81b06 Update to new Pango API.
2001-11-18  Alex Larsson  <alexl@redhat.com>

	* gdk/x11/gdkfont-x11.c (gdk_font_from_description):
	Update to new Pango API.
2001-11-19 02:23:56 +00:00
Owen Taylor
e4be2240b7 Rename the GTK_DESTROYED flag to GTK_IN_DESTRUCTION, remove the
Sun Nov 18 19:47:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkobject.h docs/Changes-2.0.txt: Rename the
	GTK_DESTROYED flag to GTK_IN_DESTRUCTION, remove the
	GTK_OBJECT_DESTROYED() check macro.

	* gtk/gtkbindings.c (gtk_bindings_activate): Remove
	instances of GTK_OBJECT_DESTROYED() that weren't
	needed any more.

	* gtk/gtkdialog.c: Exchange use of GTK_OBJECT_DESTROYED
	for a connection to ::destroy.
2001-11-19 01:08:51 +00:00
Owen Taylor
3432dff2e0 Make a NO_WINDOW widget, as it should have been since the beginning, but
Sun Nov 18 18:18:11 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfixed.c: Make a NO_WINDOW widget, as it should
	have been since the beginning, but as special hack,
	allow clearing the NO_WINDOW flag to get a window widget.
2001-11-18 23:33:21 +00:00
Kristian Rietveld
3828d02568 return TRUE when value changed, so row_changed is being emitted
Sun Nov 18 22:01:36  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreestore.c: return TRUE when value changed, so
        row_changed is being emitted
2001-11-18 21:00:53 +00:00
Hans Breuer
d9eb9ba9d6 make it compile with msvc: !HAVE_UNISTD_H; no label without op, even if
2001-11-18  Hans Breuer  <hans@breuer.org>

	* gtk/gdkaccelmap.c : make it compile with msvc: !HAVE_UNISTD_H;
	no label without op, even if it's a no-op.

	* gtk/gtk.def :
	* gtk/makefile.msc.in : reflect marshaler split, some clean-up

	* config.h.win32.in : remove definition of HAVE_DIRENT_H
	* gtk/gtkfilesel.c : due to GDir (new in glib) DIR isn't
	required anymore, replace it.
	* gtk/queryimmodules.c : DIR -> GDir replacement, also
	getcwd() -> g_get_current_dir()

	* gdk/win32/gdkgeometry-win32.c : adapt to refactored gdkgeometry-x11.c
	Even 'noisy laugh' scolling appears to work, though I still can't
	claim to have fully understood what it is supposed to do ...
2001-11-18 15:37:13 +00:00
Hans Breuer
cdc4f6a476 use g_strcasecmp(), some poor platforms don't have strcasecmp()
2001-11-18  Hans Breuer  <hans@breuer.org>

	* io-xpm.c : use g_strcasecmp(), some poor platforms
	don't have strcasecmp()

	* makefile.msc : do INCLUDE_png etc. definition here to avoid
	my temporary 'gdk-pixbuf-io-include.h' hack
2001-11-18 15:33:18 +00:00
Owen Taylor
e913a97b2d Remove include of gobject/signal.h.
Sun Nov 18 07:54:22 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
2001-11-18 12:55:47 +00:00
Owen Taylor
86dbeabc40 Include glib-object.h instead of gobject/gsignal.h
Sat Nov 17 21:07:46 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkenums.h: Include glib-object.h instead of
	gobject/gsignal.h

	* gdk/{gdkinternals.h,gdkwindow.c,gdkwindow.[ch],
	  x11,{fb,win32,x11/gdkwindow-*.c}: Add a dummy GdkScreen
	argument to the window_at_pointer() field of
	GdkPointerHooks. (Patch from Erwann Chenede)

	* gdk/gdkdrawable.h (struct _GdkDrawableClass ): Up
	to 6 pointers.
2001-11-18 02:15:52 +00:00
Matt Wilson
1419815e79 must include glib-object.h only
2001-11-17  Matt Wilson  <msw@redhat.com>

	* gtk/gtkenums.h: must include glib-object.h only
2001-11-18 02:07:37 +00:00
Owen Taylor
adca28f8c2 Reprioritize key bindings in order of visibility - mnemonics, then
Sat Nov 17 19:26:20 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_key_press_event): Reprioritize
	key bindings in order of visibility - mnemonics, then
	accelerators, then send key to the focus widget, then
	bindings on the GtkWindow.

	* gtk/gtklayout.h docs/Changes-2.0.txt tests/testgtk.c:
	Removed the xoffset, yoffset fields of GtkLayout which were
	identically zero for compat with 1.2, but were no longer
	compatible with	all uses of these fields in 1.2.

	* gtk/gtkwindow.c (gtk_window_set_default): Remove
	unused variable.
2001-11-18 00:34:23 +00:00
Owen Taylor
3f376d75ac We no longer need to create the signals here ... they come from the
Sat Nov 17 19:08:13 2001  Owen Taylor  <otaylor@redhat.com>

	* tests/testtreeview.c (gtk_tree_model_types_get_type):
	We no longer need to create the signals here ... they
	come from the interface.

	* gtk/maketypes.awk: Use GType, not GtkType in output.

	* gtk/gtktypeutils.h: Mark virtually all of this
	file deprecated.

	* gtk/gtkcontainer.h: Deprecate gtk_container_foreach_full;
	the only use of this function is the GtkArg using
	GtkCallbackMarshal, since destroy notification is
	silly here.
2001-11-18 00:10:57 +00:00
Owen Taylor
a036c6e59f Make gtkmarshal.list/gtkmarshal.h only for compatibility with GTK+-1.2;
Sat Nov 17 18:26:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkmarshal.list gtk/gtkmarshalers.list
	gtk/*.c gtk/gtksignal.h: Make gtkmarshal.list/gtkmarshal.h
	only for compatibility with GTK+-1.2; and deprecate it;
	put all marshalers we actually use into gtkmarshalers.list
	and use the _gtk_marshal_ prefix for these marshalers.
2001-11-17 23:28:51 +00:00
Murray Cumming
3a34680249 gtk/gtktexttagtable.c (gtk_text_tag_table_class_init):
The first parameters of the signals are now registered as GTK_TYPE_TEXT_TAG instead of G_TYPE_OBJECT.
2001-11-17 03:57:21 +00:00
Tor Lillqvist
6eace48cb5 Build separate runtime and developer packages.
2001-11-17  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Build separate runtime and developer
	packages.

	* gtk/gtk.def: Reflect recent accelerator-related changes.
2001-11-17 02:13:25 +00:00
Owen Taylor
61b2f259e5 Move notification of "has_default" to here, so it is safe to call
Fri Nov 16 19:44:35 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_set_default): Move
	notification of "has_default" to here, so it
	is safe to call gtk_window_set_default() instead
	of gtk_widget_grab_default().

	* gtk/gtkwindow.c (gtk_window_set_focus): Make it call
	gtk_widget_grab_focus(), which then calls
	_gtk_widget_internal_set_focus(). This makes
	gtk_window_set_focus() a safe way of both setting
	and unsetting the focus widget.

	* gtk/gtkwidget.c (gtk_widget_propagate_state): Use
	gtk_widget_get_toplevel(), instead of gtk_widget_ancestor
	to find the toplevel.

	* gtk/gtkwindow.h: Move gtk_window_set_focus/default
	from the "internal functions" section.
2001-11-17 01:18:49 +00:00
Matthias Clasen
f2d5aec4cb Updates.
* gdk/tmpl/event_structs.sgml: Updates.

        * gdk/tmpl/windows.sgml: Document GdkFilterFunction, GdkFilterReturn
        and GdkXEvent, add markup.
2001-11-17 00:44:31 +00:00
Jacob Berkman
976a5b3100 move the separator to the right place in the radio buttons window 2001-11-16 22:58:32 +00:00
jacob berkman
8d99d6af28 add some no-indicator radio buttons
2001-11-16  jacob berkman  <jacob@ximian.com>

	* tests/testgtk.c (create_radio_buttons): add some no-indicator
	radio buttons

	* gtk/gtkradiobutton.c (gtk_radio_button_init): since we are
	initially active, also initially be depressed
	(gtk_radio_button_clicked): also update our depressed state
2001-11-16 22:56:21 +00:00
Owen Taylor
c344b3f905 Propagate key press events not just to focus/window but also to
Thu Nov 15 12:54:36 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_key_press_event): Propagate
        key press events not just to focus/window but also to
        intermediate widgets.

        * gtk/gtknotebook.c: Handle Ctrl-PageUp/Ctrl-PageDown
        to switch pages. (Needs some work on handling focus
        when switching pages.)
2001-11-16 22:20:00 +00:00
Owen Taylor
0f9b242203 Fix child allocations to be relative to widget position and some drawing
Fri Nov 16 14:06:31 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c: Fix child allocations to be relative to
	widget position and some drawing bugs.

	* gtk/gtkmenuitem.c (gtk_menu_item_paint): Fix problem
	with reading uninitialized variable.
2001-11-16 19:19:30 +00:00
Owen Taylor
ab14a31ffb Cal gdk_window_invalidate_maybe_recurse() for recursion. (Soeren Sandmann)
Thu Nov 15 14:19:34 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Cal
	gdk_window_invalidate_maybe_recurse() for recursion.
	(Soeren Sandmann)
2001-11-16 16:54:16 +00:00
Owen Taylor
1431d7658e Make Menu items NO_WINDOW widgets.
Fri Nov 16 00:16:40 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/{gtkmenuitem.[ch],gtkcheckmenuitem.c,gtkimagemenuitem.c,
	gtkradiomenuitem.c,gtktearoffmenuitem.c}: Make Menu items
	NO_WINDOW widgets.

	* gtk/gtk{h,v,}paned.[ch]: Make NO_WINDOW widgets, some
	cleanup.

	* gtk/gtkstyle.c (gtk_default_draw_handle): Don't assume
	we are drawing in a window when drawing the paned handle.
2001-11-16 15:20:28 +00:00
Fatih Demir
e8eb7a4094 Updated tr.po 2001-11-16 14:15:40 +00:00
Sven Neumann
027884163b demos/gtk-demo/appwindow.c reduce compiler warnings
2001-11-16  Sven Neumann  <sven@gimp.org>

	* demos/gtk-demo/appwindow.c
	* demos/gtk-demo/menus.c: reduce compiler warnings
2001-11-16 11:50:04 +00:00
Owen Taylor
89baa6c002 Remove unused callback to make things compile with
Thu Nov 15 19:47:09 2001  Owen Taylor  <otaylor@redhat.com>

	* demos/gtk-demo/main.c (button_press_event_cb): Remove
	unused callback to make things compile with
	gtk_tree_view_path_at_pos_change().
2001-11-16 00:51:56 +00:00
Jonathan Blandford
16049019a8 maybe fix #64160 Also, forgot to save gtktreeview.h
Thu Nov 15 18:44:33 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreedatalist.c (_gtk_tree_data_list_free): maybe fix #64160
Also, forgot to save gtktreeview.h
2001-11-15 23:46:05 +00:00
Matthias Clasen
cea7df47d7 Move '.' out of quote. (#64407)
* gtk/gtkwindow.c (gtk_window_new): Move '.' out of quote. (#64407)
2001-11-15 23:18:15 +00:00
Jonathan Blandford
2fdf30186c New function to get a GdkWindow to compare event->window to.
Thu Nov 15 16:24:55 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_get_bin_window): New function
	to get a GdkWindow to compare event->window to.

	* gtk/gtktreeview.c (gtk_tree_view_move_cursor_left_right): emit
	the signal for lateral motion too, #64361

	* gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): remove window
	arg as it is useless, #64137
2001-11-15 22:20:18 +00:00
Owen Taylor
91a34f5d56 Some small drawing fixes for scroll arrows.
Thu Nov 15 16:07:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c: Some small drawing fixes for scroll arrows.
2001-11-15 21:12:27 +00:00
Owen Taylor
b27345fe2c Cal gdk_window_invalidate_maybe_recurse() for recursion. (Soeren Sandmann)
Thu Nov 15 14:19:34 2001  Owen Taylor  <otaylor@redhat.com>

 	* gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Cal
 	gdk_window_invalidate_maybe_recurse() for recursion.
 	(Soeren Sandmann)

 	* gtk/gtkviewport.c: Make !redraw_on_allocate. (Soeren Sandmann)

	* gtk/gtkcontainer.c (gtk_container_expose): Call
	gtk_container_forall() not _foreach() to propagate,
	since we need to propagate exposes to internal children
	as well.

	* gtk/gtkwidget.c (gtk_widget_set_events, gtk_widget_add_events):
	Remove the restriction of only being able to call these
	on window widgets, since we have lots of NO_WINDOW widgets
	with windows now; for add events, recurse over the children
	of widget->window to find one owned by the widget.

	* gtk/gtkbutton.[ch]: Make a NO_WINDOW widget, using an input-only
	window to catch events.

	* gtk/gtktogglebutton.[ch]: Remove the code for switching
	between NO_WINDOW and WINDOW widgets based on the mode.

	* gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c gtk/gtkclist.c
	gtk/gtktreeview.c: Adopt to NO_WINDOW change for GtkButton.

	* gtk/gtkrange.[ch]: Make into a NO_WINDOW widget.

	* gtk/gtkhscale.c, gtk/gtkvscale.c: Adopt to NO_WINDOW
	change for range.

	* gtk/gtknotebook.[ch]: Make into a NO_WINDOW widget.

	* docs/Changes-2.0.txt: Add a note about the NO_WINDOW changes.
2001-11-15 21:04:51 +00:00
Matthias Clasen
41f14d3597 Go back to DocBook 3.0 to get the autobuilder on developer.gnome.org back
* gtk/gtk-docs.sgml: Go back to DocBook 3.0 to get the
        autobuilder on developer.gnome.org back to work, but add
        the png notation for the stock icons.
2001-11-15 19:52:07 +00:00
Owen Taylor
701df64d98 Patch from Murray Cumming to add "message_type" and "buttons" CONSTRUCT
Thu Nov 15 11:59:35 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmessagedialog.c: Patch from Murray Cumming to add
	"message_type" and "buttons" CONSTRUCT properties. (#64069)

	* tests/testsocket.c: Expand tests to add a "local passive
	child" (Test case for #64428)
2001-11-15 17:58:35 +00:00
jacob berkman
d5ff32d7e0 create the label with a mnemonic
2001-11-14  jacob berkman  <jacob@ximian.com>

	* gtk/gtkgamma.c (button_clicked_callback): create the label with
	a mnemonic
2001-11-14 23:59:03 +00:00
Sven Neumann
a1361b57e1 make it compile without warnings.
2001-11-15  Sven Neumann  <sven@gimp.org>

	* tests/testgtk.c: make it compile without warnings.
2001-11-14 23:20:31 +00:00
Alex Larsson
cfb30b2d72 Don't recalculate the layout on each gkt_label_ensure_layout () for
2001-11-14  Alex Larsson  <alexl@redhat.com>

	* gtk/gtklabel.c:
	Don't recalculate the layout on each gkt_label_ensure_layout () for
	wrapped labels.
2001-11-14 23:10:53 +00:00
Jonathan Blandford
99fea7f976 Return the currently selected column when we get the column, #64380
Wed Nov 14 17:40:23 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_get_expander_column): Return
	the currently selected column when we get the column, #64380

	* gtk/gtkentry.c (gtk_cell_editable_key_press_event): Handle Esc
	to cancel CellRendererText editting, #63613

	* gtk/gtkcellrenderertext.c: ditto

	* gtk/gtkcellrenderertext.h: formatting changes
2001-11-14 22:52:43 +00:00
Matthias Clasen
e874c4290a Add --sgml-mode.
* docs/reference/gdk/Makefile.am (MKDB_OPTIONS),
        docs/reference/gdk-pixbuf/Makefile.am (MKDB_OPTIONS),
        docs/reference/gtk/Makefile.am (MKDB_OPTIONS): Add --sgml-mode.

        * docs/reference/gdk-pixbuf/tmpl/file-saving.sgml,
        docs/reference/gdk-pixbuf/tmpl/module_interface.sgml,
        docs/reference/gdk-pixbuf/tmpl/gdk-pixbuf-xlib-rgb.sgml: Consistent shor
2001-11-14 22:39:35 +00:00
Matthias Clasen
3470c6347f Rearrange docs (#64566)
* gtk/gtkbutton.c (gtk_button_get_label): Rearrange docs (#64566)

        * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Typo fix (#64474)

        * gtk/gtkruler.c (gtk_ruler_get_metric): Typo fix (#64470)

        * gtk/gtknotebook.c (gtk_notebook_prepend_page): Typo fix (#64467)

        * gtk/gtklabel.c: Documentation fixes (#64452)

        * docs/reference/gdk/Makefile.am (MKDB_OPTIONS),
        docs/reference/gdk-pixbuf/Makefile.am (MKDB_OPTIONS),
        docs/reference/gtk/Makefile.am (MKDB_OPTIONS): Add --sgml-mode.

        * docs/reference/gdk-pixbuf/tmpl/file-saving.sgml,
        docs/reference/gdk-pixbuf/tmpl/module_interface.sgml,
        docs/reference/gdk-pixbuf/tmpl/gdk-pixbuf-xlib-rgb.sgml: Consistent short descriptions.
        * docs/reference/gtk/tmpl/gtkprogressbar.sgml: Remove duplicate docs. (#64469)

        * docs/reference/gtk/gtk-sections.txt: Add missing TITLEs (#64459, #6456
2001-11-14 22:36:23 +00:00
Daniel Egger
5694bcb0ee Remove unused static function. (xpm_skip_string): Dito.
2001-11-14  Daniel Egger  <degger@fhm.edu>

	* gdk-pixbuf/io-xpm.c:
	(xpm_skip_whitespaces): Remove unused static function.
	(xpm_skip_string): Dito.
	(xpm_extract_color): Declare const variable const to avoid warnings.

	* gtk/gtkfixed.c: (gtk_fixed_map): Remove unused static function.

	* gtk/gtkplug.c: #if 0'ed prototype for #if 0'ed code.

	* gtk/gtksocket.c: Change type of mask to g_message to %ld for
	a long.
2001-11-14 21:50:00 +00:00
Owen Taylor
82a6dc9365 Back out accidental commit of debugging timing code
Wed Nov 14 15:14:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcontainer.c (gtk_container_idle_sizer): Back
	out accidental commit of debugging timing code
2001-11-14 20:20:03 +00:00
Havoc Pennington
a433d5c5c1 fix Control-E so it doesn't move to a new line each time you press it
2001-11-14  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_move_cursor): fix Control-E so
	it doesn't move to a new line each time you press it

	* gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix
	return value, #62987
2001-11-14 19:05:21 +00:00
Havoc Pennington
419f3e9bcc bulk of the tests were commented out, oops.
2001-11-14  Havoc Pennington  <hp@redhat.com>

	* tests/testtextbuffer.c (main): bulk of the tests were commented
	out, oops.

	* gtk/gtktextiter.c (find_paragraph_delimiter_for_line): make this
	function work, should resolve #63426
	(gtk_text_iter_ends_line): return TRUE for the end iterator

	* gtk/gtktextiter.h: put padding back in GtkTextIter, I thought of
	a couple things that might get cached in here.
2001-11-14 18:58:26 +00:00
Kjartan Maraas
dcff7a6aea Updated Norwegian (bokml) translation.
2001-11-14  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2001-11-14 15:02:49 +00:00
Tim Janik
5bf9210047 param spec fix 2001-11-14 03:03:54 +00:00
Jonathan Blandford
43d4639743 new "model" construct property for language bindings.
Tue Nov 13 21:00:59 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): new
	"model" construct property for language bindings.

	* gtk/gtktreestore.c (gtk_tree_store_set_column_types): New
	function to let you set the column types of a GtkTreeStore for
	language bindings.

	* gtk/gtkliststore.c (gtk_list_store_set_column_types): ditto.
2001-11-14 02:06:28 +00:00
Havoc Pennington
e9c62bf674 add set_border_width for testing 2001-11-14 00:33:45 +00:00
Havoc Pennington
7fcf41b444 docs including reference to bugzilla bug about how we should have a better
2001-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_add_child_in_window): docs
	including reference to bugzilla bug about how we should have
	a better way of positioning children

	* gtk/gtktextview.h (struct _GtkTextViewClass): add some padding

	* gtk/gtktextview.c (gtk_text_view_size_allocate): assign zero
	size to side rects if they don't exist, #63438
2001-11-14 00:26:14 +00:00
Havoc Pennington
8befd2f822 fix to properly replace selection with Return or Tab
2001-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): fix to
	properly replace selection with Return or Tab

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): fix broken code
	that didn't locate the end of the line correctly, should fix #63800
2001-11-13 23:56:11 +00:00
Havoc Pennington
10b3db0836 add border width to requisition, request non-anchored children
2001-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_size_request): add border width
	to requisition, request non-anchored children
	(gtk_text_view_size_allocate): handle border width, allocate
	non-anchored children
	(text_view_child_new_window): set the child as object data
	(gtk_text_view_move_child): allow children at negative
	coordinates, no reason why not
	(gtk_text_view_forall): make it copy the list of children before
	walking it, to avoid reentrancy issues
	(gtk_text_view_move_child): short-circuit if position is unchanged
	(changed_handler): only queue_resize if requisition has changed
	(gtk_text_view_init): don't redraw_on_allocate, since we can do
	a better job of invalidation ourselves

	* tests/testtext.c: add tests for the fixed-position children
2001-11-13 23:36:18 +00:00
Tim Janik
a272e83339 protect idle handle with gdk threads macro.
Tue Nov 13 19:51:43 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (handle_accels_changed): protect idle handle
        with gdk threads macro.
2001-11-13 18:52:25 +00:00
Tim Janik
d07573c090 added gtkaccelmap.sgml. other updates.
Mon Nov 12 23:06:38 2001  Tim Janik  <timj@gtk.org>

        * added gtkaccelmap.sgml. other updates.

Mon Nov 12 23:08:37 2001  Tim Janik  <timj@gtk.org>

	* gtk/maketypes.awk: fix type utils generation on unix.

	* gtk/gtkaccelmap.[hc]: new files, implementing a global accelerator
	registry.

	* gtk/gtkaccelgroup.[hc]: major API/implementation revamp:
	removed GTK_ACCEL_SIGNAL_VISIBLE, gtk_accel_group_get_default,
	gtk_accel_group_get_entry, gtk_accel_group_(un)lock_entry,
	gtk_accel_group_add/remove, gtk_accel_group_handle_add/remove,
	gtk_accel_group_create_add/remove, gtk_accel_group_entries_from_object.
	introduced ::accel_changed signal for change notification, and
	gtk_accel_group_connect/disconnect to connect closures to accel groups.
	made gtk_accel_group_attach/detach and gtk_accel_group_activate private
	functions.
	deprecated gtk_accel_group_ref/unref.

	* gtk/gtkaccellabel.[hc]: changes to make accellabels pay attention
	to accel group changed notification and basically operate on closures.
	removed gtk_accel_label_get_accel_object and
	gtk_accel_label_set_accel_object.
	introduced gtk_accel_label_set_accel_closure, and for convenience,
	gtk_accel_label_set_accel_widget.

	* gtk/gtkitemfactory.[hc]: removed accelerator propagation code
	which mostly moved into gtkaccelmap.[hc].
	removed gtk_item_factory_parse_rc*, gtk_item_factory_dump_*
	and gtk_item_factory_print_func.

	* gtk/gtkmain.c: call _gtk_accel_map_init().

	* gtk/gtkmenuitem.[hc]: introduced gtk_menu_item_set_accel_path(),
	that associates an accelerator path with menu items, through which
	persistent accelerator settings on menu items are enabled.

	* gtk/gtkmenu.[hc]: added gtk_menu_set_accel_path() so accelerator
	paths of menu item can be default constructed to allow installation
	of accelerators on menu items that don't come with an accelerator
	binding by default.

	* gtk/gtksettings.c: fix STRING type rc settings by special casing
	them appropriately in the parser.

	* gtk/gtksignal.[hc]: allow a class function offset of 0 for
	gtk_signal_newv().

	* gtk/gtkwidget.[hc]: accelerator API revamp.
	removed ::accelerator_add/remove signals, gtk_widget_accelerator_signal,
	gtk_widget_accelerators_locked, gtk_widget_remove_accelerators and
	gtk_widget_(un)lock_accelerators.
	accelerators maintained through gtk_widget_add/remove_accelerator()
	are not runtime changable now, the correct sequence to setup a
	widget for runtime changable accelerators is now:
	  gtk_accel_map_add_entry(accel_path, key, mods);
	  _gtk_widget_set_accel_path(widget, accel_path, accel_group);

	* gtk/gtkwindow.[hc]: accelerator changes, proxy and coalesce accel
	group changes (as well as mnemonic changes) through the new signal
	::accels_changed.

Sat Nov 10 12:08:56 2001  Tim Janik  <timj@gtk.org>

	* gtk/gtksettings.c (_gtk_settings_parse_convert): properly handle
	GString->string conversions.
2001-11-13 00:53:47 +00:00
Owen Taylor
aebe24f2bb Warn
Mon Nov 12 19:33:52 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmessagedialog.c (gtk_message_dialog_new): Warn
2001-11-13 00:35:24 +00:00
Matthias Clasen
be2d0ae2ce new files explaining where the code for rendering pixbufs lives. (#61151)
* gdk-pixbuf/gdk-pixbuf-rendering.sgml,
        gdk-pixbuf/gdk-pixbuf-from-drawables.sgml: new files explaining
        where the code for rendering pixbufs lives. (#61151)

        * gdk-pixbuf/gdk-pixbuf.sgml: Use the new files.
2001-11-12 22:50:58 +00:00
Matthias Clasen
9b17c006c8 Documentation fixes. (#64377)
* gtk/gtktreeview.c: Documentation fixes. (#64377)

        * gtk/gtktreestore.c: Documentation fixes. (#64376)
2001-11-12 22:29:13 +00:00
Fatih Demir
5b057b2436 Update. 2001-11-11 12:03:12 +00:00
Stanislav Visnovsky
84d2e880f0 Updated Slovak translation.
2001-11-11  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

        * sk.po: Updated Slovak translation.
2001-11-11 11:53:54 +00:00
Matthias Clasen
79e4b185f6 Mass fixing of trivial doc bugs. (#63544, #57007, #64141, #63472, #57108,
* gtk/gtkiconfactory.c, gtk/gtktextbuffer.c, gtk/gtktreemodel.c,
        gtk/gtkwindow.c, gtk/gtknotebook.c, gtk/gtkradiobutton.c,
        gtk/gtktextiter.c, gtk/gtkdialog.c: Mass fixing of trivial doc bugs.
        (#63544, #57007, #64141, #63472, #57108, #60818, #61562)

        * gtk/tmpl/gtkaccellabel.sgml, gtk/tmpl/gtkcombo.sgml,
        gtk/tmpl/gtkentry.sgml, gtk/tmpl/gtkhscrollbar.sgml,
        gtk/tmpl/gtkvscrollbar.sgml, gtk/tmpl/gtktoolbar.sgml,
        gtk/tmpl/gtkdialog.sgml, gtk/tmpl/gtkstatusbar.sgml:
        Mass fixing of trivial doc bugs. (#55579, #56760, #58769, #55918,
        #64154, #60422, #54697)
2001-11-10 22:06:44 +00:00
Hans Breuer
c9dabae939 make sure we know what we are talking about when asked for MINMAXINFO.
2001-11-10  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate) : make sure
	we know what we are talking about when asked for MINMAXINFO.
	Also some cleaning for !HAVE_DIMM_H etc.
2001-11-10 13:23:36 +00:00
Matthias Clasen
f4f1768db9 Fix docs for gtk_tree_view_column_set_sort_order. (#62647)
* gtk/gtktreeviewcolumn.c: Fix docs for
        gtk_tree_view_column_set_sort_order. (#62647)

        * gtk/gtkcontainer.c: Fix docs for
        gtk_container_set_border_width. (#64139)

        * gtk/gtkcolorsel.c: Documentation fixes.

        * gtk/tmpl/gtkpaned.sgml: Document gtk_paned_set_gutter_size
        as noop. (#45802)

        * gtk/tmpl/gtkcolorsel.sgml: Remove stuff duplicating inline
        docs. (#60481)
2001-11-10 01:30:31 +00:00
Matthias Clasen
77764092fc Document all stock items with their stock text.
* gtk/tmpl/gtkstock.sgml: Document all stock items
        with their stock text.

        * gtk/tmpl/gtkhseparator.sgml: Small corrections.

        * gdk-pixbuf/tmpl/gdk-pixbuf-loader.sgml: Updates.
2001-11-10 00:02:13 +00:00
Hans Breuer
be3809f0ba use g_strcasecmp(), some poor platforms don't have strcasecmp()
2001-10-28  Hans Breuer  <hans@breuer.org>

	* gtk/gtkfontsel.c : use g_strcasecmp(), some poor platforms
	don't have strcasecmp()

	* gtk/gtktextview.c : to fix crashing on e.g. TextView::find need
	to remove the idle funcs in gtk_text_view_destroy (). To reduce
	code duplication wrap it in its own function and use it in
	gtk_text_view_unrealize () and gtk_text_view_destroy_layout ()

	* gdk/win32/gdkdrawable-win32.c : implement the finalize
	method like the X11 version does, allow to set_colormap NULL
	* gdk/win32/gdkwindow-win32.c : adapt GdkWindowImplWin32::
	set_colormap, also some adaption to X11 version :
	(gdk_window_hide) call _gdk_window_clear_update_area
	(gdk_window_reparent) call _gdk_window_init_position

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints) :
	call gdk_window_resize() after all hints are set, because the
	window resizing process (WM_GETMINMAXINFO) takes all of them into
	account

	* gdk/win32/gdkfont-win32.c : make gdk_font_equal return a gboolean

	* gdk/win32/gdkvisual-win32.c : register GdkVisual with
	sizeof (GdkVisualPrivate)

	* gdk/gdk.def gtk/gtk.def : upated externals

	* gdk/makefile.msc gdk/win32/makefile.msc gdk-pixbuf/makefile.msc
	  gdk-pixbuf/pixops/makefile.msc gtk/makefile.msc.in tests/makefile.msc :
	from now on use make.msc from $(TOP)/glib/build/win32

	* gtk/stock-icons/makefile.msc : add stock_missing_image
2001-11-09 21:52:52 +00:00
Tor Lillqvist
15d2050794 Add headers. Add section about ActiveIMM.
2001-11-08  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Add headers. Add section about ActiveIMM.

	* configure.in: Add --with-ie55 flag to specify the location of
	the "IE55 libs and headers" package downloadable from Microsoft,
	which contains, among other things, the Active IMM header dimm.h
	and UUID library uuid.lib. Use test -f instead of AC_CHECK_FILE.
	Require GLib 1.3.10.

	* config.h.win32.in: New version, produced by merging two
	configure-generated ones (for gcc and MSVC). Hopefully #defines
	the same flags that the previous, hand-written one, did.

	* gdk/Makefile.am
	* gdk/win32/Makefile.am: Handle the uuid library from the IE55 lib.

	* gdk/win32/gdkevents-win32.c: Conditionalize ActiveIMM
	stuff. Remove unused GdkIOClosure.

	* gdk/win32/surrogate-dimm.h: Remove, use real dimm.h instead (if
	available).

	* gdk/win32/libie55uuid.la: New file, handwritten libtool wrapper
	for uuid.lib. (Does it really have to be this hard to use an
	existing library with libtool? Probably I am missing something.)
2001-11-08 20:57:18 +00:00
Darin Adler
2b83deaedf Fix an obvious typo where it says LEFT instead of CENTER.
* gtk/gtklabel.c: (gtk_label_ensure_layout): Fix an obvious
	typo where it says LEFT instead of CENTER.
2001-11-08 18:56:23 +00:00
Darin Adler
966fc7ed0e Add g_return_if_fail.
* gtk/gtkdialog.c: (gtk_dialog_set_response_sensitive),
	(gtk_dialog_set_default_response): Add g_return_if_fail.
2001-11-07 18:12:25 +00:00
Owen Taylor
57479a86be Add row_draggable() vfunc, and wrapper function.
Mon Nov  5 22:34:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreednd.[ch] (struct _GtkTreeDragSourceIface):
	Add row_draggable() vfunc, and wrapper function.

	* gtk/gtktreednd.[ch] (struct _GtkTreeDragDestIface): Make
	row_drop_possible take a GtkSelectionData, rather than
	model/row pair.

	* gtk/gtktreestore.c gtk/gtkliststore.c: Update for
	new DND interfaces.

	* gtk/gtktreeview.[ch]: Remove the row_draggable_func
	location_dropable_func from gtk_tree_view_set_rows_drag_source/dest.
	and rename them to enable_model_drag_source/dest.

	* gtk/treeviewcolumn.c: Add DND of columns between rows.
	Still can't drop _to_ the left tree, but other places
	work.

	* gtk/gtktreeview.c (unset_reorderable): Unset the
	reorderable property if unset/enable_model_drag_source/dest
	are called manually.

	* gtk/gtktreestore.c (gtk_tree_store_row_drop_possible):
	Correct for change in depth count handling.

	* gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon):
	Pass in a expose area to gtk_tree_view_column_cell_render()
2001-11-06 19:10:03 +00:00
Havoc Pennington
9bb17278c4 wacky easter egg
2001-11-06  Havoc Pennington  <hp@redhat.com>

	* demos/gtk-demo/textview.c (easter_egg_callback): wacky easter egg
2001-11-06 18:25:15 +00:00
Havoc Pennington
d73ad69c8d lost this file due to CVS broken pipe 2001-11-06 17:12:42 +00:00
Owen Taylor
ff4f641512 Fix misplaced HAVE_XFT.
Tue Nov  6 10:13:16 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgc-x11.c: Fix misplaced HAVE_XFT.
2001-11-06 15:14:09 +00:00
Havoc Pennington
604eebd380 expose the child widgets in here (gtk_text_view_realize): set parent
2001-11-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_paint): expose the child
	widgets in here
	(gtk_text_view_realize): set parent window of child widgets
	(gtk_text_view_size_request): use child req to decide whether
	to invalidate layout, not widget->requisition

	* gtk/gtktextdisplay.c (render_layout_line): set
	shaped_width_pixels for NULL shape objects, so that we properly
	draw the "missing pixbuf/widget" thing
	(render_layout_line): don't draw the widget here
	(gtk_text_layout_draw): pass out a list of widgets that need exposing

	* demos/gtk-demo/textview.c (insert_text): add demo of child
	widgets

	* gtk/gtktextlayout.c (add_child_attrs): remove debug spew

	* gtk/gtktextdisplay.c (render_layout_line): remove debug spew

	* gtk/gtktextview.c (gtk_text_view_update_child_allocation): add
	scroll offsets
	(gtk_text_view_value_changed): poke new X and Y into child allocations
2001-11-06 00:54:24 +00:00
Tor Lillqvist
9af1351da5 Do search GTK_BINARY_VERSION -specific directory on Windows, too (#63759).
2001-11-06  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkmain.c (find_module): Do search GTK_BINARY_VERSION
	-specific directory on Windows, too (#63759).
2001-11-06 00:40:19 +00:00
Marius Andreiana
5e362e191b updated
2001-11-05  Marius Andreiana  <mandreiana@yahoo.com>

        * ro.po: updated
2001-11-05 19:07:53 +00:00
Owen Taylor
42634ee735 Redo Xft support to go directly to Picture objects instead of using
Mon Nov  5 12:46:44 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c
	gdk/x11/gdkpixmap-x11.c gdk/x11/gdkprivate-x11.h
	gdk/x11/gdkwindow-x11.c: Redo Xft support to go
	directly to Picture objects instead of using XftDraw.
	This fixes the problem where we weren't able to
	properly destroy XftDraw objects before destroying
	the accompanying windows, and probably improves
	efficiency a bit too. (#50214)
2001-11-05 17:48:58 +00:00
Owen Taylor
8a31888a04 Clamp max window width/height to 32767, not 32768 since we have to be able
Mon Nov  5 10:01:49 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position):
	Clamp max window width/height to 32767, not 32768 since
	we have to be able to deal with a dx/y of -32768 without
	getting a width of 65536 when guffaw scrolling.

	* gdk/x11/gdkgeometry-x11.c: Implement gdk_window_scroll()
	for the guffaw scrolling case, fixing some problems with
	copy-area case as well. Fix BadValue bug with moving windows
	by large amounts.

	* gdk/x11/gdkgeometry-x11.c (gdk_window_clip_changed): Update
	clip in window structue before calling gdk_window_invalidate_region
	since that trims new invalidations to the window's visible
	region.

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_static_gravities):
	Really set the static window gravity on the children, not
	repeatedly on the window.

	* gtk/testgtk.c: Add a torture test for big windows and
	gdk_window_scroll().
2001-11-05 15:56:50 +00:00
Manish Singh
064ed1e4a3 sigsetjmp is macroized in some places, so use AC_TRY_LINK instead of
Sun Nov  4 17:36:08 2001  Manish Singh  <yosh@gimp.org>

        * acconfig.h configure.in: sigsetjmp is macroized in some places,
        so use AC_TRY_LINK instead of AC_CHECK_FUNCS for the check.
2001-11-05 01:39:22 +00:00
Owen Taylor
3be9ce0e18 Implement gdk_color_parse() in terms of pango_color_parse().
Sun Nov  4 19:16:23 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkcolor.c (gdk_color_parse): Implement gdk_color_parse()
        in terms of pango_color_parse().

        * gdk/{linux-fb,win32,x11}/gdkcolor-*.c: Remove port-specific
        gdk_color_parse() implementations.
2001-11-05 00:23:45 +00:00
Owen Taylor
37c87ccde4 queue_resize_on_group with both the old and new mode, not just the new
Sun Nov  4 18:39:43 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksizegroup.c (gtk_size_group_set_mode):
	queue_resize_on_group with both the old and new mode, not
	just the new mode. (#60171, Nicolas Setton). Also, notify
	the "mode" property.
2001-11-04 23:43:37 +00:00
Owen Taylor
21457ced17 Add a function gdk_window_invalidate_maybe_recurse() for use in "shallow
Sun Nov  4 16:02:08 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.[ch]: Add a function gdk_window_invalidate_maybe_recurse()
        for use in "shallow invalidation" of a widget. (Windows belonging
        to the widget, but not to the widget's children)

        * gtk/gtkprivate.h gtk/gtkwidget.c gtk/gtksizegroup.c: Add private
        flags GTK_ALLOC_NEEDED, GTK_REQUEST_NEEDED.  These flags are set
        up on ancestors up to the resize container on queue_resize. Size
        requests only actually take place if GTK_REQUEST_NEEDED, size
        allocations only take place if GTK_ALLOC_NEEDED or the size
        changed.

        * gtk/gtkcontainer.c gtk/gtkwidget.c: Remove
        container->resize_widgets and the RESIZE_NEEDED flag since the
        above flags are sufficient to figure out what needs to be
        resized/reallocated. Remove code manipulating
        container->resize_widget.

        * gtk/gtkwidget.[ch]: Add gtk_widget_set_redraw_on_alloc(); this
        allows widgets to turn off being automatically invalidated is when
        they are resized.

        * gtk/gtkwidget.[ch] (gtk_widget_size_allocate): Invalidation when
        a widget is resized or moved is "shallow" as described above -
        only the windows that need to be invalidated are invalidated.

        * gtk/gtkbox.c gtk/gtktable.c gtk/gtkalignment.c docs/Changes-2.0.txt:
        Make these widget's init functions call
        gtk_widget_set_redraw_on_allocate(widget,FALSE).

        * gtk/gtkwindow.c (gtk_window_configure_event): Call
        _gtk_container_queue_resize(), since we don't want
        redrawing. (Probably could be done for other
        calls to gtk_widget_queue_resize() in gtkwindow.c,
        but this is the most important one.)

        * gtk/gtkwindow.c (gtk_window_move_resize): Don't call
        gtk_widget_queue_draw() - size_allocate() handles
        that as appropriate.

        * gtk/gtkframe.c (gtk_frame_size_allocate): Invalidate instead
        of queue_clear() to avoid invalidating children.
2001-11-04 22:57:03 +00:00
jacob berkman
bc5849a5e0 don't free the module name until after we load the module
2001-11-04  jacob berkman  <jacob@ximian.com>

	* gtk/gtkmain.c (find_module): don't free the module name until
	after we load the module
2001-11-04 20:14:41 +00:00
Owen Taylor
ee0ebf46ab Convert GTK_TYPE_CTREE_NODE to pointer derivation instead of boxed
Sat Nov  3 13:57:21 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkctree.c: Convert GTK_TYPE_CTREE_NODE to pointer
        derivation instead of boxed derivation.

        * gtk/gtkmarshal.list: Remove some now unused marshallers.
2001-11-04 19:57:17 +00:00
Tor Lillqvist
d36c54b4a8 Can't include gtkprivate.h (I added the include yesterday, without really
2001-11-04  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkimmodule.c: Can't include gtkprivate.h (I added the
	include yesterday, without really thinking), as that defeats the
	working of correct_libdir_prefix() (it becomes a no-op.). Add
	comment mentioning that. Thanks to Hans Breuer for noticing.
2001-11-03 23:26:03 +00:00
Daniel Elstner
ac81252161 Use GtkWindow* as first signal argument (was GtkWidget*).
2001-11-03  Daniel Elstner  <daniel.elstner@gmx.net>

	* gtk/gtkwindow.h (frame_event): Use GtkWindow* as first
	signal argument (was GtkWidget*).

	* gtk/gtkwindow.c (gtk_window_frame_event),
	  gtk/gtkwindow-decorate.c (gtk_decorated_window_frame_event):
	Fixed argument types as above, removed GTK_WINDOW casts and
	added some GTK_WIDGET casts instead.
2001-11-03 23:02:40 +00:00
Hans Breuer
2a0f4e7d9a chain finalize to parent class to get removed from the toplevel_list.
2001-11-03  Hans Breuer  <hans@breuer.org>

	* gtk/gtkfilesel.c (gtk_file_selection_finalize) : chain
	finalize to parent class to get removed from the toplevel_list.
	Should fix 'random' crashes of #63474.

	* gtk/gtktreemodelsort.c : chain finalize() to parent class
2001-11-03 20:47:50 +00:00
Sebastian Wilhelmi
9d8e5e0ba8 gdk_rgb_init() doesn't need to be called anymore. Use g_object_(un)_ref
2001-11-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk-pixbuf/tmpl/refcounting.sgml,
	gdk-pixbuf/porting-from-imlib.sgml, tmpl/creating.sgml:
	gdk_rgb_init() doesn't need to be called anymore. Use
	g_object_(un)_ref instead of gdk_pixbuf_(un)ref.

	* tmpl/module_interface.sgml: Typo fix.

	* gdk-pixbuf/gdk-pixbuf.sgml: Fixed jade complaining about '_' by
	replacing it with '-'. Now builds again.

	* gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
2001-11-03 18:49:43 +00:00
Tor Lillqvist
bee6f66b5e Correct some renamed functions.
2001-11-03  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtk.def: Correct some renamed functions.

	* gtk/gtkimmodule.c (correct_libdir_prefix): New function, used on
	Windows to turn build-time paths from a gtk.immodules distributed
	as part of a binary package into runtime ones in the
	end-user-chosen installation directory.
	(gtk_im_module_init): Use it for module path and domain
	directory.
2001-11-03 00:44:35 +00:00
Tor Lillqvist
1d15be1599 Use -no-undefined on Windows. Look for .dll or .so as appropriate as
2001-11-03  Tor Lillqvist  <tml@iki.fi>

	* modules/input/Makefile.am: Use -no-undefined on Windows. Look
	for .dll or .so as appropriate as module suffix.

	* gtk-zip.sh.in: Use correct import library names.

	* gtk/gtk.def: Add a couple of missing entry points. (#63585)

2001-11-02  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkrc.c (gtk_rc_make_default_dir): Fix typo: extraneous
	comma.  Include gtkprivate.h for GTK_LIBDIR etc definitions on
	Windows.

2001-10-30  Tor Lillqvist  <tml@iki.fi>

	* Makefile (install-data-hook): Use cp, not $(LN_S) on the .pc
	files. Configure on Win32 (running on Cygwin) thinks symlinks
	exist, but pkg-config is not necesarily a Cygwin program, and
	doesn't understand them.
2001-11-02 22:56:59 +00:00
Jonathan Blandford
050625298e Clean up height code a bit. I don't think it's completely correct yet, but
Fri Nov  2 16:45:17 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Clean up height code
	a bit.  I don't think it's completely correct yet, but it's
	getting there.
2001-11-02 21:47:27 +00:00
Owen Taylor
44934dca38 Remove random + 5 for width and height. If people want padding, they
Fri Nov  2 16:14:15 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkviewport.c (gtk_viewport_size_request): Remove
	random + 5 for width and height. If people want padding,
	they should add padding. (Note the +5 isn't padding
	that will always appear - it just appears in the case
	where the widget is allocated it's requisition.)
	(#51018, Janet Davis)
2001-11-02 21:16:54 +00:00
Owen Taylor
92d5e4b2c7 Pad the structure for future expansion.
Fri Nov  2 15:53:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontext.h (struct _GtkIMContextClass): Pad
	the structure for future expansion.
2001-11-02 20:54:18 +00:00
Owen Taylor
7f63b5db98 Patch from HideToshi Tajima (#51922)
Fri Nov  2 15:30:34 2001  Owen Taylor  <otaylor@redhat.com>

        Patch from HideToshi Tajima (#51922)

        * gtk/gtkimmulticontext.c: Proxy set_use_preedit().

        * gtk/modules/input/gtkimcontextxim.[ch]: Implement
        set_use_preedit().

        * gtk/modules/input/gtkimcontextxim.[ch]: If we have
        to destroy the input context because we change the
        client window or use_preedit, make sure we empty
        the preedit string.
2001-11-02 20:48:15 +00:00
Owen Taylor
782107bc11 Go to the GUP proposed ordering of buttons with [OK] in the lower right
Fri Nov  2 14:55:53 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/{gtkcolorseldialog.c,gtkfilesel.c,gtkfontsel.c,
	gtkgamma.c,gtkmessagedialog.c}: Go to the GUP
	proposed ordering of buttons with [OK] in the lower
	right hand corner. Patch from Gregory Merchan,
	#56331.
2001-11-02 20:02:44 +00:00
Jonathan Blandford
1b1b2e8264 remove extraneous gtk_label_clear_layout (label)
Fri Nov  2 11:51:49 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtklabel.c (gtk_label_select_region_index): remove
	extraneous gtk_label_clear_layout (label)
2001-11-02 17:18:01 +00:00
Sebastian Wilhelmi
d5b5427c06 Removed -DGTK_DISABLE_COMPAT_H.
2001-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* tests/makefile.msc, gtk/makefile.msc.in: Removed
	-DGTK_DISABLE_COMPAT_H.

	* docs/Changes-2.0.txt:
	s/GDK_DISABLE_COMPAT_H/GDK_DISABLE_DEPRECATED/

	* gtk/gtkcompat.h.in, gdk/gdkcompat.h: Removed from CVS.
2001-11-02 15:39:04 +00:00
Owen Taylor
ca21695fe9 Convert to use pkg-config rather than gtk-config. (#53375, Skip Montanaro)
Fri Nov  2 10:21:03 2001  Owen Taylor  <otaylor@redhat.com>

	* examples/**/Makefile.am: Convert to use pkg-config
	rather than gtk-config. (#53375, Skip Montanaro)
2001-11-02 15:27:27 +00:00
Matt Wilson
bc0d15aba7 remove totally broken unused, non-compiling, static function.
2001-11-02  Matt Wilson  <msw@redhat.com>

	* gtk/gtkdialog.c (find_child_by_response_id): remove totally
	broken unused, non-compiling, static function.
2001-11-02 14:49:37 +00:00
Owen Taylor
78fa1576e6 Iterate through children of the action area, not of the vbox. (#58278,
Fri Nov  2 08:17:06 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdialog.c (gtk_dialog_set_response_sensitive):
	Iterate through children of the action area, not of
	the vbox. (#58278, Sergey Kuzminov)
2001-11-02 13:20:17 +00:00
Havoc Pennington
daa04f480f handle -1 argument in order to remove a workaround in Nautilus that forced
2001-11-01  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktext.c (gtk_text_set_position): handle -1 argument in
	order to remove a workaround in Nautilus that forced
	GTK_ENABLE_BROKEN

	* gtk/gtkwidget.c (gtk_widget_modify_style): fix typos in the docs
2001-11-02 05:22:07 +00:00
Owen Taylor
04e8bd13a9 Patch from George Lebl to fix division by zero for full scroll bars.
Thu Nov  1 20:09:31 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c: Patch from George Lebl to
	fix division by zero for full scroll bars. (#62114)
2001-11-02 01:13:31 +00:00
Owen Taylor
55676c57bd ref/unref around gtk_widget_event() if we are going to set a flag
Thu Nov  1 19:56:40 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main_do_event): ref/unref
	around gtk_widget_event() if we are going to
	set a flag afterwards. (#63464)
2001-11-02 01:00:40 +00:00
Owen Taylor
05969ed566 Actually add the missing/broken image icon as the image for the "missing
Thu Nov  1 19:44:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkiconfactory.c gtk/stock-icons/Makefile.am:
	Actually add the missing/broken image icon as the
	image for the "missing image" stock icon.
2001-11-02 00:48:28 +00:00
Owen Taylor
c77203bd74 Set a reasonable default height for the window.
Thu Nov  1 19:18:34 2001  Owen Taylor  <otaylor@redhat.com>

	* demos/gtk-demo/stock_browser.c (do_stock_browser):
	Set a reasonable default height for the window.

	* demos/gtk-demo/stock_browser.c (id_to_macro): Fix
	bug where subsequent '-' weren't converted to '_'.
	(#59550, Matthias Clasen)

	* demos/gtk-demo/appwindow.c (menu_items): Don't right
	justify the Help menu - just include a comment on
	how to do it. (#63539, 	Marius Andreiana)

	* gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): Don't
	list GTK_ICON_SIZE_INVALID.

	* demos/gtk-demo/stock_browser.c: Show the biggest available
	size, not a fixed size. (Often reported, including #63539,
	Marius Andreiana)
2001-11-02 00:25:14 +00:00
Jonathan Blandford
a2ff9e4179 Fix reorder_fixup, #59583
Thu Nov  1 19:11:35 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (gtk_rbtree_reorder_fixup): Fix reorder_fixup,
	#59583

	* gtk/gtktreeselection.c (gtk_tree_selection_set_mode): fix
	warning.
2001-11-02 00:13:30 +00:00
Owen Taylor
2ced30ad32 Make GtkFunction return boolean, not gint. (Daniel Elstner).
Thu Nov  1 16:54:00 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktypeutils.h: Make GtkFunction return boolean, not gint.
	(Daniel Elstner).
2001-11-01 21:54:52 +00:00
Owen Taylor
a1fe2ac180 Add: - A ::retrieve_surrounding signal that asks the widget for context
Thu Nov  1 16:20:56 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontext.[ch]: Add:
	  - A ::retrieve_surrounding signal that asks the widget for
	    context around the insertion point.
	  - A ::delete_surrounding signal that asks the widget to
	    delete context aroudn the insertion point.
	  - gtk_im_context_set_context() for widgets to set context
	    around the insertion point in response to ::retrieve_context.
	  - gtk_im_context_get_context() for context to get context
	    around the insertion point

	* gtkmarshal.list: Add BOOL:INT,INT

	* gtk/gtkimmulticontext.c: Proxy the get_surrounding() /
	set_surrounding() methods, and the ::retrieve_surrounding /
	::delete_surrounding signals.

	* gtk/gtkentry.c gtk/gtktreeview.c: Hook up to the
	GtkIMContext::retrieve_surrounding / ::delete_surrounding
	signals.
2001-11-01 21:50:58 +00:00
Jonathan Blandford
2704ea2b58 it's amazing how well things work sometimes, even when they're completely
Thu Nov  1 15:45:04 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
	it's amazing how well things work sometimes, even when they're
	completely wrong.

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
	where you could try to collapse a node w/o it having children.

	(gtk_tree_view_class_init): remove Shift L<->R as they already
	existed for expand/collapse.
2001-11-01 20:46:01 +00:00
Jonathan Blandford
b852358d0a Fix crash found by Matt Wilson.
Thu Nov  1 12:21:31 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Fix crash
	found by Matt Wilson.
2001-11-01 17:23:03 +00:00
Jonathan Blandford
d63b7cd693 Support Shift, Control, and Shift|Control L<->R, #63475
Thu Nov  1 00:44:50 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): Support Shift,
	Control, and Shift|Control L<->R, #63475
2001-11-01 06:29:35 +00:00
Jonathan Blandford
e7729de280 fix infinite loop noticed by yosh.
Wed Oct 31 18:53:51 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): fix
	infinite loop noticed by yosh.
2001-11-01 00:06:32 +00:00
Michael Meeks
f3740fb2ab unset the GTK_REALIZED flag so we don't re-enter when we are destroyed
2001-11-01  Michael Meeks  <michael@ximian.com>

	* gtk/gtksocket.c (gtk_socket_unrealize): unset the
	GTK_REALIZED flag so we don't re-enter when we are
	destroyed from the plug side.
2001-10-31 23:58:31 +00:00
Owen Taylor
2145a4ef10 Add a "menu" property and notify on it. (#62798, Padraig O'Briain)
Wed Oct 31 18:23:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_detacher):
	Add a "menu" property and notify on it. (#62798,
	Padraig O'Briain)

	* gtk/gtkselection.[ch] gtk/{gtkentry.c, gtkfilesel.c,
	gtkoldeditable.c, gtktextbuffer.c, gtktextview.c}:
	Fix set_text to take a gchar, not a guchar, and to have
	a len argument.
2001-10-31 23:49:09 +00:00
Manish Singh
7dccab8f3d fix typo to make it compile
Wed Oct 31 15:31:13 2001  Manish Singh  <yosh@gimp.org>

        * gtk/gtkstock.c: fix typo to make it compile
2001-10-31 23:33:22 +00:00
Jonathan Blandford
0cc916c5d7 don't know why this didn't commit 2001-10-31 22:57:51 +00:00
Jonathan Blandford
a64babbb9c if the widget is insensitive, draw the text insensitively, #63306
Wed Oct 31 17:27:20 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): if
	the widget is insensitive, draw the text insensitively, #63306
2001-10-31 22:57:28 +00:00
Matthias Clasen
8249338abb Add stock items for most stock icons. (#61757)
* gtk/gtkstock.c: Add stock items for most stock icons. (#61757)
2001-10-31 22:27:29 +00:00
Matthias Clasen
adacd4f789 include initialization_versions.sgml, file-saving.sgml and
* gdk-pixbuf/gdk-pixbuf.sgml: include initialization_versions.sgml,
        file-saving.sgml and module_interface.sgml.

        * gdk-pixbuf/tmpl/module_interface.sgml: add short description.

        * gtk/tmpl/gtkarg.sgml, gtk/tmpl/gtkdata.sgml,
        gtk/tmpl/gtkcellrenderertextpixbuf.sgml: removed, since they described
        no longer existent stuff and aren't included anymore.

        * gdk/tmpl/color_contexts.sgml, gdk/tmpl/input_contexts.sgml,
        gdk/tmpl/input_methods.sgml: removed, since they described no longer
        existent stuff and aren't included anymore.
2001-10-31 22:07:13 +00:00
Jonathan Blandford
d7a97b9728 rename gtk_selection_data_set_tree_row, #60218
Wed Oct 31 16:53:48 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreednd.c (gtk_tree_set_row_drag_data): rename
	gtk_selection_data_set_tree_row, #60218
	(gtk_tree_get_row_drag_data): rename
	gtk_selection_data_get_tree_row, #60218

	* gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): Actually
	get this right, after the third try, #63122.
2001-10-31 21:55:55 +00:00
jacob berkman
f2f7090a62 these should be 31, not 3. Hooray for Xatoms (and not using the XA_*
2001-10-31  jacob berkman  <jacob@ximian.com>

	* gdk/gdkselection.h (GDK_TARGET_STRING):
	(GDK_SELECTION_TYPE_STRING): these should be 31, not 3.  Hooray
	for Xatoms (and not using the XA_* macros)!
2001-10-31 21:52:29 +00:00
Owen Taylor
328d834e6d Add a gtk_window_get_focus() getter to determine the currently focused
Wed Oct 31 15:38:14 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.[ch] (gtk_window_get_focus): Add a
	gtk_window_get_focus() getter to determine the currently
	focused widget within the window. (#63145, request
	from Damian Ivereigh)
2001-10-31 20:41:02 +00:00
Jonathan Blandford
30f9fab4b4 Add GTK_SELECTION_NONE enum, #61695
Wed Oct 31 14:45:08 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkenums.h (enum): Add GTK_SELECTION_NONE enum, #61695

	* gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Handle new
	GTK_SELECTION_NONE enum.
	(_gtk_tree_selection_internal_select_node): ditto

	* gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): add
	constness.

	* gtk/gtkcellrenderertoggle.c: more yummy constness.

	* gtk/gtkclist.c (gtk_clist_set_selection_mode): g_return_if_fail
	if mode == GTK_SELECTION_NONE
2001-10-31 20:20:12 +00:00
Jonathan Blandford
c49351c86b Added a "cursor_changed" signal, #62850.
Wed Oct 31 14:05:17 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): Added a
	"cursor_changed" signal, #62850.
2001-10-31 19:08:09 +00:00
Matt Wilson
67a1d07327 after allocating the treedatalist, zero it to make sure the values are
2001-10-31  Matt Wilson  <msw@redhat.com>

	* gtk/gtktreedatalist.c (_gtk_tree_data_list_alloc): after
	allocating the treedatalist, zero it to make sure the values are
	cleared from any garbage that was in this chunk.
2001-10-31 18:54:20 +00:00
Matt Wilson
3cc89fb5ab remove conflict moarker 2001-10-31 18:52:22 +00:00
Murray Cumming
e0094ea92e gchar* args of GtkCellRendererText and GtkCellRendererToggle signal handlers are noe const gchar*. 2001-10-31 10:27:17 +00:00
Jonathan Blandford
8ec7b9fcff massize rewrite. Static models now totally work. I'm not 100% sure about
Tue Oct 30 19:17:57 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): massize
	rewrite.  Static models now totally work.  I'm not 100% sure about
	row_inserted and row_changed, but I'll get those later.
2001-10-31 00:20:15 +00:00
Matthias Clasen
a5b8d8c115 Updates. (#63293)
* gdk-pixbuf/gdk-pixbuf-sections.txt,
        gdk-pixbuf/tmpl/animation.sgml,
        gdk-pixbuf/tmpl/module_interface.sgml: Updates. (#63293)
2001-10-30 23:58:00 +00:00
Sven Neumann
7d02abe46e shut up CVS 2001-10-30 16:51:39 +00:00
Sven Neumann
aec8647264 use GLIB_AC_DIVERT_BEFORE_HELP() so we get proper output for configure
2001-10-30  Sven Neumann  <sven@gimp.org>

	* configure.in: use GLIB_AC_DIVERT_BEFORE_HELP() so we get proper
	output for configure --help.
2001-10-30 15:52:09 +00:00
Havoc Pennington
cc910abb42 Update the IM spot location here, if text was invalidated in the visible
2001-10-30  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (changed_handler): Update the IM spot location
	here, if text was invalidated in the visible area, because the
	scroll offset doesn't normally change in that case, and the mark
	isn't set, just implicitly moved over as text is added/removed
2001-10-30 14:15:01 +00:00
Jonathan Blandford
44a70fc239 Code cleanup. (gtk_separator_menu_item_class_init): Fix bugs in this code.
Mon Oct 29 19:18:35 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkseparatormenuitem.c: Code cleanup.
	(gtk_separator_menu_item_class_init): Fix bugs in this code.
2001-10-30 00:24:08 +00:00
jacob berkman
7c12bae85c automake doesn't support conditionalized LDFLAGS, so put win32 flags in
2001-10-29  jacob berkman  <jacob@ximian.com>

	* gdk/Makefile.am (LDFLAGS):
	* gtk/Makefile.am (LDFLAGS): automake doesn't support conditionalized
	LDFLAGS, so put win32 flags in here
2001-10-29 21:50:06 +00:00
Jonathan Blandford
14a5e057c7 Darn. I can't believe this took this long to fix.
Mon Oct 29 15:41:58 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): Darn.
	I can't believe this took this long to fix.
2001-10-29 20:43:01 +00:00
Jonathan Blandford
b5ccbdfb67 fix reordered signal.
Mon Oct 29 13:54:49 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered): fix
	reordered signal.
2001-10-29 18:56:00 +00:00
Owen Taylor
326f771536 Grab the focus to the fileop entry for create dir / rename file.
Mon Oct 29 12:27:51 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_rename_file): Grab
	the focus to the fileop entry for create dir / rename
	file.
2001-10-29 18:44:15 +00:00
Owen Taylor
ededbc646c Don't use AC_CHECK_FILE to check for a file since it always spits warnings
Mon Oct 29 12:21:49 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Don't use AC_CHECK_FILE to check for a
        file since it always spits warnings about cross compilation,
        use -f instead. It's not like we cross compile properly
        anyways.

        * configure.in (gtktargetlib): Move call to AC_PROG_CC
        to suppress autoconf warning.

        * acconfig.h: Add some missing #undefs from recent
        Win32 additions.
2001-10-29 17:25:40 +00:00
Owen Taylor
1493f6f7d4 Don't try to use pkg-config when we didn't find it. (#62944, Eric Lemings)
Mon Oct 29 11:31:40 2001  Owen Taylor  <otaylor@redhat.com>

	* m4macros/gtk-2.0.m4: Don't try to use pkg-config
	when we didn't find it. (#62944, Eric Lemings)

	* m4macros/gtk-2.0.m4: Fix problem with spaces around =
	sign in assignment. (#63209, Arkadiusz Miskiewicz)
2001-10-29 16:51:37 +00:00
Anders Carlsson
62adef452e Calculate the buttons size request before using it. Fixes #61696.
2001-10-29  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeview.c (gtk_tree_view_size_request): Calculate
	the buttons size request before using it. Fixes #61696.
2001-10-29 16:48:56 +00:00
Tor Lillqvist
06b4ef6517 Updates.
2001-10-29  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Updates.

	* gtk-zip.sh.in: New file, used to build distribution package for
	Windows.

	* gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
	applicable with GDKVAR.

	* gtk/gtk.def: Update.

	* gtk/gtkfilesel.c: Include <winsock.h> (if available) for
	gethostname().

	* gtk/gtkmain.c
	* gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
	entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
	GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
	g_win32_get_package_installation_subdirectory() with the actual
	DLL name saved above. Redefine above directory name macros to call
	these functions. Remove some ifdefs.

	* gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
	variable for export on Win32) also to the _vars file.

	Changes for autoconfiscated build on Win32, and addition of Win32
	backend to the related files:

	* configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
	when forming DLL name in some files. Set MS_LIB_AVAILABLE is
	lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
	PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
	win32 target, using pangowin32. Don't use the
	-export-symbols-regex option on Win32, we use .def files to list
	exported symbols. Check <winsock.h> (for gethostname() in
	gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
	prevent premature m4 expansion.

	* acconfig.h: Add HAVE_WINTAB.

	* gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
	macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
	MS_LIB_AVAILABLE, build MS import library. Install the import
	libraries. If HAVE_WINTAB, link with the Wintab library.

	* gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
	macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
	file. Install import libraries.
2001-10-29 07:06:37 +00:00
Tor Lillqvist
a53f14a6e3 New file, hand-written wrapper for the Wintab library.
2001-10-29  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
	Wintab library.

	* gdk/win32/gdkwin32.h
	* gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
	X11 headers better, and to enable gdkwin32.h to be installed and
	included from applications, but not the *-win32.h headers.

	* gdk/win32/*.c: Corresponding small changes, simplifications of
	#includes.

	* gdk/win32/gdkregion-win32.c: Remove.

	* gdk/win32/gdkevents-win32.c (print_event): Add GDK_SETTING.

	* gdk/win32/gdkfont-win32.c
	* gdk/win32/gdkgeometry-win32.c: Remove unused variables.

	* gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
	GDK_NONE values into hash table.

	Changes for autoconfiscated build on Win32, and addition of Win32
	backend to the related files:

	* gdk/win32/Makefile.am: Actually enable building the win32
	objects here, not just list all files in EXTRA_DIST. Link in the
	compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
	copy the Wintab library into the .libs directory.

	* gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
	name of the GDK DLL when fetching the icon. Use the HMODULE saved
	in gdk_dll_hinstance by DllMain.

	* gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
	build/win32/lt-compile-resource script.

	* gdk/win32/rc/gdk.rc.in
	* gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
2001-10-29 06:50:55 +00:00
Tor Lillqvist
47dc8d4dac Use -no-undefined on Win32. Make libgdk_pixbuf_1_3_la_OBJECTS depend on
2001-10-29  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am: Use -no-undefined on Win32. Make
	libgdk_pixbuf_1_3_la_OBJECTS depend on
	gdk-pixbuf-marshal.c. Install import libraries.

	* gdk_pixbuf.def: Update.

	* gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
	the actual DLL name of libgdk_pixbuf.
	(get_libdir): Use it instead of guessing.

	* io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
	g_file_open_tmp() insread of mkstemp().
2001-10-29 06:48:04 +00:00
Anders Carlsson
2933fbda25 Fix build.
2001-10-29  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkiconfactory.c (get_default_icons): Fix build.
2001-10-28 23:47:37 +00:00
Anders Carlsson
24277526fc Update struct member docs since they're gdouble now instead of gfloat.
2001-10-28  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtkadjustment.sgml: Update struct member docs
	since they're gdouble now instead of gfloat. Fixes #55699.
2001-10-28 22:11:10 +00:00
Hans Breuer
93f12bd6d4 static correct-ness, underscore prefixing of library internal functions
2001-10-28  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.c gdk/gdkevents.c
	  gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
	  gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
	  gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
	  gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
	  gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
	  gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
	  gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
	static correct-ness, underscore prefixing of library internal
	functions
	(applied the undisputed and the win32 part. Of the latter
	 I'm probably the one who will change it back again, if Owen
	 decides that the Gdk*Impl types should not be private to Gdk)

	* gdk/gdk.def : added the remaining exported functions
2001-10-28 21:28:51 +00:00
Matthias Clasen
a20c8a435e Forgotten file. 2001-10-28 21:20:25 +00:00
Matthias Clasen
c27900c3f6 Documentation updates.
* gtk/gtkcellrenderertoggle.c, gtk/gtkimcontextsimple.c,
        gtk/gtkimmulticontext.c, gtk/gtkimagemenuitem.c,
        gtk/gtkiconfactory.c, gtk/gtkwindow.c: Documentation updates.

        * docs/reference/gtk/tmpl/gtkmenuitem.sgml,
        docs/reference/gtk/tmpl/gtkmenu.sgml,
        docs/reference/gtk/tmpl/gtkmenushell.sgml,
        docs/reference/gtk/tmpl/gtkcontainer.sgml,
        docs/reference/gtk/gtk-sections.txt: Updates.
2001-10-28 21:15:36 +00:00
Anders Carlsson
48298c1d98 Remove note about coordinates in GdkPoint being 16-bit since they're
2001-10-28  Anders Carlsson  <andersca@gnu.org>

	* gdk/tmpl/regions.sgml: Remove note about coordinates in GdkPoint
	being 16-bit since they're 32-bit now. Fixes #62681.
2001-10-28 17:54:50 +00:00
jacob berkman
96462944bf do not call gtk_settings_get_default() here as that requires an X
2001-10-28  jacob berkman  <jacob@ximian.com>

	* gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
	gtk_settings_get_default() here as that requires an X connection
	(which breaks doc building with no X connection) and is not
	multihead safe
	(gtk_color_selection_init): delay palette loading until realize
	time
	(gtk_color_selection_realize): load the palette, and initialize
	the global palette if it hasn't been already

	* gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
	visual/cmap fields of klass->info since they are gone
	(gtk_preview_get_visual): just return gdk_rgb_get_visual ()
	(gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
	(gtk_preview_realize): don't set VISUAL and COLORMAP attributes

	* gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
	cmap fields
	(gtk_preview_get_visual):
	(gtk_preview_get_cmap): mark as deprecated

	* docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
	changes
2001-10-28 16:49:56 +00:00
Owen Taylor
1b6f92f885 un Oct 28 09:15:39 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimcontext.h (struct _GtkIMContext): Fixed
        structure to have GObject not GtkObject as
        parent_instance. (Jeff Franks.)
2001-10-28 14:17:49 +00:00
Tor Lillqvist
60794564c4 file gtk+-zip.sh was initially added on branch gtk-1-3-win32-production. 2001-10-28 00:54:12 +00:00
Matthias Clasen
5b10c877c1 Typo fix. Updates. Document the special values <none> and <parent> for
* gdk/x11/gdkinput.c: Typo fix.
        * gdk/tmpl/input_devices.sgml: Updates.
        * gtk/tmpl/gtkrc.sgml: Document the special values <none> and
        <parent> for bg_pixmap.
2001-10-27 20:41:05 +00:00
Tim Janik
ec0997df71 cosmetics 2001-10-27 17:49:27 +00:00
Havoc Pennington
f2a0104c19 Call update_im_spot_location here explicitly
2001-10-26  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
	update_im_spot_location here explicitly
	(gtk_text_view_reset_im_context): don't update the spot location
	here
2001-10-27 02:41:24 +00:00
Anders Carlsson
054b03a24d Clarify that the string argument in gtk_accel_label_new most be non-NULL.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtkaccellabel.sgml: Clarify that the string
	argument in gtk_accel_label_new most be non-NULL.
	This fixes #54826.
2001-10-27 01:32:26 +00:00
Anders Carlsson
aa6723e535 Clarify that a maximum length of 0 means infinity. This fixes #58771.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtkentry.sgml: Clarify that a maximum length
	of 0 means infinity. This fixes #58771.
2001-10-27 01:27:34 +00:00
Anders Carlsson
6a78fcb59f Fix typo in docs. This fixes #62942.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreemodel.c (gtk_tree_model_get): Fix typo in docs.
	This fixes #62942.
2001-10-27 01:23:22 +00:00
Anders Carlsson
89c00bf2c7 Finish a sentence. This fixes #56702.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtkhandlebox.sgml: Finish a sentence.
	This fixes #56702.
2001-10-27 01:21:14 +00:00
Anders Carlsson
0bd42134fe Clarify that we're returning a spin button in the _new function. This
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkspinbutton.c (gtk_spin_button_new_with_range):
	Clarify that we're returning a spin button in the _new function.
	This fixes #54097.
2001-10-27 01:17:38 +00:00
Anders Carlsson
28603e8b93 Clarify that we're returning a spin button in the _new function. This
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtkspinbutton.sgml: Clarify that we're
	returning a spin button in the _new function.
	This fixes #54097.
2001-10-27 01:16:09 +00:00
Anders Carlsson
db8ec24af0 Change docs for gtk_toolbar_append_item to say that it appends an item to
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtktoolbar.sgml: Change docs for
	gtk_toolbar_append_item to say that it appends an item
	to the end of a toolbar. This fixes #60428.
2001-10-27 01:03:15 +00:00
Owen Taylor
3921563833 fix typos in ChangeLog 2001-10-27 01:03:10 +00:00
Anders Carlsson
2e142b9d2f Remove gtk_tree_view_column_cell_event here too. 2001-10-27 01:01:09 +00:00
Owen Taylor
c860d735bd Oct 26 20:55:57 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST.
        Unfortunately, people apparently erroneously connect
        to ::clicked for GtkToggleButton and expect
        they know what happened in the default signal handler
        instead of appropriately connecting to notification
        signal ::toggled. When the revolution comes, such
        people will be first against the wall.

        We'll just have to go back to the old less-reliable
        set-it-back hacks for handling model-view toggle
        buttons and entries. :-(.
2001-10-27 00:59:51 +00:00
Owen Taylor
c226dd70fd Oct 26 11:54:53 2001 Owen Taylor <otaylor@redhat.com>
* */Makefile.am: Update to install images.
2001-10-27 00:54:26 +00:00
Anders Carlsson
d7d6a9668c Remove documentation for gtk_tree_view_column_cell_event since that
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/tmpl/gtktreeviewcolumn.sgml: Remove documentation for
	gtk_tree_view_column_cell_event since that function has been
	removed. This fixes #62084.
2001-10-27 00:48:55 +00:00
Hans Breuer
e2e6940366 to simplify parsing for exported functions: - made implementation
2001-10-27  Hans Breuer  <hans@breuer.org>

	* gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
	  gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
	  gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
	  gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
	  gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
	  gtk/gtktreestore.c gtk/gtkvbbox.c :
	to simplify parsing for exported functions:
	- made implementation signature static, when the local
	  prototype already was
	- put the functions return value on it's own line
	- added as space between the function name and the
	  opening bracket

	* gtk/gtk.def : added the remaining exported functions
2001-10-27 00:41:12 +00:00
Anders Carlsson
ed96ad827c Add note about width having to be greater than 0. This fixes #55574.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
	Add note about width having to be greater than 0. This fixes
	#55574.
2001-10-27 00:25:17 +00:00
Anders Carlsson
110970bfc6 Fix docs to say previous instead of next.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start):
	Fix docs to say previous instead of next.
	(gtk_text_iter_backward_word_start): Likewise.
	This fixes bug #62980.
2001-10-27 00:18:23 +00:00
Anders Carlsson
ac30b958c8 Change FALSE to TRUE in documentation for gdk_atom_intern, to document the
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gdk/tmpl/properties.sgml: Change FALSE to TRUE in
	documentation for gdk_atom_intern, to document the
	correct behavior. This fixes #58798.
2001-10-27 00:13:48 +00:00
Anders Carlsson
bb8ea8c470 Mention that the valid width is in range 0-65535 pixels. Fixes bug #56754.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkcontainer.c (gtk_container_set_border_width): Mention
	that the valid width is in range 0-65535 pixels. Fixes bug
	#56754.
2001-10-27 00:03:13 +00:00
Anders Carlsson
16f42cbdc1 Remove a dot in the documentation. Fixes bug #62632.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtksizegroup.c (gtk_size_group_set_mode): Remove
	a dot in the documentation. Fixes bug #62632.

This has got to be the most useful bug I have ever fixed :)
2001-10-26 23:47:38 +00:00
Anders Carlsson
2a8aab4f18 Ugh, broken pipe.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/gdkmain-x11.c: Replace int and guint with
	long and gulong in some places to make the code 64-bit
	clean.
	(_gdk_windowing_init_check): Replace gint with gulong.
	This patch was made by George Lebl and fixes bug #62113.
2001-10-26 23:43:32 +00:00
Anders Carlsson
dcb9a6e16e Replace int and guint with long and gulong in some places to make the code
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/gdkmain-x11.c: Replace int and guint with
	long and gulong in some places to make the code 64-bit
	clean.
	(_gdk_windowing_init_check): Replace gint with gulong.
	This patch was made by George Lebl and fixes bug #62113.
2001-10-26 23:43:16 +00:00
Anders Carlsson
78fca9fd05 Set up destroy signals so that all windows will be destroyed when one is.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* tests/testgtk.c
	(create_window_states): Set up destroy signals so that
	all windows will be destroyed when one is. This fixes
	bug #58133.
2001-10-26 23:37:21 +00:00
Anders Carlsson
dc0772a2b9 Don't set a fixed height on the hscale widget. This fixes "bug" #55840.
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* tests/testgtk.c (create_range_controls): Don't set a
	fixed height on the hscale widget. This fixes "bug"
	#55840.
2001-10-26 23:06:43 +00:00
Anders Carlsson
944104f392 Update GtkStyle since it's now a GObject and not a struct. This fixes
2001-10-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtk-sections.txt: Update GtkStyle since it's now a
	GObject and not a struct. This fixes #55807.

Thanks to Damon for helping me out with gtk-doc and finding the solution
to this bug.
2001-10-26 22:48:20 +00:00
Anders Carlsson
fdb66f1ab4 Create new "indent_expander" style property.
2001-10-26  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeview.c:
	(gtk_tree_view_class_init): Create new "indent_expander"
	style property.

	(gtk_tree_view_get_arrow_xrange): Add a tree argument
	to the function since the xrange can change depending
	on where in the tree we are.

	(coords_are_over_arrow): Update function call to
	gtk_tree_view_get_arrow_xrange.
	(gtk_tree_view_draw_arrow): Likewise.

	(gtk_tree_view_real_expand_collapse_cursor_row):
	Call real_{expand|collapse}_row, so that we'll have an
	animation.
2001-10-26 19:45:06 +00:00
Kristian Rietveld
ad29f522b5 fixed a small typo
Fri Oct 26 20:13:36 2001  Kristian Rietveld  <kristian@planet.nl>

        * tests/Makefile.am: fixed a small typo
2001-10-26 18:12:34 +00:00
Kristian Rietveld
d84a4acbb7 Anders Carlsson suggested to use G_N_ELEMENTS here
Fri Oct 26 18:27:11 2001  Kristian Rietveld  <kristian@planet.nl>

        * demos/gtk-demo/list_store.c (create_model): Anders
        Carlsson suggested to use G_N_ELEMENTS here
2001-10-26 16:31:01 +00:00
Sven Neumann
82c14f6f45 gtk/gtkbutton.[ch] fixed inline comments
2001-10-26  Sven Neumann  <sven@gimp.org>

        * gtk/gtkbutton.[ch]
        * gtk/gtkdnd.c: fixed inline comments

        * gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
2001-10-26 15:44:20 +00:00
Sven Neumann
5a6d127d7b gtk/gtkbutton.[ch] fixed inline comments
2001-10-26  Sven Neumann  <sven@gimp.org>

	* gtk/gtkbutton.[ch]
	* gtk/gtkdnd.c: fixed inline comments

	* gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
2001-10-26 15:41:46 +00:00
Jonathan Blandford
b1ea32b8a1 sync minor clenup 2001-10-26 14:44:27 +00:00
Hans Breuer
11e6236bec updated externals
2001-10-26  Hans Breuer  <hans@breuer.org>

	* gdk-pixbuf/gdk_pixbuf.def :
	* gdk/gdk.def :
	* gtk/gtk.def : updated externals

	* gdk/win32/gdkpixmap-win32.c : removed duplicate of
	gdk_window_lookup implementation. It already was in
	gdk/win32/gdkwindow-win32.c

	* gdk/win32/gdkproperty-win32.c : made it compile again
	after GdkAtom API change

	* gtk/gtk/makefile.msc.in : updated
2001-10-26 14:38:12 +00:00
Owen Taylor
ec30380628 Version 1.3.10, require GLib 1.3.10.
Wed Oct 24 11:36:33 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in (GTK_MICRO_VERSION): Version 1.3.10,
        require GLib 1.3.10.

        * NEWS: updates.
2001-10-25 21:07:53 +00:00
Jonathan Blandford
889d64b46e Add support for invalid nodes. (_gtk_rbnode_rotate_right): Ditto.
Thu Oct 25 16:27:29 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
	invalid nodes.
	 (_gtk_rbnode_rotate_right): Ditto.
	 (_gtk_rbtree_node_mark_invalid): New function.
	 (_gtk_rbtree_node_mark_valid): New function.

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
	GObject, not a GtkObject.
	(gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
	correct.
	(gtk_tree_model_sort_row_deleted): ditto.
	(gtk_tree_model_sort_{un,}ref_node): Fix.

	* gtk/gtktreeview.c: Protean incremental reflow support (commented
	out)

	* gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
	to const char *key.

	* gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
	Important 1 line fix to fix a lot of refcounting woes.
2001-10-25 20:32:40 +00:00
Matt Wilson
bbd503bc6c call gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
2001-10-25  Matt Wilson  <msw@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_destroy): call
	gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
	now invalidates) so that we remove our idle functions.
	(gtk_text_view_destroy_layout): remove the first_validate_idle as
	well.
2001-10-25 17:05:35 +00:00
Matt Wilson
2a3d5739ed remove conflict mark 2001-10-25 15:17:57 +00:00
Matt Wilson
d8bd40f744 the valid range for the 'indent' property is G_MININT to G_MAXINT. Don't
2001-10-25  Matt Wilson  <msw@redhat.com>

	* gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
	the 'indent' property is G_MININT to G_MAXINT.  Don't use
	-G_MAXINT for the minimum of the 'rise' property, use G_MININT
	instead.
2001-10-25 14:02:51 +00:00
Anders Carlsson
aa3a4f7e92 This ought to make msw happy since it fixes #62887.
2001-10-24  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktreeview.c:
	(gtk_tree_view_real_expand_row): add an animate argument
	(gtk_tree_view_real_collapse_row): likewise

	(gtk_tree_view_button_press), (gtk_tree_view_button_release),
	(gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
	(gtk_tree_view_collapse_row): update functions that call
	real_{expand|collapse}_row to set the animate argument
	accordingly.
2001-10-25 05:22:13 +00:00
Alex Larsson
b4187613f4 Update to new Pango APIs
2001-10-24  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkfont-fb.c:
	Update to new Pango APIs

	* gdk/linux-fb/gdkproperty-fb.c:
	Update to new GdkAtom APIs

	* gdk/linux-fb/gdkwindow-fb.c:
	Remove warnings
2001-10-24 23:41:12 +00:00
Jonathan Blandford
74b4914191 Fix docs, #62808
Mon Oct 22 20:07:21 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_prepend): Fix docs, #62808
2001-10-24 22:54:59 +00:00
Kristian Rietveld
c9e39b2a34 treat s_path as a child path
Wed Oct 24 22:54:07 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): treat
        s_path as a child path
2001-10-24 20:54:32 +00:00
Kristian Rietveld
beaba6a43c more changes in an attempt to get it right. It's not yet ready for general
Wed Oct 24 20:29:47 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodelsort.c: more changes in an attempt to get
        it right. It's not yet ready for general consumption.

        * tests/treestoretest.c: add a button and entry for the new
        iter_change function
        (iter_change): new function, to test
        the row_changed signal implementation of the GtkTreeModelSort

        * tests/testtreesort.c: cleanups, changes to test more features
        of the GtkTreeModelSort at once
2001-10-24 18:36:50 +00:00
Havoc Pennington
9b7d528ac2 remove hack to strip off the bogus newline, since we killed the bogus
2001-10-24  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
	remove hack to strip off the bogus newline, since we killed the
	bogus newline; fixes #61779
2001-10-24 17:51:56 +00:00
Havoc Pennington
87b1f40198 forgot to save ChangeLog after adding a phrase 2001-10-24 16:24:07 +00:00
Havoc Pennington
4e8cbdca6b don't create layout if we didn't have one (gtk_text_view_set_buffer):
2001-10-24  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
	create layout if we didn't have one
	(gtk_text_view_set_buffer): invalidate so we get the idle handlers
	as appropriate, avoids blanking the screen
	(gtk_text_view_invalidate): new function to do invalidation,
	containing old guts of invalidated_handler
2001-10-24 16:11:41 +00:00
Owen Taylor
679ca1ae86 Improve dreadful tooltips.
Wed Oct 24 10:29:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkalignment.c (gtk_alignment_class_init): Improve
	dreadful tooltips.
2001-10-24 14:30:39 +00:00
Owen Taylor
b7c639eafe Always set window->parent (except or the root window itself); if the
Tue Oct 23 17:31:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always
	set window->parent (except or the root window itself); if
	the window's parent is not a GdkWindow, or is a window of
        type GDK_WINDOW_FOREIGN, set window->parent to the root parent.

	* gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
	windows of type GDK_WINDOW_FOREIGN.
2001-10-24 14:15:50 +00:00
Stanislav Visnovsky
ec00283fca More updates.
2001-10-24  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

        * sk.po: More updates.
2001-10-24 12:12:10 +00:00
Havoc Pennington
da4a311279 if we move to the front of a segment, use the "slow" technique for moving
2001-10-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
	the front of a segment, use the "slow" technique for moving
	backward, so we don't mess up the any_segment field in the iter.
	Fixes #57707

	* tests/testtextbuffer.c: add code to detect #57707, to avoid
	regression
2001-10-24 04:48:21 +00:00
Havoc Pennington
fa4e7a31fd only sensitize Cut if selection contains some editable text, #60975
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (popup_targets_received): only sensitize Cut
	if selection contains some editable text, #60975
	(gtk_text_view_scroll_to_iter): remove warning about scrolling
	prior to map; it should actually be OK to do so in many cases,
	it would be nice to warn about scrolling when many lines have
	height 0, but I don't know what to do about that. Perhaps
	move part of flush_scroll into this function? comment added
	to consider this.
2001-10-23 23:35:00 +00:00
Havoc Pennington
60bec4dcaf oops, didn't quite compile. 2001-10-23 23:21:27 +00:00
Havoc Pennington
14cc0e8f77 Correctly keep the same text on the top of the screen, considering that
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (changed_handler): Correctly keep the same
	text on the top of the screen, considering that the changed region
	may have overlapped the first paragraph. Should fix msw's "text
	widget scrolled to wrong place on map" bug, and probably some
	other scrolling cases as well.
	(gtk_text_view_set_scroll_adjustments): start adjustments at 0.0,
	instead of some random value

	* gtk/gtktextview.c (gtk_text_view_class_init): actually override
	grab_focus, so #59708 is really fixed
2001-10-23 23:06:14 +00:00
Anders Carlsson
fd3196d9ed Use an image menu item here (popup_targets_received): Call
2001-10-24  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkentry.c: (append_action_signal): Use an image menu item here
	(popup_targets_received): Call append_action_signal with stock items

	* gtk/gtklabel.c: (append_action_signal): Use an image menu item here
	(gtk_label_do_popup): Call append_action_signal with stock items

	* gtk/gtktextview.c: (append_action_signal): Use an image menu item here
	(popup_targets_received): Call append_action_signal with stock items
2001-10-23 22:43:01 +00:00
Havoc Pennington
b6ba7a5f04 queue a resize here; will temporarily slow down the widget a lot, until we
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (changed_handler): queue a resize here; will
	temporarily slow down the widget a lot, until we figure out how to
	optimize to avoid full redraw everytime we queue a resize
2001-10-23 20:13:44 +00:00
Havoc Pennington
10f47690ea handle case where offset == 0 and char_len == 0, bug #61729
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (test_log_attrs): handle case where offset ==
	0 and char_len == 0, bug #61729
2001-10-23 19:31:56 +00:00
Havoc Pennington
85cdc1cec3 fix return value, #61714 (Vitaly Tishkov)
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (gtk_text_iter_forward_cursor_positions): fix
	return value, #61714 (Vitaly Tishkov)
	(gtk_text_iter_backward_sentence_starts): ditto
	(gtk_text_iter_backward_word_starts): ditto
	(gtk_text_iter_forward_word_ends): ditto
	(gtk_text_iter_forward_sentence_ends): ditto
	(gtk_text_iter_backward_cursor_positions): ditto
2001-10-23 19:19:10 +00:00
Havoc Pennington
9894b89bd9 Apply fix from Dov Grobgeld, #61858
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_pixel): Apply
	fix from Dov Grobgeld, #61858
2001-10-23 17:45:33 +00:00
Havoc Pennington
bd3b53c4c7 credit Hidetoshi 2001-10-23 17:26:57 +00:00
Havoc Pennington
cfcf83664b Update IM spot location at appropriate times, #50626
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
	Update IM spot location at appropriate times, #50626
2001-10-23 17:26:13 +00:00
Havoc Pennington
dceeec3521 remove conflict markers 2001-10-23 16:17:15 +00:00
Havoc Pennington
13a24b1b36 scroll to cursor on grab focus, unless it's caused by button click, #59708
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
	on grab focus, unless it's caused by button click, #59708
2001-10-23 16:07:05 +00:00
Owen Taylor
4e32ede287 Remove G_DISABLE_CONST_RETURNS.
Tue Oct 23 11:53:00 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (INCLUDES): Remove G_DISABLE_CONST_RETURNS.

	* gtk/gtkfontsel.[ch]: Make gtk_font_selection_get_font()
	G_CONST_RETURN. (Murray Cumming)

	* gtk/gtkfontsel.c (gtk_font_selection_dialog_get_preview_text):
	Make G_CONST_RETURN.

	* gtk/gtkfilesel.c (open_user_dir): Fix bug with freeing
	results of g_get_home_dir().

	* gtk/gtkfilesel.c: Make filesel->fileop_file a duplicated
	copy. Storing the return from gtk_entry_get_text() is evil.

	* gtk/gtkcombo.c gtk/gtkcellrenderertext.c gtk/gtkbindings.c
	gtk/gtkfilesel.c gtk/gtkfontsel.c gtk/gtkimmodule.c
	gtk/gtkobject.c gtk/gtkoldeditable.c gtk/gtktreedatalist.c
	gtk/gtksignal.c: Add const.

	* gdk/x11/gdkkeys-x11.c (get_direction): Add missing const.

	* gtk/gtktreeview.c: Namespace object data keys to be safe, even
	if we are setting them on private widgets.

	* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
	Duplicate entry->text before setting it as object data.
2001-10-23 16:02:23 +00:00
Havoc Pennington
0d5635b366 don't back up a char from the end iterator, fixes #61859 ("can't put
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
	up a char from the end iterator, fixes #61859 ("can't put cursor
	at the end of the buffer")

	* gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
	to work with delimiters other than newline.

	* tests/testtextbuffer.c: add some tests for get_chars_in_line,
	get_bytes_in_line

	* gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
	last line, since the newline is no longer counted.
	(gtk_text_iter_get_bytes_in_line): ditto
2001-10-22 23:35:03 +00:00
Tor Lillqvist
60ef9dd421 file makefile.msc.in was initially added on branch gtk-1-3-win32-production. 2001-10-22 23:27:19 +00:00
Tor Lillqvist
7487c03930 file gdk-1.3-win32-production.pc.in was initially added on branch gtk-1-3-win32-production. 2001-10-22 23:26:09 +00:00
Tor Lillqvist
7dbbd63487 file gtk+-1.3-win32-production.pc.in was initially added on branch gtk-1-3-win32-production. 2001-10-22 23:26:09 +00:00
Havoc Pennington
f2bf563dbd add assertion that #58290 would trigger if it reappeared, I think
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_insert): add assertion that
	#58290 would trigger if it reappeared, I think
2001-10-22 22:28:27 +00:00
Havoc Pennington
0a522533b0 add temporary code to dump btree contents on assertion failure described
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
	add temporary code to dump btree contents on assertion failure
	described in #62656

	* gtk/gtktextbtree.c (ensure_end_iter_segment): add some
	assertions that we're getting the right end iter segment

	* gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
	verify that we aren't on the end iterator after moving
	forward one segment - fixes return value in an obscure case.
	Also, some trivial code cleanup/rearranging.
2001-10-22 22:17:21 +00:00
Havoc Pennington
6446484667 add a #error unless you define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.h: add a #error unless you define
	GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally

        * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
2001-10-22 21:52:47 +00:00
Havoc Pennington
a959d3daf8 fix #62365
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix
	#62365
2001-10-22 21:28:08 +00:00
Havoc Pennington
347da0ea5f fix #62436
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_get_window_type): fix
	#62436
2001-10-22 21:06:55 +00:00
Havoc Pennington
c33d17189f Fix #62366
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix
	#62366
2001-10-22 21:05:28 +00:00
Owen Taylor
c8b58228d6 Add cursor-position, selection-bound properties. (#62148, reported by
Mon Oct 22 11:47:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c: Add cursor-position, selection-bound
	properties. (#62148, reported by Padraig O'Briain)

	* gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
	to cursor_position. (1.3.x addition, text_position is an awful
	name.) Make cursor_position read-only to avoid sticky questions
	of interaction with selection_bound. (#62636, reported by
	Padraig O'Briain)
2001-10-22 21:01:47 +00:00
Owen Taylor
92d2dc0ba6 Fixing popup menus to have "Paste" sensitized correctly. Original patches
Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>

	Fixing popup menus to have "Paste" sensitized correctly. Original
	patches from Damian Ivereigh, much mangled.

	* gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
	gtk_selection_data_targets_include_text(). (#60854)

	* gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
	the clipboard has text" function gtk_clipboard_wait_is_text_available.
	(#60854)

	* gtk/gtkentry.c: Only enable the paste item if the clipboard
	contains text. (#60973)

	* gtk/gtktextview.c: Only enable the paste item if the clipboard
	contains text. (#60975)
2001-10-22 20:47:01 +00:00
Havoc Pennington
8fe966936c rip out "height_lines" and "width_columns" properties, it doesn't make
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_class_init): rip out
	"height_lines" and "width_columns" properties, it doesn't make
	sense to set the size request on a text view really. #62103
2001-10-22 19:26:16 +00:00
Jonathan Blandford
12396ed1c5 Realized g_node_depth is broken, and that it's not worth being consistent
Mon Oct 22 15:17:05 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_iter_depth): Realized
	g_node_depth is broken, and that it's not worth being consistent
	with it.
2001-10-22 19:19:27 +00:00
Havoc Pennington
72e6566b0d Clarify behavior in docs, #61777 (gtk_text_iter_forward_search)
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
	docs, #61777
	(gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
	change the two boolean args to a flags field, so we can extend
	to add case insensitive, regexp searches later. #61852
2001-10-22 19:13:28 +00:00
Jonathan Blandford
6bf176c36d update docs to reflect reality, #62810
Mon Oct 22 15:07:17 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_iter_depth): update docs to
	reflect reality, #62810
2001-10-22 19:08:32 +00:00
Jonathan Blandford
dc754528a0 Remove handle_box from App demo.
Mon Oct 22 14:08:26 2001  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/appwindow.c: Remove handle_box from App demo.

	* gtk/gtktreeview.c (size_allocate): Move to a different drawing
	system.  Instead of having a window the size of the tree, we have
	a window the size of widget->allocation, and simply draw with the
	offset.
	(coords_are_over_arrow): ditto.  Move to window coordinates.
	(do_prelight): ditto
	(do_unprelight): ditto

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
	Minor fix from Kristian Rietveld to fix unsorted case.
2001-10-22 18:24:29 +00:00
jacob berkman
eb037279db don't cast a PIXTEXT cell to a PIXMAP cell (fixes crash when using PIXTEXT
2001-10-22  jacob berkman  <jacob@ximian.com>

	* gtk/gtkclist.c (cell_size_request): don't cast a PIXTEXT cell to
	a PIXMAP cell (fixes crash when using PIXTEXT cells)
2001-10-22 17:01:11 +00:00
Owen Taylor
0c6a8f530b Deprecate gtk_entry_set_editable. (#58768, Vitaly Tishkov)
Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
        (#58768, Vitaly Tishkov)

        * gtk/gtkobject.h: Deprecate with abandon.
        (#61942, Vitaly Tishkov, Matthias Clasen)

        * gtk/gtksignal.h: Deprecate everything.

        * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
        all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
        (#61942, Matthias Clasen)

        * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
        Havoc Pennington)

        * gtk/gtkitemfactory.h: Deprecate compat functions
        for GtkMenuFactory code. (#62071)

        * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
        gdk_draw_text,gdk_draw_text_wc. (#62071)

        * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
        Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
        to gtk_clipboard_get().
2001-10-22 14:31:06 +00:00
Owen Taylor
8937ca2626 Remove note about deprecation. (We've standard on G_CONST_RETURN rather
Sat Oct 20 18:35:21 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/tmpl/gtkentry.sgml (Note): Remove note about
        deprecation. (We've standard on G_CONST_RETURN
        rather than the reverse.) #58768, Vitaly Tishkov.
2001-10-22 14:28:37 +00:00
Owen Taylor
7da0a01b88 Don't call g_thread_init(), we don't want to link to -lgthread if we don't
Mon Oct 22 10:12:08 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c docs/Changes-2.0.txt (gdk_threads_init): Don't call
	g_thread_init(), we don't want to link to -lgthread if we don't
	have to.
2001-10-22 14:14:33 +00:00
Owen Taylor
97ff064f22 Add a function, gdk_threads_init() that must be explicitely called to
Mon Oct 22 08:51:02 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt:
	Add a function, gdk_threads_init() that must be explicitely
	called to enable the GDK thread mutex.
2001-10-22 12:59:21 +00:00
Jakub Steiner
3d3d570d77 stroke fix 2001-10-22 11:59:39 +00:00
Jakub Steiner
6320fa2a0e no body parts 2001-10-22 11:50:18 +00:00
Owen Taylor
46dde80428 Fix problem with g_return_if_fail return value.
Sun Oct 21 23:27:00 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
	problem with g_return_if_fail return value.

 	* gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the
	virtual atom code from the gdk-multihead branch, removing the per-display
	part. Virtualizing atoms needs to be done now to prevent compat
	breakage in direct Xlib accessing code in the future. (#62208)

 	* gdk/x11/gdkx.h: gdk/gdk/x11/gdkproperty-x11.c: Export
 	gdk_x11_xatom_to_atom, gdk_x11_atom_to_xatom().

	* gdk/gdktypes.h docs/Changes-2.0.txt: Make GdkAtom
	an opaque pointer type so the compiler catches attempts
	to mingle it with X atoms.

	* gdk/x11/{gdkdnd-x11.c,gdkevents-x11.c,gdkglobals-x11.c,
	  gdkkeys-x11.c, gdkmain-x11.c, gdkprivate-x11.c,
	  gdkproperty-x11.c, gdkselection-x11.c, gdkwindow-x11.c}
	  gtk/{gtkclist.c,gtkctree.c,gtkdnd.c,gtkplug.c,gtksocket.c}
	  tests/testdnd.c,tests/testselection.c:
	Fix up for above atom changes.

	* gdk/gdkselection.h (GDK_SELECTION_CLIPBOARD): Add, since we
	now have the ability to add custom predefines.

	* gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
	Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
	to gtk_clipboard_get().

	* gdk/win32/gdkproperty-win32.c: Add CLIPBOARD, fix up
	for GdkAtom => pointer change.

	* gdk/linux-fb/gdkproperty-fb.c: Fix handling of predefined
	atoms, fix for GdkAtom => pointer change.
2001-10-22 04:34:42 +00:00
Kristian Rietveld
724a552c7d remove ARROW_SIZE constant, use new function spin_button_get_arrow_size()
Mon Oct 22 00:26:46 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkspinbutton.c: remove ARROW_SIZE constant, use
        new function spin_button_get_arrow_size() instead.

        * gtk/gtkstyle.c (gtk_default_draw_arrow): actual size of
        arrow was hardcoded, it's now variable.

        Fixes bug #50200
2001-10-21 22:28:55 +00:00
Manish Singh
e952c4f45b eh, typo 2001-10-21 01:19:44 +00:00
Manish Singh
a53be4f328 PROP_MODEL and PROP_EXPANDER_COLUMN can be NULL, so don't do a object case
Sat Oct 20 18:16:04 2001  Manish Singh  <yosh@gimp.org>

        * gtk/gtktreeview.c (gtk_treeview_get_property): PROP_MODEL and
        PROP_EXPANDER_COLUMN can be NULL, so don't do a object case check
        for those
2001-10-21 01:18:42 +00:00
Owen Taylor
58b5405bd2 at Oct 20 19:38:16 2001 Owen Taylor <otaylor@redhat.com>
* demos/*.c demos/gdk-pixbuf/*.c: Eliminate gtk_signal_*
        in favor of g_signal_*, gtk_object_* in favor of
        g_object_*.
2001-10-20 23:39:32 +00:00
Keld Jørn Simonsen
88c9fe3815 Update based on norwegian
gtk+/po/da.po
2001-10-20 21:47:54 +00:00
jacob berkman
066d87f09d get them from $(top_srcdir)/gtk/stock-icons/ rather than
2001-10-20  jacob berkman  <jacob@ximian.com>

	* gtk/Makefile.am (HTML_IMAGES): get them from
	$(top_srcdir)/gtk/stock-icons/ rather than
	../../../gtk/stock-items/
2001-10-20 04:38:55 +00:00
Manish Singh
3690112009 since GtkIMContext derives directly from GObject now, we have to use the
Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>

        * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
        from GObject now, we have to use the g_object_* functions, not
        gtk_object_*.
2001-10-20 01:39:17 +00:00
Kristian Rietveld
24f99d6447 we probably have rows_reordered nailed down now (this code is not yet
Fri Oct 19 22:46:54 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodelsort.[ch]: we probably have rows_reordered
        nailed down now (this code is not yet ready for general consumption)
2001-10-19 20:53:08 +00:00
Manish Singh
a52d7cd409 correct docs for use_align
Fri Oct 19 13:44:51 2001  Manish Singh  <yosh@gimp.org>

        * gtk/gtktreeview.c (gtk_treeview_scroll_to_cell): correct docs
        for use_align
2001-10-19 20:46:43 +00:00
Owen Taylor
f00e0c4f51 Add gtkimcontextsimple.
Fri Oct 19 15:44:52 2001  Owen Taylor  <otaylor@redhat.com>

	*  gtk/Makefile.am gtk/gtk-sections.txt gtk/gtk-docs.sgml:
	Add gtkimcontextsimple.
2001-10-19 19:48:31 +00:00
Owen Taylor
e9f4d40258 Missed ChangeLog commit. 2001-10-19 19:47:37 +00:00
Owen Taylor
82998e6b4e Really remove GtkPacker. 2001-10-19 19:47:19 +00:00
Owen Taylor
5640ff3909 Export GtkIMContextSimple publically. (#61862)
Fri Oct 19 15:34:06 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk.h gtk/Makefile.am: Export GtkIMContextSimple publically. (#61862)
2001-10-19 19:46:49 +00:00
Owen Taylor
effa390541 Make GtkIMContext derive from GObject, not GtkObject. (#62621)
Fri Oct 19 15:08:30 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/{gtkimcontext.c,gtkimcontextsimple.c,gtkimmulticontext.c}
	modules/input/{gtkimcontextxim.c,imcyrillic-translit.c,iminuktitut.c,
	imipa.c,imthai-broken.c,imviqr.c}: Make GtkIMContext derive from
	GObject, not GtkObject. (#62621)
2001-10-19 19:28:27 +00:00
Matthias Clasen
fcc8790748 Forgotten in last commit 2001-10-19 17:57:26 +00:00
Matthias Clasen
5e38f49fb3 Switch to DocBook 4.1 (for the PNG notation).
* gtk/gtk-docs.sgml: Switch to DocBook 4.1 (for the PNG notation).

        * gtk/Makefile.am, gtk/tmpl/gtkstock.sgml: Add inlinegraphics for
        the stock icons.
2001-10-19 17:51:17 +00:00
Owen Taylor
b11cee8b3a Remove now useless include of unistd.h, fix wrong argument
Fri Oct 19 12:49:12 2001  Owen Taylor  <otaylor@redhat.com>

        * tests/testsocket.c: Remove now useless include of unistd.h,
        fix wrong argument gtk_socket_steal. (Hans Breuer, #58541)
2001-10-19 17:03:14 +00:00
Owen Taylor
061fec5841 Fix up for change to Pango font API. #61933. (Untested, even for
Fri Oct 19 12:24:32 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/linux-fb/gdkfont-fb.c: Fix up for change to
	Pango font API. #61933. (Untested, even for compilation.)
2001-10-19 16:26:09 +00:00
Owen Taylor
1da46404b7 Actually export gtk_disable_setlocale(). (Caught by Sven Neumann)
Fri Oct 19 11:24:58 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.[ch] (gtk_disable_setlocale): Actually
	export gtk_disable_setlocale(). (Caught by Sven Neumann)
2001-10-19 15:27:43 +00:00
Havoc Pennington
6537d7eba7 fix compilation
2001-10-18  Havoc Pennington  <hp@redhat.com>

	* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_lookup): fix compilation
2001-10-18 23:38:52 +00:00
Havoc Pennington
6e4f93735f Change button signals to GTK_RUN_LAST, #50239
2001-10-18  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkbutton.c (gtk_button_class_init): Change button signals
	to GTK_RUN_LAST, #50239
2001-10-18 23:23:34 +00:00
Hidetoshi Tajima
beb13fa4cc Support "*" for all locales with least priority when to select default im
* gtk/gtkimmodule.c (match_locale):
	Support "*" for all locales with least priority
	when to select default im module, #58201
2001-10-18 22:35:15 +00:00
Matthias Clasen
4e3ec88326 Resurrect 1.2 documentation. (#62604)
* gdk/tmpl/visuals.sgml: Resurrect 1.2 documentation. (#62604)

        * gtk/tmpl/gtkpaned.sgml: Fixes. (#62146)

        * gtk/tmpl/gtkgamma.sgml: Fixes. (#62155)

        * gtk/Makefile.am (IGNORE_HFILES): Add xembed.h (#61929)
2001-10-18 22:08:33 +00:00
Matthias Clasen
c9b4981ba4 Fix docs. (#61976)
* gtk/gtktreeselection.c (gtk_tree_selection_set_mode):
        Fix docs. (#61976)

        * gtk/gtkplug.c (gtk_plug_get_id) : Fix docs. (#62144)

        * gtk/gtkliststore.c: Fix docs. (#61672, #61675)
2001-10-18 22:05:23 +00:00
Matthias Clasen
73e845eeab Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup and
* gdk/gdkwindow.h, gdk/gdkpixmap.h, gdk/x11/gdkx.h,
        gdk/x11/gdkwindow-x11.c, gdk/x11/gdkpixmap-x11.c,
        gdk/win32/gdkwin32.h, gdk/win32/gdkwindow-win32.c,
        gdk/win32/gdkpixmap-win32.c, gdk/linux-fb/gdkfb.h,
        gdk/linux-fb/gdkwindow-fb.c, gdk/linux-fb/gdkpixmap-fb.c:
        Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup
        and gkd_pixmap_foreign_new to the gdk frontend api. (#62063)

        * gtk/gtkselection.c: Remove gdk backend dependencies. (#62063)
2001-10-18 20:23:17 +00:00
Matthias Clasen
65bcfc1165 Add GdkPixbuf, GdkPixbufAnimation and GdkPixbufAnimationIter. (#62590
* gdk-pixbuf/gdk-pixbuf.types: Add GdkPixbuf,
        GdkPixbufAnimation and GdkPixbufAnimationIter. (#62590

        * gtk/tmpl/gtkscrolledwindow.sgml: Replace GtkCList by
        GtkTreeView in example. (#62200)
2001-10-18 20:16:53 +00:00
Matthias Clasen
b75d0e8f38 Don't restrict the width of the spinbutton entry field to 10 digits.
* gtk/gtkspinbutton.c (gtk_spin_button_size_request):
        Don't restrict the width of the spinbutton entry field
        to 10 digits. (#58681)
2001-10-18 20:15:53 +00:00
Matthias Clasen
b7b2a5ca64 Don't dereference context when it may be NULL. (#62344)
* io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
        context when it may be NULL. (#62344)
2001-10-18 20:12:24 +00:00
Jonathan Blandford
1ca09bab96 new test program for the tree.
Thu Oct 18 14:58:14 2001  Jonathan Blandford  <jrb@redhat.com>

	* tests/testtreeflow.c: new test program for the tree.
2001-10-18 18:58:47 +00:00
Jonathan Blandford
c00349046a fix small bug reported by (Oleg Maiboroda), #62600
Thu Oct 18 14:22:10 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_remove): fix small bug
	reported by (Oleg Maiboroda), #62600
2001-10-18 18:39:36 +00:00
Michael Meeks
bf8e23e349 impl 'text' (gtk_entry_class_init): add the 'text' prop.
2001-10-18  Michael Meeks  <michael@ximian.com>

	* gtk/gtkentry.c (gtk_entry_set_property),
	(gtk_entry_get_property): impl 'text'
	(gtk_entry_class_init): add the 'text' prop.
	(gtk_entry_insert_text): notify 'text' changed.
	(gtk_entry_delete_text): ditto.
2001-10-18 00:53:04 +00:00
Matthias Clasen
a8fb1cf162 Documentation updates. Updates.
* gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c: Documentation updates.
        * gtk/tmpl/gtkdnd.sgml, gtk/tmpl/gtkclipboard.sgml,
        gdk/tmpl/general.sgml, gdk/tmpl/threads.sgml,
        gdk/tmpl/x_interaction.sgml: Updates.
2001-10-17 21:41:47 +00:00
Owen Taylor
2c281ef63b Fix mistake in truncating length of text to MAX_SIZE. (Found by Padraig
Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
	in truncating length of text to MAX_SIZE. (Found by
	Padraig O'Briain, #62055)
2001-10-17 19:20:15 +00:00
Owen Taylor
5d7d5eedd5 Rename ACTIVATE_MNEMONIC enum to MNEMONIC_ACTIVATE; signal was changed a
Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
        MNEMONIC_ACTIVATE; signal was changed a long time
        ago.

        * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale):
        Fix wrong return statement. (Reported by HideToshi
        Tajima and others.)

        * gtk/gtklabel.h (struct _GtkLabelClass): Remove
        left over select_all vfunc.
2001-10-16 23:28:45 +00:00
Matthias Clasen
4fc79615d0 Documentation. Spelling fixes.
* gdk-pixdata.c, gdk-pixdata.h: Documentation.
        * gdk-pixbuf-csource.1: Spelling fixes.
2001-10-16 21:18:10 +00:00
Owen Taylor
1ebe3b518b Add a utility function to translate coordinates relative to one widget's
Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
	a utility function to translate coordinates relative to
	one widget's allocation to coordinates relative to another
	widget's allocation.

	* gtk/gtkradiobutton.c: Add a special ->focus() implementation
	that:
	 - only accepts external focus if there is no active
   	   member of the group or the button is active.
	 - makes arrow keys move the active button as well
	   as the focus
	 - make tab tab out directly.
	This makes a radio button group act as a single focus location.
	(#53577).

	* gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
	it was only a small optimization that didn't matter and made
	things more complicated.

	* gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
	sorter for FOCUS_TAB as we did for the other focus directions,
	sort by center of widgets, not upper-left corner. (Shouldn't
	matter in general.)

	* gtk/gtkcontainer.c: Restructure code to remove duplicate code
	from the different types of focusing: encapsulate sorting the
	widgets for the focus direction into one routine
	(gtk_container_focus_sort()) and then share the work of moving the
	focus between the different focus directions.

	* gtk/gtkcontainer.c: Fix bug where arrow navigation might not
	work correctly with focus chains containing non-immediate
	children. Sorting was being done using allocation coordinates for
	each widget in the focus chain, and if there were intermediate
	window-widgets, these allocations would not be in the same
	coordinate system.
2001-10-16 21:02:24 +00:00
Jonathan Blandford
3612439d21 add a mnemonic_activate function to option menu.
Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
	mnemonic_activate function to option menu.
2001-10-16 19:45:34 +00:00
Jonathan Blandford
ba938d8ab5 Minor documentation fix 2001-10-15 18:06:50 +00:00
Murray Cumming
ea28741c46 Fixed signal marshaller in GtkToolbar. 2001-10-15 13:59:34 +00:00
Murray Cumming
0568c9d4f8 Fixed some parameter types in calls to g_signal_new(). 2001-10-15 13:52:13 +00:00
Stanislav Visnovsky
e0d818fb3c Updated Slovak translation.
2001-10-14  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2001-10-14 14:31:00 +00:00
Matthias Clasen
b3f2bac381 Update.
* gdk/tmpl/x_interaction.sgml: Update.
2001-10-13 18:55:01 +00:00
Valek Frob
119412b4af Updated russian translation., 2001-10-13 14:35:03 +00:00
Christophe Merlet
9f77ef2cea Updated French translation. 2001-10-13 08:08:00 +00:00
Tim Janik
cf9f0b7741 to compare pattern specs, use g_pattern_spec_equal() instead of direct
Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
        specs, use g_pattern_spec_equal() instead of direct field accesses.
        upon compressing two equal paths of the same type, the resulting
        priority has to be the maximum.
        * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
        GtkPathPriorityType enum and make it a macro.
2001-10-13 05:52:14 +00:00
Matthias Clasen
0511377235 Fix some doc comments.
* gtk/gtkwidget.c: Fix some doc comments.
2001-10-12 20:59:08 +00:00
Joshua N Pritikin
1d528b97ed Fix to work on empty models.
* gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
on empty models.
2001-10-12 18:39:14 +00:00
Matthias Clasen
524704cd43 Remove stale gdk backend includes.
* gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
        Remove stale gdk backend includes.
2001-10-11 20:37:51 +00:00
Michael Meeks
0093f90c65 add enable_empty and value_in_list properties.
2001-10-10  Michael Meeks  <michael@ximian.com>

	* gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
	and value_in_list properties.
	(gtk_combo_set_value_in_list): notify change.
	(gtk_combo_set_property, gtk_combo_get_property): impl. prop.
2001-10-11 06:14:46 +00:00
James Henstridge
7eb131fdf1 add AS=CC and ASFLAGS=CFLAGS substitutions so that gtk+ can be built with
2001-10-11  James Henstridge  <james@daa.com.au>

        * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
        that gtk+ can be built with automake 1.5 while not breaking
        things for automake 1.4.
2001-10-11 02:44:17 +00:00
Owen Taylor
ca9158fa03 Call setlocale (LC_ALL, ""). (#60606)
Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
	(#60606)

	* gtk/gtkmain.c (gtk_disable_setlocale): Add function
	to disable calling setlocale (LC_ALL, "").

	* gtk/gtkmain.c (gtk_set_locale): Indicate in the
	docs that this function is not typically useful.

	* gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}:
	Automatically initialize GDK for the current locale
	on gdk_init(). Don't reset locale to C when
	XSupportsLocale() fails.

	* gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
	useless checks for UTF-8 locale breakage that mattered
	only for X.

	* examples/calendar/calendar.c
	tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to
	gtk_set_locale().

	* gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
	gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
2001-10-10 21:54:25 +00:00
Matthias Clasen
82a3cc699d Updates.
* gtk/gtk-sections.txt, gtk/tmpl/gtkspinbutton.sgml,
        gtk/tmpl/gtkseparatormenuitem.sgml, gtk/tmpl/gtknotebook.sgml,
        gtk/tmpl/gtkstatusbar.sgml, gtk/tmpl/gtkradiobutton.sgml,
        gtk/tmpl/gtkradiomenuitem.sgml: Updates.

        * gdk-pixbuf/gdk-pixbuf-sections.txt,
        gdk-pixbuf/tmpl/gdk-pixbuf.sgml: Follow recent API changes.
2001-10-10 21:52:42 +00:00
Kristian Rietveld
0f05628cb3 cvs got a broken pipe signal, missed these two. ChangeLog is already there. 2001-10-10 19:21:41 +00:00
Kristian Rietveld
90d6349cd7 added gtk_tree_model_get_iter_from_string().
Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().

        Fixes bug #61904
2001-10-10 19:18:32 +00:00
Owen Taylor
dfb3a1b0f8 Call setlocale (LC_ALL, ""). (#60606)
Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
	(#60606)

	* gtk/gtkmain.c (gtk_disable_setlocale): Add function
	to disable calling setlocale (LC_ALL, "").

	* gtk/gtkmain.c (gtk_set_locale): Indicate in the
	docs that this function is not typically useful.

	* gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}:
	Automatically initialize GDK for the current locale
	on gdk_init(). Don't reset locale to C when
	XSupportsLocale() fails.

	* gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
	useless checks for UTF-8 locale breakage that mattered
	only for X.

	* examples/calendar/calendar.c
	tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to
	gtk_set_locale().

	* gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
	gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
2001-10-10 16:56:54 +00:00
Owen Taylor
63bd2b3030 Get rid of GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
Wed Oct 10 11:52:17 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixdata.c gdk-pixbuf.h: Get rid of
	GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
	Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
	existing UKNOWN_TYPE error. (#58308)

	* gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
	back to gdk_pixbuf_new_from_inline(). Rework docs to try
	and be helpful for the common case. (#58308)
2001-10-10 16:56:18 +00:00
Jonathan Blandford
57cc0e9556 new function, #61923 (gtk_tree_selection_path_is_selected): Ditto
Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
	new function, #61923
	(gtk_tree_selection_path_is_selected): Ditto
2001-10-10 05:35:12 +00:00
Matthias Clasen
b48389f36f Update.
* gtk/tmpl/gtkcalendar.sgml, gtk/tmpl/gtkeditable.sgml: Update.
2001-10-09 23:29:46 +00:00
Matthias Clasen
3fe0793934 Add entity for tmpl/inline.sgml.
* gdk-pixbuf/gdk-pixbuf.sgml: Add entity for tmpl/inline.sgml.

        * gdk-pixbuf/tmpl/inline.sgml: Update.

        * gtk/gtk-sections.sgml: Update.
2001-10-09 22:35:11 +00:00
Jonathan Blandford
36f914f02d We're a gobject, not a GtkObject. Thanks andersca.
Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
	not a GtkObject.  Thanks andersca.

	* gtk/gtkliststore.c (gtk_list_store_finalize): ditto
2001-10-09 22:24:23 +00:00
Jonathan Blandford
59b95e91e1 fix broken code.
Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_model_sort_column_changed): fix broken code.
2001-10-09 18:51:43 +00:00
Matthias Clasen
e7c7d9c141 s/succesfully/successfully/g
* gtk/gtkselection.c: s/succesfully/successfully/g
2001-10-08 21:54:18 +00:00
Matthias Clasen
7cdb0918b1 Update.
* gdk-pixbuf/gdk-pixbuf-sections.txt,
        gdk-pixbuf/Makefile.am, gdk-pixbuf/tmpl/creating.sgml: Update.

        * gdk-pixbuf/tmpl/inline.sgml: New file.
2001-10-08 21:25:33 +00:00
Havoc Pennington
d85ec9a062 remove unused enum
2001-10-08  Havoc Pennington  <hp@pobox.com>

	* demos/gtk-demo/stock_browser.c: remove unused enum

	* gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
	pass the current selection state of the node in to the user
	selection func
2001-10-08 05:01:09 +00:00
Matthias Clasen
b6c2df953d Update.
* gdk/tmpl/properties.sgml, gdk/tmpl/events.sgml,
        gdk/tmpl/regions.sgml, gdk/tmpl/general.sgml,
        gdk/tmpl/keys.sgml: Update.

        * gdk/gdk-overrides.txt, gdk/gdk-sections.txt: Remove nanox traces.
2001-10-07 18:59:46 +00:00
Fatih Demir
43406298dd Update. 2001-10-07 14:49:18 +00:00
Matthias Clasen
1cd6597604 add gtkimagemenuitem, gtksettings, gtkseparatormenuitem.
* gtk/gtk-docs.sgml: add gtkimagemenuitem,
        gtksettings, gtkseparatormenuitem.

        * gtk/tmpl/gtktreemodelsimple.sgml: remove unused file.
2001-10-06 22:53:49 +00:00
Matthias Clasen
42c85f3985 Replace reference to non-existent function gdk_x11_cursor_get_xid by
* gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to
        non-existent function gdk_x11_cursor_get_xid
        by gdk_x11_cursor_get_xcursor.
2001-10-06 21:50:12 +00:00
Jonathan Blandford
63973ab30a improve warning.
Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
	warning.

	* gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
	unref nodes, #okay61676

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
	to the property; no need to clear the other columns.  Also, we go
	to 'unsorted' if the model supports it.
2001-10-06 00:50:36 +00:00
Matthias Clasen
e9172bf4e3 remove GtkPacker.
* gtk/gtk-sections.sgml, gtk/objects_grouped.sgml: remove GtkPacker.
2001-10-05 21:26:48 +00:00
Sven Neumann
40c2926482 gdk-pixbuf/gdk-pixbuf-io.c gdk-pixbuf/gdk-pixbuf-private.h
2001-10-05  Sven Neumann  <sven@gimp.org>

	* gdk-pixbuf/gdk-pixbuf-io.c
	* gdk-pixbuf/gdk-pixbuf-private.h
	* gdk-pixbuf/gdk-pixbuf.c
	* gdk-pixbuf/gdk-pixbuf.h
	* gdk-pixbuf/io-jpeg.c
	* gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
	GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
	new public API gdk_pixbuf_get_option() to retrieve key/value pairs
	set by an image loader. Added support for saving and reading PNG tEXt
	chunks in PNG images.

	* demos/testpixbuf-save.c
	* demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk
	feature.

	* gdk-pixbuf/tmpl/gdk-pixbuf.sgml: adapt to changes in GDK_PIXBUF_ERROR
	enum.
2001-10-05 18:51:47 +00:00
Kristian Rietveld
58a5467a45 should destroy the search dialog
Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
        destroy the search dialog

        * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
        added check to prevent creation of a search dialog if there's
        already one around

        * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
        it instead of "search-dialog" (when getting/setting the search dialog
        widget).
2001-10-05 17:10:20 +00:00
Jakub Steiner
36fb7aa686 broken image icon 2001-10-05 16:01:11 +00:00
Havoc Pennington
00e738c142 fix GtkImage overview
2001-10-04  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtkimage.sgml: fix GtkImage overview
2001-10-05 01:53:04 +00:00
Havoc Pennington
ced7a5fd8e Fix #56586
2001-10-04  Havoc Pennington  <hp@pobox.com>

        Fix #56586

	* gtk/gtksettings.c (gtk_settings_class_init): move the F10
	accelerator setting here...

	* gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
	because we try to use it when a menu bar hasn't necessarily been
	initialized.
2001-10-04 06:48:09 +00:00
Havoc Pennington
739ffc4934 fix test case, it previously verified incorrect behavior
2001-10-03  Havoc Pennington  <hp@redhat.com>

	* tests/testtextbuffer.c (logical_motion_tests): fix test case,
	it previously verified incorrect behavior

        Fixes for #61565

	* gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
	off the end
	(_gtk_text_btree_get_iter_at_line_char): don't return lines off
	the end
	(_gtk_text_btree_get_iter_at_line_byte): don't return lines off
	the end
	(gtk_text_iter_forward_lines): if on the last line, move to end of
	it

	* gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
	don't return a line off the end
2001-10-04 00:22:13 +00:00
Kristian Rietveld
3c09d348d3 move insert_text and delete_text virtual functions to do_insert_text and
Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
        functions to do_insert_text and do_delete_text, add signals
        insert_text, delete_text and changed

        * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
        and changed. Updates to match new situation.

        * gtk/gtkspinbutton.c: updates to match new situation

        * gtk/gtkoldeditable.h: remove signals changed, insert_text
        and delete_text

        * gtk/gtkoldeditable.c: updates to match new situation

        * gtk/gtktext.c: updates to match new situation

        Fixes bug #59803
2001-10-03 21:50:58 +00:00
Havoc Pennington
77dc57e960 allow testing the end position
2001-10-03  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (test_log_attrs): allow testing the end
	position

	* gtk/gtktextbuffer.c (compute_log_attrs): update for pango
	changes

	* tests/testtextbuffer.c (logical_motion_tests): updates
2001-10-03 20:49:10 +00:00
Havoc Pennington
264afe83f8 forgot to save before previous commit; this adds the deprecation
of gdk_window_set_hints().
2001-10-03 20:00:18 +00:00
jacob berkman
b02befc6ff s/retrive/retrieve/
2001-10-03  jacob berkman  <jacob@ximian.com>

	* gtk/gtkwidget.c (gtk_widget_style_get_property):
	* gtk/gtkstyle.c (_gtk_style_peek_property_value):
	* gtk/gtksettings.c (apply_queued_setting):
	* gtk/gtkmain.c (gtk_init_check):
	* gtk/gtkcontainer.c (gtk_container_child_get_property):
	s/retrive/retrieve/
2001-10-03 19:48:55 +00:00
Jonathan Blandford
4fbfad6615 remove gtk_cell_editable_get_type
Wed Oct  3 15:09:18 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtk.types: remove gtk_cell_editable_get_type
2001-10-03 19:10:15 +00:00
Kristian Rietveld
ec0482015a forgot this one... 2001-10-03 18:30:45 +00:00
Kristian Rietveld
b5ad197761 preparation for surgery ditto
Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodelsort.[ch]: preparation for surgery
        * tests/testtreesort.c: ditto
2001-10-03 18:29:20 +00:00
Havoc Pennington
eacd03aef2 Throughout: assorted docs
2001-10-02  Havoc Pennington  <hp@redhat.com>

        Throughout: assorted docs

	* gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
	gdk_window_set_geometry_hints() should be used instead.

	* gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
	document them

	* gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
	seem to exist in any .c files

	* gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs,
	g_return_if_fail (pixel < colormap->size).
2001-10-03 18:19:48 +00:00
Owen Taylor
a8d54496fb Allow NUOL for @target_list to mean, use gtk_drag_dest_get_target_list
Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
	NUOL for @target_list to mean, use
	gtk_drag_dest_get_target_list (widget).

	* gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
	drop could hang when calling gtk_drag_finish with
	success == FALSE and del == TRUE.

	* gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
	drops without a matching target found would propagate
	to the parent widget rather than being rejected.

	* gtk/gtktextview.c (gtk_text_view_drag_data_received):
	Use text_view->dnd_mark instead of mark name to be
	consistent with the rest of the code.

	* gtk/gtktextview.c (gtk_text_view_drag_motion): Make
	pendantically correct for a drop-only-in-some-places
	widget. (Check whether you can insert in drag_drop,
	not just in drag_motion ... matters in theory, and
	for Motif drag and drop in practice.)

	* gtk/gtkentry.c (gtk_entry_drag_drop): Patch from
	Damian Ivereigh to not allow drops on non-editable
	entries. (#61124)

	* gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
	text to be moved from a non-editable entry.
2001-10-03 15:08:10 +00:00
James Henstridge
b8a10f46a9 s/width/fixed_width/ in order to get things to compile.
2001-10-03  James Henstridge  <james@daa.com.au>

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
        s/width/fixed_width/ in order to get things to compile.
2001-10-03 13:33:50 +00:00
Jonathan Blandford
f2f359089f docs
Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcelleditable.c: docs

	* gtk/gtktreemodel.h: more docs.
2001-10-03 04:44:13 +00:00
Havoc Pennington
230b35251a docs
2001-10-02  Havoc Pennington  <hp@redhat.com>

	* gdk/x11/gdkwindow-x11.c: docs

	* tests/testtextbuffer.c (logical_motion_tests): add sentence
	boundary tests

2001-10-02  Havoc Pennington  <hp@redhat.com>

	* gtk/tree_widget.sgml: s/empahsis/emphasis/

	* gtk/tmpl/gtkobject.sgml: update docs
2001-10-02 19:40:54 +00:00
Kristian Rietveld
ced4124efe add editable_cells.c, list_store.c and tree_store.c
Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>

        * demos/gtk-demo/Makefile.am: add editable_cells.c,
        list_store.c and tree_store.c

        * demos/gtk-demo/appwindow.c: remove tearoff item from
        File menu, put menubar and toolbar in handle boxes.

        * demos/gtk-demo/genincude.pl: various changes to support trees

        * demos/gtk-demo/main.c: various changes to support trees

        * demos/gtk-demo/stock_browser.c: changed name of demo
        to Stock Item and Icon Browser, so geninclude.pl doesn't see
        it as child

        * demos/gtk-demo/editable_cells.c: new file/demo
        * demos/gtk-demo/list_store.c: new file/demo
        * demos/gtk-demo/tree_store.c: new file/demo
2001-10-02 18:54:05 +00:00
Owen Taylor
ace5a03b9f Fix indentation use a macro to make code a bit more readable.
Tue Oct  2 11:29:50 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
        use a macro to make code a bit more readable.
2001-10-02 16:11:07 +00:00
Sven Neumann
92bcc743fa s/g_string_printfa/g_string_append_printf/ 2001-10-02 12:46:05 +00:00
Owen Taylor
ae29d8b9df g_string_printfa => g_string_append_printf.
Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c gtk/gtksettings.c:
	g_string_printfa => g_string_append_printf.
2001-10-01 20:35:02 +00:00
Jonathan Blandford
b41d6acd49 add a finalize and destroy handler.
Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
	and destroy handler.

	* gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963

	* gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
	'start_editing' flag to select_cursor_row.  Bug spotted by Manish
	Singh <yosh@gimp.org>.
2001-10-01 20:12:47 +00:00
Matthias Clasen
06a500881b Move standard gobject stuff to the 'Standard' sections. (#61483)
* gtk/gtk-sections.txt: Move standard gobject stuff to the 'Standard' sections. (#61483)
2001-10-01 18:59:53 +00:00
Matthias Clasen
4b83b73628 replace g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
* gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.

* gtk/gtkrc.c (gtk_rc_parse_any): here as well.
2001-10-01 18:23:32 +00:00
Jonathan Blandford
58ed9e8bef change scroll_to_cell delayed code to happen in size_allocate.
Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
	scroll_to_cell delayed code to happen in size_allocate.

	* gtk/gtkstyle.c (gtk_default_draw_expander): change
	prelight/normal arrow drawing.

	* gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate

	* gtk/gtktreestore.c: refactor.
2001-10-01 18:12:34 +00:00
Manish Singh
c6f15f385f Applied patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>

        * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
        patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
        centers the child in relation to the to indicator height.
2001-10-01 05:20:43 +00:00
Jonathan Blandford
916b161027 Make ITERS_PERSIST correct
Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST correct
2001-09-30 19:17:30 +00:00
CEST
f79770ca69 -)
Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>

    * gtk/gtkcellrenderertext.c I reverted back to old "weight" property code using g_param_spec_int
      and changed from g_value_get_enum to g_value_get_int instead.
      Probadly a better way to fix the problem :-)
2001-09-30 05:11:09 +00:00
CEST Mikael Hermansson
15af0d7c6a gtk/gtkcellrenderertext.c changed "weight" property type from
Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>

    * gtk/gtkcellrenderertext.c changed "weight" property type from
      g_param_spec_int to g_param_spec_enum.
2001-09-30 04:45:43 +00:00
Mikael Hermansson
6c546ffd82 gtk/gtkcellrenderertext.c changed "weight" property type from
* gtk/gtkcellrenderertext.c changed "weight" property type from
  g_param_spec_int to g_param_spec_enum.
2001-09-30 04:41:59 +00:00
Alexander Larsson
63ea4204ca Added build/win32/dirent/Makefile
2001-09-29  Alexander Larsson  <alla@lysator.liu.se>

	* configure.in:
	Added build/win32/dirent/Makefile
2001-09-30 04:12:26 +00:00
Manish Singh
d0ff4a3247 typo fix: s/Wether/Whether/ in reorderable property description
Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
        fix: s/Wether/Whether/ in reorderable property description
2001-09-29 19:29:46 +00:00
Fatih Demir
6055007300 Updated translations. 2001-09-29 11:12:09 +00:00
Michael Meeks
dfc470953e remove gtk_object_destroy comment as requested. 2001-09-28 00:45:39 +00:00
Jonathan Blandford
c1745a4bd2 only start editing when you select with a keyboard.
Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
	start editing when you select with a keyboard.

	(gtk_tree_view_button_press_event): much more graceful now.

	* gtk/gtkstyle.c: Draw togglebutton better.
2001-09-27 20:49:34 +00:00
Kjartan Maraas
8e11bf3981 Updated Norwegian (bokml) translation.
2001-09-27  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2001-09-27 11:43:12 +00:00
Havoc Pennington
1773d81558 add demo of passing non-stock label in to gtk_dialog_new_with_buttons
2001-09-26  Havoc Pennington  <hp@redhat.com>

	* demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
	of passing non-stock label in to gtk_dialog_new_with_buttons

	* gtk/gtktextview.c (cursor_blinks): disable cursor blink when
	debugging updates

	* gtk/gtktextiter.h: comment about how GtkTextIter struct contents
	are private

	* gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
	exist, fall back to mnemonic label, not plain label, bug #61184
2001-09-27 00:11:23 +00:00
Jonathan Blandford
4b6bc02f66 Stop being stupid and emitting the signal every time.
Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
	stupid and emitting the signal every time.

	* gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
2001-09-27 00:09:41 +00:00
Owen Taylor
b1fa175336 Fix a typo in the include guards. (#61254, Skip Montaro)
Wed Sep 26 18:08:19 2001  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am (s-enum-types-h): Fix a typo in the include
	guards. (#61254, Skip Montaro)
2001-09-26 22:09:28 +00:00
Owen Taylor
5e52436722 Sep 26 16:35:59 2001 Owen Taylor <otaylor@redhat.com>
Patch from Mark McLoughlin <mark@skynet.ie> (#61233)

       * contrib/gdk-pixbuf-xlib/Makefile.am: install
       gdk-pixbuf-xlib-2.0.pc.
2001-09-26 20:37:39 +00:00
Owen Taylor
0269b4387d Fix problem where menmonic wasn't removed properly when setting a label
Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
	problem where menmonic wasn't removed properly when
	setting a label when there already is a label.
	Also, handle setting the tab label back to the same
	value. (#61160, #61161)

	* gtk/gtkentry.c (paste_received): Patch from
        Damian Ivereigh to replace selection if there is
	one. (#61121)
2001-09-26 20:33:23 +00:00
Owen Taylor
849e688273 Add pot2bl.sed
Wed Sep 26 15:34:46 2001  Owen Taylor  <otaylor@redhat.com>

	* Makefile.in.in (distclean): Add pot2bl.sed
2001-09-26 20:32:41 +00:00
Stanislav Visnovsky
27f67c4517 Finished Slovak translation.
2001-09-26  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Finished Slovak translation.
2001-09-26 09:01:08 +00:00
Darin Adler
11fe4ce9f0 Ignore new test program.
* tests/.cvsignore: Ignore new test program.
2001-09-26 05:26:36 +00:00
Havoc Pennington
be6ae47ad2 fix for #50317
2001-09-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c: fix for #50317
2001-09-25 23:35:06 +00:00
Havoc Pennington
1a26412db8 use gtk_text_iter_can_insert
2001-09-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): use
	gtk_text_iter_can_insert

	* gtk/gtktextbuffer.c: use gtk_text_iter_can_insert

	* gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
	 (gtk_text_iter_can_insert): new function to fix #60282, should
	also fix msw's "can paste into empty buffer" bug.

	* gtk/gtktexttag.c (gtk_text_tag_event): change type check for
	"event object,"  #59091

	* gtk/gtktextbtree.c: indentation fixes

	* gtk/gtktextiter.c (find_by_log_attrs): fixes
2001-09-25 22:51:26 +00:00
Owen Taylor
0c3be55498 ue Sep 25 12:41:17 2001 Owen Taylor <otaylor@redhat.com>
* configure.in: Version 1.3.9, interface age 0, binary age 0.

	* configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.

	* NEWS: Updates.

Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
	function for drawing cursors between gtkentry/gtklabel/gtktextview.
	Should this be public? It has a bit of an odd interface, but
	custom editing widgets probably should be using it.
	Function will draw with wider width for taller cursors, and
	draws a little indicator arrow to indicate directoin for split
	cursors.

	* gtk/gtktextview.c: Add a "cursor_color" property.

	* gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
	gtk_text_layout_draw().

	* gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
	_gtk_draw_insertion_cursor().

Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
	the behavior where you could turn family_set (etc) back on
	and get back the values you had before.

	* demos/gtk-demo/stock_browser.c (id_to_macro): Use
	g_string_ascii_up() rather than looping through the
	string ourself.
2001-09-25 20:40:20 +00:00
Jonathan Blandford
efae27a3a5 Removed (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0,
Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_set_cell_renderer): Removed
	(gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.

	* gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
	Patch from Detlef Reichl
2001-09-25 19:38:18 +00:00
Havoc Pennington
5c15d1df28 Add tests for line separators, addresses bug #57428
2001-09-25  Havoc Pennington  <hp@redhat.com>

	* tests/testtextbuffer.c (line_separator_tests): Add tests for
	line separators, addresses bug #57428
2001-09-25 18:31:40 +00:00
Jonathan Blandford
92841cb95a Make a GtkCellEditable (get_widget_window_size): Change to let it honor
Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkentry.c: Make a GtkCellEditable
	(get_widget_window_size): Change to let it honor size_allocate
	when a CellEditable.

	* gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
	editable changes.
	(gtk_tree_view_set_cursor): Now you can set the cursor
	horizontally, as well as start editing.

	* gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
	code to look more like the other check buttons.

	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
	Change the way we calculate cell size.

	* gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.

	* demos/gtk-demo/sizegroup.c: Add mnemonics.

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
	Fix logic.

	* gtk/gtkcellrenderertext.c: Change to be editable.

	* gtk/gtkcellrenderertoggle.c: Change to be activatable.

	* test/testtreesort.c: Fix misspelling

	* test/testreecolumns.c: Add mnemonics.

	* test/testreeedit.c: New test program.
2001-09-25 16:44:39 +00:00
Stanislav Visnovsky
8a2d408dae More updates.
2001-09-25  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: More updates.
2001-09-25 10:51:41 +00:00
Havoc Pennington
b3b97e8b08 Put notes in gtk_window_set_has_frame(), etc. docs about how these are not
2001-09-25  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
	etc. docs about how these are not going to do what you want for
	the X/win32 ports. Futile attempt to avoid a FAQ...
2001-09-25 06:16:55 +00:00
James Henstridge
80e87c941f add marshal function types.
2001-09-24  James Henstridge  <james@daa.com.au>

	* gtk/gtkmarshal.list (VOID): add marshal function types.

	* gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
	GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
	GTK_TYPE_POINTER.
	(gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
	with no-op copy/free functions.

	* gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
	GtkCTreeNode get_type function.
2001-09-25 01:12:08 +00:00
Havoc Pennington
1e3b62fd13 Get rid of the newline-that-could-not-be-deleted; buffers may now be
2001-09-24  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
	gtktextlayout.c:
	Get rid of the newline-that-could-not-be-deleted; buffers may
	now be zero-length. Much easier to fix than expected, once
	I figured out the right way to do it. However, there are
	various subtle bugs introduced by this that will have to get
	sorted out. Please use bugzilla.
2001-09-24 23:12:39 +00:00
Owen Taylor
7837ddcde4 Don't wait for a response back from the window manager if our size hasn't
Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
	response back from the window manager if our size hasn't changed
	since we won't get a response back from the window manager;
	there was code in there to do this, but it was in the wrong
	place so if the hints change and the size didn't we'd expect
	a response.

	Also, optimize the position-only-changed case by running
	the resize queue immediately, and clean up some comments
	for the changes.
2001-09-24 20:41:05 +00:00
Owen Taylor
540f15dcce Add a compat macro that got lost.
Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.h: Add a compat macro that got lost.

        * gtk/gtktreestore.c: Doc fixes.

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
        leak for windows that receive events after being destroyed.
        (#60863, Joshua N. Pritikin)

        * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
        rather than gtk_container_queue_resize().

        * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
        gtk_container_queue_resize, gtk_container_queue_resize_widgets,
        gtk_container_child_composite_name. (#60217.)
2001-09-24 16:54:41 +00:00
Owen Taylor
1048e513e9 Updates for removed/renamed functions.
Mon Sep 24 12:43:45 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk-sections.txt: Updates for removed/renamed functions.
2001-09-24 16:54:19 +00:00
Fatih Demir
107fdcc21d Updated ta.po 2001-09-23 22:01:48 +00:00
Hans Breuer
b0c7f0ff5d fix compat macros for gtk_menu_<prepend|insert>
2001-09-22  Hans Breuer  <hans@breuer.org>

	* gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
2001-09-22 19:37:41 +00:00
Kristian Rietveld
be317eb291 weight value should be an int
Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
        weight value should be an int

Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkmenu.c (gtk_menu_select_item): move most code
        to gtk_menu_scroll_item_visible(). Only call
        gtk_menu_scroll_item_visible() if the menu widget has been
        realized. Fixes bug #55310.
2001-09-22 14:55:02 +00:00
Stanislav Visnovsky
b03796ed2f Updated Slovak translation.
2001-09-22  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Updated Slovak translation.
2001-09-22 14:11:06 +00:00
Havoc Pennington
bb209e1ef8 don't pass key press to IM context if cursor isn't in an editable
2001-09-21  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
	key press to IM context if cursor isn't in an editable location;
	bug #58425, patch from Hidetoshi Tajima
2001-09-22 00:08:18 +00:00
Havoc Pennington
b7eec02f2a Bug #60862
2001-09-21  Havoc Pennington  <hp@redhat.com>

        Bug #60862

	* gtk/gtktextbtree.c (gtk_text_btree_node_destroy):
	(_gtk_text_btree_unref): fix up mark memory management

	* gtk/gtktextmark.c (mark_segment_delete_func): ditto
2001-09-21 23:56:43 +00:00
Havoc Pennington
615b641ada don't try to handle alignment here, because it's done by PangoLayout after
2001-09-20  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
	try to handle alignment here, because it's done by PangoLayout
	after we set the layout width. Fix from Dov.
2001-09-21 23:39:21 +00:00
Hans Breuer
ed7aefc36a GtkRcStyle::parse has a GtkSettings parameter now. Pass it through
2001-09-21  Hans Breuer  <hans@breuer.org>

	* src/pixbuf-rc-style-c :  GtkRcStyle::parse has a GtkSettings
	parameter now. Pass it through theme_parse_file () to use it
	gtk_rc_find_pixmap_in_path ()

	* src/pixbuf-draw.c : the font field from GtkStyle is private
	now, use accessor gtk_style_get_font ()

	* makefile.msc : compile on win32, use it if you have a _real_
	fast computer or want to see gtk in slow motion :-)
2001-09-21 22:33:48 +00:00
Matthias Clasen
f3a65f61a9 io-xpm.c (xpm_extract_color): Rewritten to handle
xpm colormap entries more thoroughly. (#59939)
2001-09-21 21:39:42 +00:00
Hans Breuer
293d787783 updated externals
2001-09-21  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def :
	* gtk/gtk.def : updated externals

	* gtk/gtkmain.h : define get_gtk_win32_directoty ()
	* gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
	Also handle that Win32 pathes cann't be hard-coded

	* gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
	module, themes etc directory calculations

	* gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
	>16 bit right. The size limit within Win9x appears _not_ to be 32767
	but slightly smaller ...

	* gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid
	>16 bit clipping. Added dummy body for gdk_window_set_icon_list ()

	* gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()

	* gdk/win32/gdkevents-win32.c : some tweaking to get better expose
	handling. I'm not sure if it is better now, but at least not worse

	* gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup

	* gdk/win32/gdkwin32.h : reflect recent API restrictions
2001-09-21 19:58:35 +00:00
Hans Breuer
35953cae92 updated externals
2001-09-21  Hans Breuer  <hans@breuer.org>

	* gdk-pixbuf.def : updated externals

	* makefile.msc : generate gdk-pixbuf-enum-types.[hc]
2001-09-21 19:54:15 +00:00
Matt Wilson
65c0e1fe51 set radio_menu_item->group to NULL after removing it from the list, as it
2001-09-21  Matt Wilson  <msw@redhat.com>

	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
	radio_menu_item->group to NULL after removing it from the list, as
	it is no longer in the group. (#60869)

	* gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
2001-09-21 15:23:14 +00:00
Havoc Pennington
85b433515b add variables and checks for specific versions of dependencies. Previously
2001-09-20  Havoc Pennington  <hp@pobox.com>

	* configure.in (PANGO_REQUIRED_VERSION)
	(ATK_REQUIRED_VERSION): add variables and checks for specific
	versions of dependencies. Previously we didn't verify the
	Pango or ATk versions.

2001-09-09  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextiter.c: fool with indentation
	(gtk_text_iter_in_range): add g_return_if_fail
2001-09-21 14:23:15 +00:00
Joshua N Pritikin
bd30ca1884 Fix ref count on new tag to be 1. Update doc. (#60836)
* gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
	ref count on new tag to be 1.  Update doc.  (#60836)
2001-09-21 00:48:04 +00:00
Owen Taylor
405c3b090f On OSF, apparently fseek() works in some on-demand way, so the fseek
Thu Sep 20 17:22:48 2001  Owen Taylor  <otaylor@redhat.com>

	* io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
	works in some on-demand way, so the fseek gdk_pixbuf_new_from_file() doesn't
	work here since we are using the raw file descriptor. So, we call lseek()
	on the fileno(f) before using it. (#60840).
2001-09-20 21:24:19 +00:00
Owen Taylor
0989d8ed83 Remove unnecessary call to gdk_image_new_bitmap().
Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
	call to gdk_image_new_bitmap().
2001-09-20 21:05:45 +00:00
Owen Taylor
a1f5f7ee6c Use the current day, as well as the current month and year.
Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalendar.c (gtk_calendar_init): Use the current
	day, as well as the current month and year.
2001-09-20 19:35:08 +00:00
Owen Taylor
ea77d8d7dd Automatically set set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdialog.c (gtk_dialog_init): Automatically set
	set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
2001-09-20 19:16:03 +00:00
Kristian Rietveld
a35654e97d CVS got a broken pipe signal, the ChangeLog change has already been
checked in.
2001-09-20 16:50:46 +00:00
Kristian Rietveld
d6d27da1e4 get rid of it,
Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>

        * tests/testgtk.c (struct OptionMenuItem): get rid of it,

        (build_option_menu): add func argument, connect ::changed
        signal to option menu instead of connecting the ::activate
        signal to the menu items,

        (toplevel): get rid of RADIOMENUTOGGLED macro,

        (list_toggle_sel_mode), (clist_toggle_sel_mode),
        (ctree_toggle_line_style), (ctree_toggle_expander_style),
        (ctree_toggle_justify), (ctree_toggle_sel_mode),
        (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
        use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,

        (notebook_type_changed): merged standard_notebook(),
        notabs_notebook(), scrollable_notebook() and borderless_notebook()
        into notebook_type_changed()

        (create_list), (create_ctree), (create_notebook),
        (create_progress_bar): changed OptionMenuItem arrays into
        gchar * arrays. Removed "Extended" item where used.

        Fixes bug #59885
2001-09-20 16:45:41 +00:00
Sven Neumann
b728e2eaba configure.in gdk/Makefile.am gtk/Makefile.am gtk/gtkselection.c
2001-09-20  Sven Neumann  <sven@gimp.org>

	* configure.in
	* gdk/Makefile.am
	* gtk/Makefile.am
	* gtk/gtkselection.c
	* gtk/gtktreeview.c
	* gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
2001-09-20 16:31:21 +00:00
James Henstridge
6adbb34d52 same change as in pango, so that flags types are registered as flags
2001-09-20  James Henstridge  <james@daa.com.au>

	* Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
	so that flags types are registered as flags rather than enums (not
	that there are any flags here at the moment).
2001-09-20 15:41:20 +00:00
Owen Taylor
52dd93c400 Add a missing pango_layout_iter_free ().
Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
	a missing pango_layout_iter_free ().
2001-09-20 15:38:41 +00:00
Owen Taylor
483fca5e50 Small warning cleanups.
Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
        gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.

        * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
        the function definition so we don't accidentally rely on
        the compat #define from gtk_radio_menu_item_group.
        (#60782, Jeff Franks)
2001-09-20 15:08:00 +00:00
Kristian Rietveld
1e99d62d55 returned incorrect values for top, right and bottom due to cut-and-paste
Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
        incorrect values for top, right and bottom due to cut-and-paste
        bug. Pointed out by Vitaly Tishkov, fixes bug #59008
2001-09-20 14:53:04 +00:00
Owen Taylor
d9b794af77 Set _NET_WM_PID and WM_CLIENT_MACHINE properties on each window, not just
Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
	_NET_WM_PID and WM_CLIENT_MACHINE properties on each
	window, not just on the client leader. (#58463)
2001-09-19 22:09:17 +00:00
Owen Taylor
1513d3aa41 Add missing cast.
Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_new): Add missing cast.

	* gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
	non-public _gtk_menu_item_set_placement.

	* gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
2001-09-19 21:29:57 +00:00
Owen Taylor
5a2659c215 Fix propagated (flags && GDK_COLOR_WRITEABLE) typo. (#59723)
Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c
          gdk/linux-fb/gdkcolor-fb.c:
        Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
	(#59723)
2001-09-19 20:17:44 +00:00
Owen Taylor
32b708985d Allow -1 for width/height to mean "width/height of pixbuf" (Patch from
Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixbuf-render.c: Allow -1 for width/height
	to mean "width/height of pixbuf" (Patch from Matthias Clasen,
	#59723)
2001-09-19 20:13:16 +00:00
Owen Taylor
de24d6cd79 Patch from Frank Belew #59037 for Solaris compilation.
Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>

	Patch from Frank Belew #59037 for Solaris compilation.

	* gtk/maketypes.awk: Change syntax slightly for a call
	to sub(), apparently making awk on Solaris happier.

	* gtk/gtktreeview.c: Remove C++ comments.
2001-09-19 20:07:05 +00:00
Owen Taylor
2893ea15a0 Add xgettext:no-c-format comment to to handle '99% of the time. (#60473,
Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c: Add xgettext:no-c-format comment to
	to handle '99% of the time. (#60473, reported by Christian Rose)

	* gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
	which no longer exists. (#60379, reported by Vitaly Tishkov)
2001-09-19 19:51:54 +00:00
Kjartan Maraas
231bdf07a5 Updated Norwegian (bokml) translation.
2001-09-19  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2001-09-19 15:55:21 +00:00
Tim Janik
3a2027fbb6 Released 1.3.8.
Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>

        * Released 1.3.8.

        * gdk/Makefile.am: kill EXTRA_DIST clearing.
2001-09-19 10:37:56 +00:00
Tim Janik
45a5b3d890 Released 1.3.8.
Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>

        * Released 1.3.8.
2001-09-19 09:44:36 +00:00
Owen Taylor
69b6e3d63f Don't include gkd-pixbuf-features.h here since is in builddir and confuses
Wed Sep 19 00:28:24 2001  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am (gdk_pixbuf_headers): Don't include
        gkd-pixbuf-features.h here since is in builddir
        and confuses autogen rules.

        * Makefile.am: Don't += variables before they have values,
        automake-1.5 doesn't like it.

        * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.

        * Makefile.am: The whitespace strikes back.
2001-09-19 04:34:55 +00:00
Tim Janik
77886cc540 don't use BUILT_SOURCES as its broken in automake 1.4, add explicit object
Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>

        * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
        as its broken in automake 1.4, add explicit object rule to
        generate this.

        * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
        get rid of uneccessary stamps, group stuff more logically, and build
        sources due to object rules. fix srcdir!=builddir.
2001-09-19 02:10:45 +00:00
Owen Taylor
5a43a59ff3 Fix incorrect parameter to compute_double_length (#58680, patch from
Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix
        incorrect parameter to compute_double_length
        (#58680, patch from Matthias Clasen)

        Fixes for compilation with Forte cc. (#59734, Derek Rafter)

        * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.

        * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
        for GDK_RELEASE_MASK to avoid warnings with Forte.

        * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
        break; statements.
2001-09-19 00:58:09 +00:00
Alex Larsson
1a46d3d534 Don't draw with GTK_STATE_ACTIVE.
2001-09-18  Alex Larsson  <alexl@redhat.com>

        * gtk/gtkcheckbutton.c:
	* gtk/gtkradiobutton.c:
	Don't draw with GTK_STATE_ACTIVE.

	* gtk/gtkclist.c:
	* gtk/gtkctree.c:
	Draw lines between rows with base_gc[GTK_STATE_NORMAL].

	* gtk/gtktextdisplay.c:
	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
	unfocused with base_gc [GTK_STATE_ACTIVE].

	* gtk/gtkentry.c:
	Add select all menu-item.
	Default cursor color is red.
	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
	unfocused with base_gc [GTK_STATE_ACTIVE].

	* gtk/gtklabel.[ch]:
	Add keynav + menu to selectable lables.
	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
	unfocused with base_gc [GTK_STATE_ACTIVE].

	* gtk/gtkfilesel.c:
	Add drag and drop support.

	* gtk/gtkstyle.c:
	(This was checked in earlier)
	New default values for text/base SELECTED and ACTIVE
2001-09-19 00:49:52 +00:00
Tim Janik
07fd245421 up version to 1.3.8, interface age 0, binary age 0, depend on glib 1.3.8.
Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>

        * configure.in: up version to 1.3.8, interface age 0,
        binary age 0, depend on glib 1.3.8.

        * NEWS: 1.3.8 updates.
2001-09-18 23:44:32 +00:00
Jonathan Blandford
67ff460c0e remove conflict marker from ChangeLog 2001-09-18 23:00:32 +00:00
Jonathan Blandford
fa6e6928f6 centralize all the editing code
Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
	the editing code

	* gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
	reason to call it beyond emiting the two signals.

	* gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
	to GtkEntry.
2001-09-18 22:49:02 +00:00
Owen Taylor
a15d5c36f6 Fix up for changes to PangoFontDescription.
Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
	  gtk/gtktextview.c tests/testgtk.c: Fix up for changes to
	PangoFontDescription.

	* gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
	gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
	structure.

	* gtk/gtkfontsel.c: Fix up for new Pango font listing API.

	* gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
  	direct access to style->font. Deprecate gtk_style_ref/unref.

 	* gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
  	Remove gtk_style_ref/unref with g_object_ref/unref.

  	* gtk/gtkcalendar.c: Remove leftover macros accessing
  	style->font.

  	* gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
  	variable.

  	* gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of
	style->font.
2001-09-18 20:06:48 +00:00
Jonathan Blandford
c45ee0bf85 Get rid of broken "can_edit" and "can_activate" properties in favor of
Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
	"can_activate" properties in favor of
	GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
	and GTK_CELL_RENDERER_MODE_EDITABLE
2001-09-18 17:52:42 +00:00
Jonathan Blandford
f724f836ec Add put for use with editable widgets. This function is private, and
Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
	editable widgets.  This function is private, and should only be
	used by GtkTreeView.
2001-09-18 16:15:10 +00:00
Matt Wilson
cbae279486 don't use += before =
2001-09-18  Matt Wilson  <msw@redhat.com>

	* docs/Makefile.am (EXTRA_DIST): don't use += before =

	* docs/faq/Makefile.am (EXTRA_DIST): likewise

	* docs/tutorial/Makefile.am (EXTRA_DIST): likewise

	* gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
	(EXTRA_HEADERS): likewise

	* gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
	(EXTRA_HEADERS): likewise
	(EXTRA_DIST): likewise
	(CLEANFILES): likewise

	* gtk/stock-icons/Makefile.am (CLEANFILES): likewise

	* tests/Makefile.am (EXTRA_DIST): likewise

	* Makefile.am (install-data-local): changed to use
	install-data-hook, which runs after install-pkgconfigDATA, so that
	the pkgconfigdir will have been created and populated first.

gdk-pixbuf/ChangeLog

2001-09-17  Matt Wilson  <msw@redhat.com>

	* Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
	LDFLAGS definition, use the -avoid-version one.
	(libpixbufloader_tga_la_LDFLAGS): likewise
2001-09-18 13:26:52 +00:00
Jonathan Blandford
a251679148 Add editable interface. This should be the last big GtkTreeView API
Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcelleditable.[ch]: Add editable interface.  This should
	be the last big GtkTreeView API change.

	* gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
	replace with "activate" and "start_editing".  Also, added a
	"can_activate" and "can_edit" property.

	* gtk/gtktreeviewcolumn.c: modify to use above.
2001-09-17 21:44:20 +00:00
Owen Taylor
ef79a175b5 Mirror GdkInterpType to PixopsInterpType to avoid including gdk-pixbuf
Mon Sep 17 11:49:02 2001  Owen Taylor  <otaylor@redhat.com>

        * pixops/*: Mirror GdkInterpType to PixopsInterpType
        to avoid including gdk-pixbuf headers.
2001-09-17 15:53:59 +00:00
Alexander Larsson
9c7f0f8c2a Handle scroll wheel events.
2001-09-16  Alexander Larsson  <alla@lysator.liu.se>

	* gtk/gtkoptionmenu.c:
	Handle scroll wheel events.
2001-09-17 02:19:01 +00:00
James Henstridge
136d4776ec add generated files to ignore list.
2001-09-16  James Henstridge  <james@daa.com.au>

	* .cvsignore: add generated files to ignore list.

	* gdk-pixbuf.h: include gdk-pixbuf-enum-types.h

	* Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
2001-09-16 23:54:37 +00:00
Matthias Clasen
165e1833b1 io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
2001-09-14 22:15:54 +00:00
Matthias Clasen
49b3e05a30 Robustness fixes and test images for the jpeg, tiff, pnm, gif, xpm and tga
loaders.
2001-09-14 22:04:55 +00:00
Matthias Clasen
a5f9754350 demos/gtk-demo/main.c (setup_default_icon): Use a shaped
icon instead of one with ugly white background.
2001-09-14 21:24:57 +00:00
Matthias Clasen
33bb0bebf7 demos/gtk-demo/stock_browser.c (id_to_macro): make the uppercasing work. (#59550) 2001-09-14 21:21:28 +00:00
Christian Rose
0599df8a80 Updated Swedish translation.
2001-09-14  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2001-09-13 23:56:12 +00:00
Jakub Steiner
7699865092 road signs for error and question dialogs 2001-09-13 22:49:15 +00:00
Tim Janik
a96f9061d3 don't used BUILT_SOURCES to build marshal files, as in conjunction with
Fri Sep 14 00:30:48 2001  Tim Janik  <timj@gtk.org>

        * Makefile.am: don't used BUILT_SOURCES to build marshal
        files, as in conjunction with stamp files, this can
        lead to endless rebuilding loops.
2001-09-13 22:31:06 +00:00
Jakub Steiner
8b4c39766b more dialog icon changes 2001-09-13 10:00:05 +00:00
Jonathan Blandford
fc8304b134 Rename interface signals to make them more clear. Also, change
Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
	signals to make them more clear.  Also, change ::range_changed to
	::row_changed.
	* gtk/gtktreemodel.c: Adjust to interface change
	* gtk/gtktreemodel.h: ditto
	* gtk/gtktreemodelsort.c: ditto
	* gtk/gtktreestore.c: ditto
	* gtk/gtkliststore.c: ditto
	* gtk/gtktreeview.c: ditto
	* tests/testtreecolumns.c: ditto
	* gtk/gtkmarshal.list: Actually remove a marshaller!
2001-09-12 23:16:18 +00:00
Padraig O'Briain
15a544def8 gtk/gtktextview.c Add support for Ctrl+Up/Down arrow to move cursor to
* gtk/gtktextview.c
Add support for Ctrl+Up/Down arrow to move cursor to beginning
of previous/next paragraph. If within a paragraph cursor moves to
beginning of that paragraph.
2001-09-12 15:34:09 +00:00
Jakub Steiner
19fcc6be6b dialog icon fix-ups, arrow icons, font, refresh and others 2001-09-12 10:45:57 +00:00
Jakub Steiner
c642cb6a22 stock icon updates: question dialog, arrows 2001-09-12 09:46:53 +00:00
Owen Taylor
69915aa710 Implement a search path for GTK+ modules.
Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>

 	* gtk/gtkmain.c: Implement a search path for GTK+ modules.

 	* configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
 	in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
 	than in gtk-2.0/major.minor.micro/<type>/. This
 	works better for a search path for modules.

 	* gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
 	gtk_binary_version variable holding major.minor.(micro-binary_age).

 	* modules/input/Makefile.am (moduledir): Fix installation
 	directory to match change in lookup location.

 	* gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll
 	suffixes. Needs to be handled in g_module_build_path().

	* gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
	appropriate.
2001-09-11 20:24:40 +00:00
Jakub Steiner
13ff590365 oops, forgot to add those 2001-09-11 19:57:21 +00:00
Owen Taylor
40a16c822b Fixed reversed comparison causing RC properties not to work.
Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
	causing RC properties not to work.
2001-09-11 18:02:39 +00:00
Jakub Steiner
d442fe5755 more stock icons - warning dialog, error dialog, DnD 2001-09-11 12:49:53 +00:00
Joshua N Pritikin
4eece537a3 minor fixes 2001-09-11 04:27:53 +00:00
Tim Janik
91aa2d9234 slight fix for g_object_set() not usable for nesting anymore.
Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>

        * tests/testgtk.c (create_idle_test): slight fix for
        g_object_set() not usable for nesting anymore.

        * gtk/gtkhandlebox.c (gtk_handle_box_class_init):
        * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
        properties, supply ::shadow_type properties instead as most
        other widgets do.
2001-09-10 18:54:20 +00:00
Alexander Larsson
ff872aefee Forget gdkfont 2001-09-10 16:57:38 +00:00
Alexander Larsson
6d5bde5dcc Forgot gdkfont.c 2001-09-10 16:56:50 +00:00
Alex Larsson
1a69c439de Update to use the new g_boxed_type_register_static API.
2001-09-10  Alex Larsson  <alexl@redhat.com>

	* demos/gtk-demo/stock_browser.c:
	* gdk/gdkcolor.c:
	* gdk/gdkcursor.c:
	* gdk/gdkevents.c:
	* gdk/gdkrectangle.c:
	* gtk/gtktypeutils.c:
	Update to use the new g_boxed_type_register_static API.
2001-09-10 16:54:07 +00:00
Padraig O'Briain
63a9502159 Fix looping in gtk_tree_store_init() waiting for zero random int.
* gtk/gtktreestore.c:
Fix looping in gtk_tree_store_init() waiting for zero random int.
2001-09-10 15:37:03 +00:00
Tim Janik
e083ca9e45 fix xscale and yscale behaviour which havoc broke. they have to default to
Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
        behaviour which havoc broke. they have to default to 1.0 for
        expand behaviour.

        * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
2001-09-10 14:59:49 +00:00
Padraig O'Briain
57a49aae16 gtk/gtkstyle.c (_gtk_style_peek_property_value) Amend previous change to
* gtk/gtkstyle.c (_gtk_style_peek_property_value)
Amend previous change to avoid runtime error in g_param_spec_ref()
2001-09-10 12:23:49 +00:00
Owen Taylor
a14d0014a9 Fix blank line in the wrong place.
Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (insert_rc_property): Fix blank line
        in the wrong place.
2001-09-10 10:59:31 +00:00
Owen Taylor
ca004e1632 Don't do a lookup immediately after creating style->property_cache, since
Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
	do a lookup immediately after creating style->property_cache,
	since bsearch crashes on zero length for Solaris.
2001-09-10 10:54:43 +00:00
Alexander Larsson
ca8cf02089 2001-09-09 Alexander Larsson <alla@lysator.liu.se>
* gtk/gtkwidget.c (_gtk_widget_peek_colormap):
	Really return NULL if not set.
	(gtk_widget_init): Remove unused varaible.
2001-09-09 23:25:52 +00:00
Alexander Larsson
3230ecc213 Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer in cvs.
2001-09-09  Alexander Larsson  <alla@lysator.liu.se>

	* configure.in:
	Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
	in cvs.
2001-09-09 16:15:34 +00:00
Havoc Pennington
002d2b73cb move some of the accel group functions into a Private subsection
2001-09-08  Havoc Pennington  <hp@pobox.com>

	* gtk/gtk-sections.txt: move some of the accel group functions
	into a Private subsection

2001-09-08  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkaccelgroup.c: add docs to functions that I can imagine
	people might want to use
2001-09-08 20:40:58 +00:00
Havoc Pennington
9ddcb3e07e default xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
2001-09-08  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkalignment.c (gtk_alignment_class_init): default
	xscale/yscale to 0.0, not 0.5, 0.5 isn't useful

	* tests/testtextbuffer.c: fix usage of gtk_text_iter_spew

	* gtk/gtktextiter.c: fix docs
	(gtk_text_iter_spew): get rid of this

	* gtk/gtklayout.c: docs

	* gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
	to center image and label together, instead of having image on
	left and label centered, patch/suggestion from Jacob

	* gtk/gtkdialog.c: docs

2001-09-08  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtklayout.sgml: docs

	* gdk-pixbuf/gdk-pixbuf.sgml: remove the section on compiling
	gdk-pixbuf since it isn't a standalone package anymore

	* gtk/building.sgml: section on compiling GTK itself
2001-09-08 19:33:06 +00:00
Jonathan Blandford
9e1fc3a7ba Write documentation Write documentation
Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c: Write documentation
	* gtk/gtktreestore.c: Write documentation

Quick Documentation cleanup pass.
2001-09-08 18:23:47 +00:00
Owen Taylor
fd97e93165 Replace uses of GBSearchArray with GArray and bsearch(), to remove
Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
	with GArray and bsearch(), to remove dependency on a still
	evolving interface that we want to keep private to glib/gobject.
2001-09-08 17:55:02 +00:00
Havoc Pennington
372853b107 put GtkPacker back in here so it won't be in gtk-unused.txt, but don't put
2001-09-08  Havoc Pennington  <hp@pobox.com>

	* gtk/gtk-sections.txt: put GtkPacker back in here so it won't be
	in gtk-unused.txt, but don't put it back in gtk-docs.sgml.

	Tons of other additions from gtk-unused.txt, but mostly skipping
	all the tree stuff for now.

2001-09-08  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
	docs fixes

	* gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes

	* gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes

	* gtk/gtksocket.c (gtk_socket_steal): docs fixes

	* gtk/gtkscrolledwindow.h: docs fixes

	* gtk/gtkimage.c (gtk_image_new): docs fixes
2001-09-08 06:24:46 +00:00
Owen Taylor
f6d7585d00 Prevent a false alarm constness warning with a cast.
Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a
	false alarm  constness warning with a cast.

	* gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
	for the inside-gdk case.
2001-09-08 05:57:10 +00:00
Owen Taylor
1acc10a9af Remove a whole lot of duplicates introduced at some point, to prevent
Sat Sep  8 01:38:39 2001  Owen Taylor  <otaylor@redhat.com>

	* POTFILES.in: Remove a whole lot of duplicates
	introduced at some point, to prevent problems
        like the last.
2001-09-08 05:51:35 +00:00
Jonathan Blandford
92ed35d388 remove g_print.
Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
	remove g_print.

	* gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
	change models, #59899

Sat Sep  8 01:44:32 2001  Jonathan Blandford  <jrb@redhat.com>

	* POTFILES.in: missed one.
2001-09-08 05:50:44 +00:00
Havoc Pennington
ecc13fb5a5 remove CellRendererTextPixbuf
2001-09-08  Havoc Pennington  <hp@pobox.com>

	* gtk/gtk-docs.sgml: remove CellRendererTextPixbuf

	* gtk/resources.sgml: add section on mailing lists, bugzilla, etc.

	* gtk/tmpl/gtkaccelgroup.sgml: add long description

	* gtk/gtk-sections.txt: reorder accel group section; probably need
	to delete most of it

	* gtk/tmpl/gtkmain.sgml: Clean it up a little bit

	* gtk/gtk-docs.sgml: rearrange the list of "core/misc" sections so
	that useful things are near the top and stupid junk is near the
	bottom.

	* gtk/tmpl/gtkfeatures.sgml: fix/finish this section

	* gtk/gtk-docs.sgml: create a separate section for
	overview/tutorial material and special notes, and put the
	reference docs for the "misc non-widget" stuff into its own
	section.

	* gtk/compiling.sgml: write this section

	* gtk/gtk-docs.sgml: The intro section weirdly had two paragraphs
	that said the same thing. Delete one of them.
2001-09-08 04:39:53 +00:00
Darin Adler
8c884b53a8 Removed gtk/gtkcellrenderertextpixbuf.c since it's not around any more.
* POTFILES.in: Removed gtk/gtkcellrenderertextpixbuf.c
	since it's not around any more.
2001-09-08 02:10:00 +00:00
Havoc Pennington
162cabc796 tsk tsk, jrb broke the build
2001-09-07  Havoc Pennington  <hp@pobox.com>

	* gtk/gtk.h: tsk tsk, jrb broke the build
2001-09-08 01:38:28 +00:00
Jonathan Blandford
4a9a6249d0 Removed 'fill' attribute. It was silly b/c that was a property of the cell
Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
	Removed 'fill' attribute.  It was silly b/c that was a property of
	the cell renderer, anyway.
	(gtk_tree_view_column_render): Actually render the packed
	renderers.
	* doc/tree-column-sizing.txt: initial devel documentation.
	* gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
	* gtk/gtkcellrenderertextpixbuf.[ch]: removed.

	* tests/testtreefocus.c: fix up to reflect above changes.
	* tests/testtreeview.c: ditto
	* demos/gtk-demo/stock_browser.c: ditto
2001-09-08 00:56:30 +00:00
Alex Larsson
27401e1e46 Removed unused function.
2001-09-07  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkcolor-fb.c:
	Removed unused function.

	* gdk/linux-fb/gdkdrawable-fb2.c
	* gdk/linux-fb/gdkfont-fb.c:
	Use PangoLanguage functions.

	* gdk/linux-fb/gdkinput.c:
	* gdk/linux-fb/gdkselection-fb.c:
	Fix const warnings.

	* gdk/linux-fb/gdkwindow-fb.c:
	Fix warning. Implement gdk_window_set_icon_list() and
	gdk_window_get_frame_extents(). (No icon support yet though.)

	* gtk/gtkwindow.c (gtk_window_get_position):
	If window->frame is set get the extents of it instead.
2001-09-08 00:30:13 +00:00
Owen Taylor
6341c2f9a2 Make the default default colormap the GdkRGB colormap, not the system
Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_get_default_colormap):
	Make the default default colormap the GdkRGB colormap,
	not the system colormap.

	* gtk/gtkinvisible.c (gtk_invisible_init)
	  gtk/gtkwindow.c (gtk_window_init): Set the current
	colormap, as returned by _gtk_widget_peek_colormap()
	on the widget.

	* gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
	to GTK+. Make it return %NULL instead of the default
	colormap if no colormap has explicitely been pushed.

	* gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
	colormaps on ancestral widgets before defaulting the
	the system default colormap.

	* docs/Changes-2.0.txt: explain colormap changes.
2001-09-07 23:11:17 +00:00
Havoc Pennington
51d551786a add some lame code to handle G_MININT, fixes #57424
2001-09-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes
	#57424
2001-09-07 22:48:30 +00:00
Owen Taylor
a3914aaf10 Deprecate gdk_set/get_use_xshm, make gdk_set_use_xshm a noop. Remove
Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm,
	make gdk_set_use_xshm a noop. Remove --no-xshm command line
	option. If we aren't autodetecting properly, we need
	to fix the problem, or at least make it an environment
	variable setting, to avoid problems with propagating
	to embedded children, plugins, etc.

	* gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().

	* gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
	(gdk_pixbuf_render_pixmap_and_mask_for_colormap):
	New function to render a pixmap and mask for a particular colormap.

	* gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
	gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
	of internal implementation of the same.
2001-09-07 22:33:09 +00:00
Havoc Pennington
e8648181ed remove some debug code that seems to have caused a breakpoint in valid
2001-09-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
	debug code that seems to have caused a breakpoint in valid cases

	* gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
	pointer on the first view when adding the second view, fixes
	crash when closing gtk-demo text test with active selection

	* gtk/gtktextbuffer.c
	(gtk_text_buffer_remove_selection_clipboard): don't leave dead
	clipboards in the list of clipboards - probably fixes #59836
2001-09-07 22:32:02 +00:00
Owen Taylor
1bbf2ac7ee Make gdkx.h the only installed header from gdk/x11. All structures in
Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>

      Make gdkx.h the only installed header from gdk/x11.
      All structures in gdk/x11 are opaque.

	* gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
	Don't install gdk{drawable,pixmap,window}-x11.h.

	* gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c:
	Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11,
	GdkVisualClass into C files.

	* gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.

	* gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
	gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
	Add public functions to replace previously exported direct
	structure access.
	gdk_x11_colormap_get_{xdisplay,xcolormap}
	gdk_x11_cursor_get_{xdisplay,xcursor},
	gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual,
	gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
	gdk_x11_gc_get_{xdisplay,ximage}

	* gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
	GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.

      Fix a number of variables and functions that were exported
      "accidentally" from GDK.

	* gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
	gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit,
	gdk_input_exit,	gdk_windowing_exit, gdk_event_func, gdk_event_data,
	gdk_event_notify, gdk_queued_events, gdk_queued_tail,
	gdk_event_new, gdk_events_queue, gdk_events_unqueue,
	gdk_event_queue_find_first, gdk_event_queue_remove_link,
	gdk_event_queue_append, gdk_event_button_generate,
	gdk_debug_flags, gdk_default_filters, gdk_parent_root.

	* gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c,
	   gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
	gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks,
	gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
	gdk_use_xshm, gdk_input_ignore_core.

	* gdk/x11/xsettings-common.h (xsettings_list_insert): Add
	#defines to namespace functions into the private _gdk_
	namespace.

	* gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
	to replace gdk_parent_root exported variable. Adjust and
	deprecate GDK_ROOT_PARENT().

	* demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
	GDK_ROOT_PARENT usage, remove includes of port-specific
	headers.

	* gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for
	_gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core,
	gdk_input_devices, _gdk_input_windows, gdk_init_input_core.

	* gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
	docs/Changes-2.0.txt: Remove gdk_wm_protocols,
	gdk_wm_delete_window functions, gdk_wm_take_focus,
	use gdk_atom_intern() instead.

	* gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
	  gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h}
	  gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
	  gtk/gtkselection.c
        Unexport gdk_selection_property, just use
	gdk_atom_intern ("GDK_SELECTION").

	* gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}:
	Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type,
	GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate,
	GdkVisualprivate, gdk_x11_gc_flush.

      Make a number of public exports of variables into functions
      to increase encapsulation.

	* gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h
	gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer,
	move to gdkinternals.h. Add gdk_device_get_core_pointer ().

	* gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
	docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code,
	gdk_error_warnings.

	* gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
	  docs/Changes-2.0.txt:
	s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
	s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
	Add gdk_x11_get_default_xdisplay().

	* gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c
	win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c
	gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class,
	Don't export gdk_progclass, move --class command line
	option and handling to common portion of GDK.

      Miscellaneous fixes:

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
	g_return_val_if_fail that should have been g_return_if_fail.

	* gdk/gdkinternals.h gdk/gdkprivate.h: Move
	gdk_synthesize_window_state() to the semi-public gdkprivate.h.

	* gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
	X11 dependency.

	* gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO:
	Remove unused gdk_key_repeat_disable/restore.

	* linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c
	x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
	Remove unused gdk_null_window_warnings variable.

	* gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
	it can be retrieved from the repository; it is too far
	from functional to be worth having people check out;
	it would be easier to start from scratch, I suspect.

	* gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().

	* gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c
	gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c:
	Fix some accidentally global variables and unused global variables.

	* gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c
	gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c:
	Fix some accidentally global variables and unused global variables.

      Add some space for future expansion to multihead.

	* gdk/gdkdrawable.h: Add four reserved function pointers
	for future expansion of GdkDrawableClass.

	* gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
	where we can put a GdkScreen * later.
2001-09-07 21:50:20 +00:00
Havoc Pennington
f1427cd9bb update adjustments after validating destination yrange; fixes #53918 (This
2001-09-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_flush_scroll): update
	adjustments after validating destination yrange; fixes #53918
	(This may cause other issues, but I hope it won't)

2001-09-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
	line into start line, update the character counts in parent nodes;
	caused a bug when end and start line had different parent nodes.

2001-08-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
	assertion that tag is in a table
2001-09-07 21:39:18 +00:00
Matthias Clasen
d8e3d58d42 gdk/x11/gdkkeys-x11.c (get_direction): Don't call g_strcasecmp on NULL strings. (#59058) 2001-09-07 11:43:20 +00:00
Stanislav Visnovsky
9fccd2cca4 More translations.
2001-09-07  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: More translations.
2001-09-07 09:08:27 +00:00
Alex Larsson
bf882d4417 Use GtkType/GType instead of uint.
2001-09-06  Alex Larsson  <alexl@redhat.com>

	* gtk/gtkbin.c:
	* gtk/gtkfontsel.c:
	* gtk/gtkspinbutton.c:
	* gtk/gtktipsquery.c:
	Use GtkType/GType instead of uint.
2001-09-06 21:51:35 +00:00
Stanislav Visnovsky
13cba60622 Continued fixing of Slovak translation.
2001-09-06  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Continued fixing of Slovak translation.
2001-09-06 14:24:26 +00:00
Roy-Magne Mo
a926873e93 Updated Norwegian nynorsk translation 2001-09-05 23:35:38 +00:00
Ross Golder
6477c9cb1c Take DESTDIR into account in install/uninstall 2001-09-05 21:56:19 +00:00
Pablo Saratxaga
efe4c86bb3 updated Spanish file 2001-09-05 09:35:05 +00:00
Jonathan Blandford
93d8c11ef7 fix initial val for sort column.
Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
	sort column.

	* gtk/gtktreestore.c (gtk_list_store_init): ditto

	* gtk/gtktreesortable.c: add docs.
2001-09-04 22:15:18 +00:00
Owen Taylor
c9b26b3dc6 Version 1.3.7
Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>

        * Version 1.3.7

        * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove
        docs for gtk-config

        * modules/input/Makefile.am (install-data-local): Don't
        run gtk-query-immodules if DESTDIR is set.

        * NEWS: Various additions.
2001-09-04 16:07:05 +00:00
Tim Janik
f4ab7aa5eb updates for 1.3.7 release.
Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>

        * NEWS: updates for 1.3.7 release.

Tue Sep  4 03:09:52 2001  Tim Janik  <timj@gtk.org>

        * gdk-pixbuf-csource.1: new file, manual page for
        the publically installed gdk-pixbuf-csource utility.
2001-09-04 01:10:11 +00:00
Jonathan Blandford
43405a3d77 handle default sort feature
Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
	handle default sort feature

	* gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
	new function to handle default sort.
	(gtk_tree_sortable_has_default_sort_func): check if default sort
	is set.

	* gtk/gtkliststore.c (gtk_list_store_set_default_sort_func):
	handle default sort feature
2001-09-03 23:37:39 +00:00
Stanislav Visnovsky
8249e6275a Started fixing Slovak translation.
2001-09-03  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* sk.po: Started fixing Slovak translation.
2001-09-03 15:44:09 +00:00
Jonathan Blandford
92c0936ffa patch from vishnu@pobox.com (Joshua N Pritikin) to fix math and an
Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
	vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
	#59731
2001-09-03 08:41:06 +00:00
Jonathan Blandford
b5ea25c500 Patch from vishnu@pobox.com (Joshua N Pritikin) to emit signal at the
Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
	vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
	time, #59727

	* gtk/gtkbutton.c (gtk_button_update_state): Get depressed
	correctly.
2001-09-03 06:45:17 +00:00
Kwok-Koon Cheung
c4043e2307 Usual update. 2001-09-03 03:07:31 +00:00
Owen Taylor
ec8444ed3a Set current serial so that we don't eternally update the keymap after we
Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
	so that we don't eternally update the keymap after we
	get a change notification.

	* gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
	incorrect cast.
2001-09-03 01:43:53 +00:00
Kristian Rietveld
109cda6bd2 much changes in an attempt to make it working. It mostly works now,
Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
        it working. It mostly works now, although there're still a few issues
        to be worked out.

        * tests/testtreesort.c (main): changes to have a better test
        application for the GtkTreeModelSort.
2001-09-02 21:47:12 +00:00
Kristian Rietveld
9a4b995b8e code cleaup, fix for bug #59222.
Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
        fix for bug #59222.

        * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
        gpointer search_data argument to function definition and
        prototype, to match GtkTreeViewSearchEqualFunc typedef.
2001-09-02 21:20:45 +00:00
Kristian Rietveld
d9e18f0a2f add warnings per jrb's request.
Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
        per jrb's request.
2001-09-01 20:56:41 +00:00
Jonathan Blandford
140a63234e pass in user data.
Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.

	* gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
2001-09-01 04:14:25 +00:00
Owen Taylor
b97a0a452f Instead of always mirroring the selection to a single PRIMARY selection,
Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard):
        Instead of always mirroring the selection to a single PRIMARY
        selection, allow it to be mirrored to any number of clipboards.

        * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove,
        just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.

        * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
        GtkClipboard argument, and for paste_clipboard, the
        @override_location argument from @paste_primary.

        * gtk/gtktextview.c: Adapt to above change.
2001-08-31 01:33:11 +00:00
Jonathan Blandford
d5f469987b Fix obvious mistake.
Thu Aug 30 19:34:38 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/tmpl/gtkdialog.sgml: Fix obvious mistake.
2001-08-30 23:36:26 +00:00
Yukihiro Nakai
537156501b Update japanese translation 2001-08-30 22:45:01 +00:00
Yukihiro Nakai
550613adb4 Update Japanese translation. 2001-08-30 22:26:42 +00:00
Havoc Pennington
1f32643ad0 put validate idle at resize - 2 just for flexibility
2001-08-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (invalidated_handler): put validate idle at
	resize - 2 just for flexibility
2001-08-30 22:01:04 +00:00
Havoc Pennington
5137409a90 handle NULL shaped object from the empty-child-anchor case by drawing a
2001-08-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
	object from the empty-child-anchor case by drawing a little box.

	* gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
	if the child anchor has no anchored widgets - fixes #59328.

	Also, remove bizarre deletion of preedit string that seems to have
	gotten in here somehow.
2001-08-30 19:09:09 +00:00
Havoc Pennington
181cacbfea apply fix to #58420 from Hidetoshi Tajima and Matthias Clasen
2001-08-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
	to #58420 from Hidetoshi Tajima and Matthias Clasen
2001-08-30 16:32:34 +00:00
Matthias Clasen
5021904329 gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
errors from gdk_pixbuf_loader_load_module.
2001-08-30 07:23:32 +00:00
Matthias Clasen
29c0d6fa32 io-png.c (png_row_callback): Check that row_num is valid. 2001-08-30 07:21:13 +00:00
Jonathan Blandford
97d9916904 change color when the GtkTreeView loses focus.
Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
	change color when the GtkTreeView loses focus.

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
	ditto.

	* gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
2001-08-29 21:30:20 +00:00
Havoc Pennington
aa4298ee70 fix g_object_notify
2001-08-28  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
2001-08-29 02:45:24 +00:00
Havoc Pennington
9df0074685 add default icon
2001-08-28  Havoc Pennington  <hp@pobox.com>

	* demos/gtk-demo/main.c (setup_default_icon): add default icon

	* gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
	warning fix
	(gtk_radio_button_new_with_label): warning fix

	* gtk/gtkdnd.c: used some random GtkImage private structs,
	update to reflect GtkImage changes

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
	whether the hint is supported, just always set the icon. A task
	list might want to use it even if the WM doesn't, and the WM may
	change over time. Also, XDeleteProperty() if list == NULL.

	* gtk/gtkwindow.c (gtk_window_set_icon_list)
	(gtk_window_get_icon_list)
	(gtk_window_set_icon)
	(gtk_window_get_icon)
	(gtk_window_set_default_icon_list)
	(gtk_window_get_default_icon_list):
	new functions

	* gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet

	* gtk/gtkimage.c: Implement property support, bug #59408

	* gtk/gtkcontainer.c (gtk_container_add): make the warning message
	on reparent-without-removing-first a bit more helpful.
	Let's just destroy this FAQ.
2001-08-29 02:20:02 +00:00
Matthias Clasen
3921a79118 demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
2001-08-28 20:31:16 +00:00
Matthias Clasen
7f39896945 io-bmp.c (OneLine): Emit area_updated signal with proper
area information. (#52002)
2001-08-28 19:59:42 +00:00
Matthias Clasen
2ffa754083 gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
of use_text_format to the end of the function. (#56447)
2001-08-28 19:54:52 +00:00
Matthias Clasen
a0c65ec21b *** empty log message *** 2001-08-28 19:08:53 +00:00
Matthias Clasen
61223e291d gdk-pixbuf/test-loaders.c (test_loader): Catch errors at close time.
gdk-pixbuf/test-loaders.c (main): Remove C++ comments.
demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
only in response to an area_prepared signal.
2001-08-28 19:06:58 +00:00
Alex Larsson
306d137756 Make unrealize GTK_RUN_LAST.
2001-08-28  Alex Larsson  <alexl@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_class_init):
	Make unrealize GTK_RUN_LAST.
2001-08-28 16:43:28 +00:00
Manish Singh
4710829798 fix silly cut'n'paste error, with_label and with_mnemonic should create
Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>

        * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
        with_label and with_mnemonic should create radio buttons, not
        check buttons
2001-08-28 05:05:53 +00:00
Jonathan Blandford
5d9166f15b Fix to use GtkSelectionMode. ditto ditto ditto.
Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>

	* tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
	* tests/treestoretest.c (make_window): ditto
	* demos/gtk-demo/main.c (create_tree): ditto
	* demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
2001-08-27 19:42:08 +00:00
Jonathan Blandford
892496c8e7 Use the GTK selection types rather than GtkTreeSelectionMode.
Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
	GTK selection types rather than GtkTreeSelectionMode.

	* docs/Changes-2.0: Add comment about selection change.
2001-08-27 19:19:24 +00:00
Jonathan Blandford
d70c0b4077 deprecate GTK_SELECTION_EXTENDED.
Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkenums.h (GtkSelectionMode): deprecate
	GTK_SELECTION_EXTENDED.

	* gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
	Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.

	* gtk/gtkctree.c: ditto

	* gtk/gtklist.c: ditto

	* gtk/gtktree.c: ditto
2001-08-27 18:25:49 +00:00
Owen Taylor
28c7dd4d42 Fix a cuple of typos in compat macros. (#59624, Skip Montaro)
Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
	of typos in compat macros. (#59624, Skip Montaro)
2001-08-27 18:22:31 +00:00
Owen Taylor
807c619d82 Use autoconf 2.13/2.50 compat macro.
Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
	macro.

         (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)

	* gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
	interface to be a standard setter from gtk_menu_item_right_justify.
	(gtk_menu_item_get_right_justified): a getter to go with the setter

	* gtk/gtkmenuitem.h: Add a deprecated compat macro for
	gtk_menu_item_right_justify.

	* demos/gtk-demo/menus.c tests/testgtk.c: Switch to
	gtk_menu_item_set_right_justified.
2001-08-27 15:17:51 +00:00
Jens Finke
b5857e558b Mon Aug 27 2001 Jens Finke <jens@gnome.org> - Renamed package to gtk2. -
* Mon Aug 27 2001 Jens Finke <jens@gnome.org>
- Renamed package to gtk2.
- Updated source url.
- glib2 package required.
2001-08-27 14:36:50 +00:00
Fatih Demir
998133fcfc Arg, why does evolution now work when you need it? I guess, it's Murphy's Law. 2001-08-27 10:36:37 +00:00
Jens Finke
320991ef35 Updated to match gpp requirements, reworked the files section to make it
2001-08-27  Jens Finke <jens@gnome.org>

	* gtk+.spec.in: Updated to match gpp requirements, reworked the
	files section to make it work with 1.3.x releases.
2001-08-27 08:54:53 +00:00
Alexander Larsson
f9e666244f Add properties for labels, mnemonics and stock items. Added C accessor
2001-08-26  Alexander Larsson  <alla@lysator.liu.se>

	* gtk/gtkbutton.[ch]:
	Add properties for labels, mnemonics and stock items.
	Added C accessor functions for the properties.
	Removed deprecated button->child.

	* gtk/gtkradiobutton.c:
	* gtk/gtktogglebutton.c:
	Update to use the functions in GtkButton.

	* gtk/gtkcheckbutton.c:
	Update to use the functions in GtkButton.
	Changed size allocation of child. Now only gets as much
	space as it requests.

	* gtk/gtkclist.c:
	Don't use GtkButton->child

	* gtk/gtklabel.c:
	Fixed typo in docs
2001-08-27 01:05:07 +00:00
Kwok-Koon Cheung
8d00215d9e Disable a string because of gettext error. 2001-08-26 22:33:13 +00:00
Alexander Larsson
9176be34d5 Ressurect the properties test. I don't care if it is inferior, I just want
2001-08-26  Alexander Larsson  <alla@lysator.liu.se>

	* tests/testgtk.c:
	* tests/Makefile.am:
	Ressurect the properties test.
	I don't care if it is inferior, I just want to test my property code.
2001-08-26 22:23:28 +00:00
Chema Celorio
e0e34e59ea pass ->nrows to gtk_table_resize as the first argument for
2001-08-25  Chema Celorio  <chema@celorio.com>

	* gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
	gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
	and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
2001-08-26 04:01:27 +00:00
Havoc Pennington
eae09f4d83 remove gtk_menu_* compat defines; these are already in gtkmenu.h, and the
2001-08-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkcompat.h: remove gtk_menu_* compat defines;
	these are already in gtkmenu.h, and the copies
	here were broken.

	Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED

	* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
	special-case bitmaps to allow no colormap
	(bitmap1): implement no-colormap bitmap-getting
	(bitmap1a): implement no-colormap bitmap-getting to pixbuf with
	alpha
	(rgb8): indentation
	(rgb1a, rgb1): change the way we read the data out of the image,
	old way didn't seem to work quite right.

	I'm pretty sure a lot of the rgbconvert code is still broken.

	* gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
	above position constraint (I really intended to do this before,
	don't know what's up with that)
	(gtk_XParseGeometry): shut up gcc

	* gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
	and "0" should have been. remove the attempted 4-bytes-at-once
	optimization, it was totally broken.
2001-08-26 02:03:10 +00:00
Owen Taylor
b94e6c0a80 Add optional movement on push to buttons (based on patch from Soeren
Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
        on push to buttons (based on patch from Soeren Sandmann, #54720)

          - Add child_displacement_x/y style properties to control how far the
            child moves when the button is depressed.

          - Add non-exported function _gtk_button_set_depressed to clean
            up the handling of the in/out shadow and separate it frmo
            widget->state.

          - Lots of code cleanup and simplification of state handling
            for GtkButton/GtkToggleButton.

        * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
        of button movement. testgtk + testgtkrc == test ugly GTK+, as always.
2001-08-25 23:11:46 +00:00
Owen Taylor
8de6598f6a Break compatibility and make gtk_image_new() take no arguments. The
Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility
	and make gtk_image_new() take no arguments. The compiler will
	catch it, and it is vastly more useful than having
	gtk_image_new() be a deprecated alias for gtk_image_new_from_image().

	* gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
	to add tearoff-title property (#51319, Lee Mallabone)
2001-08-25 03:15:26 +00:00
Owen Taylor
5600b79e5c Remove unused and useless function gtk_menu_item_configure(). (#58925)
Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenuitem.[ch]: Remove unused and useless function
	gtk_menu_item_configure(). (#58925)
2001-08-25 02:20:33 +00:00
Jonathan Blandford
747b72533a Add "use_align" to give people the option to just make a cell visible.
Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
	"use_align" to give people the option to just make a cell visible.

	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
	we were scrolling past the end of the tree.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
	rename gtk_tree_view_column_pack_start_cell_renderer to
	gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
2001-08-24 20:09:26 +00:00
Owen Taylor
c1e4eac780 Remove a stray g_object_ref() left over from gtk_object_ref/sink. (Pointed
Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
        a stray g_object_ref() left over from gtk_object_ref/sink.
        (Pointed out by Josh Pritikin.)
2001-08-24 16:06:55 +00:00
Owen Taylor
991a7188ed Rename gtk_container_children() to gtk_container_get_children. Added
Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcontainer.[ch]: Rename gtk_container_children()
	to gtk_container_get_children. Added deprecated compatibility
	macro.	(Suggested by Vitaly Tishkov, #59051)

	* gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
	calls.
2001-08-23 23:38:32 +00:00
Owen Taylor
f0f3c6bfd2 Deprecate gtk_menu_bar_append/prepend/insert, forgot to do this when we
Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate
	gtk_menu_bar_append/prepend/insert, forgot to do this
        when we deprecated gtk_menu_append/prepend/insert.

        * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
        compat macros.

	       * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
	renamed by compat macro.

	* gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
        gtk_font_selection_dialog_get_font(). (Suggested by
	       Vitaly Tishkov, #59383)
2001-08-23 23:30:43 +00:00
Owen Taylor
9751c05b33 Rename from gtk_text_tag_table_size(). (#59366)
Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktexttag.c (gtk_text_tag_table_get_size):
	Rename from gtk_text_tag_table_size(). (#59366)
2001-08-23 22:51:58 +00:00
Kristian Rietveld
7cfc56dbd3 use GtkSortType instead of GtkTreeSortOrder. (#59173).
Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>

        * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
        gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
        gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
        (#59173).
2001-08-23 18:33:37 +00:00
Tim Janik
0b5311f5e9 chain parent class handlers, pointed out by Joshua N Pritikin
Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize):
        * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
        handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
2001-08-23 16:54:49 +00:00
Owen Taylor
44229b60b2 [ Patch from Sebastian Wilhelmi, 52790 ]
Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>

	[ Patch from Sebastian Wilhelmi, 52790 ]

	* gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
2001-08-23 15:27:21 +00:00
Owen Taylor
a2d60d44b1 [ Patch from Sebastian Wilhelmi, 52790 ]
Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>

	[ Patch from Sebastian Wilhelmi, 52790 ]

	* gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h

	* gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h:
	Move compatibility macros from g[dt]kcompat.h to within
	#ifndef G[DT]K_DISABLE_DEPRECATED in each file.

	* gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.

	* demos/Makefile.am demos/gtk-demo/Makefile.am
          docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
          tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.

	* demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
                 testpixbuf.c}: Fix usages of deprecated functions.
2001-08-23 15:26:49 +00:00
Jonathan Blandford
3485237744 clean up selection when changing models.
Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
	when changing models.
2001-08-22 23:05:07 +00:00
Jonathan Blandford
953d4b248e Fix selection. I think it's all dandy now. We check the current event for
Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
	We check the current event for modifiers rather than try to trap
	all presses.
2001-08-22 22:27:41 +00:00
Anders Carlsson
e7ac9a3430 Fix a small typo. It's LIST_STORE, not LISTSTORE.
2001-08-22  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
	It's LIST_STORE, not LISTSTORE.
2001-08-22 13:33:58 +00:00
Owen Taylor
d152553019 Remove commented out gtkpacker reference.
Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk.h: Remove commented out gtkpacker reference.
2001-08-21 16:43:55 +00:00
Owen Taylor
66aaf009a6 Remove GtkPacker
Tue Aug 21 12:42:19 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk-sections.txt: Remove GtkPacker
2001-08-21 16:43:17 +00:00
Matthias Clasen
a2e555e814 Add tga loader, patch by Nicola Girardi. (#56067) 2001-08-21 08:51:06 +00:00
Jonathan Blandford
ce46c83ab8 Tue Aug 21 02:57:13 2001 Jonathan Blandford <jrb@redhat.com>>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
	a little.  More needs to be done tomorrow.
2001-08-21 06:59:55 +00:00
Jonathan Blandford
56f78b5bdb Grr... Get it right.
Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
2001-08-21 04:49:15 +00:00
Jonathan Blandford
c600b2dcae *** empty log message *** 2001-08-21 03:53:13 +00:00
Sven Neumann
a3529900ee removed gtk/gtkpacker.c since it is not part of the build anymore.
2001-08-20  Sven Neumann  <sven@gimp.org>

	* POTFILES.in: removed gtk/gtkpacker.c since it is not part of the
	build anymore.
2001-08-20 19:26:51 +00:00
Russ Nelson
5ab33a1855 Fixed typo. 2001-08-20 17:01:47 +00:00
Jonathan Blandford
988275cf14 Use correct marshaller.
Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
	correct marshaller.
2001-08-20 15:46:49 +00:00
Matthias Clasen
476cda2a47 Forgotten during last commit. 2001-08-20 12:44:56 +00:00
Matthias Clasen
d504d82aa8 Add ico and wbmp tests. Fail with a suitable error if buffer allocation
* test-images.h, test-loaders.c: Add ico and wbmp tests.
* io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
error if buffer allocation fails.
* io-ico.c: Make .ICO loader more robust.
All of these are due to sandmann@daimi.au.dk (#50187)
2001-08-20 06:47:28 +00:00
Jonathan Blandford
9b14c04682 Fix up warnings, #58928.
Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c: Fix up warnings, #58928.

	* gtk/gtktreeselection.h: Change signal prototype, #58647

	* gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
	#59221.

	* gtk/gtkstyle.c: Actually prelight arrow, #50981
2001-08-19 23:46:59 +00:00
Sven Neumann
9b71c44a75 corrected usage of conversion scripts, the order of how to apply them was
2001-08-20  Sven Neumann  <sven@gimp.org>

	* README.translators: corrected usage of conversion scripts, the
	order of how to apply them was inverted.
2001-08-19 22:33:18 +00:00
Hans Breuer
f34e996b5f updated externals
2001-08-18  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def : updated externals

	* gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
	is required to get (at least) visible in entry fields. Some selections
	are really handled now - even on win32 - but copying via middle
	mouse button into a different app needs to wait ...

	* gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
	mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!

	* gdk/win32/gdkevents-win32.c : some tweaking to get better expose
	handling. I'm not sure if it is better now, but at least not worse

	* gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
	with SetWindowPos () which allows more fine-tuning backing-store wise

	* gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
	Also changed move/resize to be more like the X version.

	* gtk/gtk.def : updated externals
2001-08-19 18:34:59 +00:00
Sven Neumann
dedfce8ab8 gtk/gtktooltips.c tests/testtreesort.c inserted some casts to get rid of
2001-08-19  Sven Neumann  <sven@gimp.org>

	* gtk/gtktooltips.c
	* tests/testtreesort.c
	* tests/treestoretest.c: inserted some casts to get rid of compiler
	warnings.
2001-08-19 11:48:32 +00:00
Fatih Demir
aedcb3be32 Update. 2001-08-19 11:46:40 +00:00
Sven Neumann
8b89f18577 applied some simple but effective optimizations to
2001-08-19  Sven Neumann  <sven@gimp.org>

	* pixops/pixops.c: applied some simple but effective optimizations
	to pixops_composite_nearest() and pixops_composite_color_nearest().
2001-08-19 10:48:24 +00:00
Jonathan Blandford
112eb9b2e5 Sun Aug 19 01:44:44 2001 Jonathan Blandford <jrb@redhat.com>>
* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.

	* gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
	(_gtk_tree_view_find_node): If *node is NULL,
	*tree should be NULL too.

	* demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
	column/renderers.
	* tests/testtreecolumns.c: ditto
	* tests/testtreefocus.c: ditto
	* tests/testtreesort.c: ditto
	* tests/testtreeview.c: ditto
	* tests/treestoretest.c: ditto
2001-08-19 06:58:11 +00:00
Jonathan Blandford
6ffd507dea 2 new signals; is_expander/is_expanded.
Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
	signals; is_expander/is_expanded.

	* gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
	pixbufs.

	* gtk/gtktreeview.c: set above properties.
2001-08-19 04:19:56 +00:00
Owen Taylor
9e58bc3117 Really remove set_default_style().
Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.h: Really remove set_default_style().

	* docs/Changes-2.0.txt: added a note about
	gtk_widget_push/pop/set_default_style.
2001-08-19 03:04:09 +00:00
Havoc Pennington
a6c53acc2e constrain position on hints_changed in addition to the other cases.
2001-08-18  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
	hints_changed in addition to the other cases.
	(gtk_window_move_resize): include last position from configure
	notify in debug spew
2001-08-18 17:03:27 +00:00
James Henstridge
a6d2714c02 use the second argument to the weak ref notify, cleaning up some uglyness.
2001-08-18  James Henstridge  <james@daa.com.au>

	* gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
	second argument to the weak ref notify, cleaning up some uglyness.
	(gtk_accel_group_attach): remove and add the weak notifier when
	changing the accel groups slist.
	(gtk_accel_group_detach): same here.
2001-08-18 03:14:41 +00:00
Darin Adler
65159e1c52 Add missing parameters to utf8 functions to make it compile.
* gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
	missing parameters to utf8 functions to make it compile.
2001-08-18 00:07:42 +00:00
Jonathan Blandford
ac1e4ef3d2 Add heavily modified patch from Kristian Rietveld to handle interactive
Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeprivate.h:
	* gtk/gtktreeview.c: (gtk_tree_view_class_init),
	(gtk_tree_view_init), (gtk_tree_view_set_property),
	(gtk_tree_view_get_property), (gtk_tree_view_destroy),
	(gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
	(gtk_tree_view_focus_out), (gtk_tree_view_set_model),
	(gtk_tree_view_set_destroy_count_func),
	(gtk_tree_view_set_enable_search),
	(gtk_tree_view_get_enable_search),
	(gtk_tree_view_get_search_column),
	(gtk_tree_view_set_search_column),
	(gtk_tree_view_get_search_equal_func),
	(gtk_tree_view_set_search_equal_func),
	(gtk_tree_view_search_dialog_destroy),
	(gtk_tree_view_search_position_func),
	(gtk_tree_view_interactive_search),
	(gtk_tree_view_search_delete_event),
	(gtk_tree_view_search_button_press_event),
	(gtk_tree_view_search_key_press_event),
	(gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
	(gtk_tree_view_search_iter), (gtk_tree_view_search_init):
	* gtk/gtktreeview.h:
	Add heavily modified patch from Kristian Rietveld to handle
	interactive searching.
2001-08-17 23:35:52 +00:00
Tim Janik
ad9d2daf4a const correct string parameter.
Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
        string parameter.

        * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
        GtkMenuShell::selection_done, now that we have it, instead of
        ::deactivate so we're not tearing the menu apart and notify
        the user prematurely.

Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
        window, clear window->need_default_position to avoid infinite loops.
        some comment fixups and GTK_RESIZE_IMMEDIATE fixups.

Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
        code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
        (gtk_tree_view_set_property): don't cast possible NULL objects.
        (gtk_tree_view_destroy): reset the model to NULL.

        * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
        parent_class handler.
2001-08-17 16:33:04 +00:00
Matthias Clasen
aa9932da27 gtk/demos/gtk-demo/*: Remove all uses of deprecated functions. 2001-08-17 14:11:36 +00:00
Anders Carlsson
857f7b9d64 Divide with floating point numbers so that the result will be floating
2001-08-17  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkstyle.c (create_expander_affine): Divide with floating
	point numbers so that the result will be floating point.
2001-08-17 08:09:24 +00:00
Matthias Clasen
cf79ce5137 tests/testgtk.c (create_handle_box):
(create_toolbar): Replace gtk_window_set_policy calls by
gtk_window_set_resizable.
2001-08-16 14:38:46 +00:00
Jakub Steiner
c723bc6d30 big boom in replacing stock icons 2001-08-16 13:14:50 +00:00
Sven Neumann
0a8fc26c4f removed unused widget_class.
2001-08-16  Sven Neumann  <sven@gimp.org>

	* gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
2001-08-16 10:49:36 +00:00
Padraig O'Briain
504604370a Avoid warning when specifying NULL for "attributes" property
* gtk/gtkcellrenderertext.c:
Avoid warning when specifying NULL for "attributes" property
2001-08-15 15:01:23 +00:00
Matthias Clasen
0e32a729ec docs/debugging.txt: Add a warning about --enable-debug=no,
some editorial changes.
2001-08-15 09:24:15 +00:00
Matthias Clasen
370046c735 gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h,
gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update
debugging info, remove unused debug flags. (#58330)
2001-08-15 06:52:19 +00:00
Jonathan Blandford
dcc502e95c Remove strict checking for rows.
Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_select_all):
	(gtk_tree_selection_select_all): Remove strict checking for rows.
2001-08-13 17:23:41 +00:00
Matthias Clasen
abea7e4283 gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips):
Don't remove the tooltip window when the tip text changes. (#15891)
2001-08-13 10:43:28 +00:00
Owen Taylor
dc43576615 Remove extra $(srcdir).
Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
        $(srcdir).
2001-08-12 17:14:16 +00:00
Owen Taylor
cdf9b776e8 Set GPATH to fix srcdir != builddir problems with GNU make.
Sun Aug 12 10:03:42 2001  Owen Taylor  <otaylor@redhat.com>

	* */Makefile.am: Set GPATH to fix srcdir != builddir
	problems with GNU make.
2001-08-12 14:44:12 +00:00
Owen Taylor
97cea9ca8c Fix problem with trying to dist files from intl/, which is no longer
Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am (EXTRA_DIST): Fix problem with trying to
	dist files from intl/, which is no longer there.
2001-08-12 14:41:37 +00:00
Fatih Demir
b0ab5bed4a UTF-8'ification.. 2001-08-12 14:41:26 +00:00
Fatih Demir
793754e8e1 Update 2001-08-12 14:38:57 +00:00
Hans Breuer
0b5db507da coalescing property notifies
2001-08-11  Hans Breuer  <hans@breuer.org>

	* gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
	  gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c,
	  gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c,
	  gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c,
	  gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
	  gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies

	* gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
	  gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
	GDK_TYPE_EVENT signals

	* gtk/gtkalignment.c : removed 'direct allocation bug',
	which Tim discovered while reading the patch
2001-08-11 20:27:36 +00:00
Owen Taylor
4041a889cd Add some compat macros for push/pop/set_visual that were supposed to be
Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
        compat macros for push/pop/set_visual that were supposed
        to be added a long time ago, but got dropped.
2001-08-11 18:35:48 +00:00
Tim Janik
15d3368180 coalesce multiple property notifies.
Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
        property notifies.
2001-08-10 15:33:29 +00:00
Havoc Pennington
f37a0627fc fix a typo.
2001-08-07  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkfilesel.c (open_ref_dir): fix a typo.

	* gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
	some fixage is needed here, but nothing simple. Owen understands
	it. ;-)

        * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
	sizing and positioning.  Also, fix bug in compute_geometry_hints
	(width/height confusion for setting min size).
	(gtk_window_move): new function
	(gtk_window_resize): new function
	(gtk_window_get_size): new function
	(gtk_window_get_position): new function
	(gtk_window_parse_geometry): new function

 	* gtk/gtkwidget.c (gtk_widget_set_size_request): new function
 	(gtk_widget_get_size_request): new function
 	(gtk_widget_get_usize): delete, that was a short-lived function
 	;-)
 	(gtk_widget_set_usize): deprecate
 	(gtk_widget_set_uposition): deprecate, make it a trivial
	gtk_window_move() wrapper
	(gtk_widget_class_init): remove x/y/width/height properties,
	add width_request height_request

        * demos/*: update to avoid deprecated functions

	* gtk/gtklayout.c: add x/y child properties

	* gtk/gtkfixed.c: add x/y child properties, and get rid of
	uses of "gint16"

	* tests/testgtk.c (create_window_sizing): lots of tweaks to window
	sizing test

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
	configure events on toplevel windows are always in root window
	coordinates, following ICCCM spec that all synthetic events
	are in root window coords already, while real events are
	in parent window coords. Previously the code assumed that
	coords of 0,0 were parent window coords, which was
	really broken.

 	* gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
 	warning

 	* gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS
 	and GDK_HINT_USER_SIZE so we can set USSize and USPosition
 	hints in gtk_window_parse_geometry()

 	* gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
 	new USER_POS USER_SIZE hints
2001-08-10 03:46:08 +00:00
Matthias Clasen
439cd9a3a5 tests/prop-editor.c (properties_from_type): Use g_object_class_list_properties
to get the param specs for a given type. (#58609)
2001-08-09 07:57:56 +00:00
Matthias Clasen
deefbff9bf gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
free the text_aa parts. (#57549)
2001-08-09 07:19:45 +00:00
Matthias Clasen
6dd7f04620 gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
not the foreground color. (#57621)
2001-08-09 07:14:56 +00:00
Alexander Larsson
cdb59b8949 Update to the new pango win32 api.
2001-08-09  Alexander Larsson <alexl@redhat.com>

	* gdk/win32/gdkfont-win32.c:
	Update to the new pango win32 api.
2001-08-09 05:09:01 +00:00
Hidetoshi Tajima
2a80b70a2e ask apps for COMPOUND_TEXT instead of TEXT correctly interpret the return
* gtk/gtkclipboard.c (request_text_received_func): ask apps for
	COMPOUND_TEXT instead of TEXT
	* gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
	interpret the return value of g_string_to_compound_text()
	(#55152)
2001-08-08 17:58:52 +00:00
Matthias Clasen
d146290c53 gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
fail if iter is NULL. (#58347)
2001-08-08 07:42:21 +00:00
Matthias Clasen
4c44499b3f gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
some off-by-one issues, fixing selection of line-ends. (#50323)
2001-08-07 20:56:48 +00:00
Matthias Clasen
f9cc44268e gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
functions in order to make mouse operation work again in the
color wheel. (#58604)
2001-08-07 20:28:44 +00:00
Sven Neumann
85a58dddba a comment asked to optimize this function, so that's what I did.
2001-08-07  Sven Neumann  <sven@gimp.org>

	* gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
	function, so that's what I did.
2001-08-07 17:49:09 +00:00
James Henstridge
967c0f7c7b refetch the accelerator when the accel object is changed. Fixes bug
2001-08-07  James Henstridge  <james@daa.com.au>

	* gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
	the accelerator when the accel object is changed.  Fixes bug
	#58628.
2001-08-07 01:05:50 +00:00
Kjartan Maraas
dde67c28b3 Updated Norwegian (bokml) translation.
2001-08-06  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian (bokml) translation.
2001-08-06 21:28:46 +00:00
Kjartan Maraas
4de796f086 Fix a typo.
2001-08-06  Kjartan Maraas  <kmaraas@gnome.org>

	* gdk-pixdata.c: Fix a typo.
2001-08-06 19:15:25 +00:00
Hidetoshi Tajima
29d11da8c6 Skip g_convert when to_codeset and from_codeset are both 'UTF-8' (gnome
* modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
	Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
	(gnome bugzilla #58202)
2001-08-06 17:09:26 +00:00
Havoc Pennington
a4be7d83c1 The whole GDK_IS_WINDOW() branch of this was a bit screwed up, because it
2001-08-06  Havoc Pennington  <hp@pobox.com>

 	* gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole
 	GDK_IS_WINDOW() branch of this was a bit screwed up, because
 	it was expecting a GdkWindow, not a GdkWindowImplX11.

 	Also, we were getting the window rect in screen coords
 	and the screen rect in window coords then intersecting
 	them; instead, get window rect in window coords.

 	Finally, there were codepaths that resulted in a stuck server grab
 	(when the window was fully onscreen, or on gdk_image_new()
 	failure); make the server ungrab thing a bit more
 	robust/consistent.
2001-08-06 16:54:17 +00:00
Sven Neumann
adca251bab check if info->colormap != NULL before unref'ing it. It might have been
2001-08-06  Sven Neumann  <sven@gimp.org>

	* gdk/gdkpango.c (gdk_pango_context_destroy):
	check if info->colormap != NULL before unref'ing it. It might have
	been set to NULL using gdk_pango_context_set_colormap().
2001-08-06 15:52:46 +00:00
Owen Taylor
727cdae769 Fix conversion from float to int so that we don't get skew in the int =>
Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha):
	Fix conversion from float to int so that we don't get
	skew in the int => float => int roundtrip.
	(#58120, reported by Vitaly Tishkov). Also fix problem
	where if no alpha was set, the returned alpha
	from (say) set_current_alpha() was returned as 1, not 65535.
2001-08-05 15:27:30 +00:00
Owen Taylor
42cf380d36 Fix problem with selecting a new focus child.
Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklist.c (gtk_list_clear_items): Fix
	problem with selecting a new focus child.

	* gtk/gtklist.c (gtk_list_clear_items): Clear
	list->undo/list_focus_child after unparenting
	child, since unparenting the child can result
	in list->last_focus_child being set. (#58024)

	* Makefile.am (SUBDIRS): Add target specific pc
	files to DISTCLEANFILES.

	* gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
	(58327, Matthias Clasen)
2001-08-05 14:29:12 +00:00
Owen Taylor
9166ba51a1 Patch from Hans (with various modifications), to add the ability to use
Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>

	* tests/testgtk.c: Patch from Hans (with various modifications),
	to add the ability to use testgtk as a rough-and-ready
	benchmark. Try, 'testgtk --bench all:5' (if you want decent
	numbers, run without a window manager)
2001-08-04 23:30:11 +00:00
Alexander Larsson
81cfd5c9dc Add #ifdef HAVE_WINTAB around wintab.h include.
2001-08-04 Alexander Larsson <alexl@redhat.com>

	* gdk/win32/gdkinput.c:
	Add #ifdef HAVE_WINTAB around wintab.h include.

	* gtk/gtk.def:
	Removed marshals that have been moved to glib.
	Commented out plug and socket. They didn't compile for me
	on win32.
2001-08-04 16:28:09 +00:00
Hans Breuer
ab3d1411a3 oops: mentioned in ChangeLog but not commited 2001-08-04 13:19:59 +00:00
Hans Breuer
afb6e60fb3 new file use it
2001-08-04  Hans Breuer  <hans@breuer.org>

	* gtk/stocks-icons/makefile.msc : new file
	* gtk/makefile.msc.in : use it

	* gtk/gtkstyle.c : not all platforms do provide M_PI and
	friends, but luckily there is G_PI

	* gtk/gtk.def : updated

	* gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP
	windows WS_POPUP, but only those without a parent. This fixes the
	mis-alignment between the selectable (temp, input only) window and
	the window text of GtkLabel.

	(gdk_window_show) : respect private->state when actually showing
	the window.

	(gdk_window_set_transient_for) : Implementation from Wolfgang
	Sourdeau <wolfgang@contre.com> ported to 2.0 and added some
	error handling. Should fix #50586.

	* gdk/win32/gdkevents-win32.c : beautify log output
2001-08-04 13:17:33 +00:00
Michael Natterer
b092021ba6 Need to show the image after adding it to the GtkImageMenuItem. This used
2001-08-04  Michael Natterer  <mitch@gimp.org>

	* gtk/gtkitemfactory.c (gtk_item_factory_create_item):
	Need to show the image after adding it to the GtkImageMenuItem.
	This used to work without in testgtk because of the
	gtk_widget_show_all() at the end of the function.
	(Closes #54978).
2001-08-04 12:48:16 +00:00
Tim Janik
8dfce4590b fix finding of child's page, since we have to validly deal with labels and
Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtknotebook.c (gtk_notebook_get_child_property):
        (gtk_notebook_set_child_property): fix finding of child's page,
        since we have to validly deal with labels and menus here as well.
        (gtk_notebook_get_child_property): fix warning.
        (gtk_notebook_class_init): property tab_pack is of type
        GTK_TYPE_PACK_TYPE (enum) not boolean.
        (gtk_notebook_find_child): don't always warn, we might be looking
        for a label or menu child.
        (gtk_notebook_map): fix mapping of panel.

        * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
        widget's mapped state, regardless of the value being set equals
        old settings, since things like REALIZED(parent) or MAPPED(parent)
        may have changed since the old value was set. make it an error to
        invoke this function on a toplevel widget.
2001-07-31 21:23:19 +00:00
Darin Adler
6fe3d87b10 Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
* gdk/gdkprivate.h:
	* gdk/x11/gdkx.h:
	Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.

	* demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
	GTK_OBJECT.
2001-07-31 20:12:01 +00:00
Jonathan Blandford
3538aeef43 Whoops. Stupid scoping error pointed out by matthiasc@poet.de.
Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
	scoping error pointed out by matthiasc@poet.de.
2001-07-31 19:55:02 +00:00
Sven Neumann
bc5273de88 demos/gtk-demo/appwindow.c demos/gtk-demo/item_factory.c
2001-07-31  Sven Neumann  <sven@gimp.org>

	* demos/gtk-demo/appwindow.c
	* demos/gtk-demo/item_factory.c
	* tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
2001-07-31 09:42:35 +00:00
Hans Breuer
3956c38a96 oops, missed it. 2001-07-30 21:10:33 +00:00
Hans Breuer
4573e112c8 new file use it to complete the build
2001-07-30  Hans Breuer  <hans@breuer.org>

	* pixops/makefile.msc : new file
	* makefile.msc : use it to complete the build
2001-07-30 21:01:12 +00:00
Suresh Chandrasekharan
258d6d90d9 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan
Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.
com>
	* gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
	argument order for g_signal_has_handler_pending.
2001-07-30 19:20:38 +00:00
Suresh Chandrasekharan
4f530c54ad Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan
Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.
com>
	* gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
	argument order for g_signal_has_handler_pending.
2001-07-30 18:05:28 +00:00
Jonathan Blandford
09e97cbb7a Fix part of #57714.
Mon Jul 30 01:16:02 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix part of
	#57714.
2001-07-30 05:34:55 +00:00
Tim Janik
2d90383caa use g_file_test() instead of long deprecated g_scanner_stat_mode().
Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
        instead of long deprecated g_scanner_stat_mode().
2001-07-29 16:01:15 +00:00
Hans Breuer
da155bb731 build in the backend dir after auto-generating files
2001-07-29  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc : build in the backend dir after
	auto-generating files

	* gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
	with code from win32-production-branch.

	*  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
	before calling DestroyWindow, which indirectly calls
	gdk_window_destroy_notify ()

	(performance patch merged from win32-production-branch)
	* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments):
	Use PatBlt() instead of LineTo() when possible (solid single-pixel pen,
	R2_COPYPEN rop). It is claimed to be much faster.
2001-07-28 23:02:02 +00:00
Pablo Saratxaga
2d6add1880 updated Azeri and walloon files 2001-07-28 06:07:44 +00:00
Jonathan Blandford
1216f4e74a I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
I will save all emacs buffers before committing
2001-07-27 15:36:21 +00:00
Jonathan Blandford
5cdd55e7a7 add an "attributes" property to the text renderer for ATK.
Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
	add an "attributes" property to the text renderer for ATK.
2001-07-27 15:34:42 +00:00
James Henstridge
ad4313e26c Small bug introduced when merging changes before the accel group commit :( 2001-07-27 02:22:41 +00:00
Alex Larsson
c16e87bcba Initialize image->bits_per_pixel from the drawable, not from the root
2001-07-26  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
	Initialize image->bits_per_pixel from the drawable, not from
	the root window.

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
	Fix cast. argument is an IMPL already.
2001-07-26 20:07:08 +00:00
James Henstridge
e70939234c commiting patch after comments from Alex on IRC
2001-07-15  James Henstridge  <james@daa.com.au>

	* gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
	(gtk_window_remove_accel_group): same here.
	(gtk_window_key_press_event): same here.

	* gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
	(gtk_widget_remove_accelerator): same here.
	(gtk_widget_remove_accelerators): same here.

	* gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.

	* gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
	instead of GtkObject.

	* gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
	now takes GObjects.

	* gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
	pass a GObject to gtk_accel_group_entries_from_object.
	(gtk_item_factory_create_item): s/accel_widget/accel_object/

	* gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.

	* gtk/gtkaccellabel.c: convert to handle GObject accel objects.

	* gtk/gtkaccellabel.h: fix header to reflect that arbitrary
	GObjects can have accelerators set now.  Add compatibility
	defines.

	* gtk/gtkmarshal.list: add missing marshallers.

	* gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
	accelerators on plain GObjects.  gtk_accel_group_object_destroy
	has been converted into a weak reference, and
	gtk_accel_group_delete_entries is now a destroy notify for that
	piece of data.
2001-07-25 13:36:02 +00:00
Sven Neumann
afacc246f1 shut up CVS 2001-07-24 09:20:28 +00:00
Ron Steinke
c6bb34f2fc Fixed error in identifying Matthias in ChangeLog
Fixed error in identifying Matthias in ChangeLog
2001-07-23 21:36:29 +00:00
Ron Steinke
9cfd92ef66 Added a check on the colormap depth to gdk_drawable_set_colormap()
* gdk/gdkdraw.c: Added a check on the colormap depth to
        gdk_drawable_set_colormap()
        * gdk/x11/gdkimage-x11.c: combination of Mathias Hasselmann's
        patch to fix colorsel and my patch to fix gdk_drawable_get_image()
        for pixmaps without visuals (more specifically, bitmaps)
        * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
        doesn't set a colormap with the wrong depth
2001-07-23 21:28:38 +00:00
Owen Taylor
5f50d1fd72 *** empty log message *** 2001-07-22 21:03:03 +00:00
Anders Carlsson
f4ca329027 Add support for animating expanders.
2001-07-22  Anders Carlsson  <andersca@gnome.org>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
	expander_height and expander_width properties with a single
	property, expander_size.
	(gtk_tree_view_init): Set the tab_offset to expander_size
	plus some padding.
	(gtk_tree_view_unrealize): Remove the expand/collapse
	timeout if it exists.
	(coords_are_over_arrow): Fix a small bug.
	(gtk_tree_view_motion_draw_column_motion_arrow): Use
	expander_size.
	(gtk_tree_view_draw_focus): Use "treeview" instead of
	"add-mode" as detail when drawing the focus.
	(gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
	instead of "add-mode" as detail when drawing the focus.
	(gtk_tree_view_deleted): If we have a node currently being
	expanded or collapsed, remove the timeout and set the node
	to NULL.
	(gtk_tree_view_queue_draw_arrow): New function that just
	redraws the arrow of a node.
	(gtk_tree_view_draw_arrow): Use expander_size instead of
	expander_width/expander_height, also pass a different
	expander_style to gtk_paint_expander depending on the
	state of the node being drawn.
	(expand_collapse_timeout): New function for expanding
	or collapsing a node depending on the previous state.
	(gtk_tree_view_real_expand_row): Add timeout and set
	correct state for node being expanded.
	(gtk_tree_view_real_collapse_row): Add timeout and set
	correct state for node being collapsed.

	* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
	information about the node currently being expanded or
	collapsed, and also a timeout id.

	* gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
	with expander_style for draw_expander.

	* gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
	expander_style.
	(create_expander_affine): New function for creating an
	expander affine.
	(apply_affine_on_point): New function for applying an
	affine to a point.
	(gtk_default_draw_expander): Modified to take expander_style
	instead of is_open, and to draw the rectangle rotated differently
	depending on the expander style.
	(gtk_paint_expander): Replace is_open with expander_style.

	* gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.

	* gtk/gtkenums.h: Add expander style enum.
2001-07-22 20:09:00 +00:00
Jonas Borgstrm
5751ed9e16 Check the return value from gtk_tree_model_get_iter, the model might be
2001-07-21  Jonas Borgstrm  <jonas@codefactory.se>

	* gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
	value from gtk_tree_model_get_iter, the model might be empty.
2001-07-21 15:31:19 +00:00
Hans Breuer
4c5b559e04 gdk_device_get_history moved to gdk/gdkinput.c like the other backends
2001-07-20  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
	gdk/gdkinput.c like the other backends

	* gdk/win32/gdkinput-win32.h :
	* gdk/win32/gdkinput.c :
	* gdk/win32/gdkvisual-win32.c :
	* gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
	GdkVisual GObjectification. UNTESTED for pen-devices because
	I simply have none.

	* gdk/gdk.def :
	* gtk/gtk.def : updated externals

	* gtk/gtkiconfactory.c :
	* gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL)
	before passing &error to functions to avoid strange crashes

	* gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static

	* gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail

	* gtk/makefile.msc.in : updated
2001-07-20 18:05:33 +00:00
Hans Breuer
9d1e828d08 don't 'g_tohl (*istream++)', but move pointer increment out of the macro,
2001-07-20  Hans Breuer  <hans@breuer.org>

	* gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
	pointer increment out of the macro, because  at least one
	compiler (msvc 5.0) gets confused otherwise (applies the
	wrong increment).

	* gdk_pixbuf.def : updated exports

	* makefile.msc : reflect gdk-pixbuf-csource changes
2001-07-20 17:34:08 +00:00
Owen Taylor
c0fcc8c6ac Add property support. (#51858)
Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
	Add property support. (#51858)
2001-07-19 19:49:01 +00:00
Owen Taylor
e37def189f gtk/gtkaccellabel.c (gtk_accel_label_class_init) Use Shift/Ctrl instead of
Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccellabel.c (gtk_accel_label_class_init)
	* gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
	Use Shift/Ctrl instead of Shft/Ctl. (#53807)

Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c: Add propery support (roughly
	based on patch from Lee Mallabone, #51014)

	* gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
	deprecated, since we already g_warning() on it.
2001-07-19 18:58:53 +00:00
Owen Taylor
6fbd8b0d08 Fix typo that sometimes caused selection not to work properly.
Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_set_positions): Fix
	typo that sometimes caused selection not to work properly.

	* gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
	entry when tabbing in. (#57743)

	* gtk/gtkentry.c (gtk_entry_motion_notify): If the
	user drags up above or down below the entry, move
	to the end or the beginning of the entry. (Suggestion
	from Jay Cox, #50940)

	* gtk/gtkentry.c (gtk_entry_move_cursor): If we have
	a current selection, then when moving by chars or
	words, move to the end of the selection rather than
	from entry->current_pos. (Suggestion from Jay Cox,
	#50942)
2001-07-19 18:47:03 +00:00
Owen Taylor
f7ad59dcbd Actualy set window->decorated. (Patch from Hidetoshi Tajima, #55846)
Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
	set window->decorated. (Patch from Hidetoshi Tajima,
	#55846)
2001-07-19 16:16:01 +00:00
Owen Taylor
aa49527fa7 Enforce the widget/child realization/mapping invariants.
Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
	the widget/child realization/mapping invariants.

	* gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions
	gtk_widget_[get/set]_child_visible() to control
	whether visible children of a mapped window are
	mapped.

	* docs/widget_system.txt: Updated for changes in
	container contract, and addition of GTK_CHILD_VISIBLE.

	* gtk/gtkcontainer.c: Add generic map()/unmap()
	functions that work for almost all containers.

	* gtk/gtknotebook.c gtk/gtkpacker.c: Use
	gtk_widget_set_child_visible() where necessary.

	* gtk/*.c: Remove excess map(), unmap(), and
	realization/mapping invariant enforcing code
	from many containers.
2001-07-19 14:57:15 +00:00
Owen Taylor
8f2bf7976d Get the foreground color from 'text', nor 'base'. (#57568)
Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_set_attributes_from_style):
	Get the foreground color from 'text', nor 'base'. (#57568)
2001-07-18 23:54:06 +00:00
Owen Taylor
4e2b60ac4d Patch from Matthias Clasen to remove remove all instances of
Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/*.c: Patch from Matthias Clasen to remove remove
	all instances of g_return_if_fail (foo != NULL); that are
	immediately before a g_return_if_fail (GTK_IS_FOO (foo));
	since the second check catches the NULL anyways.
2001-07-18 23:39:26 +00:00
Owen Taylor
b613a74cb2 Fix idles and timeouts to be properly surrounded by
Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
	gtktreeview.c: Fix idles and timeouts to be properly surrounded by
	GDK_THREADS_ENTER()/LEAVE() pairs.

	* gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
	to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
	pairs. (Problem found by M. Meeks)
2001-07-18 22:43:41 +00:00
Darin Adler
f500db339a Reorder code so that we don't get a g_warning message every time we
* gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
	that we don't get a g_warning message every time we register a new
	icon size.

	* gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
	using pixel variable of the correct type.
2001-07-18 22:06:40 +00:00
Owen Taylor
94239d144e Add a function gdk_window_get_internal_paint_info(), so that using X
Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
	so that using X functions on a GdkWindow is possible, if
	a little hairy.

	* gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
	and ts_origin of a GC, so that external parties can offset/restore
	a GC, when using gdk_window_get_internal_paint_info().
2001-07-18 20:09:28 +00:00
Darin Adler
0349676329 Ignore the sgml directory made by gtkdoc. Use gtk_window_set_resizable
* .cvsignore: Ignore the sgml directory made by gtkdoc.
	* demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
	instead of the deprecated gtk_window_set_policy.
	* demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
	* gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
	function to get rid of warning and some code too.
	* gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
	missing const.
	* gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
	unused local.
	* gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
	const.
	* gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
	(gdk_utf8_to_compound_text): Add missing const.
	* gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
	* gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
	cast and get rid of an unnecessary one.
	* gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
	* gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
	local.
	* gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
	Remove unused local.
	* modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
	missing const.
	* tests/testsocket.c: (add_child): Add cast so the printf format
	doesn't make us implicitly depend on what integer type
	gtk_socket_get_id returns.
	* tests/testtextbuffer.c: Add missing const.
	* tests/testtreefocus.c: (main): Remove unused local.
	* tests/treestoretest.c: (iter_remove): Remove unused local.
	(uppercase_value): Remove unused function.
	(make_window): Add statement to quiet the compiler's uninitialized
	variable warning.
2001-07-18 04:31:11 +00:00
Darin Adler
b0bb5ac304 Add missing <stdlib.h> include. Add ifdef so we compile without warnings
* gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
	* io-png.c: (setup_png_transformations): Add ifdef so we compile
	without warnings with G_DISABLE_CHECKS on.
	* io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
	const.
	* io-wbmp.c: (getin), (get_mbi): Add a missing const.
	* io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
	unused locals and add an initial value to quiet the compiler's
	unintialized variable warning.
	* pixops/pixops.c: Put an ifdef around some dead code.
2001-07-18 04:25:04 +00:00
Matthias Warkus
fa506b18f1 Enormous update 2001-07-15 20:39:10 +00:00
Tim Janik
8589cfa17a add GDK_THREADS_ENTER/GDK_THREADS_LEAVE. (gtk_range_calc_layout): compute
Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkrange.c:
        (second_timeout):
        (initial_timeout):
        (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
        (gtk_range_calc_layout): compute the new layout based on an
        adjustment->value being passed in as argument.
        (gtk_range_button_press): for button2 slider warps, first recalc
        the layout, then adjust the value. also, use update_slider_position()
        for adjusting the value, so we keep pixel quantisation at which we
        usually operate (upon motion or button releases). the reason for this
        is that, we can't change the adjustment upon button2 presses to a non
        quantised value and upon button2 release re-quantise the value since
        that'd alter the value even if we didn't get any motion events (causing
        unexpected scroll area warps upon release and/or slider pixel-jitter).
        (gtk_range_motion_notify): update the slider position from queried
        coordinates, not event coordinates.

Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
        the default gc values are: width=0, CapBut, JoinMiter.
2001-07-14 11:35:24 +00:00
Anders Carlsson
2afa5510dc Take into account the xpad and ypad when calculating the width and the
2001-07-13  Anders Carlsson  <andersca@codefactory.se>

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
	into account the xpad and ypad when calculating the width and the
	height of the pixbuf cell.
2001-07-13 06:30:15 +00:00
Owen Taylor
c042389acc Rename to gtk_radio_menu_item_get_group(), add deprecated alias. (#57044)
Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group):
	Rename to gtk_radio_menu_item_get_group(), add deprecated
	alias. (#57044)

	* gtk/gtkfilesel.c: Indentation fix.
2001-07-12 22:45:05 +00:00
Owen Taylor
aefa836108 Patch from Mathias Hasselmann to fix warnings in compat macros. (#56773)
Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias
	Hasselmann to fix warnings in compat macros.
	(#56773)

	* gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix
	stupid wrong cast added in last patch.
2001-07-12 21:46:32 +00:00
Owen Taylor
a70fca529b Replace a couple of inappropriate calls to GTK_WIDGET_HAS_FOCUS() with
Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c: Replace a couple of inappropriate calls to
	GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
2001-07-12 20:59:42 +00:00
Owen Taylor
82ffb2f502 Add missing case.
Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
	missing case.

	* gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
	NULL/FALSE return value confusion.

	* gtk/gtkrange.c (coord_to_value): Fix division-by-zero
	problem when scrollbar completely fills range. (Patch
	from  Matthias Clasen, #57047)
2001-07-12 18:10:06 +00:00
Owen Taylor
3c57c96148 Properly clean up when handling events for move-resize emulation. (Problem
Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
	clean up when handling events for move-resize emulation.
	(Problem traced down by Matthias Clasen, #57271)
2001-07-12 17:58:43 +00:00
Owen Taylor
79d45ab85d Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
	  gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
	  gtk/gtkfontsel.c gtk/gtkhandlebox.c
	  gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
	  gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
	  gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
	  gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
	Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
2001-07-12 17:50:14 +00:00
Sven Neumann
eb1dbcd4a7 shut up CVS 2001-07-11 11:36:16 +00:00
Matthias Warkus
0b8a1d828b German translation updated 2001-07-10 20:57:51 +00:00
Peter Williams
ae28db0d50 Add a cd $(srcdir) for when srcdir != builddir
2001-07-09  Peter Williams  <peterw@ximian.com>

	* gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
	for when srcdir != builddir
2001-07-09 18:42:43 +00:00
Jonathan Blandford
a4a7652d09 remove gtk_tree_model_get_first in favor of gtk_tree_model_get_iter_root.
Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
	gtk_tree_model_get_iter_root.

	* gtk/gtkliststore.c: Add a bunch of g_return statements.
	(gtk_list_store_iter_n_children): Fix up.

	* gtk/gtktreestore.c: Add a bunch of g_return statements.
2001-07-09 17:09:35 +00:00
Christian Rose
ab28b9389c Updated Swedish translation. Added gtk+.pot to the list of files.
2001-07-09  Christian Rose  <menthos@menthos.com>

	* po/sv.po: Updated Swedish translation.
	* po/.cvsignore: Added gtk+.pot to the list of files.
2001-07-08 22:17:08 +00:00
Owen Taylor
515852ba91 Jul 6 15:38:33 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_class_init):
	G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
	restore some workingness.

	* gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix
	handle of window type for input-only windows.
2001-07-06 19:41:00 +00:00
Pablo Saratxaga
01a12a6096 updated Azeri file 2001-07-06 06:11:45 +00:00
Owen Taylor
0b6c3f5497 Patch from Gregory Merchan to add gtk_button_box_set_secondary(), which
Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
	Patch from Gregory Merchan to add
	gtk_button_box_set_secondary(), which separates
	the child into a separate group from the normal
	buttons. (#56331)

	* gtk/gtkdialog.c: Make help buttons secondary by
	default.

	* gtk/gtkbbox.c: Added a child property "secondary".

	* gtk/testgtk.c: Turn on the help button for the
	color selector to check that it properly appears
	as secondary.
2001-07-06 02:10:32 +00:00
Owen Taylor
d69aa7e9c1 Switch over to the new include flags AC_SUBST(). (Problem pointed out by
Thu Jul  5 10:17:15 2001  Owen Taylor  <otaylor@redhat.com>

	* pixops/Makefile.am (noinst_LTLIBRARIES): Switch
	over to the new include flags AC_SUBST(). (Problem
	pointed out by Mikael Hermansson.)
2001-07-05 14:19:43 +00:00
Owen Taylor
191e83b32a Add gdk_set_pointer_hooks() to allow pointer-querying to be hooked by an
Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>

 	* gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
 	gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
 	Add gdk_set_pointer_hooks() to allow pointer-querying to
 	be hooked by an event record/playback system like GERD.
	(#56914)
2001-07-05 13:41:34 +00:00
Owen Taylor
bf7258ea8a Pass in the right value of initial_emission to
Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
	in the right value of initial_emission to
	gtk_widget_set_style_internal (#57091)
2001-07-05 12:59:56 +00:00
Owen Taylor
159ff9c811 Make compile.
Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
	Make compile.

	* gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
	with calling gtk_widget_set_style_internal() with
	the old style, not the new style. (#56989)
2001-07-05 03:21:52 +00:00
Owen Taylor
c1a14d036d Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)), not
Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
	  gtk/gtkwidget.c:
	Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
	not GTK_WIDGET_GET_ANCESTOR ... see
	http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
	Indicate the best practice in the docs for gtk_widget_get_toplevel().

	* gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
	so GtkPlug can give the correct signals when transforming
	from a child to a toplevel.

	* gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
	reparentation correctly.

	* gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
	Propagate the previous_toplevel argument down properly.

	* gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
	of wrong atr list.

	* gtk/gtkplug.[ch]: Add an "embedded" signal.

	* gtk/gtksocket.[ch]: Add "child_added", "child_removed"
	signals.

	* gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add
	functions gtk_plug_get_id(), gtk_socket_get_id(),
	to avoid the user having to worry about realization,
	and gdkx.h.

	* tests/testsocket.c: Extend to try out the new signals
	and gtk_plug/socket_get_id().

	* gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
	setting of underline attributes.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
	DestroyNotify events from SubstructureNotifyMask

	* gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
	Switch GDK_WINDOW_TYPE (window) as needed.

	* gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
	allow creation of toplevel windows as children of
	foreign windows.

	* gtk/gtkplug.c: Remove hacks involving changing private
	fields of GdkWindow.

	* gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make
	exactly the same signals and notification
	be emitted for local embedding as for inter-process
	embedding.
2001-07-05 02:58:34 +00:00
Owen Taylor
3da3e77620 Some updates and moving docs to the C files.
Wed Jul  4 22:53:33 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkplug.sgml	gtk/tmpl/gtksocket.sgml: Some
        updates and moving docs to the C files.
2001-07-05 02:54:11 +00:00
James Henstridge
ebb65c114c add missing gtk_list_store_newv prototype.
2001-07-04  James Henstridge  <james@daa.com.au>

        * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
2001-07-04 03:02:24 +00:00
Owen Taylor
337054a3ec Extended to test different type of adding plugs to sockets
Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>

	* tests/testsocket.c tests/testsocket_child.c
	tests/testsocket_common.c tests/Makefile.am: Extended
	to test different type of adding plugs to sockets
	(local,active,passive),	and to test mapping/unmapping
	the plug.
2001-07-03 16:07:15 +00:00
Owen Taylor
f409cd9b7f For XEMBED embedding add a _XEMBED_INFO property to the client with
Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
	XEMBED embedding add a _XEMBED_INFO property to the
	client with version number and a "mapped" flags.
	Use the mapped flag instead of the racy MapRequestEvent

        * gtk/gtksocket.c: Clean up the gtk_socket_steal()
	code to reliably set things (when the child is a passive
	embedder participating in the XEMBED protocol) intead
	of just being a hack for embedding non-participating
	programs. Fix various bugs and race conditions.

	* gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
	work by simply making the GtkSocket the gtk parent
	of the GtkPlug. Set a flag in this case and make
	the GtkPlug work like a normal container by overriding
	methods such as check_resize and "chaining past" GtkWindow
	to GtkBin.

 	* gtk/gtkentry.c (gtk_entry_real_activate)
	  gtk/gtkmain.c (gtk_propagate_event):
 	Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).

	* gtk/gtkwidget.c (gtk_widget_get_toplevel,
	gtk_widget_get_ancestor):
	Explain	why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
	might not give the expected result and recommend
	an alternative.

	* tests/testsocket.c tests/testsocket_child.c
	tests/testsocket_common.c tests/Makefile.am: Extended
	to test different type of adding plugs to sockets
	(local,active,passive),	and to test mapping/unmapping
	the plug.

 	* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
 	mark the window as destroyed until after we
 	called _gdk_windowing_window_destroy().
	(_gdk_windowing_window_destroy() may use GDK functions
	on the window.)

 	* gdk/x11/gdkinput.c: Remove the check for finalization -
 	devices can be finalized under some circumnstances.

 	* gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix
 	small problem with GDK_TYPE_DEVICE.
2001-07-03 14:14:30 +00:00
Havoc Pennington
b6cc525fa0 fix to use constants not atoms.
2001-07-02  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to
	use constants not atoms.
2001-07-03 01:39:36 +00:00
James Henstridge
84191d675f same here for PANGO_TYPE_TAB_ARRAY.
2001-07-02  James Henstridge  <james@daa.com.au>

	* gtk/gtktextview.c (gtk_text_view_class_init): same here for
	PANGO_TYPE_TAB_ARRAY.

	* gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
	for PANGO_TYPE_TAB_ARRAY.

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
	s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/

	* gtk/gtk-boxed.defs: move all the boxed definitions to the top of
	the file.  Remove Pango types from defs -- they are now defined in
	libpango.
2001-07-02 14:25:20 +00:00
Tim Janik
93db42e7a6 s/signal_newc/signal_new/
Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>

        * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/

        * gtk/gtkobject.c (gtk_object_destroy): invoke
        g_object_run_dispose().

        * gtk/gtkwindow.c:
        * gtk/gtkwidget.c:
        * gtk/gtkobject.c:
        * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
        method.
2001-07-02 05:03:21 +00:00
Owen Taylor
de985fb58e Remove change check for GTK_TYPE_OBJECT derivation to G_TYPE_OBJECTS -
Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktypeutils.c (gtk_type_class): Remove
	change check for GTK_TYPE_OBJECT derivation to
	G_TYPE_OBJECTS - it's Tim-approved to use this
	for arbitary objects.

	* gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
	prefix gtk_container_dequeue_resize_handler().

	* gtk/gtkwidget.[ch]: Add a previous_toplevel argument
	to the hierarachy_changed signal, since you otherwise
	have to always keep that around.

	* gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
	for extra argument to hierarchy_changed.
2001-07-01 00:57:21 +00:00
Jonathan Blandford
95cd4d8e66 New function for language bindings.
Sat Jun 30 17:13:51 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c (gtk_list_store_newv): New function for
 	language bindings.

	* gtk/gtkteststore.c (gtk_test_store_newv): New function for
 	language bindings.
2001-06-30 21:15:27 +00:00
Owen Taylor
fbfc305174 Allow %NULL for style to mean "revert to default style"
Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
	for style to mean "revert to default style"

	* gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
	  gtk_widget_restore_default_style): Make this functions
	deprecated aliases for gtk_widget_set_style (widget, NULL).

	* gtk/gtkwidget.[ch]: Remove:
	   gtk_widget_set_default_style ()
	   gtk_widget_push_style ()
	   gtk_widget_pop_style ()
	These functions interact are overriden by RC files, and
	thus virtually useless, and complicated.

Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c: Add a GtkRcContext structure to hold
	most of the previous global variables in gtkrc.c. This is
	in preparation for multi-head, since each screen can
	have different GtkSettings and RC information.

	* gtk/gtkrc.[ch]:

	* gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
	GtkSettings parameter to GtkRcStyle::parse.

	* gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c:
	Add two new settings gtk-theme-name, gtk-key-theme-name,
	for RC files that are loaded by name after reading
	the default RC files.

	* gtk/gtkrc.c: Allow priorities for styles, as wll as
	bindings.

	* gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
	and use it by default for RC files loaded via
	gtk-theme-name, gtk-key-theme-name.

	* gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
        gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string)
	tests/testgtkrc: Require pathnames to be absolute.

	* gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
	the source when parsing, since the operation of looking up a
	pixmap from an RC file depends on the parsing context.

	* gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
	reset RC styles on all widgets when files are reparsed.

	* tests/testgtk.c (create_rc_file)
	  gtk/gtkwindow.c (gtk_window_read_rcfiles):
	Simplify, now that gtk_rc_reparse_all() resets styles on
	all widgets itself.

	* gtk/gtkmain.c (gtk_get_default_language): Fix broken
	return value.

	* gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
	GtkSettings argument.

	* gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
	gtk_settings_get_global().

	* gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
	to get the appropriate GtkSettings for a widget. (For now,
	just gets the default GtkSetttings.)

	* gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
	  gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
        changes.

	* gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
	getting a style for a path without actually having a widget.
	(Allows using a style for a subpart of a widget, for
	example.)

	* gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
	the RC files to be reloaded for just one GtkSettings
	(not sure how useful this really is.)

	* gtk/gtkrc.h: Deprecate
	gtk_rc_add_widget_name/widget_class/class_style
2001-06-30 16:08:25 +00:00
Alex Larsson
ba02311234 Convert GdkDevice to a GObject.
2001-06-30  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkinput-none.c:
	* gdk/linux-fb/gdkinput.c:
	* gdk/linux-fb/gdkinputprivate.h:
	Convert GdkDevice to a GObject.

	* linux-fb/gdkprivate-fb.h:
	* linux-fb/gdkvisual-fb.c:
	Convert GdkVisual to a GObject.
2001-06-30 04:30:32 +00:00
Alex Larsson
43696e841d Convert GdkVisual to a GObject.
2001-06-29  Alex Larsson  <alexl@redhat.com>

	* gdk/gdkvisual.h:
	* gdk/gdkcolor.c:
	* gdk/x11/gdkx.h:
	* gdk/x11/gdkvisual-x11.c:
	Convert GdkVisual to a GObject.

	* gdk/gdkinput.h:
	* gdk/gdkevents.c:
	* gdk/x11/gdkinputprivate.h:
	* gdk/x11/gdkinput-gxi.c:
	* gdk/x11/gdkinput-none.c:
	* gdk/x11/gdkinput-x11.c:
	* gdk/x11/gdkinput-xfree.c:
	* gdk/x11/gdkinput.c:
	Convert GdkDevice to a GObject.
2001-06-30 02:56:50 +00:00
Jonathan Blandford
ee5ff7ddc2 changed new_with_types to just plain new, fixing the number of columns,
Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
	to just plain new, fixing the number of columns, and column types
	at creation time.

	* gtk/gtkliststore.c (gtk_list_store_new): ditto.

	* gtk/gtkcellrenderertext.c
	(gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
	height to a specific font.

	* gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.

	* tests/*c: change to work with new store models.
2001-06-30 02:38:17 +00:00
Havoc Pennington
49c1e6dc89 fixes to compile with G_DISABLE_COMPAT
2001-06-29  Havoc Pennington  <hp@redhat.com>

       * Throughout: fixes to compile with G_DISABLE_COMPAT
	(s/g_signal_connectc/g_signal_connect/,
	s/g_signal_newc/g_signal_new/,
	s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
2001-06-29 16:30:25 +00:00
Jonathan Blandford
1bbcf0394f add path argument to selection callbacks.
Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
	add path argument to selection callbacks.
2001-06-29 07:28:08 +00:00
Jonathan Blandford
db93c6131e New function to walk through a model in a depth first manner, with the
Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
	walk through a model in a depth first manner, with the option to
	break out.
2001-06-29 04:19:30 +00:00
Jonathan Blandford
b6f809739b Patch Thomas Broyer from <tbroyer@ltgt.net>. Expander arrows are now
Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.[hc]: Patch Thomas Broyer from
	<tbroyer@ltgt.net>. Expander arrows are now attached to a specific
	column and follow it when draged, rather than a location in the
	view. "expander_column" property and drawing functions changed
	accordingly.  Fixes bug #55942.

	(gtk_tree_view_{set,get}_expander_column): Now works with a
	GtkTreeViewColumn* instead of int.
2001-06-29 03:11:01 +00:00
Owen Taylor
85224117f4 Fix args to g_type_init().
Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>

	*  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init().
2001-06-29 02:54:55 +00:00
Owen Taylor
0a2fce4577 Fix args to g_type_init ().
Thu Jun 28 21:54:19 2001  Owen Taylor  <otaylor@redhat.com>

	* make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
	gdk-pixbuf-csource.c: Fix args to g_type_init ().
2001-06-29 02:53:01 +00:00
Havoc Pennington
0bee26c7ba Clip the retrieved image data to the screen, using a server grab to avoid
2001-06-28  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
	image data to the screen, using a server grab to avoid race
	conditions.

	* gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove
	check for NULL return from gtk_image_new_from_stock(), it never
	returns NULL.
	(gtk_item_factory_create_item): fix bug where we parsed the stock
	ID as an inline pixbuf

	* gtk/gtktext.c (gtk_text_key_press): numeric keypad support

	* gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
	support (should be using binding set here)

	* gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
	support (should be using binding set here)

	* gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad
	support

	* gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support

	* gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad

	* gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad

	* gtk/gtkimcontextsimple.c
	(gtk_im_context_simple_filter_keypress): keypad

	* gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad

	* gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes

	* gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support

	* gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
	should be binding-setted)

	* gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes

	* gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes

	* gtk/gtkcalendar.c: numeric keypad fixes

	* gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
	support

	* gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
	screwup

	* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
	clip the render area to the drawable's clip region in advance,
	so we don't get data from the server that we don't need.

	* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
	check return value of gdk_pixbuf_get_from_drawable(), fall back
	to bilevel alpha if we can't get the pixbuf to composite against.

	* gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap

	* gdk/gdkimage.c (gdk_image_get_colormap): add
	gdk_image_set_colormap, gdk_image_get_colormap

	* gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
	take a region of the image, instead of converting the entire
	image.

	* gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
	keybinding signal. Add default bindings for it. Add default
	handler for show_help that shows the tooltip for the widget.

	* gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
	"close" keybinding signal, remove key press handler.

	* gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
	it's not our usual practice to leave a deprecated function around
	with a runtime warning, plus we don't want it to appear in docs,
	plus if we make them yellow no one will want to change them
	anyhow.
2001-06-29 01:59:02 +00:00
Tim Janik
00f85bf815 !GTK_OBJECT_DESTROYED() -> GTK_WIDGET_REALIZE() for resize queueing.
Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
        GTK_WIDGET_REALIZE() for resize queueing.

        * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
        GTK_WIDGET_REALIZE() for post event delivery destruction upon
        GDK_DESTROY.

        * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
        sompensate for former (pre-2.0) connect_after() facility.
        (gtk_widget_send_expose):
        (gtk_widget_event): assert the widget is realized, since event delivery
        to non-realized widgets is essentially a bug. event handlers should
        be able to unconditionally rely on widget->window (unless they
        emit events on their own which can trigger widget destruction).
        (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
        logic. event delivery happens as follows:
        a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
        b) if !was_handled in (a) and the widget is still realized, emit event-
           specific signal (RUN_LAST handler). returns was_handled.
        c) emission of GtkWidget::event-after for notification if the widget is
           still realized (regardless of was_handled from previous stages, no
           class handler). no return value.
        d) was_handled gets passed on to caller, to determine further
           propagation. if the widget got unrealized meanwhile, was_handled
           is returned as TRUE.

        * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
        gdk_event_get_coords().
2001-06-28 22:49:20 +00:00
Tim Janik
10f047cf4c up version to 1.3.7, interface age 0, binary age 0. depend on glib 1.3.7.
Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>

	* configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
	age 0, binary age 0. depend on glib 1.3.7.

	* gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.

	* gtk/gtkmenubar.c: same here.

	* gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.

	* gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.

	* gtk/gtkentry.c (gtk_entry_focus_in): same here.

	* gtk/gtkmenubar.c (add_to_window): likewise.

	* gtk/gtktextbtree.c: and here...

	* gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.

	* gtk/gtktoolbar.c (gtk_toolbar_init): once more.

	* gtk/gtktreemodel.c (connect_ref_callbacks): and another time.

	* gtk/gtktreeviewcolumn.c:
	(_gtk_tree_view_column_set_tree_view): yet again.

	* demos/gtk-demo/images.c (progressive_timeout): demonstrate
	signal connections without g_signal_connect_data().

	* demos/gtk-demo/stock_browser.c (do_stock_browser): second
	demo of the matter.

	* demos/testpixbuf.c (main): running out of equality phrases for the
	ChangeLog, but had to adapt connections here as well.

	* demos/testanimation.c (progressive_timeout): and for the fun of it,
	tackled this the same way.

	* tests/testtext.c (create_view): ok, it's becoming a pain at this
	point, but had enough enery for one more fix.

	* tests/testtreecolumns.c (main): stand up man, do your work!

	* tests/testtreeview.c (set_columns_type): ok, this is the last file i
	fix, either that's been all of it or CVS gtk is broken yet again.
2001-06-28 17:12:40 +00:00
James Henstridge
cd3ddf900f The following changes correspond to bug #56812
2001-06-29  James Henstridge  <james@daa.com.au>

	The following changes correspond to bug #56812

	* gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
	code for GdkDevice.

	* gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
	GdkCursor.
2001-06-28 16:35:38 +00:00
Havoc Pennington
796dc4b1d7 new function for mapping a window without fooling with stacking order, but
2001-06-19  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
	for mapping a window without fooling with stacking order, but
	updating the "withdrawn" flag

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
	filtering as soon as possible, moving move resize and wmspec_check
	handling after the event filter.  Make default filter apply to all
	events, not just those with no GdkWindow wrapped around the X
	window. Fix a FIXME about how the window could be a pixmap using
	RTTI; this of course assumes GDK_IS_WINDOW() is optimized.

	Also, be robust against events not on a known GdkWindow.

	* gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
	gdk_x11_ungrab_server): export reference-counted server grabs, so
	other people can grab server over a GDK function that also does
	so.
2001-06-28 05:24:00 +00:00
Jonathan Blandford
8eaa071617 New function to reflect that you can (hypothetically) pack cell renderers
Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_pack_start_cell_renderer): New function to
	reflect that you can (hypothetically) pack cell renderers into a
	column.
	(gtk_tree_view_column_pack_end_cell_renderer): ditto.
	(gtk_tree_view_column_cell_is_visible): Move more functionality to
	the column.
	(gtk_tree_view_column_cell_can_focus): Move more functionality to
	the column.

	* gtk/gtktreeview.c: Move to use new column-packing code.
	(gtk_tree_view_real_expand_row): remove	totally braindead code.
	(gtk_tree_view_real_collapse_row): ditto.
2001-06-27 23:44:53 +00:00
Kjartan Maraas
f10e18bfd6 Fix a typo.
2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>

	* gtk/gtktreeviewcolumn.c: Fix a typo.
2001-06-27 23:34:43 +00:00
Kjartan Maraas
c56c429767 Updated Norwegian translation.
2001-06-28  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
2001-06-27 23:33:49 +00:00
Joel Becker
e1cf26bba3 bogus include at the end of gdk-pixbuf-csource.c 2001-06-26 22:52:34 +00:00
Tim Janik
33e0b6e428 use gdk_pixbuf_new_from_stream(). fixed up item factory so inlined pixbufs
Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkiconfactory.c:
        * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
        item factory so inlined pixbufs actually work.
2001-06-26 20:57:27 +00:00
Tim Janik
d4f0062f5e use gdk_pixbuf_new_from_stream(). fixed up item factory so inlined pixbufs
Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkiconfactory.c:
        * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
        item factory so inlined pixbufs actually work.

Tue Jun 26 09:48:02 2001  Tim Janik  <timj@gtk.org>

        * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf

        * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
        instead from gdk_pixbuf_new_from_inline().

        * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
        installed API for applications that need to serialize/deserialize
        on their own (gimp, BEAST).

        * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
        program that can dump images in CSource format and Pixbuf
        stream format. supports RLE encoding, MACRO formatting etc...
        invoke with --help.
2001-06-26 20:56:32 +00:00
Havoc Pennington
3704749e94 forgot a notification
2001-06-26  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
2001-06-26 19:30:37 +00:00
Havoc Pennington
db0fe66110 add "resizable" property
2001-06-26  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
	property
2001-06-26 19:23:46 +00:00
Jonathan Blandford
94f7d7e604 fix stupid missing statement
Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
	stupid missing statement

	* gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
	private function for ATK.  It notifies you of how many _visible_
	children are deleted when a node is deleted.  Should be used by
	atk only.
2001-06-26 17:01:53 +00:00
Owen Taylor
837b7120a8 Revert inline-pixbuf changes until Tim comes back to fix missing files 2001-06-26 16:19:01 +00:00
Owen Taylor
671b3b0eb0 Use new pango_context_get_metrics() to fix problems with font lists in
Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
	Use new pango_context_get_metrics() to fix problems
	with font lists in descriptions. (#56184, reported by
	Jonas Borgström)
2001-06-26 15:15:00 +00:00
Fatih Demir
bd2b9eebaf Added ta.po 2001-06-26 10:22:32 +00:00
Tim Janik
0b7418572e hm, second attempt. it's fight CVS time again.
Tue Jun 26 09:48:02 2001  Tim Janik  <timj@gtk.org>

        * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf

        * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
        instead from gdk_pixbuf_new_from_inline().

        * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
        installed API for applications that need to serialize/deserialize
        on their own (gimp, BEAST).

        * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
        program that can dump images in CSource format and Pixbuf
        stream format. supports RLE encoding, MACRO formatting etc...
        invoke with --help.

Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkiconfactory.c:
        * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
        item factory so inlined pixbufs actually work.
2001-06-26 08:34:26 +00:00
Tim Janik
bf0d61a59b use gdk_pixbuf_new_from_stream(). fixed up item factory so inlined pixbufs
Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkiconfactory.c:
        * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
        item factory so inlined pixbufs actually work.

Tue Jun 26 09:48:02 2001  Tim Janik  <timj@gtk.org>

        * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf

        * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
        instead from gdk_pixbuf_new_from_inline().

        * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
        installed API for applications that need to serialize/deserialize
        on their own (gimp, BEAST).

        * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
        program that can dump images in CSource format and Pixbuf
        stream format. supports RLE encoding, MACRO formatting etc...
        invoke with --help.
2001-06-26 08:32:25 +00:00
Havoc Pennington
0e0ee24bea s/RESIZEABLE/RESIZABLE/
2001-06-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
	s/RESIZEABLE/RESIZABLE/

	* gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2001-06-25 23:48:51 +00:00
Alexander Larsson
75fd7f09af Added --enable-fbmanager. This is some experimental code that lets several
2001-06-25  Alexander Larsson  <alexl@redhat.com>

	* configure.in:
	Added --enable-fbmanager. This is some experimental code
	that lets several GtkFB apps coordinate their access to the
	framebuffer.

	* acconfig.h:
	Added ENABLE_FB_MANAGER.

	* gdk/linux-fb/Makefile.am:
	Added gdkfbmanager and gdkfbswitch.

	* gdk/linux-fb/gdkkeyboard-fb.c:
	* gdk/linux-fb/gdkmouse-fb.c:
	* gdk/linux-fb/gdkprivate-fb.h:
	Split device init and open so that
	they can be opened and closed while switched
	away.

	* gdk/linux-fb/gdkmain-fb.c:
	Add the basic manager communication.

	* gdk/linux-fb/gdkrender-fb.c:
	Don't update to the shadow fb if we're
	blocked by the fb manager.
2001-06-25 23:01:36 +00:00
Sven Neumann
4168b47803 shut up CVS 2001-06-25 10:32:48 +00:00
Owen Taylor
1b4f09d438 Actually update timestamps, so rules don't constantly run.
Mon Jun 25 00:28:11 2001  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am: Actually update timestamps, so rules don't
        constantly run.
2001-06-25 04:31:03 +00:00
Owen Taylor
7b2e887b52 Add note about child property changes.
Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-2.0.txt: Add note about child property
	changes.
2001-06-25 02:15:50 +00:00
Owen Taylor
1988e13749 Add a special size for drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
	drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)

	* gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
	with un'reffing wrong list reported by Jeff Franks.

	* gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.

	* gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
	for the default icon. Remove inline XPM.

	* gtk/gtkstock.h gtk/gtkiconfactory.c:
	Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
	is used for GTK_STOCK_DND, but it is a bit too small.)

	* gtk/stock-icons/stock_dnd_multiple.png
	gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.

	* gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
	TRUE when starting a drag. In other cases, we are
	just observing. (#52995)

	* gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add
	function to set the icon for a drag from a GdkPixbuf
	or stock ID.

	* gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}):
	Likewise, for drag sources.

	* gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
	(Now should be done using the stock system.)
2001-06-25 01:51:58 +00:00
Owen Taylor
24a325c67a Removed - didn't work and not particularly useful anyways if it did.
Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size):
        Removed - didn't work and not particularly useful anyways
	if it did.
2001-06-24 16:08:15 +00:00
Owen Taylor
cc223eeff6 Fix stupid error introduced last night that was making things decidedly
Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
	introduced last night that was making things decidedly not work.

	* gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
	so that we have getter/setter pairing everywhere it makes
	sense. (#55767)

	* gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
	Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
	deprecated compat macro. (#55516)

	* gtk/gtklabel.[ch]: Add functions
	gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
	gtk_label_set_label(), which mirror the property API for GtkLabel.
	Make gtk_label_get_attributes() only reflect the attributes
	set by gtk_label_set_attributes.

	* gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
	from gtk_notebook_set_page().
2001-06-24 15:34:48 +00:00
Owen Taylor
5a5580a8e7 Fix tests for XShm.h.
Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Fix tests for XShm.h.

        * gdk/x11/gdkimage-x11.c: Cleanup error handling in
        gdk_image_new() by use of goto, properly use g_object_unref().
2001-06-23 22:14:02 +00:00
Tim Janik
92e87e40a7 disabled g_free (image) calls, as GdkImage is an object. these should be
Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>

        * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
        calls, as GdkImage is an object. these should be g_obejct_unref()
        instead but that won't work because of the g_error() statement
        in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
        to spot these places.
2001-06-23 20:26:10 +00:00
Owen Taylor
b09d194d3c Fixup some problems with text length handling in error cases.
Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>

	* modules/input/gtkimcontextxim.c: Fixup some problems with
	text length handling in error cases.

	* gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
	a bit to make test actually warn on attempt to allocation
	a negative size. (#56101, Matthias Clasen)
2001-06-23 14:32:44 +00:00
Jonathan Blandford
7ab5f8c5a7 Fix bug noticed by Brian Cameron. (gtk_tree_view_real_expand_row): Fix bug
Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
	noticed by Brian Cameron.
	(gtk_tree_view_real_expand_row): Fix bug noticed by Brian
	Cameron.
2001-06-22 18:11:04 +00:00
Hans Breuer
03cadd29ac PNGs need to be binary (-kb) to be useable on windoze
2001-06-22  Hans Breuer  <hans@breuer.org>
	* gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be
	binary (-kb) to be useable on windoze
2001-06-22 14:09:33 +00:00
Hans Breuer
f0ee2996e1 updated externals
2001-06-22  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def : updated externals

	* gdk/win32/gdkdrawable-win32.c : corrected some casts
	in GDK_NOTEs

	* gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
	to translate coordinates to the internal > 16 bit system
	Try to handle WM_WINDOWPOSCHANGED to get better performance for
	when moving/resizing

	* gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
	and gdk_keymap_get_direction (). The latter is untested for
	the RTL case

	* gtk/gtk.def : updated externals

	* gtk/gtkmain.c : gtk_get_default_language () should reurn the result
	from pango_language_from_string (), not an already freed pointer

	* gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be
	binary (-kb) to be useable on windoze
2001-06-22 14:08:51 +00:00
Alexander Larsson
c64a3e5b24 Update to new PangoLanguage changes.
2001-06-21  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
	Update to new PangoLanguage changes.

	* gtk/gtkwindow-decorate.c:
	* gtk/gtkwindow.[ch]:
	Added setting argument to gtk_window_set_has_frame ()
2001-06-21 21:10:48 +00:00
Pablo Saratxaga
a16a53a15b updated Azeri file 2001-06-21 20:07:21 +00:00
Pablo Saratxaga
5c8bbbbb99 file gtkrc.iso-8859-3 was initially added on branch gtk-1-2. 2001-06-21 20:06:14 +00:00
Pablo Saratxaga
7a9a5c68fd file gtkrc.iso-8859-7 was initially added on branch gtk-1-2. 2001-06-21 20:06:14 +00:00
Pablo Saratxaga
90e317d027 file gtkrc.iso-8859-9 was initially added on branch gtk-1-2. 2001-06-21 20:06:14 +00:00
Pablo Saratxaga
d9858e59e3 file gtkrc.utf-8 was initially added on branch gtk-1-2. 2001-06-21 20:06:14 +00:00
Owen Taylor
d809ceee2e Handle the case without XKB properly.
Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
	the case without XKB properly.

	* gtk/gtkrc.c (gtk_rc_set_default_files): Remove
	unused gtk_rc_auto_parse variable.

	* gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
	Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
	longer needed with GdkPixbuf.

	* gtk/gtkrc.c (_gtk_rc_init): Make private.
2001-06-21 17:45:26 +00:00
Owen Taylor
9c3c1cd3b5 Update a bit.
Thu Jun 21 12:31:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk-sections.txt: Update a bit.

	* Makefile.am: build GTK+ docs.
2001-06-21 17:44:27 +00:00
Tim Janik
f1e23c4013 added gtk_container_child_set_property() and
Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
        gtk_container_child_get_property().
2001-06-21 00:42:46 +00:00
Jonathan Blandford
10f3b34911 clean up (gtk_tree_view_move_cursor_page_up_down): implement.
Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
	(gtk_tree_view_move_cursor_page_up_down): implement.
2001-06-20 23:21:46 +00:00
Tim Janik
444bf88aba make maximum digits compile time configurable via MAX_DIGITS and up to 20.
Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkspinbutton.c: make maximum digits compile time configurable
        via MAX_DIGITS and up to 20. 5 was just ridiculously small.
        don't use automatic fixed size buffer for printf-ing floats, doubles
        can expand to really _huge_ strings, use g_strdup_printf() instead.
2001-06-20 04:13:37 +00:00
Tim Janik
9e171fcc95 hum, "adjustment" was a construct property in 1.2 and still needs to be.
Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
        construct property in 1.2 and still needs to be.

        * gtk/gtkwidget.c: "composite_child" is not a settable property.
2001-06-20 02:34:23 +00:00
Jonathan Blandford
8413ee73e5 New functions to clear a model.
Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c (gtk_list_store_clear):
	* gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
	clear a model.
2001-06-19 23:15:22 +00:00
Tim Janik
5ebd1d022a fix PROP_EVENTS.
Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.

        * gtk/Makefile.am:
        * gtk/gtk.h: disabled GtkPacker compilation.

        * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.

        * gtk/gtknotebook.c:
        * gtk/gtktable.c:
        * gtk/gtkbox.c: ported this over to child properties.

        * gtk/gtksettings.c: fetch class properties via
        g_object_class_list_properties().

        * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
        child arg interface. use gobjectnotifyqueue.c for child property
        notification.

        * gtk/gtkwidget.[hc]: provide necessary means for container child
        properties, i.e. ::child_notify signal,
        gtk_widget_freeze_child_notify(),
        gtk_widget_child_notify(),
        gtk_widget_thaw_child_notify().

        * tests/testgtk.c: removed inferior property handling code, for
        property editing, a generic module should be used, and GLE
        coincidentally fullfills that purpose.

        * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
        needs to be adapted to g_object_class_list_properties() before this
        builds again.
2001-06-19 12:54:10 +00:00
Jonathan Blandford
07ddd35c57 New function to test if a node is expanded.
Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
	test if a node is expanded.
2001-06-19 00:08:48 +00:00
Jonathan Blandford
5b3ed55f80 Fix bug where collapsing a selected row would result in the cursor/anchor
Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
	where collapsing a selected row would result in the cursor/anchor
	getting screwed up.
2001-06-18 23:44:41 +00:00
Jonathan Blandford
67f8b5bd46 Rename gtk_tree_sortable_sort_column_id_set_func. It's much shorter now.
Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
	gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
	* gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
	Now I can really reorder/sort all Store widgets.  treesorttest
	seems to just work now.
	* gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
	testtreesort worked through a big coincidence all this time.
	* gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
	code.
	* tests/testtreecolumns.c: Big 'ol warning at the top letting
	people know that this code should never ever ever be copied.

HA!

While everyone else was busy flaming eash other over configuration
engines, I secretly got sorting completely working with store widgets
and GtkTreeView.  GtkTreeModelSort, here I come!!!!!
2001-06-15 23:03:27 +00:00
Jonas Borgstrm
6adcae811b Fixed a small typo, it should be GTK_WINDOW_GROUP_GET_CLASS and not
2001-06-15  Jonas Borgstrm  <jonas@codefactory.se>

	* gtk/gtkwindow.h: Fixed a small typo, it should be
	GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
	on line 134.
2001-06-15 18:58:58 +00:00
Havoc Pennington
85b23757b6 Docs fixups, and:
2001-06-14  Havoc Pennington  <hp@redhat.com>

        Docs fixups, and:

	* gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
	GTK_DISABLE_DEPRECATED
2001-06-15 18:25:42 +00:00
Alexander Larsson
46880b96cf Update to new PangoLanguage changes.
2001-06-15  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
	Update to new PangoLanguage changes.

	* gtk/gtkwindow-decorate.c:
	* gtk/gtkwindow.[ch]:
	Added setting argument to gtk_window_set_has_frame ()
2001-06-15 15:58:26 +00:00
Jonathan Blandford
426ac9c6fe Whoops. Forgot this a couple months ago. Now GtkTreeStore sort of sorts.
Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
	this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
	finish it off tonight, though it basically works now when it's a
	list.  Also, I have a sinking feeling neither GtkTreeStore or
	GtkListStore actually resort when adding a new item.  I'll look
	into it.
2001-06-14 23:25:52 +00:00
Havoc Pennington
c604648121 fix bug identified by warnings I just added to gtktextbuffer
2001-06-14  Havoc Pennington  <hp@redhat.com>

	* demos/gtk-demo/main.c (load_file): fix bug identified by
	warnings I just added to gtktextbuffer
2001-06-14 22:29:48 +00:00
Havoc Pennington
a002196773 fix other typo
2001-06-14  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo

	* gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo

	* gtk/gtktextbtree.c: don't leak node data all over the place.

	* demos/gtk-demo/main.c (main): create fontify tags for the right
	buffer

	* gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
	to mention tags in the same table can't have the same name,
	suggested by Skip Montanaro

2001-06-11  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning
	for trying to add two tags with same name to the tag table

	* demos/gtk-demo/main.c (main): fix colors ;-)
2001-06-14 22:25:23 +00:00
Owen Taylor
cf2fab9077 Add a GtkWindowGroup struct that allows grouping together multiple windows
Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
	that allows grouping together multiple windows so that grabs
	within that set of windows only affect those windows.

	* gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
	signal for notification when a widget becomes shadowed
	by a grab or is no longer shadowed by a grab.

	* gtk/gtkwidget.c (gtk_widget_propagate_state)
	  gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
	insenstive widgets to maintain a grab.
2001-06-14 21:44:01 +00:00
Owen Taylor
22491fd6a4 Add missing gdk_rectangle_get_type() prototype.
Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.

	* gtk/gtk[hv]scale.c: Include math.h, stdlib.h

	* gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
	  gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
	  gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
	  gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
	  to recent changes in Pango.

	* tests/testgtk.c: Set language tags with gtk_label_set_markup()
	  to test whether the basic engine honors them.
2001-06-14 20:41:44 +00:00
Alexander Larsson
7d1a049bc3 Add some example config files that can be used with the URW fonts.
2001-06-14  Alexander Larsson  <alexl@redhat.com>

        * docs/README.linux-fb:
	Add some example config files that can be used with the URW fonts.

	* gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
	Set up the color ramps for DirectColor mode.
2001-06-14 18:10:01 +00:00
Havoc Pennington
6851448267 version to 1.3.6
2001-06-11  Havoc Pennington  <hp@redhat.com>

	* configure.in: version to 1.3.6
2001-06-14 16:34:21 +00:00
Havoc Pennington
5d7d584808 Release 1.3.6
2001-06-11  Havoc Pennington  <hp@redhat.com>

	* Release 1.3.6
2001-06-13 22:25:15 +00:00
Alexander Larsson
be12f52526 Unify shaped window code and make it repaint the area that used to be part
2001-06-13  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkwindow-fb.c:
	Unify shaped window code and make it repaint the area that used
	to be part of the shape, but isn't anymore.
2001-06-13 21:40:37 +00:00
Havoc Pennington
b858eb9f59 Updates
2001-06-11  Havoc Pennington  <hp@redhat.com>

	* NEWS: Updates

	* configure.in (GTK_MINOR_VERSION): bump version to 1.3.6

	* gtk/Makefile.am: glib_genmarshal already contains top_builddir
2001-06-13 21:24:09 +00:00
Alexander Larsson
b2ff45ef83 Don't pass on GDK_ACTION_DEFAULT. The Xdnd code passes zero instead, so do
2001-06-13  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
	Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
	passes zero instead, so do we.
2001-06-13 16:00:24 +00:00
Alexander Larsson
099da4d222 Deep copy dash_list too. (_gdk_fb_gc_new): Set default cap_style before
2001-06-13  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
	Deep copy dash_list too.
	(_gdk_fb_gc_new): Set default cap_style before
	setting values.
2001-06-13 15:02:35 +00:00
Sven Neumann
2b448b8e37 shut up CVS 2001-06-13 14:04:16 +00:00
Alexander Larsson
a20b45995f New functions.
2001-06-12  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
	gdk_keymap_get_direction): New functions.
2001-06-12 19:22:43 +00:00
Jonathan Blandford
5c60d1cf77 further justify gtk_tree_model_get_flags by adding a second flag for atk.
Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
	gtk_tree_model_get_flags by adding a second flag for atk.

	* gtk/gtktreemodel.c: make cursor behavior interact better with
	mouse presses.
2001-06-12 18:12:08 +00:00
Jonathan Blandford
5f437331f1 changed expand_row/collapse_row to be 2 signals each -- test_expand_row
Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): changed
	expand_row/collapse_row to be 2 signals each -- test_expand_row
	and row_expanded as well as test_collapse_row and row_collapsed.
2001-06-11 16:59:28 +00:00
Anders Carlsson
5d58e47c53 Update signal name to be changed instead of selection_changed.
2001-06-10  Anders Carlsson  <andersca@codefactory.se>

	* demos/gtk-demo/stock_browser.c (do_stock_browser): Update
	signal name to be changed instead of selection_changed.
2001-06-10 09:57:55 +00:00
Havoc Pennington
994a8daae5 add read-only "scroll_offset" property for notification when the layout
2001-06-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkentry.c (gtk_entry_class_init): add read-only
	"scroll_offset" property for notification when the layout offsets
	may have changed
	(gtk_entry_adjust_scroll): add notify for scroll_offset
	(gtk_entry_layout_index_to_text_index): function to compensate for
	preedit string when doing coordinate stuff on the entry's layout
	(gtk_entry_text_index_to_layout_index): inverse function
	(gtk_entry_get_layout_offsets): hook to get current position of
	the layout
	(gtk_entry_get_layout): hook to get the layout itself.

	* gtk/gtklabel.c (gtk_label_get_layout): new function
2001-06-09 00:12:00 +00:00
Jonathan Blandford
a055d0620d New keybinding. (gtk_tree_view_focus): Fix merge conflict.
Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
	keybinding.
	(gtk_tree_view_focus): Fix merge conflict.
2001-06-08 23:51:21 +00:00
Jonathan Blandford
f92ccfc08c new function to clean up cursor handling.
Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
	clean up cursor handling.

	Pretty much nailed single selection motion, and multi-selection
	focus minus the fact that the anchor isn't quite right.
2001-06-08 22:59:37 +00:00
Havoc Pennington
30d3e85d96 remove bogus g_return_if_fail
2001-06-08  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
	bogus g_return_if_fail

	* io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
	likely timeout resolution, set it to an arbitrarily-chosen short
	delay.
	Fixes bug #55953 from warmenhoven@yahoo.com
2001-06-08 20:15:49 +00:00
Havoc Pennington
7009511a22 added this function
2001-06-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
	function

	* gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
	this function
2001-06-08 19:03:23 +00:00
Alex Larsson
348482374a Added compat macros for all old GTK_TYPE_GDK_xxx types. Fixes bug #52892
2001-06-08  Alex Larsson  <alexl@redhat.com>

	* gtk/gtkcompat.h.in:
	Added compat macros for all old GTK_TYPE_GDK_xxx types.
	Fixes bug #52892
2001-06-08 19:00:29 +00:00
Havoc Pennington
aa0b73d8bd forgot to save 2001-06-08 18:11:09 +00:00
Havoc Pennington
c9651bfdab had GtkContainerClass as parent still
2001-06-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
	parent still
2001-06-08 18:10:43 +00:00
Havoc Pennington
74e7da214f geez, don't call g_list funcs on GSList
2001-06-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
	don't call g_list funcs on GSList

	* gtk/gtkwidget.c (gtk_widget_child_focus): replaces
	gtk_container_focus(), since some widgets have focusable locations
	which are not other widgets. These widgets should not have to be
	containers just to manage the focus. For example, GtkHSV is
	currently a container for no good reason. Also, this cleans
	up the "if (is_container && is_sensitive && is_drawable)
	container_focus ()" mess in widget implementations.

	* gtk/gtkcontainer.c (gtk_container_focus): deprecate this
	function, and have it just call gtk_widget_child_focus().

	* gtk/gtkhsv.c: derive from widget not container

	Throughout: fix to reflect GtkContainer::focus change
2001-06-08 18:09:34 +00:00
Jonathan Blandford
72ef055bde warn if row/cols are out of range. Fix bug #55921
Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
	range.  Fix bug #55921

	* gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
	(#55920).

Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
	range.  Fix bug #55921

	* gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
	(#55920).
2001-06-08 16:50:58 +00:00
Owen Taylor
da562f4dc8 Add a direction-changed signal, and gdk_keymap_get_current_direction().
Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkkeys.[ch]: Add a direction-changed signal,
	and gdk_keymap_get_current_direction().

	* gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
	  gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
	the current locked group, use it to set the keymap
	direction.

	* gtk/gtksettings.c: Add a new gtk-split-cursor setting
	to determine whether we draw a split cursor or use
	a jumping cursor based on the current direction.

	* gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
	Obey the split cursor setting.

Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmulticontext.c (activate_cb): Only activate
	when toggling on, not when toggling off... (#55906)

Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_double_buffered):
	s/gdk_window_begin_paint/gdk_window_begin_paint_region/
	in docs. (#55812, Vitaly Tishkov)
2001-06-08 16:07:00 +00:00
Anders Carlsson
11699349bb Changed signal name from selection_changed to changed in signal connection
2001-06-08  Anders Carlsson  <andersca@codefactory.se>

	* demos/gtk-demo/main.c (create_tree): Changed signal name from
	selection_changed to changed in signal connection to GtkTreeSelection,
	also used g_signal_connectc since GtkTreeSelection is now a GObject.
2001-06-08 07:09:59 +00:00
Jonathan Blandford
59444d85e3 Now it's a GObject instead of a GtkObject. The
Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c: Now it's a GObject instead of a
	GtkObject.  The GtkTreeSelection::selection_changed signal is now
	the GtkTreeSelection::changed signal.

	* gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
	object.

	* tests/gtktree*.c: Modified to deal with new GtkTreeSelection
	object.
2001-06-07 22:33:14 +00:00
Havoc Pennington
10b868ebae fix glib-mkenums and glib-genmarshal again
2001-06-07  Havoc Pennington  <hp@redhat.com>

	* gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
2001-06-07 22:01:26 +00:00
Havoc Pennington
8cd9e49682 use Owen's new way of doing stampfiles/generated sources
2001-06-07  Havoc Pennington  <hp@redhat.com>

	* Makefile.am: use Owen's new way of doing stampfiles/generated
	sources
2001-06-07 21:13:11 +00:00
Havoc Pennington
138d95a9a5 fixups for glib-mkenums and glib-genmarshal (not tested yet because with
2001-06-07  Havoc Pennington  <hp@redhat.com>

	* gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
	(not tested yet because with absolute path to srcdir I can't build
	atk, but it was broken anyway so this may help)
2001-06-07 20:43:05 +00:00
Havoc Pennington
d0351d1529 output m4macros/Makefile
2001-06-07  Havoc Pennington  <hp@redhat.com>

	* configure.in: output m4macros/Makefile
2001-06-07 19:00:41 +00:00
Jonathan Blandford
af921e9647 hook up arrow buttons. Fixes #55460 reported by matthiasc@poet.de.
Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
	buttons.  Fixes #55460 reported by matthiasc@poet.de.
2001-06-07 18:06:08 +00:00
Jonathan Blandford
1d17426bc1 centralize expansion/collapsing so it only happens in one place.
Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@webwynk.net>

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
	expansion/collapsing so it only happens in one place.
	(gtk_tree_view_real_expand_row): ditto.
2001-06-07 17:22:15 +00:00
Havoc Pennington
5aba82da8f subst GLIB_GENMARSHAL, GOBJECT_QUERY, GLIB_MKENUMS variables
2001-06-07  Havoc Pennington  <hp@redhat.com>

	* m4macros/glib-2.0.m4: subst GLIB_GENMARSHAL, GOBJECT_QUERY,
	GLIB_MKENUMS variables

	* gmodule-2.0.pc.in: add gmodule_supported variable

	* glib-2.0.pc.in: add glib_genmarshal, gobject_query,
	glib_mkenums variables

	* configure.in: put G_MODULE_SUPPORTED value into
	.pc files

	* autogen.sh: support AUTOGEN_SUBDIR_MODE

	* Makefile.am: add -uninstalled.pc.in to EXTRA_DIST

2001-06-07  Havoc Pennington  <hp@redhat.com>

	* pango/Makefile.am: add libpango.la to _DEPENDENCIES for the
	other libs

	* configure.in: use AM_PATH_GLIB_2_0

	* autogen.sh: support AUTOGEN_SUBDIR_MODE

	* Makefile.am: dist the .pc.in files

2001-06-07  Havoc Pennington  <hp@redhat.com>

	* atk/Makefile.am: use @GLIB_GENMARSHAL@ so we can use uninstalled
	glib-genmarshal

	* configure.in: rearrange the library checks to support
	uninstalled linking

	* autogen.sh: add support for AUTOGEN_SUBDIR_MODE

	* atk-uninstalled.pc.in: new file, allows linking to uninstalled
	ATK in giant GTK tarball

2001-06-07  Havoc Pennington  <hp@redhat.com>

	* tests/Makefile.am: add missing -I flag

	* gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.

	* configure.in: use pkg-config to see if GModule is
	supported; fix to properly turn on included loaders
	when GModule isn't supported; don't use AC_CHECK_LIB
	when libs are not installed yet

	* autogen.sh: add support for AUTOGEN_SUBDIR_MODE

	* Makefile.am (SUBDIRS): add m4macros subdir

	* gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
	dependencies also.
2001-06-07 16:40:01 +00:00
Jonathan Blandford
2d18f2f420 fix silly bug reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
	reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
2001-06-07 15:34:06 +00:00
Pablo Saratxaga
d630084e3e Updated Azeri and Walloon files 2001-06-07 15:21:09 +00:00
Jonathan Blandford
157dc163b6 Handle key bindings to expand and collapse rows.
Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c
	(gtk_tree_view_real_expand_collapse_cursor_row): Handle key
	bindings to expand and collapse rows.
	(gtk_tree_view_real_select_cursor_parent): New key binding.
	(gtk_tree_view_real_toggle_cursor_row): New key binding.

	* gtk/gtkmarshal.list: new
	marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
2001-06-07 00:07:32 +00:00
Havoc Pennington
cf3d1e1f6f add "inverted" property
2001-06-06  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkrange.c (gtk_range_class_init): add "inverted" property

	* gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
	Down to move visually rather than logically, since it confuses
	people. Add -/+ and Ctrl--/+ bindings for logical movement.
2001-06-06 20:39:02 +00:00
Alex Larsson
2122f8d4ac Fix up error messages.
2001-06-06  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
	Fix up error messages.
2001-06-06 16:20:18 +00:00
Owen Taylor
2304a86ef9 Include gtkwidget.h (#55798, Karl Nelson)
Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.h: Include gtkwidget.h
	(#55798, Karl Nelson)

	* gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
	a valid latin-1 character. (Marc Lehmann, #35467)

	* gdk/x11/gdkwindow-x11.c: Fix minor typo in comment.
	(Marc Lehmann, #35467)
2001-06-06 14:35:58 +00:00
Alex Larsson
7e2541bd59 Don't swap the order of the args to gtk_widget_destroyed.
2001-06-05  Alex Larsson  <alexl@redhat.com>

	* demos/gtk-demo/appwindow.c (do_appwindow):
	Don't swap the order of the args to gtk_widget_destroyed.
2001-06-06 00:05:52 +00:00
Havoc Pennington
ec6baad4d8 rename from gtk_text_iter_reorder
2001-06-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (gtk_text_iter_order): rename from
	gtk_text_iter_reorder
2001-06-05 21:53:56 +00:00
Alex Larsson
56984ab277 Don't crash when the properties window is destroyed.
2001-06-05  Alex Larsson  <alexl@redhat.com>

	* tests/testgtk.c (destroy_properties):
	Don't crash when the properties window is destroyed.

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
	Use with_mnemonics to handle the case of stock items with
	underscores in them.
2001-06-05 21:48:24 +00:00
Havoc Pennington
e426751e74 rename from gtk_text_iter_reorder
2001-06-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (gtk_text_iter_order): rename from
	gtk_text_iter_reorder
2001-06-05 21:43:37 +00:00
Havoc Pennington
5e23d97ddb new function
2001-06-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
2001-06-05 20:45:33 +00:00
Havoc Pennington
b32e7c9bb8 clamp the value to the range that was set
2001-06-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value
	to the range that was set

	* gtk/gtkrange.c: add value_changed signal, primarily
	intended for use with GtkScale
	(gtk_range_set_increments): new function
	(gtk_range_set_range): new function with weird name
	(gtk_range_set_value): new function
	(gtk_range_get_value): new function

	* gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename
	from gtk_spin_button_get_value_as_float(). Compat #define
	added for get_value_as_float.

	* gtk/gtkhscale.c (gtk_hscale_new_with_range): new function

	* gtk/gtkvscale.c (gtk_vscale_new_with_range): new function

2001-06-05  Havoc Pennington  <hp@redhat.com>

	* test-loaders.c (main): use putenv not setenv, reported by
	 Armin Theissen
2001-06-05 20:07:02 +00:00
Jonathan Blandford
451b224324 Fix bug #55573
Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
2001-06-05 19:01:30 +00:00
Owen Taylor
192c1756f6 Deprecate gtk_widget_set().
Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.h: Deprecate gtk_widget_set().

	* tests/testgtk.c (create_tooltips): Remove usage of
	gtk_widget_set().
2001-06-05 18:51:52 +00:00
Havoc Pennington
8fd5c30b2f Use new mnemonic convenience functions
2001-06-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkcolorsel.c: Use new mnemonic convenience functions

	Applying patch from Jeff Franks, with function docs added.

	* gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
	remove call to set_mnemonic_widget, change docs a bit.

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
	new function

	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
	new function

	* gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function

	* gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
	function
	(gtk_radio_button_new_with_mnemonic_from_widget): new function

	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
	new function

	* gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
	function

	* gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on
	auto-selection of mnemonic widget.
2001-06-05 18:22:30 +00:00
Erwann Chenede
40bd214919 file testmultidisplaysimple.c was initially added on branch gtk-multihead. 2001-06-05 16:10:23 +00:00
Jonathan Blandford
f3f7dd9e0c Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
	Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
	(gtk_tree_view_column_set_min_width): ditto.
2001-06-05 15:30:53 +00:00
Owen Taylor
04de6401f9 s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS):
	s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)

Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
	gtk_clist_thaw().
2001-06-05 15:05:21 +00:00
Owen Taylor
284def64a7 Improve docs for GtkStateType. (Fixes #55751, among other things.)
Tue Jun  5 10:54:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkenums.sgml: Improve docs for GtkStateType.
	(Fixes #55751, among other things.)
2001-06-05 14:55:53 +00:00
Havoc Pennington
5b2f2133ec Ignore releases for buttons 6, 7
2001-06-04  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
	releases for buttons 6, 7
2001-06-05 01:18:15 +00:00
Havoc Pennington
96d2d8015a Fix a search-and-replace screwup (s/CHECK/SEPARATOR/ gone awry). Patch
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
	(s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
	#55562
2001-06-05 00:20:21 +00:00
Havoc Pennington
2cf4b8ad72 handle case where text_view->layout == NULL by assuming its size is 0,
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_size_request): handle case
	where text_view->layout == NULL by assuming its size is 0,
	i.e. same as if we haven't done any reflow. Reported by
	Hidetoshi Tajima #55448
2001-06-04 23:53:43 +00:00
Havoc Pennington
5d1c5446c5 support button 6 and 7 for scroll left/right, from Thomas Broyer
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
	and 7 for scroll left/right, from Thomas Broyer
2001-06-04 23:46:14 +00:00
Havoc Pennington
1b3c921437 Handle case where we need to parse the xsetting as if it were an RC file
2001-05-10  Havoc Pennington  <hp@redhat.com>

	* gtk/gtksettings.c (gtk_settings_get_property): Handle case where
	we need to parse the xsetting as if it were an RC file string.

	* gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
	value of palette from settings, not from static variable

	* gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
	xsettings translation table

	* gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because
	hardcoding the toolbar style conflicts with new customizable
	toolbar style philosophy
	(gtk_toolbar_class_init): add settings for default toolbar style;
	these are used unless the app specifically forces a toolbar style

	* gtk/gtksettings.c (settings_install_property_parser): only
	return at the start if we warn and parser == NULL

	* gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
	palette changed handler so we don't notify dead color selections

	* gtk/gtkstyle.c (gtk_default_draw_shadow): handle
	xthickness/ythickness of 0 or 1 properly
	(gtk_default_draw_resize_grip): clear the background behind the
	resize grips, and align to bottom right if we square the
	area to be drawn.

	* gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on
	statusbar label to 1, so it doesn't make toplevels resize oddly
	(gtk_statusbar_size_request): add grip size to request
	(gtk_statusbar_size_allocate): hack so the hbox still works with
	the grip size in the request

	* gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix
	bug where showing all on a toplevel makes the toolbar
	button text appear despite the toolbar mode

	* gtk/gtkmenubar.c: add internal padding style property

	* gtk/gtktoolbar.c: Add internal padding style property; add
	shadow type style property

	* gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
	state; and put Container::border_width outside the frame

	* gtk/gtktextview.c: don't draw focus rectangle if we're in
	interior focus mode, we just use blinking cursor
2001-06-04 23:15:51 +00:00
Havoc Pennington
9cc992b6e7 Make gdk-pixbuf have same version number as GTK
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* configure.in: Make gdk-pixbuf have same version number as GTK
2001-06-04 22:39:17 +00:00
Havoc Pennington
5c7c11cec8 Get rid of stupid g_return_if_fail on digits greater than 6. If there
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on
	digits greater than 6. If there actually are limits (which there
	likely aren't), should clamp to them not warn.
	(gtk_spin_button_new_with_range): don't take log of 0
	(gtk_spin_button_size_request): use digits to compute size
	request, rather than step increment.

	* tests/testgtk.c (create_spins): test larger values of digits

	* gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
	font on map not expose, so we don't get weirdness during scrolling
2001-06-04 22:32:10 +00:00
Havoc Pennington
2d1f353aa4 Apply fix from Sam Solon, bug #54577, update value even if not drawable.
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
	Sam Solon, bug #54577, update value even if not drawable.
2001-06-04 21:55:20 +00:00
Havoc Pennington
def01f6cbb remove C++ comment, reported by Dan McNichol
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf-xlibrgb.c (xlib_rgb_init): remove C++ comment,
	reported by Dan McNichol
2001-06-04 20:33:37 +00:00
Havoc Pennington
47af28acac patch from Szekeres Istvan, bug #52560
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
	bug #52560
2001-06-04 20:31:51 +00:00
Havoc Pennington
a6eec2785d change SCROLL_RIGHT to SCROLL_LEFT, reported by Thomas Broyer.
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
	SCROLL_LEFT, reported by Thomas Broyer.
2001-06-04 19:47:35 +00:00
Havoc Pennington
31a2580725 Process updates immediately, to prevent funny lag effect when scrolling,
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkrange.c (gtk_range_adjustment_value_changed):
	Process updates immediately, to prevent funny lag effect
	when scrolling, at some mild potential efficiency cost.
2001-06-04 19:43:15 +00:00
Havoc Pennington
cfdca30ce3 on middle click, center slider on the click.
2001-06-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkrange.c (gtk_range_button_press): on middle click, center
	slider on the click.
2001-06-04 19:29:25 +00:00
Owen Taylor
6a230f1f8b Remove GtkArgSetFunc, GtkArgGetFunc.
Mon Jun  4 15:08:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk-overrides.txt: Remove GtkArgSetFunc, GtkArgGetFunc.
2001-06-04 19:08:59 +00:00
Havoc Pennington
42f429be76 make this special-case hscale/vscale details, so we can use it for
2001-06-03  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
	hscale/vscale details, so we can use it for scrollbar as well.

	* tests/testgtk.c (reformat_value): honor digits from GtkScale

	* gtk/gtkenums.h (GtkTroughType): Remove this enum
	(GtkScrollType): add START and END from GtkTroughType

	* gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
	its x/y arguments

	* gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
	gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
	gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
	gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
	gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.

	Notable changes in the process:

	- stepper_size style property is the height for vertical
	  ranges, width for horizontal; the other dimension matches
	  the trough size
	- add ability to do NeXT-style steppers (and several other styles
	  that don't make any sense)
	- added min_slider_length, fixed_slider_length properties to
          GtkScrollbar
        - cleaned some private (or at least useless) functions out of
          gtkscale.h
        - moved bindings to GtkScale from subclasses, even arrow keys,
	  since blind users don't know scale orientation.
        - change move_slider action signal to use new GtkScrollType,
	  remove GtkTroughType argument
	- digits rounds the values a range will input to the given
	  number of decimals, but will not try to force adjustment
	  values set by other controllers. That is, we no longer
	  modify adjustment->value inside a value_changed handler.
	- added getters for GtkScale setters
        - middle-click begins a slider drag
2001-06-04 02:31:12 +00:00
Jonathan Blandford
741c71eb93 Initial stab at getting the focus code to work.
Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
	getting the focus code to work.
	(gtk_tree_view_class_init): Add a bunch of keybindings.

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_set_cell_data_func):
	s/GtkCellDataFunc/GtkTreeCellDataFunc.
	(_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
	of "properties_changed" to help justify the death of the latter
	signal. (-:

	* tests/testtreefocus.c (main): Let some columns be focussable to
	test focus better.
2001-06-01 23:05:46 +00:00
Jonathan Blandford
11043de66f Initial stab at getting the focus code to work.
Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
	getting the focus code to work.
	(gtk_tree_view_class_init): Add a bunch of keybindings.

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_set_cell_data_func):
	s/GtkCellDataFunc/GtkTreeCellDataFunc.
	(_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
	of "properties_changed" to help justify the death of the latter
	signal. (-:

	* tests/testtreefocus.c (main): Let some columns be focussable to
	test focus better.
2001-06-01 22:57:30 +00:00
Havoc Pennington
fe3e516aa1 implement overwrite mode
2001-06-01  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode

	* gtk/gtktextview.c (gtk_text_view_commit_handler): don't
	overwrite in overwrite mode if we already deleted the selection
	and replaced it with new text.

	* gtk/gtklabel.c (gtk_label_select_region_index): if you set the
	selection to an empty range, clear the clipboard if we owned it.
	(gtk_label_set_selectable): give up selection if we become
	unselectable.
	(gtk_label_state_changed): override state changed to unselect text
	when insensitive
	(get_text_callback): add paranoia check that indexes aren't
	outside of label->text
	(gtk_label_select_region): make -1 for start_offset mean "end of
	label," for consistency with GtkEditable

	* gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
	GTK_DIALOG_NO_SEPARATOR flag
2001-06-01 19:26:01 +00:00
Owen Taylor
ad88113f34 Fix notifications on non-existant "enable_arrow_keys". (#53753, Skip
Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix
	notifications on non-existant "enable_arrow_keys".
	(#53753, Skip Montanaro)
2001-06-01 17:46:45 +00:00
Owen Taylor
1a6efe96a7 Add GDK_TYPE_RECTANGLE.
Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrectangle.c (gdk_rectangle_get_type): Add
	GDK_TYPE_RECTANGLE.

	* gtk/gtkwidget.c (gtk_widget_class_init): Fix type
	of allocation argument be GDK_TYPE_RECTANGLE.
2001-06-01 15:44:13 +00:00
Owen Taylor
f7ce63ab5f Account for the fact that the border width is _outside_ the window. (Fixes
Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c: Account for the fact that the border
	width is _outside_ the window. (Fixes #54585, bug found
        by Bastien Nocera.)
2001-05-31 19:11:16 +00:00
Owen Taylor
b263249d7c Correct typoe when describing order of composition. (#53371, Skip
Wed May 30 16:56:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkrc.sgml (pattern): Correct typoe when
	describing order of composition. (#53371, Skip Montanaro)
2001-05-30 20:58:07 +00:00
Owen Taylor
27bf39f924 Validate value from GDK settings against parameter spec.
Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksettings.c (gtk_settings_get_property): Validate
	value from GDK settings against parameter spec.

	* gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
	to temporary values and use g_value_transform(), since
	thinking that GValue was going to be easy or efficient
	to use was, of course, a mistake.

        * gtk/gtksettings.c: Add cursor blink setting.

	* gdk/x11/gdkevents-x11.c: Add cursor blink X settings.

	* gtk/gtkentry.c: Add cursor blinking.

	* gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
	cursor blink global settings.

	* gtk/gtkentry.c (gtk_entry_button_press): Add notification
	for :text_position in places where it is missing.
2001-05-30 20:40:28 +00:00
Darin Adler
811b03aef1 Fix prototype to use "(void)" instead of "()".
* gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
2001-05-29 23:28:28 +00:00
Owen Taylor
87403457fa Fix GNU sedism (#55430)
Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>

	* autogen.sh (have_libtool): Fix GNU sedism (#55430)
2001-05-29 22:18:48 +00:00
Owen Taylor
b6dde32695 Use $PKG_CONFIG, not pkg-config. (#51032)
Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
	not pkg-config. (#51032)

	* gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
	(fixes #51952, James Henstridge)
2001-05-29 21:42:20 +00:00
Jonathan Blandford
a076a9eb3a Patch from Helmethead <hoshem@mel.comcen.com.au> to fix up bmp decoder to:
Mon May 28 14:21:35 2001  Jonathan Blandford  <jrb@redhat.com>

	* io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
	fix up bmp decoder to:
	 - adds 16 bpp bmp support (bug #53884)
	 - adds OS/2 1.x format bmp support (bug #54964)
	 - adds 4 bpp RLE compressed bmp support
	 - adds 1 bpp colormap support
	 - fixes negative height (top down) bmp support.
2001-05-28 18:28:16 +00:00
Alexander Larsson
57237d4d89 Rename to the more correct gtk-go-up.
2001-05-27  Alexander Larsson  <alla@lysator.liu.se>

	* gtk/gtkstock.h (GTK_STOCK_GO_UP):
	Rename to the more correct gtk-go-up.

	* gtk/stock-icons/stock_menu_sort_ascending.png:
	Added new file.

	* gtk/stock-icons/stock_menu_sort_descending.png:
	Changed to show descending instead of ascending.

	* gtk/gtkiconfactory.c:
	Added menu size icon to sort ascending.

	* gtk/stock-icons/Makefile.am:
	Added stock_menu_sort_ascending.png.

	* gtk/gtkseparatormenuitem.c:
	Use correct typenames.
2001-05-27 21:43:09 +00:00
Tim Janik
20715207b4 make hanlder id a gulong as in GSignal.
Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
        gulong as in GSignal.
2001-05-27 18:30:30 +00:00
Christian Rose
63666a1997 Updated Swedish translation.
2001-05-27  Christian Rose  <menthos@menthos.com>

	* po/sv.po: Updated Swedish translation.
2001-05-27 00:44:46 +00:00
Owen Taylor
83a97a9964 revert test harmless commit of po check script 2001-05-26 23:59:34 +00:00
Owen Taylor
68feb53054 test harmless commit of po check script 2001-05-26 23:53:13 +00:00
Jonathan Blandford
710fb020bf Remove almost all instances of GtkCellRenderer in code (all but dnd icon
Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
	instances of GtkCellRenderer in code (all but dnd icon code).
	Virtualized in GtkTreeViewColumn.  Now I need to move focus in
	there, and I can do multiple Cells per column.

	* gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly

	* gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
	when model was unreffed prior to removing the row reference.
2001-05-25 23:10:49 +00:00
Havoc Pennington
e05472202d fix so that default icons are created if you call gtk_stock_list_ids()
2001-05-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkiconfactory.c: fix so that default icons are created if
	you call gtk_stock_list_ids()

	* demos/gtk-demo/stock_browser.c (create_model): sort stock items
	in list
2001-05-25 22:08:53 +00:00
Havoc Pennington
fe14698f7f forgot to add stock_browser.c 2001-05-25 21:56:34 +00:00
Havoc Pennington
87684f9549 get sizes an icon set can render without falling back to missing image
2001-05-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
	set can render without falling back to missing image icon

	* gtk/gtktextview.c (gtk_text_view_size_request): request full
	size of text, instead of random values

	* gtk/gtktreeview.c (gtk_tree_view_size_request): request full
	size of tree view, instead of random values

	* gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
	image in an appropriate size

        * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
	etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/

        Throughout: fix GTK_STOCK_BUTTON_ instances

	* gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
	gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
	Add a bunch of new stock items/icons

	* gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
	new function, convenience for inserting columns with a data func

	* gtk/gtkiconfactory.c: keep a list of all existing icon factories
	(_gtk_icon_factory_list_ids): use list of all factories to
	generate a list of all known IDs

	* gtk/gtkstock.c (gtk_stock_list_ids): replace
	gtk_stock_list_items() with a function that returns all IDs known
	including those for GtkIconFactory.
2001-05-25 20:41:46 +00:00
Hans Breuer
b5db5d514d made fil mode GDK_STIPPLED actually work -> check boxes and radio buttons
2001-05-25  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
	work -> check boxes and radio buttons are drawn now, even on win9x.
	Improved line settings a bit, still no clue how to get really dotted
	lines on win9x, on NT it's PS_ALTERNATE.

	* gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for
	GDK_HINT_MIN_SIZE as well

	* gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST

	* gtk/gtk.def : updated

	* gtk/gtktreeprivate.h : change column_drop_func to be a function
	pointer not a function pointer pointer

	* tests/testdnd.c : include <stdlib.h> for putenv prototype

	* tests/testsocket.c : made it compile on win32 again

	* tests/makefile.msc : one more test-app uses prop-editor.obj
2001-05-25 15:43:53 +00:00
Hans Breuer
c436d8e249 reflect Havoc's recent api change
2001-05-25  Hans Breuer  <hans@breuer.org>

	* gdk_pixbuf.def : reflect Havoc's recent api change
2001-05-25 15:40:09 +00:00
Havoc Pennington
b995aae44d New function
2001-05-22  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkbin.c (gtk_bin_get_child): New function
2001-05-25 03:42:40 +00:00
Owen Taylor
92afa2ecc4 Add Mode_Switch to list of keys to ignore when doing compose processing.
Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
	to ignore when doing compose processing.
2001-05-24 00:16:49 +00:00
Joe Shaw
f508a7b7e2 Simplify as suggested by Havoc. Just get the last iter and work backward
2001-05-22  Joe Shaw  <joe@ximian.com>

	* gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle):
	Simplify as suggested by Havoc. Just get the last iter and work
	backward to the tag instead of getting a line and working back from
	there. Fixes passing in an invalid offset to
	iter_init_from_byte_offset().
2001-05-22 20:38:18 +00:00
Jonathan Blandford
04af158605 Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS macros to
Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview*.h:
	* gtk/gtkcell*.h:
	* gtk/gtk*store.h:
	Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
	macros to all objects.
2001-05-22 20:30:48 +00:00
Jonathan Blandford
66152ab6d0 Evil function to deal with very large (TM) amounts of text. May be moved
Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderertext.c
	(gtk_cell_renderer_text_set_fixed_size): Evil function to deal
	with very large (TM) amounts of text.  May be moved to
	GtkCellRenderer in the future, though I'm not sure it wants to be
	this accessible.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
	More sanity brought to this class.  I like it.

	* tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
	case.  Kids, don't try this at home.

	* gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
	convenience function.

	* gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
2001-05-22 19:18:47 +00:00
Kjartan Maraas
e8d54ce0c5 Updated Norwegian translation.
2001-05-22  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
2001-05-22 15:01:25 +00:00
Alexander Larsson
811543ce37 Added properties. Based on patch by Lee Mallabone.
2001-05-21  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkfontsel.c:
	Added properties. Based on patch by Lee Mallabone.

	* gtk/gtkruler.c:
	* gtk/gtkhruler.c:
	* gtk/gtkvruler.c:
	* gtk/gtktext.c:
	* gtk/gtktextview.c:
	Converted GtkArg to GParam. Based on patches by John Margaglione.

	* tests/Makefile.am:
	* tests/testtext.c:
	Add a property editor to testtext.
2001-05-22 00:11:10 +00:00
Owen Taylor
479810cac7 Only show the separator if both children are present and visible.
Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk{h,v,}paned.c: Only show the separator if both children
	are present and visible.

	* configure.in: Fixed reversed conditional causing all image
	libraries to be linked in.
2001-05-21 15:56:19 +00:00
Joe Shaw
b85c587152 Remove the assertion that top_y needs to be >= 0.
2001-05-21  Joe Shaw  <joe@ximian.com>

	* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
	that top_y needs to be >= 0.
2001-05-21 05:35:03 +00:00
Havoc Pennington
dd0aa0d815 Improve error messages for X errors and losing connection to the X server.
2001-05-11  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
	losing connection to the X server.
2001-05-20 22:48:40 +00:00
Owen Taylor
6144752d20 Start checks for X from pangox/pangoxft CFLAGS to avoid duplicate
Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Start checks for X from pangox/pangoxft
	CFLAGS to avoid duplicate libraries.

	* gdk/Makefile.am (LDFLAGS): Remove extra -lm.

	* configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
	to include gobject.
2001-05-20 18:25:34 +00:00
Owen Taylor
673a746328 Remove an excess $(GLIB_LIBS).
Sun May 20 12:53:49 2001  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
        excess $(GLIB_LIBS).
2001-05-20 18:24:37 +00:00
Alexander Larsson
7e1acba03c Convert GtkArgs to GParams. Based on patch by John Margaglione. Also do
2001-05-18  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkspinbutton.c:
	Convert GtkArgs to GParams. Based on patch by John Margaglione.
	Also do size request reasonable for MAXDOUBLE. Previously it printed
	the limits to a buffer and overran it. Instead do it using log10() and
	limit the width to 10 digits.

	* gtk/gtkwidget.c (gtk_widget_get_property):
	Correctly handle setting the parent property to NULL.
2001-05-18 22:31:02 +00:00
Owen Taylor
aa4a41face Reset style attributes even if the widget isn't realized.
Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_style_set): Reset
	style attributes even if the widget isn't realized.

	* demos/gtk-demo/main.c: Use a slightly smaller font.
2001-05-18 20:56:55 +00:00
Owen Taylor
50512ddcd2 Remove reallocate-redraws property. This is something that only a widget
Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcontainer.c: Remove reallocate-redraws property.
	This is something that only a widget writer would ever want
	to change.

	* gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
	gtk_signal_emit_by_name().

	* gtk/gtkviewport.c: Fix some warnings.

	* gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
	allowing the requisitions of multiple widgets to be grouped
	together.

	* tests/testgtk.c: Add GtkSizeGroup test

	* demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.

	* demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
	warnings.

	* configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
2001-05-18 18:30:59 +00:00
Owen Taylor
02d5f41c9e Add documentation about GtkSizeGroup.
Fri May 18 12:28:08 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtksizegroup.sgml gtk/gtk-sections.txt gtk/gtk.types:
	Add documentation about GtkSizeGroup.
2001-05-18 18:28:52 +00:00
Martin Baulig
60530b8a8e Renamed gtk_image_menu_item_add_icon() to gtk_image_menu_item_set_icon()
2001-04-28  Martin Baulig  <baulig@suse.de>

	* gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
	to gtk_image_menu_item_set_icon() and made it work if there's already
	an image.
	(gtk_image_menu_item_new): This function doesn't take any arguments anymore.
	(gtk_image_menu_item_new_with_label): New function.
2001-05-18 17:35:20 +00:00
Kenneth Christiansen
8be1504264 small changes 2001-05-18 17:34:39 +00:00
Jonathan Blandford
009212ad28 It's the worlds ugliest highlighting code!!!! The result is okay so long
Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/main.c (fontify): It's the worlds ugliest
	highlighting code!!!!  The result is okay so long as you don't try
	to stress it.  It also highlights a bug in the TextView so it's in
	an unproportional font right now until it's fixed.

	*demos/gtk-demo/*.c: Clean up code a bit to make it
	ugly-parser(TM) friendly. (-:
2001-05-18 16:28:30 +00:00
Joe Shaw
288ff7e058 Remove the assertions that x_offset and y_offset must be >= 0. Clip the
2001-05-17  Joe Shaw  <joe@ximian.com>

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
	that x_offset and y_offset must be >= 0. Clip the cursor being drawn
	if it is only partially onscreen.
2001-05-18 03:41:30 +00:00
Owen Taylor
69ef340389 Make logical motion and deletion by graphemes, not by characters.
Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c: Make logical motion and deletion by graphemes,
	not by characters.

	* gtk/gtkentry.c: Handle "trailing" returns from Pango when they
	are not zero or one; that is, when graphemes of multiple characters
	are involved.

	* gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
	FIXME.
2001-05-17 21:13:12 +00:00
Erwann Chenede
6b2fe1a343 file gdkdisplaymgr-x11.c was initially added on branch gtk-multihead. 2001-05-17 20:23:33 +00:00
Erwann Chenede
5ef38e87fa file gdkdisplaymgr-x11.h was initially added on branch gtk-multihead. 2001-05-17 20:23:33 +00:00
Erwann Chenede
78038379f8 file gdkdisplaymgr.c was initially added on branch gtk-multihead. 2001-05-17 20:23:32 +00:00
Erwann Chenede
a99985adaf file gdkdisplaymgr.h was initially added on branch gtk-multihead. 2001-05-17 20:23:32 +00:00
Alexander Larsson
6ee1ae13ad Add properties, based on patch by Lee Mallabone.
2001-05-17  Alexander Larsson  <alla@lysator.liu.se>

	* gtk/gtkbbox.c:
	Add properties, based on patch by Lee Mallabone.

	* gtk/gtknotebook.c:
	* gtk/gtktoolbar.c:
	Convert from GtkArg to GParam, based on patch by John Margaglione.

	* gtk/gtkhscale.c:
	* gtk/gtkvscale.c:
	* gtk/gtkhscrollbar.c:
	* gtk/gtkvscrollbar.c:
	* gtk/gtkrange.c:
	Move adjustment property to GtkRange.

	* gtk/gtklabel.c:
	Setup mnemonics on property changes

	* gtk/gtkwidget.c (gtk_widget_get_property):
	GdkExtensionMode is an enum, not a flag. Set it with
	g_value_set_enum ().

	* tests/prop-editor.c:
	Better propery editor.

	* tests/testgtk.c:
	Add new property test. Pass zero to the property editor to
	get properties from all derived types.
2001-05-17 16:22:06 +00:00
Owen Taylor
be277ae413 un May 13 12:01:12 2001 Owen Taylor <otaylor@redhat.com>
* autogen.sh (have_automake): Require libtool-1.4,
        automake-1.4p1.

        * acinclude.m4: Remove libtool macros.

        * gdk-pixbuf/Makefile.am: Add dependencies to loade
        modules.

        * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
        for libgdk.

        * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
        libgdk.la for libgtk.

        * modules/input/Makefile.am: Make modules have full
        dependencies.
2001-05-16 18:51:28 +00:00
Owen Taylor
55b115acba Require libtool-1.4, automake-1.4p1.
Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>

        * autogen.sh (have_automake): Require libtool-1.4,
        automake-1.4p1.

        * acinclude.m4: Remove libtool macros.

        * gdk-pixbuf/Makefile.am: Add dependencies to loade
        modules.

        * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
        for libgdk.

        * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
        libgdk.la for libgtk.

        * modules/input/Makefile.am: Make modules have full
        dependencies.
2001-05-16 18:51:07 +00:00
Jonathan Blandford
97fb7b7878 fix bug #54699 where paths weren't being checked for correctness.
Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
	#54699 where paths weren't being checked for correctness.
2001-05-16 18:16:57 +00:00
Jonathan Blandford
2970a2feee You can now set all sorts of properties in any order you wan, whether or
Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
	in any order you wan, whether or not the column is added to the
	tree, or the tree is realized.  Yay!

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_setup_sort_column_id_callback): handle
	sorting columns a lot saner

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
	new function to actually set wether or not a column is
	reorderable.

	* gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
	if we have 'em.

	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
	Fix nasty bug where we were showing the button just before
	realizing it.  As a result, the parent window was
	tree_view->window instead of tree_view->priv->header_window.

	* gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
	to let you easily reorder a list or tree.
2001-05-16 00:23:30 +00:00
Matthias Warkus
8b33cffe23 Fixed encoding 2001-05-15 17:48:31 +00:00
Matthias Warkus
e443d7cc34 Updated German translations for Glib and GTK+ HEAD. Phew. 2001-05-15 17:47:47 +00:00
Alexander Larsson
e3eb7927e7 Apply patch from John Margaglione that converts from args to properties.
2001-05-15  Alexander Larsson  <alla@lysator.liu.se>

	* gtk/gtkpacker.c: Apply patch from John Margaglione that converts
	from args to properties.
2001-05-15 15:31:45 +00:00
Yuri Syrota
f2d46127db Updated Ukrainian transaltion 2001-05-15 14:52:55 +00:00
Owen Taylor
cbb2129147 Apply patch from John Margaglione converting from args to properties.
Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkpreview.c: Apply patch from John Margaglione converting
	from args to properties. (#51957)

	* gtk/gtkscale.c (gtk_scale_class_init): Move install property
	calls to after ->set_property call.
2001-05-15 14:14:19 +00:00
Yuri Syrota
ee5b82c1bc Updated Ukrainian transaltion 2001-05-15 11:08:39 +00:00
Owen Taylor
6d2ce70689 Block against redundant changes.
Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>

	* tests/prop-editor.c: Block against redundant changes.

	* gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
	properties.
2001-05-14 19:14:57 +00:00
Owen Taylor
0466a7afce Missed from last commit. 2001-05-13 22:43:26 +00:00
Owen Taylor
868b00638c Remove creative formatting.
Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixmap.h: Remove creative formatting.

Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
	property API. (#51669)

	* gtk/gtkscale.c: Patch from John Margaglione converting to
	property API. (#51891)

	* gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
	to property API. (#50985)
2001-05-13 22:41:30 +00:00
Tim Janik
ee3cc234b8 remember widget's double buffering state across expose event, so we still
Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
        buffering state across expose event, so we still call end_paint().
2001-05-12 13:16:40 +00:00
ERDI Gergo
7cf827771d Peek strike-through setting (gdk_draw_layout_line_with_colors): Render
2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>

	* gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
	strike-through setting
	(gdk_draw_layout_line_with_colors): Render strike-through
2001-05-11 23:29:37 +00:00
Alexander Larsson
0cfd48a80e Expose the ring in the triangle at the correct place when exposing just a
2001-05-11  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkhsv.c (paint_triangle):
	Expose the ring in the triangle at the correct place when
	exposing just a part of the triangle.
2001-05-11 22:24:59 +00:00
Alexander Larsson
cf18c0258d Return FALSE, or window focusing will not work.
2001-05-11  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
	Return FALSE, or window focusing will not work.
2001-05-11 21:57:33 +00:00
Havoc Pennington
cc6b34c1e3 docs, fixes bug #54144
2001-05-11  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
	#54144

	* gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
	bug #54330

2001-05-11  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtkvruler.sgml,
	gtk/tmpl/gtkhruler.sgml: fix bug #54431

	* gtk/tmpl/gtkdrawingarea.sgml: fix bug #54331

	* gtk/tmpl/gtkenums.sgml: fix bug #54329, and
	update some other random things

	* gtk/gtk-sections.txt: updates

	* gtk/tmpl/gtkmenuitem.sgml: fix bug #54277

	* gtk/tmpl/gtkradiomenuitem.sgml: fix bug #54323,
	#54324, #54325
2001-05-11 17:13:44 +00:00
Tim Janik
564e2235e9 don't propagate exposes to NULL child.
Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
        propagate exposes to NULL child.

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
        against not having one of the scrollbars.

        * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
        we don't keep a mnemonic window if we have no mnemonic installed.
2001-05-11 04:09:47 +00:00
Tim Janik
836e5f4a79 grum, gtk_type_class() is not GNUC_CONST it has the _important_ side
Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
        it has the _important_ side effect of initializing a class.
2001-05-10 23:22:15 +00:00
Alexander Larsson
2c396fea9f Make sure you can compile out the implementation/wrapper assert macros.
2001-05-10  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkprivate-fb.h:
	Make sure you can compile out the implementation/wrapper assert
	macros.

	* gdk/linux-fb/gdkdrawable-fb2.c:
	Check implementation/wrappers, initialize type for pixmap dummys.

	* gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
	Hide the cursor if reading from the screen.

	* gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
	Fix sign bug in tiling code.

	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
	Handle background pixmaps.
2001-05-10 22:44:27 +00:00
Jonathan Blandford
6e70564088 New function to let user control where columns are dragged.
Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
	function to let user control where columns are dragged.

	* gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
	Escape is pressed.
2001-05-09 22:23:12 +00:00
Padraig O'Briain
9b490708ed Added include of unistd.h so that gid_t is defined (on Solaris) 2001-05-09 16:15:09 +00:00
Jonathan Blandford
3340826a50 New "columns_changed" signal.
Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@webwynk.net>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): New
	"columns_changed" signal.
	(gtk_tree_view_motion_draw_column_motion_arrow): Change column
	motion code to draw arrows to the side if indicator is outside the
	widget.
	(gtk_tree_view_map_expanded_rows): Implement.
2001-05-09 13:18:46 +00:00
Michael Natterer
ad13833f35 fixed invalid end-of-line.
2001-05-09  Michael Natterer  <mitch@convergence.de>

	* ja.po: fixed invalid end-of-line.
2001-05-09 12:29:49 +00:00
ÉRDI Gergo
01547feb74 Added .cvsignore files for CVS not to complain about executables 2001-05-07 22:05:32 +00:00
Alexander Larsson
3e7bd8bf66 Include gdkfb.h on linux-fb.
2001-05-07  Alexander Larsson  <alexl@redhat.com>

	* demos/testpixbuf-save.c:
	* demos/testpixbuf-drawable.c:
	Include gdkfb.h on linux-fb.
2001-05-07 19:27:51 +00:00
Alexander Larsson
404d1a2d7e New function for getting toplevel window at position.
2001-05-07  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
	New function for getting toplevel window at position.
	(gdk_drag_find_window): Use get_toplevel_window () instead
	of gdk_window_get_pointer(). (gdk_drag_status): Use
	correct context for getting window.

	* gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
	g_strdup the atom name.

	* gdk/linux-fb/gdkwindow-fb.c:
	Costmetic fix.

	* gtk/gtkdnd.c (gtk_drag_source_handle_event):
	Add code for changing cursor on linux-fb backend (same as
	win32).
2001-05-07 19:24:18 +00:00
Federico Mena Quintero
b19d0812ef Fixlet - Federico 2001-05-07 18:12:30 +00:00
Federico Mena Quintero
f14a807304 Test for bin->child being present before doing anything with it. Patch
2001-05-07  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
	present before doing anything with it.  Patch from Hvard Kvlen
	<havardk@netcom.no>.
2001-05-07 18:08:10 +00:00
Havoc Pennington
b4e4a0ed9d fix some shell typos
2001-05-04  Havoc Pennington  <hp@redhat.com>

	* configure.in: fix some shell typos

	* gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix

	* gtk/gtkimage.c: handle animations

	* gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
	border_width * 2, not just border_width

	* gtk/gtkscale.c: add "format_value" signal to allow people
	to override the way values are drawn.
	(gtk_scale_get_value_size): fix width/height mistake,
	and compute size from actual displayed text, not
	from made-up text.

	* gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in
	signal registration

	* tests/testtext.c: Add "Remove all tags" menu item for testing

	* gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement

	* demos/gtk-demo/main.c (main): add hack so we can find modules
	without installing gtk

	* demos/gtk-demo/textview.c (insert_text): demo font scaling

	* gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
	factor)
	(gtk_cell_renderer_text_set_property): remove some bogus
	g_object_notify

	* gtk/gtktexttag.c: add "scale" property which is a font scaling
	factor

	* gtk/gtktextlayout.c (add_text_attrs): add font scale attribute
	to layout

	* gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
	gtk_text_iter_is_first

2001-05-04  Havoc Pennington  <hp@redhat.com>

	* pixops/pixops.c (pixops_process): merge fix from stable: Patch
	 from hoshem@mel.comcen.com.au to fix nonzero X offsets.  Fixes
	 bug #50371.

        * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
	from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
	confusion of using "src" instead of "p".
        (pixops_composite_color_nearest): Use a more accurate (and
	correct, to begin with) compositing method.  This cures checks
	showing through on images with no alpha.

	* gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
	bytes unfilled.

	* gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints

	* gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
	area_updated signal to use signed ints.  Removed animation-related
	signals.

	* io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
	rewrite action

	* gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
	all the pesky details. Remove old frame-based API. Make
	GdkPixbufAnimation an abstract base class, derived by the loaders.
2001-05-07 15:58:47 +00:00
Christian Rose
607ac1e1b3 Updated Swedish translation. 2001-05-07 01:33:23 +00:00
Hans Breuer
3eb0ecf480 updated exports
2001-01-06  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def : updated exports

	* gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
	gdk won't compile anymore

	* gdk/win32/gdkevents-win32.c : initialize ret_val when
	processing GDK_FILTER functions, initialize event.key->hardware_keycode.
	Improved gdk_flush () to not only do pending drawing operations
	but also process all currently pending events. This should make
	the behaviour more similar to the X11 version.

	* gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
	option needs to be set even if there is no GDK_GC_BACKGROUND.
	(gdk_win32_hdc_get) : use predraw_set_background () independent
	of value_mask. This allows to draw dashed lines leaving the original
	background intact.

	* gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
	after processing, because we can't reuse it as the X11 version does.

	* gtk/gtk.def : updated exports

	* gtk/makefile.msc.in : added ATK, removed all test apps. (I
	would like to get rid of this file again, and use straight
	makefile.msc again, as the other Gtk+ subdirs do)

	* test/makefile.msc (new file) : build the test apps here

(phase two: something has send me a broken pipe signal :)
2001-05-06 14:07:49 +00:00
Hans Breuer
1fa43ed5b4 updated exports
2001-01-06  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def : updated exports

	* gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
	gdk won't compile anymore

	* gdk/win32/gdkevents-win32.c : initialize ret_val when
	processing GDK_FILTER functions, initialize event.key->hardware_keycode.
	Improved gdk_flush () to not only do pending drawing operations
	but also process all currently pending events. This should make
	the behaviour more similar to the X11 version.

	* gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
	option needs to be set even if there is no GDK_GC_BACKGROUND.
	(gdk_win32_hdc_get) : use predraw_set_background () independent
	of value_mask. This allows to draw dashed lines leaving the original
	background intact.

	* gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
	after processing, because we can't reuse it as the X11 version does.

	* gtk/gtk.def : updated exports

	* gtk/makefile.msc.in : added ATK, removed all test apps. (I
	would like to get rid of this file again, and use straight
	makefile.msc again, as the other Gtk+ subdirs do)

	* test/makefile.msc (new file) : build the test apps here
2001-05-06 14:02:45 +00:00
Owen Taylor
bd7502f9ce Release 1.3.5
Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>

	* Release 1.3.5

	* configure.in (GTK_MICRO_VERSION): Up to 1.3.5

        * NEWS: Updated

	* demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
	Makefile breakage.
2001-05-05 14:07:45 +00:00
Owen Taylor
d15b4aa50b Fix typo in filename.
Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>

	* demos/gtk-demo/images.c (progressive_timeout): Fix
	typo in filename.

	* gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
	out FIXME warning; just too annoying.
2001-05-05 13:21:22 +00:00
Pablo Saratxaga
81b7687f01 updated azeri file 2001-05-05 10:27:13 +00:00
Alex Larsson
3b782bdb94 Better error messages.
2001-05-04  Alex Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkcolor-fb.c:
	Better error messages.

	* gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
	Initialize abs_x and abs_y.

	* gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
	Correct handling of stipple offset.

	* gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
	Treat directcolor framebuffers as truecolor.
2001-05-04 21:41:17 +00:00
Owen Taylor
42cc312df6 Add dependency on Atk for accessibility support.
Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>

        * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
	dependency on Atk for accessibility support.

	* configure.in **/Makefile.am: Major reworking of substituted
	variables for CFLAGS/LIBS to make a lot more sane and
	keep the the compile/link lines a bit shorter.

	* gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2001-05-03 20:11:14 +00:00
James Henstridge
3125dc0cf2 remove '.' from end of include directory 2001-05-03 14:43:15 +00:00
Owen Taylor
cdd1527254 Fix return value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also, use
Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
	value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
	use _gtk_boolean_handled_accumulator.
2001-05-03 12:14:37 +00:00
Owen Taylor
7e9df6443b Patch from Juan Pablo Mendoza Mendoza to fix things so clicking inside
Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
	to fix things so clicking inside selection leaves cursor
	at point where clicked. (#50324)

	* gtk/gtksettings.c (gtk_settings_class_init): Restore
	sane value for default double click time.

	* tests/testtext.c (test_init): Really path to input modules.
2001-05-03 11:15:26 +00:00
Owen Taylor
d8c421f35d Fix trailing comma on enumeration. (#54071)
Thu May  3 05:36:06 2001  Owen Taylor  <otaylor@redhat.com>

        * pixbuf.h: Fix trailing comma on enumeration. (#54071)
2001-05-03 09:38:45 +00:00
Sven Neumann
d0d9f6449a include target-specific headers as done in testpixbuf-drawable.c
2001-05-03  Sven Neumann  <sven@convergence.de>

        * demos/testpixbuf-save.c: include target-specific headers as
        done in testpixbuf-drawable.c
2001-05-03 09:38:07 +00:00
Owen Taylor
ff73253c8d Split the property editor code out for reuse, improve.
* tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
	Split the property editor code out for reuse, improve.
2001-05-03 00:46:41 +00:00
Owen Taylor
4c2a74b79d Reduce new_text_length appropriately when we run into the size limit for
Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
	new_text_length appropriately when we run into the
	size limit for the entry. (#53445, reported by Jeff Franks)

	* tests/testgtk.c (create_entry): Remove most of the
	property toggle buttons. Replace with a "Props" button
	that brings up a property editor.

	* tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
	Split the property editor code out for reuse, improve.
2001-05-03 00:46:19 +00:00
Owen Taylor
a5d1bc41ec Always trap errors around calls to XSetInputFocus since we have no way of
Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
	trap errors around calls to XSetInputFocus since we have
	no way of knowing reliably whether we are viewable or
	not. (#53947)
2001-05-02 21:31:52 +00:00
Jonathan Blandford
bdd655c7ab fix bug in dropping columns. Moving columns now basically works modula
Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
	fix bug in dropping columns.  Moving columns now basically works
	modula some fine tuning.
2001-05-02 05:25:09 +00:00
Jonathan Blandford
5ce6ee5f8a Add autoscroll support. It mostly works, but could use some fine tuning.
Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
	autoscroll support.  It mostly works, but could use some fine
	tuning.
	* gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
	Actually move the column.
2001-05-01 23:09:50 +00:00
Owen Taylor
c626cd4233 New default theme! A slighly improved version of the 2.0 Raleigh theme,
Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c
	  gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
  	  New default theme! A slighly improved version of the 2.0 Raleigh
	  theme, with Windows-esque focus/drawing default.
	  (GtkWidget::interior_focus defaults to TRUE.)

	* gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2001-05-01 01:36:33 +00:00
Havoc Pennington
2635496aeb fix to work with gtk_paint_layout change
2001-04-30  Havoc Pennington  <hp@pobox.com>

	* tests/testtext.c (line_numbers_expose): fix to work with
	gtk_paint_layout change
2001-05-01 01:32:41 +00:00
Owen Taylor
2d372c4053 Add an extra parameter use_text to gtk_paint_label() to deal with
Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
	  gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
	  gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
          use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].

	* gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
	  with GtkWidget::interior_focus = TRUE better.

	* gtk/gtkbutton.c

	* gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove
	G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
	change that had to be made with g_object_get.
2001-04-30 23:23:54 +00:00
Jonathan Blandford
483f2d5203 new function. (gtk_tree_view_move_column_after): Clean up interface.
Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
	(gtk_tree_view_move_column_after): Clean up interface.
2001-04-30 16:16:02 +00:00
Tim Janik
c63e37b4b0 moved GtkAnchorType and GtkSideType from gtkpacker.h to gtkenum.h.
Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkpacker.h:
        * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
         to gtkenum.h.

        * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
        handled in switch).

        * gtk/Makefile.am:
        (gtk.defs): generate enum portions with  glib-mkenums.
        (gtktypebuiltins_evals.c): generate this with glib-mkenums.
        got rid of makeenums.pl and makeenums.awk in distributed tarballs.

        * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
        addition.

        * docs/Changes-2.0.txt: keep a note on signal handlers now
        not getting emitted during the emission they were connected within.
2001-04-29 03:08:32 +00:00
Havoc Pennington
9a1d0b5c09 fix bug in tooltip
2001-04-28  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2001-04-29 02:27:27 +00:00
Havoc Pennington
7ad3641353 voc Pennington <hp@redhat.com>
* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line):
	(gtk_text_layout_move_iter_to_next_line): fix these two for
	invisible text, lots of other stuff still hosed.

	* gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
	new function, replaces the get/set palette stuff. This function
	is intended for use by libgnomeui which should set the hook to a
	thing which sets the palette in GConf, and we need the
	GConf-to-xsettings proxy which will result in the change being
	propagated back to the GTK app.

	* gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning
	about unusable signals that it may be because the signal has
	parameters.

	* gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
	style, otherwise gtkrc.c won't know to create a new GtkStyle for
	it.
	(gtk_widget_modify_color_component): call
	gtk_widget_modify_style() so the rc style will get copied.
	(gtk_widget_modify_font): ditto

	* gtk/gtkrc.c: make a couple variables static

	* gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
	help button by default, since it does nothing

	* gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
	around with UI

	* gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
	so we can have tooltips

	* gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
	can have tooltips

	* gdk/gdkimage.h: mark gdk_image_new_bitmap with
	GDK_ENABLE_BROKEN, because its memory behavior is completely
	hosed.

	* gtk/gtknotebook.c: remove key press handler, replace with
	binding set, add numeric keypad support

	* gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete

	* gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms

	* gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
	addition to plain Delete

	* gtk/gtktextview.c (gtk_text_view_key_press_event): accept
	GDK_KP_Enter in addition to GDK_Return

	* gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
	activate on entry instead of key press
	(gtk_font_selection_on_clist_key_press): get
	rid of this signal handler, not needed with new font sel.

	* gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
	no-longer-needed emit_stop_by_name(), just return TRUE

	* gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
	cruft, this widget is no longer focusable.

	* gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
	gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
	move_slider action signal, add binding set for vscale/hscale, in
	the process support numeric keypad

	* gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings;
	make GDK_Return and GDK_KP_Enter activate the entry via
	binding set, instead of hardcoded.
2001-04-28 20:18:29 +00:00
James Henstridge
f06a725358 s/G_PARAM_WRITE/G_PARAM_WRITABLE/
obvious fix to make it compile
2001-04-28 05:17:31 +00:00
Jonathan Blandford
c4f26ae336 Massive reorder/cleanup of a lot of the code. Some documentation added.
Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
	code.  Some documentation added.
2001-04-28 00:29:34 +00:00
Havoc Pennington
7e9b154f0c fix warning
2001-04-27  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning

	* gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable

	* gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
	line/para separators
	(gtk_entry_create_layout): set single paragraph mode on the layout

	* gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
	spacing between the image and label; instead, inside a button box
	the button will get extra space that will go there, but if people
	configure button box for 0 chubbiness, then there's no spacing.

	* gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
	and min/max size style properties, so people can tune their
	chubbiness.

	* tests/testgtk.c (make_toolbar): remove calls to removed toolbar
	functions

	* gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
	space_style, and button_relief into style properties, remove
	functions for setting them

	* gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop
	it back down

	* gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
	types from gtk_widget_style_get

	* gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
	with a style property.

	* gdk/x11/gdkevents-x11.c: namespace the settings

	* gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.

	* gtk/gtksettings.c (gtk_settings_class_init): remove code with
	side effects from inside g_assert(), so that G_DISABLE_ASSERT can
	be used. Also, translate doc strings for settings. Also, namespace
	the double-click-time property. Also, remove bell properties crap.
2001-04-28 00:12:47 +00:00
Sven Neumann
8ff2bf3b6e before creating links, check if pkg-config files exist for the default
2001-04-27  Sven Neumann  <sven@gimp.org>

	* Makefile.am: before creating links, check if pkg-config files
	exist for the default target. Otherwise link to the pkg-config files
	that got installed with this build.
2001-04-27 01:38:54 +00:00
Michael Natterer
b6809365c0 removed invalid multibyte sequence. fixed invalid end-of-line.
2001-04-27  Michael Natterer  <mitch@convergence.de>

	* da.po: removed invalid multibyte sequence.
	* jp.po: fixed invalid end-of-line.
2001-04-26 23:33:50 +00:00
Jonathan Blandford
0681799944 clean up column dragging code. Revealed some (potential) GdkWindow bugs.
Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
	dragging code.  Revealed some (potential) GdkWindow bugs.

	* gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
	_gdk_window_init_position to the end of reparent to fix the case
	of reparenting when new_x != old_x and new_y != old_y.
2001-04-26 23:17:36 +00:00
Chookij Vanatham
d483ebcff1 Added Hebrew Punctuation/Point Marks to the text. 2001-04-26 19:03:58 +00:00
Owen Taylor
3868c15699 remove some left-over files 2001-04-26 18:39:06 +00:00
Owen Taylor
fb5f7106dc Fix optimization that was correct for the use here, but completely
Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (strstr_len): Fix optimization that
	was correct for the use here, but completely incorrect
	in general.
2001-04-26 14:57:13 +00:00
Owen Taylor
604828e8d5 Remove deprecation of gtk_window_set_default_size() until patch adding
Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
	until patch adding gtk_window_set_size() is recommitted.

	* **Makefile.am configure.in gdk/x11/gdkim-11.c
	  gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
	  gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
	  (#10784)
2001-04-26 14:42:41 +00:00
Owen Taylor
5f58312cfd Add note about GTK_ENABLE_BROKEN.
Wed Apr 25 12:33:03 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/tmpl/gtktreeitem.sgml: Add note about GTK_ENABLE_BROKEN.
2001-04-25 16:34:09 +00:00
Owen Taylor
5dd0e3d631 Test for window == NULL in a number of cases.
Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for
	window == NULL in a number of cases.

	* tests/testdnd.c: Set module path for gdk-pixbuf.
2001-04-25 16:17:46 +00:00
Havoc Pennington
a48055e08c set_decorations_hint and set_functions_hint were still in the header
2001-04-25  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
	were still in the header
2001-04-25 14:15:04 +00:00
Alexander Larsson
4dd65a164f Forgot the ChangeLog entry. 2001-04-24 14:59:12 +00:00
Alexander Larsson
c668063747 i2001-04-24 Alexander Larsson <alexl@redhat.com>
* gtk/gtkclist.[ch]:
	* gtk/gtkctree.c:
	When there is a row highlighted for D'n'D it must alse
	be painted hightlighted on exposes. Otherwise exposes from
	the icon being dragged will mess up the hightlight.

	* gtk/gtkfontsel.c:
	Don't recenter selected font when exposing the font family
	clist. This means you can now actually scroll the font family
	list.

	* gtk/gtknotebook.c:
	Fix focus movement on scrolling tabs that are placed on the left
	and right.
2001-04-24 14:58:33 +00:00
Havoc Pennington
b84d2f1234 handle 0-height empty/invisible lines.
2001-04-21  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
	empty/invisible lines.

	* gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
	(gtk_text_iter_set_visible_line_index): new functions to set
	indexes excluding invisible text

	* gtk/gtktextlayout.c (line_display_iter_to_index): get visible
	index

	* gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
	(gtk_text_iter_get_visible_line_offset): new functions to
	get indexes excluding invisible text

	* gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
	bunch of extra padding that served no purpose

	* gtk/gtkdialog.c: Make all the spacings configurable via style
	properties, for chubbiness configuration in themes

	* tests/testtext.c: fix path to the immodules.
2001-04-24 12:24:35 +00:00
Jonathan Blandford
60051ff670 add missing '}' that got munched by #endif.
Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
	got munched by #endif.

	* gtk/Makefile.am (gtk_plug_c_sources): add missing '\'

	* gtk/gtktreeview.c: Refactored code to clean up a number of
	events.

	* gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
	values to make consistent with other functions.  Spotted by Jeff
	Franks <jcf@tpg.com.au>.

	* gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
	declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2001-04-23 23:03:53 +00:00
Sven Neumann
7954668292 gtk/Makefile.am gtk/gtkplug.c on request of Owen, reverted my last change
2001-04-23  Sven Neumann  <sven@gimp.org>

        * gtk/Makefile.am
        * gtk/gtkplug.c
        * gtk/gtksocket.c: on request of Owen, reverted my last change
        and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2001-04-23 19:51:06 +00:00
Sven Neumann
9fe4ac003c put into #ifdef GDK_WINDOWING_X11 to make GTK+ compile for non-X11 targets
2001-04-23  Sven Neumann  <sven@gimp.org>

	* gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
	compile for non-X11 targets again
2001-04-23 18:20:44 +00:00
Owen Taylor
aa25a73c0c Add $(MATH_LIB).
Sun Apr 22 15:51:32 2001  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am (LDADDS): Add $(MATH_LIB).
2001-04-22 19:52:55 +00:00
Keld Jørn Simonsen
62d4f00d44 Translations from Keld
evolution/po/da.po galeon/po/da.po gb/po/da.po gernel/po/da.po
gimp/po/da.po glade/po/da.po gnome-applets/po/da.po
gnome-core/po/da.po gnome-db/po/da.po gnome-pim/po/da.po
gnomeicu/po/da.po gnumeric/po/da.po gtk+/po/da.po
gtranslator/po/da.po nautilus/po/da.po pong/po/da.po
sodipodi/po/da.po ximian-setup-tools/po/da.po
2001-04-22 12:06:57 +00:00
Kenneth Christiansen
8a5e5e5d73 Translations from keld
control-center/po/da.po eog/po/da.po gb/po/da.po
gernel/po/da.po gimp/po/da.po gnome-db/po/da.po
gnome-libs/po/da.po gnome-lokkit/po/da.po gnome-print/po/da.po
gnomeicu/po/da.po gphoto/po/da.po gtk+/po/da.po
gtranslator/po/da.po libgda/po/da.po mc/po/da.po pan/po/da.po
pong/po/da.po sodipodi/po/da.po ximian-setup-tools/po/da.po
2001-04-21 21:19:39 +00:00
Alexander Larsson
ca20af0b31 API Change. Take GdkColor arguments instead of gdouble *. Leave the old
2001-04-20  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkcolorsel.[ch]:
	API Change. Take GdkColor arguments instead of gdouble *.
	Leave the old gtk_color_selection_set_color for compatibility,
	but marked deprecated.
	Do correct rounding when converting RGB <-> HSV.

	* gtk/gtkcolorseldialog.c:
	* tests/testgtk.c:
	Use new GtkColorSelection API.

	* gtk/gtkhsv.c:
	Fix problem selecting colors in triangle when Hue is 330.
	Fix some black dots around the HSB triangle.

	* gtk/gtkfilesel.c:
	return FALSE from the focus_in_event handler to fix focus problems.
2001-04-20 10:59:48 +00:00
Owen Taylor
bf660df987 File containing #defines for XEMBED protocol.
Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am xembed.h: File containing #defines
	for XEMBED protocol.

	* gtk/gtkplug.[ch] gtk/gtksocket.[ch]:

	- Change protocol from old plug/socket specific protocol
	  to XEMBED draft
	- Various fixes to work with GTK+-2.0

	Still quite a bit of work to do here to handle initiation
	from the socket side (as specified by XEMBED), to handle
	the more advanced features of XEMBED, and to figure out
	a good way to handle same-app embedding with less overhead
	than using full XEMBED.
2001-04-19 20:36:46 +00:00
Havoc Pennington
e13ec2098a add signals and binding set, so keybindings are configurable
2001-04-18  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
	set, so keybindings are configurable
	(gtk_window_activate_default): Change to activate the focus widget
	instead if there's a focus widget, to be consistent with the
	behavior that previously existed in key_press_event
2001-04-18 22:21:45 +00:00
Havoc Pennington
d367049d75 Handle numeric keypad keysyms; bug #50201
2001-04-18  Havoc Pennington  <hp@redhat.com>

	* gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2001-04-18 20:33:26 +00:00
Havoc Pennington
f8ceea8b35 Close bug #50615:
2001-04-18  Havoc Pennington  <hp@redhat.com>

        Close bug #50615:

	* gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
	the layout

	* gtk/gtktext.c: Use base/text instead of bg/fg throughout

	* gtk/gtkentry.c: Use base/text instead of bg/fg throughout

	* gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout

	* gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
	to blue for base, in addition to bg
2001-04-18 20:16:38 +00:00
Havoc Pennington
c01a1c7363 allow shrinking the image window to test that we clip to allocation.
2001-04-18  Havoc Pennington  <hp@redhat.com>

	* tests/testgtk.c (create_image): allow shrinking the image window
	to test that we clip to allocation.

	* gtk/gtkimage.c (gtk_image_expose): clip to allocation,
	#9845

	* gtk/gtkenums.h: move GtkWrapMode in here, #50472
2001-04-18 19:56:48 +00:00
Owen Taylor
6cff7051b1 Try changing mode on shm segments to 0600. We'll see who complains.
Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
	mode on shm segments to 0600. We'll see who complains.

	* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
	_gdk_windowing_window_destroy() AFTER recursing through
	children.

	* tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
	testsocket_child on X.

	* tests/testsocket[_child].c: Fix uses of
	gtk_window_get_default_accel_group().

	[ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]

	* gdk/gdkimage.c: (gdk_image_get):
	Deal with the possibility that XGetImage() might return NULL.
	Allocate the GdkImagePrivate structure only after XGetImage()
	succeeds in order not to dereference a NULL ximage pointer.  This
	prevents a core dump when XGetImage() fails - which is unlikely,
	but can happen due to race conditions accessing the geometries of
	drawables.  An x error will still be triggered, but the gdk image
	wrapper at least wont seg fault.
2001-04-18 18:28:19 +00:00
Havoc Pennington
60b6a010e9 fix to properly queue resizes when the image is set
2001-04-18  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkimage.c: fix to properly queue resizes when the image is
	set

	* gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
	if the insertion point isn't editable

	* demos/gtk-demo/images.c: Added a GtkImage demo

	* demos/gtk-demo/drawingarea.c: drawing area demo

	* demos/gtk-demo/menus.c (create_menu): cleanups

2001-04-18  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
	given color.
2001-04-18 18:09:18 +00:00
Owen Taylor
ebd3958c06 Introduce an extra child of toplevel windows that serves to hold the focus
Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h
	  gdk/x11/gdkevents-x11.c: Introduce an extra child
	of toplevel windows that serves to hold the focus to
	avoid events being delivered to embedded windows.

	* gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
	some extra variables to clean up code and reduce the
	number of casts.

	* gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
	guint for 1 bit bit fields, not gboolean.
2001-04-18 17:57:36 +00:00
Owen Taylor
2c0b59f706 Return FALSE, not TRUE. (Fixes #52925)
Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
	not TRUE. (Fixes #52925)
2001-04-18 14:05:49 +00:00
Owen Taylor
45a37d0235 Released 1.3.4
Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>

	* Released 1.3.4

	* NEWS: Updated

	* gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
	use GTK_TYPE_ENUM.
2001-04-17 23:21:18 +00:00
Owen Taylor
eced717280 Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS

	* gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
	names to compatibility #defines so docs work.

	* gtk/gtkenums.h: Remove GtkMenuFactoryType

	* gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.

	* configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS

	* tests/testgtkrc: No magenta cursors, please.

	* README.in INSTALL.in HACKING README.cvs-commits: Updated.

	* gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2001-04-17 19:19:09 +00:00
Owen Taylor
ca2a67b4c6 Remove -DGTK_DISABLE_COMPAT add -DGTK_ENABLE_BROKEN
Tue Apr 17 10:59:13 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am (GTKDOC_CFLAGS): Remove -DGTK_DISABLE_COMPAT
        add -DGTK_ENABLE_BROKEN

        * {gtk/gtk,gdk/gdk}-sections.txt: Updated
2001-04-17 18:12:46 +00:00
Owen Taylor
12aa8608ed Remove explicit pointer grabs, since they are no longer necessary.
Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
	grabs, since they are no longer necessary.

	* gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
	by signal_connect() and call gtk_button_pressed() rather
	than signal_connect_after().

	* tests/testgtk.c: Restore radio menu items to combos
	since they'll look OK with Raleigh, and it is easier
	than finishing the process of removing them that was
	started earlier.
2001-04-16 20:33:03 +00:00
Hans Breuer
0e432245a4 added all exports required to link PyGtk 0.7.1
2001-04-16  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def :
	* gtk/gtk.def : added all exports required to link PyGtk 0.7.1

	* gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
	we are interested in the functions return value not the function address
	* gdk/gdkvisual.h : same for GDK_TYPE_VISUAL

	* gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2001-04-16 12:46:02 +00:00
Hans Breuer
eed3dbb64c updated
2001-04-14  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def :
	* gdk/makefile.msc : updated

	* gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is
	"fill with tile" do so with new helper function	gdk_win32_draw_tiles
	(the testgtk::text backgound pixmap is drawn again)
	Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect
	Win32 Pango change
	* gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles

	* gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
	Not sure if the returned settings have the right unit, because I couldn't
	find any docs for the X version ...

	* gtk/gtk.def :
	* gtk/makefile.msc.in : updated
2001-04-13 23:56:19 +00:00
Owen Taylor
21f13fb7e0 Fix up to refer to GTK+, not to GLib; fix some wording problems. (Compared
Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
        wording problems. (Compared to version from Johannes Stezenbach to
        check correctness.)
2001-04-13 18:00:02 +00:00
Owen Taylor
fb37aa1cfa Add $(top_builddir) to includes as necessary, Run gtkdoc-scangobj from
Fri Apr 13 10:41:10 2001  Owen Taylor  <otaylor@redhat.com>

        * */Makefile.am: Add $(top_builddir) to includes as necessary,
        Run gtkdoc-scangobj from builddir, not srcdir, don't distribute
        foo-doc.{top,bottom}, recomment in code to distribute HTML
        images, with shell fixes.

        * gtk/gtk.hierarchy gdk-pixbuf/gdk-pixbuf.{args,signals,hierarchy}:
        Remove generated files.
2001-04-13 14:48:28 +00:00
Tim Janik
6070d96d1d get this to compile.
Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
        this to compile.
2001-04-12 19:04:08 +00:00
Anders Carlsson
4006d34f27 It's pixbuf_pos, not pixbufpos.
2001-04-12  Anders Carlsson  <andersca@codefactory.se>

	* gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
	not pixbufpos.

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
	are unsigned insts, therefore use g_value_set_uint.
	(gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2001-04-12 18:16:13 +00:00
Jonathan Blandford
31210813cb fix a fixme.
Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>

        * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.

        * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
        GTK_TYPE_STRING.

        * gtk/gtktreeview.c: New functions to allow initial column
        dragging work.

        * gtk/gtktreeviewcolumn.c: Initial column dragging support.

        * tests/testtreefocus.c: give dave some love.

        * tests/testtreesort.c: Modify test to check really long samples.
2001-04-12 16:11:54 +00:00
Christian Rose
12d7863c53 Fixed Swedish translation. Thanks to Gran Uddeborg
<goeran@uddeborg.pp.se>.
2001-04-12 00:59:45 +00:00
Alexander Larsson
4a4d6d9491 Pass pkg-config options before the other args so it works even if
2001-04-11  Alexander Larsson  <alexl@redhat.com>

	* gtk-2.0.m4: Pass pkg-config options
	before the other args so it works even if
	POSIXLY_CORRECT is set.
2001-04-11 15:45:12 +00:00
Christian Rose
9f8457a93d Updated Swedish translation. 2001-04-10 23:54:16 +00:00
Tim Janik
c5bd3a2322 increment version to 1.3.4 (binary 0, interface 0).
Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>

        * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
        0, interface 0).
2001-04-09 17:47:15 +00:00
Denis Oliver Kropp
c273084980 gtk_calendar_button_press: check for action_func != NULL 2001-04-04 21:16:47 +00:00
Sven Neumann
3bc782bdfa corrected path to gtk.immodules
2001-04-04  Sven Neumann  <sven@gimp.org>

	* tests/testgtk.c (test_init): corrected path to gtk.immodules
2001-04-04 18:28:37 +00:00
Valek Frob
90b69875d2 Updated russian translation. 2001-04-04 11:23:40 +00:00
Tim Janik
dcb94348a7 Released Gtk+-1.3.3.
Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>

        * Released Gtk+-1.3.3.

Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>

        * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2001-04-04 07:20:41 +00:00
Tim Janik
2423d86b3d stay in builddir and read/write files to/from source dir. (if we don't
Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>

        * gtk/stock-icons/Makefile.am: stay in builddir and read/write
        files to/from source dir. (if we don't stay in builddir, we
        can't reach make-inline-pixbuf.

        * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
        deps.

        * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
        ages 0).

Wed Apr  4 01:26:04 2001  Tim Janik  <timj@gtk.org>

        * gdk-pixbuf/Makefile.am: disabled "for i in $(HTML_IMAGES) ;"
        dist-hook because $(HTML_IMAGES) is empty.
        * gtk/Makefile.am: same here.
        * gdk/Makefile.am: same here. touched gdk.types since make rules
        require it ;(

Wed Apr  4 01:41:02 2001  Tim Janik  <timj@gtk.org>

        * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
        so we don't try to get <gtk/gtkobject.h> from standard search
        paths.

        * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
        add gdk-pixbuf-marshal.list to EXTRA_DIST.
        take gdk-pixbuf-marshal.h out of _la sources.
2001-04-04 03:01:35 +00:00
Sven Neumann
2fe6c1d47c sorry, I only wanted to commit .cvsignore
I'm stupid and perhaps a bit tired ...
2001-04-03 23:14:26 +00:00
Sven Neumann
361cb7942e shut up CVS 2001-04-03 23:11:15 +00:00
Jonathan Blandford
4478fcca0b removed set_sort_column, as it was moved to the GtkTreeSortable interface.
Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
	moved to the GtkTreeSortable interface.

	* gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
	Make more efficient (fixes #50262).
2001-04-03 19:13:08 +00:00
Owen Taylor
af5c897e4b Updated.
Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>

	* NEWS: Updated.

	* configure.in: Remove support for uninstalled glib.

	* gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
	so as not to stop emission.

	* gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
	is no longer supported.

	* Makefile.am gtk/Makefile.am tests/*: Moved all tests
	into tests, change build order to build modules before
	gtk/.

	* modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
	to here.
2001-04-03 18:48:46 +00:00
Tim Janik
748560e1fc changed gtk_item_factory_dump_items() and gtk_item_factory_dump_rc()
Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
        and gtk_item_factory_dump_rc() GtkPatternSpec argument to
        GPatternSpec. this is actually unlikely to cause breakage in
        third-party apps since except for gle, pretty much ever caller
        passes NULL here.

        * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.

        * *.c: use g_pattern_*() API.

        * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.

        * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
        directions aren't passed in.

        * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
        functionality to be usable from gtkstyle.c as well, give precedence
        for conversion to user-supplied parsers.
        s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;

        * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
        _gtk_settings_parse_convert() for rcporperty value conversion.
2001-04-03 13:18:00 +00:00
Alexander Larsson
655abd0872 Add empty gdk_setting_get().
2001-04-03  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkevents-fb.c:
	Add empty gdk_setting_get().
2001-04-03 08:39:28 +00:00
Tim Janik
bb985d7247 use more elaborate variable names.
Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
        variable names.

        * gtk/makeenums.pl: touch this so enum files get remade.
2001-04-03 04:29:58 +00:00
Jonathan Blandford
461216d45b Bug fix to make trees work again when not sorted.
Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
	work again when not sorted.

	* gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
	and "expand_row" signal, closing bug 52578.

	* gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
	support.

	* gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
	support.
2001-04-02 23:38:54 +00:00
Owen Taylor
b52b326d5f Add GdkEventSetting event for notification of changes to system settings,
Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.h: Add GdkEventSetting event for notification
	of changes to system settings, gdk_setting_get() to retrieve
	a single system setting.

	* gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
	to the draft XSETTINGS mechanism.

	* gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
	XSETTINGS.

	* gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
	of GDK settings changes to the GtkSettings object.

	* gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
	double-click-timeout property to GDK.

	* gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
	Define GDK boxed types here.

	* gdk/Makefile.am gdk/makeenums.pl: Generate source files
	gdk/gdkenumtypes.[ch] for enum definitions.

	* gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
	* gtk/gtk-boxed.defs: Comment out GDK types
	* gtk/gtktypeutils.h: Remove GDK types
	* gtk/Makefile.am: No longer scan GDK headers for enumerataions
2001-04-02 23:33:47 +00:00
Owen Taylor
0aef43bcbc Applied patch from Ron Steinke to add signal accumulators so that signals
Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>

	* Applied patch from Ron Steinke to add signal accumulators
	so that signals with the convention 'TRUE return means
	handled' stop emission on a TRUE return.

	* gtk/gtkmain.[ch]: Add private accumulator
	_gtk_boolean_handled_accumulator, used throughout GTK+.

	* gtk/gtkspinbutton.c: Add accumulator for ::output.

	* gtk/gtktipsquery.c: Add accumulator for ::widget_selected

	* gtk/gtkwidget.c: Add accumulators for event signals,
	::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
	for ::mnemonic-activate.

	* gtk/gtkwindow.c: Add accumulator for ::frame_event

Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c: Add missing include.
2001-04-02 22:45:19 +00:00
Jonathan Blandford
29985af0fa BOXED,BOXED,BOXED,BOXED): new marshaller.
Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
	marshaller.

	* gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
	"changed" signal to "range_changed".

	* gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
	removing a tree from one model would remove all trees from that
	model.
	* gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
	changed signal instead.
2001-04-02 20:56:55 +00:00
Owen Taylor
ea78922f17 Add missing changelog entry. 2001-04-02 20:15:31 +00:00
Owen Taylor
3961437bab Avoid chaining up to parent impl, since we have a INPUT_ONLY window.
Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
	chaining up to parent impl, since we have a INPUT_ONLY
	window.

	* gtk/gtkentry.[ch]: Add a cursor_color property to set the
	foreground color for the cursor.
2001-04-02 20:15:18 +00:00
Owen Taylor
096fdfb797 Reference param spec when caching property values, since we unref it later
Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference
	param spec when caching property values, since we unref it
	later when we free the style.

	* gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
	values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2001-04-02 19:09:56 +00:00
Owen Taylor
c944151a3c Fix G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_class_init): Fix
	G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
	stupidity.

Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>

	[ First pass at adding style properties. Still needs some definite
	fine-tuning. ]

        * gtk/gtkbutton.c: Add ::default_spacing style property.

	* gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
	::indicator_spacing style properties.

	* gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
	style properties.

	* gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
	rather than a normal property.

	* gtk/gtkwidget.c: Add an ::interior_focus style property to
	draw focus inside buttons, in the Windows/Java Metal/etc. style.

	* gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
	Honor ::interior_focus.

	* gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is
	TRUE.

	* gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
	Add ::slider_width, ::trough_border, ::stepper_size,
	::stepper_spacing style properties.

	* gtk/gtkscale.[ch] Add ::slider-length style property.
2001-04-02 15:51:28 +00:00
Alexander Larsson
5d1ee0929e Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove
2001-04-02 Alexander Larsson   <alexl@redhat.com>

	* gdk/linux-fb/gdkwindow-fb.c:
	Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
	warnings that were spewed on startup.

	* gtk/gtkwindow-decorate.c:
	gtk_window_reposition -> _gtk_window_reposition
2001-04-02 07:15:30 +00:00
Owen Taylor
dac3b3a168 Add boxed type for GtkRequistion. Use it for ::size-request.
Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
	Add boxed type for GtkRequistion. Use it for ::size-request.

	* gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
        Add a new GtkBorder structure useful for geometry properties
	for widgets. Add corresponding GTK_TYPE_BORDER.

	* gtk/gtkwidget.c (gtk_widget_class_install_style_property):
	Support automatic parser selection like
	gtk_settings_install_property_parser().

	* gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
	functionality for use by gtk_widget_class_install_style_property.
	Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.

Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
	g_param_spec_unichar().
2001-04-02 03:47:25 +00:00
Tim Janik
d3b826ba34 raise window for non _NET window managers.
Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>

        * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
        _NET window managers.

        * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2001-04-01 22:29:26 +00:00
Tim Janik
770938bf2f got rid of gtk_widget_popup(), a function that bad needs to be nuked, not
Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
        bad needs to be nuked, not just deprecated.

        * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use
        gtk_widget_popup().

        * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;

        * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
        widget.

        * docs/Changes-2.0.txt: updates.
2001-04-01 07:32:41 +00:00
Jonathan Blandford
270e4f1802 for (i = 0; i < 100; i ++) g_print ("I will confirm it compile before
Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
	for (i = 0; i < 100; i ++)
	  g_print ("I will confirm it compile before committing\n");
2001-04-01 06:02:09 +00:00
Jonathan Blandford
98605f95bf Initial work on implementing the GtkTreeSortable interface. Basicaly a big
Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c: Initial work on implementing the
	GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2001-04-01 05:52:23 +00:00
Tim Janik
d2c132b3a3 fixups. 2001-04-01 04:20:08 +00:00
Tim Janik
1f7e5c0610 fixed a bunch of notifications, added reference counts around emissions
Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c: fixed a bunch of notifications, added
        reference counts around emissions where the widget is used afterwards.
        added freeze/thaws around multiple properties being notified.
        (_gtk_widget_get_aux_info): cleanups.

        * gtk/gtksettings.c (gtk_settings_install_property): provide
        default parsing functions for gdkcolor, enums and flags.

        * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
        applied by owen.
        kept a flag in GtkWindowGeometryInfo to handle user
        resetting default sizes.
        cleaned up ZVT comments.
        bunch of assorted bug fixes, notification fixes.
        (_gtk_window_reposition): make this a really internal function.

        * gtk/testgtk.c: fixups.
2001-04-01 04:05:42 +00:00
Hans Breuer
6ff97d2e0b disable USE_MMX for msvc build cause the assembler doesn't fit and is out
2001-03-31  Hans Breuer  <hans@breuer.org>

	* config.h.win32.in : disable USE_MMX for msvc build cause
	the assembler doesn't fit and is out of my scope. Disable
	USE_GMODULE for msvc build as wel. The right way to share
	binaries on win32 would be to use libtiff.dll etc. To reduce
	installation hassles IMO it's better to include all fileformats
	builtin to gdk-pixbuf

	* gdk-pixbuf/makefile.msc : new file

	* gdk/gdk.def : updated

	* gdk/win32/gdkevents-win32.c : don't erase the background if
	.no_bg is set. It improves the scrolling (e.g. of testgtk main
	buttons
	* gdk/win32/gdkgeometry-win32.c : added comment about the above

	* gdk/win32/gdkwindow-win32.c : added three new functions like
	the X version. Only one is implemented, because the other two
	"gdk_window_begin_(resize|move)_drag" got no docs and appear to
	be default behaviour on win32 anyway ...

	* gtk/gtk.def : updated

	* gtk/makefile.msc.in : update for new files, use glib-genmarshal
	from where it was built and add an additional rule to automagically
	build gtkmarshal.[hc]

	* gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
	before array access for the current entry isn't finished

	* gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
	use g_return_val_if_fail

	* gtk/testgtk.c (window_controls) : don't use the *wrong* size
	for the static array, but let the compiler calculate it. It
	makes me wonder if gcc isn't capable to catch bugs like this ...
2001-03-31 19:33:49 +00:00
James Henstridge
3b68d7db89 fix use of magic constant "-1" in the aux info structure.
2001-03-31  James Henstridge  <james@daa.com.au>

        * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
        constant "-1" in the aux info structure.
2001-03-31 00:48:37 +00:00
Alexander Larsson
aa209a95fa Remove leaks.
2001-03-30  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkbutton.c (gtk_button_get_property):
	* gtk/gtklabel.c:
	Remove leaks.

	* gtk/gtkcontainer.c:
	* gtk/gtkhscale.c:
	* gtk/gtkhscrollbar.c:
	* gtk/gtklayout.c:
	* gtk/gtkmisc.c:
	* gtk/gtkprogress.c:
	* gtk/gtkprogressbar.c:
	* gtk/gtkrange.c:
	* gtk/gtktable.c:
	* gtk/gtkviewport.c:
	* gtk/gtkvscale.c:
	* gtk/gtkvscrollbar.c:
	* gtk/gtkwidget.c:
	Property patches, based on patches from John Margaglione and Lee Mallabone.
2001-03-30 15:46:17 +00:00
Mike Kestner
c80b705470 added value_changed signal which proxies for the adjustment. Cleaned
Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>

	* gtk/gtkspinbutton.c : added value_changed signal which proxies for the
	adjustment. Cleaned redundant preconditions (spin != NULL). Added
	inline API function docs.
	(gtk_spin_button_new_with_range): New convenience constructor.
	(gtk_spin_button_set_increments): New adjustment helper.
	(gtk_spin_button_set_range): New adjustment helper.

	* gtk/testgtk.c : added test of the new convenince constructor and
	value_changed signals.

docs/reference/ChangeLog
2001-03-29  Mike Kestner  <mkestner@ameritech.net>

	* gtk/tmpl/gtkspinbutton.html: killed function docs that are now
	inline.
2001-03-30 03:35:47 +00:00
Jonathan Blandford
fe8eecdf75 Now we listen to the reorder signal.
Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
        listen to the reorder signal.
2001-03-30 01:26:30 +00:00
Owen Taylor
f67ae736ee Add private function to get the aux info structure fo the widget.
Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
	to get the aux info structure fo the widget.

	* gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
	above function.

        [ Patch from  Havoc Pennington  <hp@redhat.com> ]

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
	to get the size of the window manager frame, basically the same
	code that gdk_window_get_root_origin() had
	(gdk_window_get_root_origin): use gdk_window_get_frame_extents()

	* gtk/gtkwindow.c (gtk_window_set_default_size): use
	gdk_window_resize() if the window is realized and resizeable

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
	typo so that setting gravity works

	* gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
	allocation if auto_shrink is on, even if the default size
	has not changed.

	* gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
	g_return_if_fail
2001-03-29 23:02:30 +00:00
Jonathan Blandford
f19af6f49c Massive reordering/sorting work. Now pretty much works.
Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@webwynk.net>

	* gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
	reordering/sorting work.  Now pretty much works.

	* gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
	reorder mostly work.  Still need to get the parity correct.

	* gtk/gtktreeviewcolumn.c: Listen for "model" property changed
	signal, so I can listen for the sort_column_changed signal so I
	can change my "sort_indicator" property.  Cool.
2001-03-29 21:30:05 +00:00
Owen Taylor
c61a8f282f *** empty log message *** 2001-03-29 21:17:45 +00:00
Chookij Vanatham
1c537e5853 Added Thai UTF-8 text which also has the wrong written syntax. 2001-03-29 18:18:46 +00:00
Alexander Larsson
90f398a413 Don't return TRUE from the event handler,that blocks all event signals on
2001-03-29  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtktooltips.c (gtk_tooltips_event_handler):
	Don't return TRUE from the event handler,that blocks all
	event signals on the tooltip widget. Now you can press buttons
	in toolbars again.
2001-03-29 12:25:15 +00:00
Owen Taylor
1586ade9c5 Add missing NULL on valist.
Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/testtext.c (create_buffer): Add missing NULL on
	valist.

	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
	c-n-p problem with INCONSISTENT property.

        [ Patch from Havoc Pennington  <hp@redhat.com> ]

	* gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
	hook.

	* gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
	signal as a hook for extending the default popup menu

	* gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
	use radio menu items for the input method menuitems

	* gtk/gtkimcontextsimple.c (check_hex): do better validation of
	inserted unicode from Ctrl-Shift-hex input method

	* gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
	validatation here, already done at GtkTextBuffer level.

	* gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
	popup_menu run action signal and Shift+F10 and Menu keybindings.

	* gtk/gtkentry.c: implement a default handler for popup_menu

	* gtk/gtktextview.c: implement a default handler for popup_menu

	* gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
	from a key event

	* gtk/gtklabel.c: remove "trailer" cruft
2001-03-29 00:24:58 +00:00
Jonathan Blandford
ed6076b2e0 new function to handle reordering of trees. Seems to mostly work w/ the
Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
	handle reordering of trees.  Seems to mostly work w/ the exception
	of the parity flag.

	* gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
	signal.
2001-03-28 22:27:20 +00:00
Tim Janik
16e6c16a2e c++ fixes.
Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.h: c++ fixes.
2001-03-28 19:16:43 +00:00
Owen Taylor
0031ee8091 Fix use of uninitialized memory.
Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
	memory.
2001-03-28 16:58:16 +00:00
Owen Taylor
a7f29c4efc Apply patch from Nils Barth fixing event return values. (#51041)
Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from
	Nils Barth fixing event return values. (#51041)

	* gtk/gtkwidget.c: Fix some return values for default
	functions.

	* gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
	return values for trough_keys functions.

	* gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
	value for add_accelerator (shoudl have been a void
	return.)

	* gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
	Fix return type of EVENT.

	* gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
	signal return a boolean.
2001-03-28 04:01:21 +00:00
Jonathan Blandford
6e7b8a6722 Fix arguments to reordered signal.
Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@webwynk.net>

	* gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
	reordered signal.

	* tests/testtreesort.c (main): fix spelling.
Bad Jonathan.  Don't break the tree.
2001-03-28 03:09:03 +00:00
Jonathan Blandford
88bbc2a534 More work on implementing sortable interface.
Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkliststore.c: More work on implementing sortable
	interface.
2001-03-28 01:54:14 +00:00
Owen Taylor
2c613ffd95 Don't reference the widgets in the resulting list. (#11821) This makes
Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
	reference the widgets in the resulting list. (#11821)
	This makes this consistent with gtk_container_children.

	* gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
	uses of gtk_window_list_toplevels.
2001-03-26 20:54:17 +00:00
Owen Taylor
cf41369b5b Add a virtual function to set whether the IM context should use the
Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
	a virtual function to set whether the IM context should use
	the preedit string. (#51922)
2001-03-26 20:35:21 +00:00
Owen Taylor
b21ea0e1b2 Remove stale FIXME comment.
Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpango.h: Remove stale FIXME comment.
2001-03-26 19:47:09 +00:00
Alexander Larsson
2089205e09 Fixed bug that returned NULL if a filename was selected.
2001-03-26  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_get_filename):
	Fixed bug that returned NULL if a filename was selected.
2001-03-26 13:51:10 +00:00
Havoc Pennington
11ed2b2ebd improve error message to contain the word "theme"
2001-03-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
	to contain the word "theme"
2001-03-24 16:35:20 +00:00
Havoc Pennington
891cd55ee3 make motion around the ring much slower but finer-grained (gtk_hsv_focus):
2001-03-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
	slower but finer-grained
	(gtk_hsv_focus): get initial focus on the ring or triangle
	according to tab direction

	* gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2001-03-24 06:41:28 +00:00
Havoc Pennington
207e3bb977 make this somewhat key-navigable
2001-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkhsv.c: make this somewhat key-navigable

	* gtk/gtkfontsel.c: mnemonics

	* gtk/gtkgamma.c: mnemonics

	* gtk/gtkcolorsel.c: add mnemonics to labels

2001-03-22  Havoc Pennington  <hp@pobox.com>

	Applied big patch from Seth Lytle to fix event handler return
	values, slightly modified.

	* gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
	handled.
	(gtk_calendar_key_press): return TRUE for GDK_space triggers
	select_day

	* gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
	(gtk_clist_button_release): return TRUE if handled

	* gtk/gtkcolorsel.c (mouse_release):
	(palette_activate):
	(palette_press):
	(palette_new):
	(mouse_press):
	(get_screen_color):
	fixed return type (void to gboolean), return TRUE,
	added GTK_SIGNAL_FUNC cast

	* gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
	(void to gboolean), and return TRUE
	(gtk_combo_button_release): changed return value to TRUE after
	gtk_grab_add on combo->popwin

	* gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
	collapse or expand

	* gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
	button/motion

	* gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
	press/release and motion that trigger act

	* gtk/gtkentry.c (gtk_entry_button_release): return TRUE

	* gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
	for GDK_Return

	* gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
	(gtk_list_button_release): return TRUE if selection

	* gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
	press

	* gtk/gtkmenushell.c (gtk_menu_shell_button_press):
	(gtk_menu_shell_button_release): chain parent_menu_shell retval

	* gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
	nothing triggered
	(gtk_notebook_button_release): return TRUE if we do anything

	* gtk/gtkspinbutton.c (gtk_spin_button_button_press):
	(gtk_spin_button_button_release): return TRUE or chained retval

	* gtk/gtktext.c (gtk_text_button_press):
	(gtk_text_button_release): return TRUE
	(gtk_text_key_press): remove redundant retval code

	* gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
	and sensitive
	(gtk_tree_item_subtree_button_click): changed type to gint, and return
	TRUE if sensitive

	* gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies
	return TRUE
2001-03-24 06:10:40 +00:00
Havoc Pennington
b6b4e13fd8 fix warnings
2001-03-23  Havoc Pennington  <hp@redhat.com>

	* gtk/testgtk.c: fix warnings

	* gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value

	* gtk/gtktextview.c: fix warnings

	* gtk/gtktext.c (find_cursor_at_line): fix warning

	* gtk/gtkselection.c (gtk_selection_notify): fix warning

	* gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
	of this function

	* gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
	fix warning

	* gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning

	* gtk/gtkfontsel.c: fix warning

	* gtk/gtkcolorsel.c: fix warnings
2001-03-24 00:07:16 +00:00
Havoc Pennington
dc0cd67d60 Apply property patch from Lee Mallabone
2001-03-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone

	* gtk/gtkbox.c: Apply property patch from Lee Mallabone

	* gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
	and deprecated gtk_check_menu_item_set_show_toggle().

	* gtk/gtkbutton.c: Apply property patch from Lee Mallabone

	* gtk/gtkfilesel.c: Apply property patch from Lee Mallabone

	* gtk/gtkframe.c: Apply property patch from Lee Mallabone
2001-03-23 23:39:24 +00:00
Havoc Pennington
4291350f89 fix up some docs
2001-03-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
	some docs

2001-03-23  Havoc Pennington  <hp@redhat.com>

	* gdk/gdk-sections.txt: updates

	* gtk/gtk-sections.txt: updates

	* gtk/gtk-docs.sgml: mop up TreeModelSimple entity

	* gdk/gdk-docs.sgml: remove input method
	and input context docs
2001-03-23 22:21:06 +00:00
Jonathan Blandford
b572436d35 Forgot to namespace this.
Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
	this.

	* gtk/gtktreestore.c (gtk_tree_store_set_value): change from
	set_cell to set_value

	* gtk/gtkliststore.c (gtk_list_store_set_value): change from
	set_cell to set_value
2001-03-23 21:12:33 +00:00
Jonathan Blandford
21fd434c5f fix braino. New interface to add cleanup sortable support.
Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
	fix braino.
	* gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
	support.

	* gtk/gtktreeview.c: Addition of initial sortable support.

	* gtk/gtktreestore.c: Addition of initial sortable support.

	* gtk/gtkliststore.c: Addition of initial sortable support.

	* gtk/gtkmarshal.list: yet another marshaller.

	* gtk/gtktreedatallist.[ch]: shared code between the store models
	for handling sorting headers.
2001-03-23 00:35:19 +00:00
Havoc Pennington
18b5348b48 docs on GdkKeymap
2001-03-22  Havoc Pennington  <hp@redhat.com>

	* gdk/tmpl/keys.sgml: docs on GdkKeymap
2001-03-22 22:41:05 +00:00
Havoc Pennington
23b98cc1ec Add ability to override the focus chain for a container explicitly
2001-03-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkcontainer.c (gtk_container_set_focus_chain):
	(gtk_container_unset_focus_chain): Add ability to override the
	focus chain for a container explicitly
2001-03-22 20:59:37 +00:00
Tim Janik
c2c98d9e12 some cleanups, fixed mnemonic_widget handling, added PROP_MNEMONIC_WIDGET.
Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
        added PROP_MNEMONIC_WIDGET.

        * gtk/gtkwindow.c (gtk_window_activate_mnemonic):
        (gtk_window_remove_mnemonic):
        (gtk_window_add_mnemonic): fixed assertions.
        (gtk_window_activate_mnemonic): constrain modifier checks to those
        permitted by gtk_accelerator_get_default_mod_mask().
        got rid of gtk_window_get_default_accel_group().

        * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
        activatable widgets either by focussing or a warning.
        added a signal accumulator to ::activate_mnemonic which stops the
        emission once a handler returned TRUE.
2001-03-22 13:44:00 +00:00
Havoc Pennington
6e58fd1ee3 handle mnemonics in the stock item label
2001-03-22  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
	the stock item label

	* gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs

	* gtk/gtkstock.c (builtin_items): add mnemonics where missing

	* demos/gtk-demo/*.c: Add mnemonics all over the place

	* gtk/gtklabel.h: mark parse_uline deprecated
2001-03-22 06:45:57 +00:00
Alexander Larsson
e042310560 Add support for stock and normal imagemenuitems.
2001-03-21  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkitemfactory.[ch]:
	Add support for stock and normal imagemenuitems.

	* gtk/testgtk.c:
	Add some tests for mnemonics, stock toolbars, stock
	and image menuitems in itemfactory and gdk_window_scroll.
2001-03-21 19:22:58 +00:00
Alexander Larsson
de5eafede2 Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and removed
2001-03-21  Alexander Larsson  <alexl@redhat.com>

        * gtk/gtkbutton.[ch]:
	* gtk/gtkdialog.c:
	Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
	removed accel_group argument. Renamed gtk_button_new_accel() to
	gtk_button_new_with_mnemonic() and removed accel_group argument.

	* gtk/gtkcheckbutton.[ch]:
	New function gtk_check_button_new_with_mnemonic().

	* gtk/gtkentry.c:
	Override activate_mnemonic and just grab focus.

	* gtk/gtkitemfactory.c:
	Don't add menu uline accel group, instead use mnemonics support.

	* gtk/gtklabel.[ch]:
	New support for mnemonics.

	* gtk/gtkmarshal.list:
	Needed BOOLEAN:BOOLEAN for activate_mnemonic.

	* gtk/gtkmenu.[c]:
	* gtkmenushell.c:
	Use mnemonics instead of accel groups for uline
	support in menu items.
	Removed gtk_menu_get_uline_accel_group() and
	gtk_menu_ensure_uline_accel_group().

	* gtk/gtkmenuitem.c:
	Override activate_mnemonic to handle switching between
	menu items if there are collisions.

	* gtk/gtknotebook.c:
	Connect to activate_mnemonic on the tab_label, so that
	activating it switches to that notebook page.

	* gtk/gtkwidget.[ch]:
	Add activate_mnemonic signal. New function
	gtk_widget_activate_mnemonic() to emit it.
	Default implementation does activate/grab_focus.

	* gtk/gtkwindow.[ch]:
	Add support for mnemonics in windows.
	New functions:
	gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
	gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier

	* gtk/testgtk.c:
	Update to function name changes.
2001-03-21 18:58:28 +00:00
Alexander Larsson
a24e9b1074 Add gtk_image_menu_item_new_from_stock()
2001-03-21  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkimagemenuitem.[c]:
	Add gtk_image_menu_item_new_from_stock()
2001-03-21 08:56:25 +00:00
Jonathan Blandford
23d5d52912 remove debugging spew 2001-03-20 20:07:35 +00:00
Jonathan Blandford
70c0fa3a83 Fix buglet in meeting.
Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@webwynk.net>

	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
	Fix buglet in meeting.
2001-03-20 20:01:27 +00:00
Havoc Pennington
73e9d113a7 Make GtkIconSource an opaque datatype, and add a bunch of accessor
2001-03-19  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
	add a bunch of accessor functions. This is because we have
	reasonable expectations of extending what fields it contains in
	the future.

	* gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
	changes

	* gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
	GtkIconSource
2001-03-19 22:40:35 +00:00
Owen Taylor
489c376bf4 Handle quoting of / with \; properly handle __ in paths, quote " and \n in
Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
	handle __ in paths, quote " and \n in gtk_item_factory_dump_items().

	* gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c
	  gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
	  gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
	  gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
	Change float to double everywhere with the exception of 0<->1.0 alignment
	and GtkCurve.
2001-03-19 21:06:38 +00:00
Tor Lillqvist
c5f68d2527 gdk/win32/gdkdrawable-win32.c Use correct casts in debugging output.
2001-03-19  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdrawable-win32.c
	* gdk/win32/gdkimage-win32.c: Use correct casts in debugging
	output.

	* demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
	gdkwin32.h.

2001-03-19  Tor Lillqvist  <tml@iki.fi>

	* makefile.mingw.in: Handle gdk-pixbuf-marshal.c.

	* gdk_pixbuf.def: Update.

	* pixbufloader_*.def: Just export the fill_vtable functions now.
2001-03-19 19:37:59 +00:00
Tor Lillqvist
4f81f119e4 New function. print_event_state, print_event): Use preprocessor macro to
2001-03-18  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (print_window_state): New function.
	print_event_state, print_event): Use preprocessor macro to make
	code more compact. Print also GDK_WINDOW_STATE events.
	(synthesize_crossing_events): Remove the old #ifdeffed-out code.

	* gtk/gtk.def
	* gtk/makefile.mingw.in: Update.

	* gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
	to catch also Cygwin.
2001-03-18 22:16:41 +00:00
Mike Kestner
545f0bd820 Finally getting around to checkin per Havoc. This is the fix for bug
Finally getting around to checkin per Havoc.  This is the fix for bug 51782.

2001-03-18  Mike Kestner  <mkestner@ameritech.net>

	* make-inline-pixbuf.c (main): Added logic to remove output when
	failures occur.
2001-03-18 22:08:38 +00:00
Tim Janik
ac68581f96 added rc-style argument GtkSpinButton::shadow_type. removed
Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkspinbutton.[hc]: added rc-style argument
        GtkSpinButton::shadow_type.
        removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
        and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
        rc-style settings.

        * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).

        * gtk/gtkwidget.c: quark cleanups.

        * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
        scanner with appropriate configuration, renamed GtkRcStyleClass.clone
        to create_rc_style() (we don't do cloning in standard OO sense).
        added per rc style properties.

        * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
        property values and for caching those. some cleanups.

        * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.

        * gtk/gtksettings.[hc]: new file for global rc-file properties
        (at least currently, should get extended to support X properties
        and other communication mechanisms).

        * gtk/gtkwidget.[hc]: added style property support:
        (gtk_widget_class_install_style_property_parser): install style
        property pspec with parser function for rc-file values other
        than LONG, DOUBLE or STRING.
        (gtk_widget_class_install_style_property): same as above without
        parser (parsers are going to be needed quite infrequently).
        (gtk_widget_style_get_property): retrive style property value.
        (gtk_widget_style_get_valist): same as above with varargs support,
        has NOCOPY semantics.
        (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
2001-03-18 04:50:34 +00:00
Fatih Demir
882bb85389 Utf-8'ification 2001-03-17 11:52:12 +00:00
Fatih Demir
2568e5c896 Small tr.po update 2001-03-17 11:40:58 +00:00
Jonathan Blandford
73dc88d241 modified to use "row_activated" signal.
Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/main.c (row_activated_cb): modified to use
	"row_activated" signal.

	* gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
	stupidity.  Lets actually pass in the row with this signal...
2001-03-16 23:22:46 +00:00
Jonathan Blandford
4d4af2941e s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN

	* gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.

	* gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
	everything into the ::destroy function, and freed a lot more.
2001-03-16 22:59:24 +00:00
Havoc Pennington
23e3673e8b change to use gint instead of gint16, to avoid overflow issues, since
2001-03-16  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
	instead of gint16, to avoid overflow issues, since sizes > 16-bit
	are now allowed.

2001-03-16  Havoc Pennington  <hp@redhat.com>

	* gtk/gtk-docs.sgml: remove GtkData entity usage
2001-03-16 22:24:22 +00:00
Havoc Pennington
52658cd3dc Applied patch from Nils Barth (bug # 51041) to replace "gint" with
2001-03-16  Havoc Pennington  <hp@redhat.com>

	* Applied patch from Nils Barth (bug # 51041) to
	replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
	in various places.
2001-03-16 20:12:40 +00:00
Havoc Pennington
e7a21a2eec add varargs for properties to set on the tag.
2001-03-15  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs
	for properties to set on the tag.

	* gtk/testtext.c: fixups to reflect create_tag change

	* gtk/gtktexttag.c (gtk_text_tag_set_property):
	background/foreground stipple are objects, not boxed.

	* demos/gtk-demo/textview.c: intellihancing
2001-03-16 19:32:20 +00:00
Jonathan Blandford
1a72ab2560 Fixed some braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
	braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
2001-03-16 17:08:01 +00:00
Alexander Larsson
bd51a589b1 Fix sign error with queued region translations.
2001-03-16  Alexander Larsson  <alexl@redhat.com>

	* gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
	Fix sign error with queued region translations.
2001-03-16 08:05:21 +00:00
HideToshi Tajima
df726ee888 rename set_cursor_pos to set_cursor_location in GtkInputContext class
2001-03-15  HideToshi Tajima  <tajima@happy>

        * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_locat
ion):
        * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
        * gtk/gtkentry.c (update_im_cursor_location):
        * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
        * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
        set_cursor_pos to set_cursor_location in GtkInputContext class
2001-03-16 01:44:54 +00:00
Jonathan Blandford
e4d1660042 Changed prototype to allow for getting the location of the cell relative
Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderer.h: Changed prototype to allow for getting
	the location of the cell relative to its area.
	* gtk/gtkcell*: modified for above change
	* gtk/gtktreeview.c: modified for above change.

Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
	 (gtk_tree_view_finalize): actually unref the model.  Thanks to
	Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
2001-03-15 23:21:39 +00:00
Havoc Pennington
872efdd9a5 Delete.
2001-03-14  Havoc Pennington  <hp@redhat.com>

        * gtk/gtkdata.h, gtk/gtkdata.c: Delete.

	* gtk/gtk.h: remove gtkdata.h

	* gtk/Makefile.am: remove gtkdata

	* gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
	not "disconnect" on the adjustments.

	* gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
	GtkData

	* gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
	not GtkData

	* configure.in: handle case where X render exists, but Pango lacks
	Xft support.

2001-03-14  Havoc Pennington  <hp@redhat.com>

	* Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
	from gdk-pixbuf-marshal.h, fixes parallel makes.

2001-03-14  Havoc Pennington  <hp@redhat.com>

	* gtk/gtk-docs.sgml: remove gtkdata, gtktreemodelsimple

	* gtk/gtk.types: remove gtk_data_get_type
2001-03-15 19:02:23 +00:00
Pablo Saratxaga
549537e6de updated Azeri file Added Nynorsk and Vietnamese from the 1.2 branch
updated Azeri file
Added Nynorsk and Vietnamese from the 1.2 branch
2001-03-15 11:28:50 +00:00
Alexander Larsson
699b91d21e Forgot to add my name to the ChangeLog. 2001-03-15 09:12:01 +00:00
Alexander Larsson
140677943e New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock to
2001-03-15 Alexander Larsson  <alexl@redhat.com>

	* gtk/gtktoolbar.[ch]:
	New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
	to add stock items to toolbars.

	* gtk/Makefile.am:
	Remove ../gdk/gdkim.h from gdk_headers.
2001-03-15 09:09:06 +00:00
Sven Neumann
3e9a5c8405 removed
2001-03-15  Sven Neumann  <sven@gimp.org>

	* gdk/gdkim.h: removed

	* gdk/gdkprivate.h
	* gdk/x11/gdkim-x11.c: do not include gdkim.h
2001-03-15 00:43:44 +00:00
HideToshi Tajima
02f376a91f add set_cursor_pos() virtual method
2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>

	* gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
	* gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
	* gtk/gtkimcontext.h (struct _GtkIMContextClass): add
	set_cursor_pos() virtual method

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
	(gtk_im_context_xim_set_cursor_pos): add implementation for
	set_cursor_pos() method

	* gtk/gtkentry.c (recompute_idle_func): set current cursor
	position to input methods
2001-03-14 22:03:24 +00:00
Jonathan Blandford
cf89a05f07 Fix up focus code a lot.
Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
	code a lot.

	* gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
	g_mem_chunk.
	(_gtk_tree_data_list_alloc): use g_mem_chunk.
	(_gtk_tree_data_list_node_to_value): Fix to switch on
	G_TYPE_FUNDAMENTAL.
	(_gtk_tree_data_list_value_to_node): Fix to switch on
	G_TYPE_FUNDAMENTAL.
	(_gtk_tree_data_list_node_copy): Fix to switch on
	G_TYPE_FUNDAMENTAL.
2001-03-13 02:00:37 +00:00
Havoc Pennington
b0752cb4b2 Patch from John Margaglione to convert to new property API. Also, change
2001-03-12  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione
	to convert to new property API. Also, change default_width and
	default_height get_property to return 0 as the flag value for
	"unset"; -1 is not a valid value for these fields.
2001-03-12 21:01:53 +00:00
Havoc Pennington
10a173fedf Switch to using an enum with registration for icon sizes, instead of
2001-03-12  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
	enum with registration for icon sizes, instead of strings.

	* gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h,
	gtkwidget.c: Fix to reflect GtkIconSize
2001-03-12 18:46:53 +00:00
Alexander Larsson
a647514c33 Make GtkFB compile and link.
2001-03-12  Alexander Larsson  <alexl@redhat.com>

	Make GtkFB compile and link.

        * gdk/linux-fb/gdkdrawable-fb2.c:
	window->mapped to GDK_WINDOW_IS_MAPPED().

	* gdk/linux-fb/gdkwindow-fb.c:
	window->mapped to GDK_WINDOW_IS_MAPPED().
	Added gdk_window_shape_combine_region.
	Added assorted placeholders for unimplemented new GdkWindow API calls.
2001-03-12 17:10:37 +00:00
Alexander Larsson
7f1b6c2ab1 Add more test when converting filenames from/to utf-8. Don't allow
2001-03-12  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkfilesel.c:
	Add more test when converting filenames from/to utf-8.
	Don't allow entering text in the filename entry which isn't allowed in
	a filename. Just beep instead.
2001-03-12 15:39:19 +00:00
Alexander Larsson
b08437e00e Scroll using gdk_window_scroll(). Don't wait for exposes. Move the column
2001-03-12  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkclist.c:
	Scroll using gdk_window_scroll(). Don't wait for exposes.
	Move the column headers in an order that makes them flash less.
2001-03-12 14:09:12 +00:00
Hans Breuer
0f6d1b4a27 updated
2001-03-10  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def : updated

	* gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
	to offseting the clip_mask at the right place

	* gdk/win32/gdkwindow-win32.c : don't create background brushes
	for all the gdkClasses, especially not for the input_only case.
	Otherwise flickering wont be avoidable, because we don't get
	WM_ERASEBKGND message for these windows.

	* gdk/win32/gdkevents-win32.c : initialize event->expose.region
	and fixed massive redraw problems apparently triggered by Alexanders
	recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
	but it seems to work quite well :-)

	* gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
	prototype
2001-03-10 18:13:03 +00:00
Jonathan Blandford
d9582bd3e4 Fix a stupid typo. (gtk_list_store_set_cell): Fix a stupid typo.
Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
	(gtk_list_store_set_cell): Fix a stupid typo.
2001-03-10 17:13:46 +00:00
Jonathan Blandford
351052e166 Make select_all not work if you're in SINGLE mode (it doesn't make that
Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
	select_all not work if you're in SINGLE mode (it doesn't make that
	much sense, anyway.)

	* gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
	handle types more sanely.
	(_gtk_tree_data_list_value_to_node): handle types more sanely.
	(_gtk_tree_data_list_node_copy): handle types more sanely.

	* gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
	GValue better. Converts the type as well.

	* gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
	GValue better. Converts the type as well.
2001-03-10 01:34:48 +00:00
Owen Taylor
79fed460d9 Remove old XIM code.
Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
	gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c
	gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
	gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.

	* gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
	gdk_im/gdk_ic.
2001-03-09 20:28:20 +00:00
Hans Breuer
f4cd3854c5 updated
2001-03-09  Hans Breuer  <hans@breuer.org>

	* gdk/gdk.def : updated

	* gdk/win32/gdkevents-win32.c : don't ask input_only windows
	for their palette

	* gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
	removing

	* gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
	removing and implemented Havoc's GdkWindow state functions;
	stick/unstick only as no-op, cause I don't know how to emulate
	on win32 ...

	* gtk/gtk.def : updated

	* gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()

	* gtk/gtktypeutils.c : #include <string.h>

	* gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2001-03-09 16:43:19 +00:00
Tim Janik
587197ff21 fixed signals with GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an
Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
        GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
        not a boxed.
2001-03-09 14:49:00 +00:00
Alexander Larsson
44c6799393 Forgot some stuff in the ChangeLog entry: 2001-03-09 13:40:07 +00:00
Alexander Larsson
e7d4a7f90d Document expose event->region change and that gtk_widget_event doesn't
2001-03-09  Alexander Larsson  <alexl@redhat.com>

	* docs/Changes-2.0.txt:
	Document expose event->region change and that gtk_widget_event
	doesn't allow passing expose events.

	* gdk/gdkevents.h:
	Add region to expose event.

	* gdk/gdkevents.c:
	Handle event->region in gdk_event_copy() and gdk_event_free().

	* gdk/gdkwindow.c (gdk_window_process_updates_internal):
	Generate expose_event->region when creating expose events.

	* gdk/x11/gdkevents-x11.c:
	Generate expose events with regions when translating X events.

	* gtk/gtkcontainer.[ch]:
	Default expose handler that propagates expose events to NO_WINDOW
	children. New function gtk_container_propagate_expose()

	* gtk/gtkwidget.[ch]:
	Moved gtk_widget_event implementation to gtk_widget_event_internal.
	gtk_widget_event calls gtk_widget_event_internal but doesn't allow
	expose events. New function gtk_widget_send_expose() to send expose
	events. New function gtk_widget_region_intersect() to calculate
	window/region intersections.

	* gtk/gtkmain.c (gtk_main_do_event):
	Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
	Use gtk_widget_send_expose() to send expose events.

	* gtk/gtkbin.c:
	* gtk/gtkbox.c:
	* gtk/gtkfixed.c:
	* gtk/gtkimagemenuitem.c:
	* gtk/gtklist.c:
	* gtk/gtkpacker.c:
	* gtk/gtktable.c:
	* gtk/gtktree.c:
	Remove expose handler, using the default container implementation
	instead.

	* gtk/gtkbutton.c:
	* gtk/gtkcheckbutton.c:
	* gtk/gtkeventbox.c:
	* gtk/gtkfixed.c:
	* gtk/gtkhandlebox.c:
	* gtk/gtklayout.c:
	* gtk/gtklistitem.c:
	* gtk/gtkmenu.c:
	* gtk/gtkmenubar.c:
	* gtk/gtkmenuitem.c:
	* gtk/gtknotebook.c:
	* gtk/gtkoptionmenu.c:
	* gtk/gtkpaned.c:
	* gtk/gtkscrolledwindow.c:
	* gtk/gtktogglebutton.c:
	* gtk/gtktoolbar.c:
	* gtk/gtktreeitem.c:
	* gtk/gtkviewport.c:
	Chain expose handler to parent class handler. Use
	gtk_container_propagate_expose() to propagate exposes.

	* gtk/gtkclist.c (check_exposures):
	* gtk/gtktext.c (process_exposes):
	Use gtk_widget_send_expose instead of gtk_widget_event.
2001-03-09 13:28:26 +00:00
Jonathan Blandford
8f35f03045 Add destroy function.
Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2001-03-09 00:40:18 +00:00
Jonathan Blandford
8401ea1a21 Actually unref the nodes. Fixes bug #50058.
Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
	unref the nodes.   Fixes bug #50058.

	* gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
	"::ref_iter" to "::ref_node".
	(gtk_tree_model_unref_node): change "::unref_iter" to
	"::unref_node". Fixes bug #50064.
2001-03-09 00:19:11 +00:00
Jonathan Blandford
bd10a077cd add support for invisible cells. (gtk_tree_view_bin_expose): ditto
Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
	support for invisible cells.
	 (gtk_tree_view_bin_expose): ditto

also, forgot to commit tests/testtreeview.c last commit
2001-03-08 22:38:59 +00:00
Jonathan Blandford
ce9d9a4a56 add prerequesite on gobjects.
Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
	on gobjects.

	* tests/testtreefocus.c (main): New test file.

	* tests/testtreeview.c: update to latest glib changes.

	* tests/testtreecolumns.c: update to latest glib changes.
2001-03-08 21:36:34 +00:00
Tim Janik
73789e5aa7 re-enabled event watcher emission hooks.
Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c: re-enabled event watcher emission hooks.
2001-03-08 17:13:11 +00:00
Tim Janik
06718ecfed added accumulator data argument to g_signal_newc() functions.
Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>

        * *.c: added accumulator data argument to g_signal_newc()
        functions.

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model):
        * gtk/gtktreeview.c (gtk_tree_view_setup_model):
        * gtk/treestoretest.c (make_window):
        s/g_signal_connect/g_signal_connectc/.

        * gtk/gtktextbuffer.c: completed signal arg fixups,
        they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2001-03-08 16:36:17 +00:00
Owen Taylor
23f37e311d Document ::hierarchy-changed.
Wed Mar  7 23:58:53 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkwidget.sgml: Document ::hierarchy-changed.
2001-03-08 06:15:16 +00:00
Owen Taylor
85af79635a Make G_CONST_RETURN.
Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
	G_CONST_RETURN.

	* gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a
	::hierarchy-changed signal when a widget changes
	from anchored to unanchored or vice versa.
	(anchored means
	 gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
	Use a private flag to keep track of this efficiently.
2001-03-08 06:14:43 +00:00
Havoc Pennington
d85dd6bd98 uglify so that size request gets tested.
2001-03-07  Havoc Pennington  <hp@redhat.com>

	* gtk/testgtk.c (create_spins): uglify so that size request gets
	tested.

	* gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
	request on values for upper/lower, completes #6152
2001-03-08 01:55:28 +00:00
Owen Taylor
29268cc780 use full set, since current set wasn't building on all configs.
Wed Mar  7 20:08:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixbuf/Makefile.am (GTKDOC_CFLAGS/LIBS): use full set,
	since current set wasn't building on all configs.

	* */Makefile.am: ...to build a more perfect Makefile.am...

Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am: Remove gtk-config-2.0 again.
	(Grrrr, pkg-config. And stops make loops.)
2001-03-08 01:33:01 +00:00
Tim Janik
7ae2326acb removed old emission hook API.
Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.[hc]: removed old emission hook API.

        * docs/Changes-2.0.txt: fixed sections.

        * gtk/gtktextbuffer.c: signal arg fixups.
2001-03-07 23:41:00 +00:00
Havoc Pennington
1cdba88340 use PRIORITY_VALIDATE
2001-03-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE

	* gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
	here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
	of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
	validation and the redraw which is higher priority than the
	validation.
2001-03-07 21:55:02 +00:00
Havoc Pennington
29b902a481 remove trailer (gtk_entry_set_property): remove trailer
2001-03-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkentry.c (gtk_entry_get_property): remove trailer
	(gtk_entry_set_property): remove trailer

	* gtk/gtkentry.c (gtk_entry_set_width_chars):
	(gtk_entry_get_width_chars): new functions, to set size request to
	a given number of characters

	* gtk/testgtk.c (create_dialog): beef up the dialog test slightly

	* gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
	(gtk_dialog_get_has_separator): new function
        (run_delete_handler): fix to not emit "response" signal
	because we already did in the delete event handler installed
	at dialog creation time.

	* gtk/gtkdialog.h: add a has_separator property,
	add GTK_DIALOG_NO_SEPARATOR flag
2001-03-07 21:32:51 +00:00
Havoc Pennington
9d1e2a1323 new function, turns off decorations for a window.
2001-03-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
	off decorations for a window.

	* demos/gtk-demo/button_box.c (create_bbox): adapt to button box
	changes

	* gtk/gtklabel.c (gtk_label_get_layout_offsets): new function
	to get location of PangoLayout inside the label, closes #51198

	* gtk/testgtk.c (create_bbox): fix up button box usage

	* gtk/testcalendar.c (create_calendar): fix up button box usage

	* gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage

	* gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage

	* gtk/gtkhbbox.h: deprecations

	* gtk/gtkvbbox.h: deprecations

	* gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
	emulate deprecated gtk_button_box_get_spacing

	* gtk/gtkbbox.h: deprecate some useless functions, remove entirely
	the "set global default" functions
	(struct _GtkButtonBox): remove "spacing" field, use the one from
	GtkBox base class

	* gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore

	* gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
	render the icon, return the missing image icon.

	* gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
	image icon if the load fails.

	* gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
	when no image is found; should be the Netscape "missing image"
	icon eventually but for now is a random image

	* gtk/gtkwindow.c (gtk_window_set_role): new function, sets the
	role for the session manager

	* gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG

	* gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
	GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL

	* gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2001-03-07 21:10:44 +00:00
Tim Janik
3beaeae49f dum di dum 2001-03-07 14:50:50 +00:00
Tim Janik
35af5c4eba marshaller fixes.
Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>

        * gtk/*.c: marshaller fixes.

        * gtk/gtkmarshal.list: extreme cleanup.

        * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
        param spec for now.

        * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
        where appliable.

        * gtk/gtktypeutils.[hc]: updates to GLib API changes.
        special cased autogenerated boxed types from gtktypebuiltins_ids.c
        which are not reference counted:
        GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
        PangoFontDescription, GtkTreeIter and GtkTreePath.

Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtktreeselection.h:
        * gtk/gtktreemodel.c:
        * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
        file should be included directly, and gobject/gmarshal.h
        as well as gtk/gtkmarshal.h even can't be included directly.

        * Makefile.am: grr, install gtk-config-2.0.

        * gtk/testgtk.c:
        * gtk/simple.c:
        * gtk/gtkmenu.c:
        * gtk/gtkitemfactory.c: use g_object_connect() instead of
        passing "*signal*::*" args to gtk_widget_set().

        * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.

        * gtk/*.c: removed trailer arg from property setters and getters.
        macro fixups.

Thu Mar  1 04:01:57 2001  Tim Janik  <timj@gtk.org>

        * test-gdk-pixbuf.c: fixed includes.
2001-03-07 14:49:21 +00:00
Alexander Larsson
026caeb02a Removed warning
2001-03-07  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtklabel.c (set_markup):
	Removed warning
2001-03-07 13:47:00 +00:00
Jonathan Blandford
6ad4a95d01 add --nogtkinit.
Wed Mar  7 00:27:13 2001  Jonathan Blandford  <jrb@redhat.com>

	* gdk-pixbuf/Makefile.am (scan-build.stamp): add --nogtkinit.
2001-03-07 05:24:57 +00:00
Jonathan Blandford
4111cdd523 Add visible field to allow you to hide cell renderers.
Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
	field to allow you to hide cell renderers.

	* gtk/gtkcellrenderer.c: Add support for invisible cells.

	* gtk/gtktreeview.c: Add support for invisible cells.
2001-03-07 00:57:49 +00:00
Jonathan Blandford
e83dca5093 Add "clicked" signal back to columns.
Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
	Add "clicked" signal back to columns.

	* ChangeLog: remove conflict markers.
2001-03-06 22:23:05 +00:00
Owen Taylor
71aa1161b3 Add animation of activation by, on activate, pressing the button, and
Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbutton.c: Add animation of activation by, on
	activate, pressing the button, and adding a timeout that
	releases the button after 250ms	or on key release and
	emits ::clicked. (#51501)

	* gtk/gtkdialog.c: Bit of a hack - for buttons in the
	action area, we connect to ::clicked instead of ::activate
	so the dialog stays up through the animation.

Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
	check the ignore_enter flag for the menu shell that
	the item is actually a child of, not for attached
	submenus. (#51536)
2001-03-06 15:51:10 +00:00
James Henstridge
96f9c875ee set the class closure offset for the window_state_event to point at
2001-03-06  James Henstridge  <james@daa.com.au>

	* gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
	offset for the window_state_event to point at window_state_event
	rather than no_expose_event.
2001-03-06 05:49:26 +00:00
Jonathan Blandford
41ae8df2e9 Updated docs to be sane 2001-03-06 00:33:07 +00:00
Jonathan Blandford
cf31d765e8 fix busted /* comment */
Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkimmodule.h: fix busted /* comment */
2001-03-06 00:09:28 +00:00
Jonathan Blandford
d5e0710d68 Apply patch from John Margaglione to add object properties.
Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c: Apply patch from John Margaglione to add
	object properties.
2001-03-05 20:07:18 +00:00
Sven Neumann
fdcf6cf2b6 shut up CVS 2001-03-05 19:56:46 +00:00
Jonathan Blandford
a7f524bbd6 Apply patch from Lee Mallabone to add object properties.
Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
	add object properties.

	* gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
	to add object properties.

	* gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
	object properties.

	* gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
	add object properties.

	* gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
	object properties.
2001-03-05 19:55:30 +00:00
Jonathan Blandford
3b2ffda1f5 renamed "child_toggled" to "has_child_toggled".
Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c: renamed "child_toggled" to
	"has_child_toggled".

	* gtk/gtktreeview.c: Handle removing columns better.  Updated to
	handle new signal name.

	* gtk/gtktreestore.c: Updated to handle new signal name.
	* gtk/gtklisttore.c: Updated to handle new signal name.
	* gtk/gtktreemodelsort.c: Updated to handle new signal name.
2001-03-05 19:43:24 +00:00
Alexander Larsson
e8a62bd877 Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2001-03-05  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
	Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2001-03-05 17:07:19 +00:00
Michael Natterer
3839abae10 made the "parent_class" pointer static.
2001-03-05  Michael Natterer  <mitch@gimp.org>

	* src/pixbuf-draw.c: made the "parent_class" pointer static.

	(Owen, I just commented out the draw methods which don't exist any
	more to make it compile).
2001-03-05 16:44:18 +00:00
Michael Natterer
209d22cb98 Made the "parent_class" pointer static. The pixbuf-engine coincidentially
2001-03-05  Michael Natterer  <mitch@gimp.org>

	* gtk/gtklabel.c: Made the "parent_class" pointer static. The
	pixbuf-engine coincidentially also failed to make one of it's
	parent_class pointers static, causing overwriting of GtkLabel's
	parent_class pointer in pixbuf_style_class_init().
	(Will commit the fix to the pixbuf-engine too).
2001-03-05 16:38:01 +00:00
Alexander Larsson
83c3e076ef Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow. New
2001-03-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/gdkwindow.h:
	Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
	New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
	gdk_window_set_icon_list for net wmspec functionality.

	* gdk/x11/gdkwindow-x11.c:
	Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
	Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
	gdk_window_set_icon_list.
	Added gdk_wmspec_change_state helper function and used it in the code.
	Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.

	* gtk/gtkdialog.c (gtk_dialog_init):
	Set GDK_WINDOW_TYPE_HINT_DIALOG.

	* gtk/gtkhandlebox.c (gtk_handle_box_realize):
	Set GDK_WINDOW_TYPE_HINT_TOOLBAR.

	* gtk/gtkwindow.c:
	new function gtk_window_set_type_hint.
	On realize, set type hint and modal hint.

	* gtk/gtkwindow.h:
	Added type_hint field and gtk_window_set_type_hint.
2001-03-05 15:09:02 +00:00
Alexander Larsson
8190728773 Convert from GtkArg to GParam (originally based on patch from Lee
2001-03-05  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtklabel.[ch]:
	Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
	New function gtk_label_get_accel_keyval () to get the underline accelerator
	of the label. Setting the label pattern overrides other attributes.
2001-03-05 14:08:42 +00:00
MET 2001 Sven Neumann
f653e182e7 fixed compiler warnings by inserting some consts. Added missing
Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>

        * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
        Added missing initializers to gtk_rc_style_init().
2001-03-05 13:57:01 +00:00
CET Mikael Hermansson
e896731f3e fixed bug #51097 about setting gtk_text_view_set_border_window_size() if
Sun Mar 04  07:30:03 2001 CET Mikael Hermansson<mikeh@bahnhof.se>

	* gtk/gtktextview.c: fixed bug #51097 about setting gtk_text_view_set_border_window_size()
	if the widget is already realized.
2001-03-04 05:36:34 +00:00
Owen Taylor
c374cd299b Doc fixes
Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes

	* gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
	comment. Won't do to have duplicated doc comments between
	the platform subdirs.
2001-03-04 00:12:55 +00:00
Owen Taylor
a10898b662 You can't use + as a metacharacter for basic regular expressions. (This
Sat Mar  3 17:20:53 2001  Owen Taylor  <otaylor@redhat.com>

	* */Makefile.am (scan-build.stamp): You can't use
	+ as a metacharacter for basic regular expressions.
	(This was the "all objects disappear")

	* gdk/gdk-sections.txt gdk-pixbuf/gdk-pixbuf-sections.txt

	* */*-unused.sgml: Remove a lot of empty stuff. (No
	point in saving old docs when there aren't any.)
2001-03-03 23:29:50 +00:00
Owen Taylor
445e90fa82 Detectable auto-repeat - make a repeating key generate
Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c
	  gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:

	Detectable auto-repeat - make a repeating key generate
	press/press/press/release instead of press/release pairs.

	If we have Xkb and XkbSetDectableAutoRepeat supports
	that, we do it that way. Otherwise, when we get
	a release event, we check ahead with XPending to see
	if the next key is a KeyPress with the same keycode
	and timestamp. (Not 100% reliable, but pretty close.)

Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>

  	* gtk/gtkmain.c (gtk_propagate_event): Only do special
        special key-press grab handling for widgets within
        GtkWindows. Otherwise, fall through to normal case.

        This prevents key events being sent twice to GtkInvisible
        widgets, which can cause all sorts of mischief.
2001-03-03 21:34:19 +00:00
Owen Taylor
a859fa13af Add shift-clicking to extend the selection. (Roughly based on patch from
Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
	to extend the selection. (Roughly based on patch
	from Jay Cox, #50939)

	* gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
	to properly handle previous GDK_BUTTON_PRESS.
	(Patch from Jay Cox, #50938)

	* gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
	'\0' back along with the deleted text. (#51148)
2001-03-03 21:03:52 +00:00
Owen Taylor
8db8ee7455 Unshift the group when extracting it from the X keyboard event.
Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
	the group when extracting it from the X keyboard event.

	* modules/input/Makefile.am modules/input/imipa.c:
	Simple module for entering IPA. (Do we need a
	gtk-stupid-input-tricks CVS module?)
2001-03-03 19:57:54 +00:00
Owen Taylor
bcb6720d6e Remove spurious const.
Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
	const.

	* gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.

	* gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
	is no focus widget for the dialog currently, grab the focus as well
	as the default.

	* gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
	the action area's children to iterate through, not the
	dialog's children.
2001-03-03 18:39:33 +00:00
Owen Taylor
efefd9f0ba Add plug-socket tests. (Won't work worth a darn until I commit the rest of
Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>

	* tests/Makefile.am tests/testsocket.c	tests/testsocket_child.c:
        Add plug-socket tests. (Won't work worth a darn until I commit
        the rest of the plug-socket changes, but no reason these
        can't go into CVS now.)
2001-03-03 18:23:21 +00:00
Kjartan Maraas
5f2975ade7 Updated Norwegian translation.
2001-03-01  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
2001-03-02 21:08:41 +00:00
Havoc Pennington
8860615d9a use _gdk_region_get_xrectangles()
2001-03-02  Havoc Pennington  <hp@redhat.com>

	* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
	_gdk_region_get_xrectangles()

	* gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function

	* gtk/testgtk.c (create_shapes): add test for shape_combine_region

	* gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
	function, contributed by Ron Steinke

	* gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
	gdk_net_wm_supports

	* gdk/gdkregion-generic.c (gdk_region_get_rectangles):
	New function, contributed by Ron Steinke

	* gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function,
	used to line up the text in the entry when using the entry for
	editable sheet cell hacks

	* gtk/testgtk.c (create_entry): test the activate_default setting
	on GtkEntry

	* gtk/gtkentry.c (gtk_entry_set_activates_default): New function to
	cause the entry to activate the default button for a dialog when
	activated
	(gtk_entry_get_activates_default): new function
2001-03-02 20:02:17 +00:00
Owen Taylor
b0052ec843 Patch from ChiDeok Hwang to move call to sync_selection() up a few lines
Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
	Hwang to move call to sync_selection() up a few lines
	to before the row list is modified, to fix crash when
	removing rows in the undo_selection list.

	(Test case provided by Daniel Elstner:

        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)

Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktree.c (gtk_tree_class_init): Do the setting
	of tree->root_tree in parent_set rather than _map(),
	fixing #50892 in a bit better manner.

Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)

Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>

	* gtk/gtkstyle.c : Remove duplicate fwd decl for
	gtk_default_draw_shadow.

ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkimage.c (gdk_image_new): Remove excess
	warning, make warnings more verbose, treat a error
	in shmat as permanent, and don't try again.
	(#51163, Ed Randall.)

Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
	delay for the first click before starting to scroll.
	(based on #51026, gtk-enf-990512-0.patch, Eric Fisher)

	* gtk/gtktext.c: GtkText should have I-beam cursor.
	(based on gtk-enf-990513-1.patch, Eric Fisher.)

Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
	cleanup to remove some references to unused
	->xoffset, ->yoffset.

Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
	mask. (#51039, fix from Martin Maierhofer)

Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
	for unshifted + and shifted = for non-us keyboards.
	Make <Control>+ and <Control>- work as well as
	<Control>KP_Plus, <Control>KP_Minus for recursive
	open/close.  (#2682, Ren Seindal)

Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
	the active menu item before deactivating the menu,
	so gtk_menu_popdown doesn't change the history. (#50964)

Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeitem.c (gtk_tree_item_draw_lines):
	draw lines with text_gc rather than black_gc.
	(Patch from Vlad Harchev <hvv hippo ru>, #50926)
2001-03-02 17:06:14 +00:00
Sven Neumann
ef08542c4f shut up CVS 2001-03-02 10:10:22 +00:00
Jonathan Blandford
193bed1896 Move handling of buttons fully in gtktreeviewcolumn. This code is less
Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
	Move handling of buttons fully in gtktreeviewcolumn.  This code is
	less interrelated then it was, but it still requires the
	GtkTreeView to map it.

	* test/testtreecolumn.c: Now I can add a column to one view,
	remove it, add it to the another view, remove it, then re-add it
	to the first.  Nifty.
2001-03-02 00:49:32 +00:00
GMT 2001 Tony Gale
addeb140ec Minor corrections
Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml: Minor corrections
2001-03-01 13:15:22 +00:00
Jonathan Blandford
f7382221cd Sanitize GtkRowReference.
Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
	GtkRowReference.
2001-02-28 21:37:50 +00:00
Havoc Pennington
56a2f2c628 Remove draw_focus and draw_default (gtk_widget_draw_focus): remove this
2001-02-28  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
	draw_default
	(gtk_widget_draw_focus): remove this function; we could instead
	make it just gtk_widget_draw(), but in most cases I think the
	result would be broken user code, so think it's better to have
	that code not compile and get fixed
	(gtk_widget_draw_default): ditto

	* gtk/gtkwidget.c: Add default handlers for focus_in_event and
	focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw

	* gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
	widgets lose/get the default, instead of calling draw_default

	* docs/Changes-2.0.txt: note about all this

	Then fixed every widget in GTK, I won't list all the filenames.
2001-02-28 19:07:46 +00:00
Jonathan Blandford
c82dc58f7f Proxy out to _gtk_tree_row_reference_deleted. (inserted_callback): Proxy
Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (deleted_callback): Proxy out to
	_gtk_tree_row_reference_deleted.
	(inserted_callback): Proxy out to
	_gtk_tree_row_reference_inserted.
	(_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
	get around signal emission ordering problem.

	* gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
	fix to work with SINGLE
	(_gtk_tree_selection_internal_select_node): Major sanitization on
	selections.  SINGLE now seems to work.

	* tests/Makefile.am: add testtreecolumn.c:

	* tests/testtreecolumn.c: New test.  Mostly points out selection
	bugs currently, but will test columns later.

	* gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
	selection bug.  I hate touching this code -- it's scary.
2001-02-28 00:35:25 +00:00
Havoc Pennington
75d79abf98 test the window state stuff
2001-02-26  Havoc Pennington  <hp@redhat.com>

	* gtk/testgtk.c: test the window state stuff

	* gtk/gtkwindow.c (gtk_window_present): new function, makes a
	window come to the user's attention as if it were just created
	(gtk_window_iconify): new function
	(gtk_window_deiconify): new function
	(gtk_window_stick): new function
	(gtk_window_unstick): new function
	(gtk_window_maximize): new function
	(gtk_window_unmaximize): new function

	* gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal

	* gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE

	* gdk/x11/gdkevents-x11.c: create window state events when
	appropriate
	(gdk_wmspec_supported): new function

	* gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
	iconification before showing the window
	(gdk_window_deiconify): new function
	(gdk_window_stick): new function
	(gdk_window_unstick): new function
	(gdk_window_maximize): new function
	(gdk_window_unmaximize): new function

	* gdk/gdkwindow.c: store the window state in the window;
	change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
	window->mapped.
	(gdk_window_get_state): return the current window state

	* gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
	(gdk_event_get_state): handle GDK_WINDOW_STATE
	(gdk_synthesize_window_state): function to create the window state
	events

	* gdk/gdkevents.h (struct _GdkEventWindowState): new type of
	event, for changes to "window state" such as maximized, sticky,
	etc.

	* gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
	focuses a window

	* gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function,
	finds out if we support a given WM spec hint
2001-02-27 20:40:15 +00:00
Tony Gale
af03d3855d Fogot to change the date
Fogot to change the date
2001-02-27 13:48:36 +00:00
GMT 2001 Tony Gale
ed6c14234c New question re memory leaks.
Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: New question re memory leaks.
2001-02-27 13:38:33 +00:00
Kjartan Maraas
5c28d2ca32 Updated Norwegian translation. Added a bunch of new files.
2001-02-27  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
	* POTFILES.in: Added a bunch of new files.
2001-02-27 12:14:21 +00:00
Hans Breuer
118995473f sorry to forget this on previous commit ! 2001-02-25 19:02:27 +00:00
Hans Breuer
75b4076d2a small (not only) portability fixes 2001-02-25 17:25:09 +00:00
Jonathan Blandford
ff809ae403 actually put /* */ around #endif comment.
Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@webwynk.net>

	* gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2001-02-25 01:12:13 +00:00
Jonathan Blandford
1efdc10301 Only draw the column that is exposed.
Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
	column that is exposed.

	(_gtk_tree_view_update_size): Changed name from set_size, and
	changed function to do more work, and not force people calling it
	to figure out the size.  Simplifies a lot of code elsewhere.
2001-02-23 23:00:52 +00:00
Alexander Larsson
992759f18e return solid masks for xpms that have no transparent color. This makes the
2001-02-23  Alexander Larsson  <alexl@redhat.com>

	* gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
	return solid masks for xpms that have no transparent color.
	This makes the ..._create_from_xpm... API backwards
	compatible.
2001-02-23 13:35:16 +00:00
Tor Lillqvist
3dcfcddf7a Update. Mention the gtk-1-3-win32-production branch.
2001-02-23  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Update. Mention the gtk-1-3-win32-production
	branch.

	* gdk/win32/bdfcursor.c: New file. A program that generates
	xcursors.h. Thanks to Stefan Ondrejicka.

	* gdk/win32/xcursors.h: New file, contains the X cursor font in a
	compact format.

	* gdk/win32/Makefile.am (EXTRA_DIST): Add new files.

	* gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
	function, uses xcursors.h.
	(gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
	cursor from inline data instead of using LoadCursor() to generate
	it from a resource.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
	event, must check the Windows message for mouse button state, as
	the GDK event state might not have been built if it is
	undelivered. Remove one goto.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
	SetCursor() if the current cursor as returned by GetCursor() is
	the window's previous cursor. The ChildWindowFromPoint() test
	apparently didn't work correctly.

	* gdk/win32/rc/*.cur: Remove.

	* gdk/win32/rc/gdk.rc.in: Remove cursors.

	* gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.

	* gtk/makefile.{mingw,msc}.in: Updates.
2001-02-23 03:51:41 +00:00
Tor Lillqvist
b825baa1f9 file makefile.mingw was initially added on branch gtk-1-3-win32-production. 2001-02-23 01:02:37 +00:00
Jonathan Blandford
851bd821a1 add functions for signal emission.
Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.h: add functions for signal emission.

	* gtk/gtktreestore.c: move to use above functions instead of
	g_signal_emit.

	* gtk/gtkliststore.c: ditto
2001-02-22 01:56:08 +00:00
Jonathan Blandford
ef084e87e5 removed signals. Moved to inherit from GObject instead of GtkObject.
Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreestore.c: removed signals.  Moved to inherit from
	GObject instead of GtkObject.

	* gtk/gtkliststore.c: ditto.

	* gtk/gtktreemodelsort.c: ditto.

	* gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
	GtkTreeModelIface, instead of in each model.
2001-02-21 23:49:22 +00:00
Havoc Pennington
0ebf76901c unbreak this function
2001-02-21  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
	unbreak this function

	* gtk/gtkentry.c: apply patch from Lee Mallabone to add object
	properties

	* gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
	properties

	* gtk/gtkcombo.c: apply patch from Lee Mallabone to add object
	properties

	* gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
	mean unset the max length
2001-02-21 20:22:25 +00:00
Jonathan Blandford
334a40e893 Changed name to be set_cell_data_func to make it clear what the functino
Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
	Changed name to be set_cell_data_func to make it clear what
	the functino does.  Close bug #51069.

Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/testgtk.c (main): Remove turning on of profiling malloc,
	have memory actually freed.  Keeps box running longer.
2001-02-21 19:59:23 +00:00
Alexander Larsson
e1e093fa44 Added new menu separator item. The drawing and size handling is still done
2001-02-21  Alexander Larsson  <alexl@redhat.com>

        * gtk/gtkseparatormenuitem.[ch]:
	Added new menu separator item. The drawing and size handling
	is still done in GtkMenuItem, but the API is a bit more sane.

	* gtk/Makefile.am:
	Add gtkseparatormenuitem.[ch].

	* gtk/gtk.h:
	Add gtkseparatormenuitem.h.

	* gtk/gtkentry.c:
	* gtk/gtkmenufactory.c:
	* gtk/gtktextview.c:
	Use the new API for menu separators.

	* demos/gtk-demo/menus.c (create_menu):
	Add some GtkSeparatorMenuItem demo code.
2001-02-21 09:29:01 +00:00
Havoc Pennington
7884954089 Convert to new property API, patch from Lee Mallabone
2001-02-20  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkaspectframe.c: Convert to new property API, patch from
	Lee Mallabone

	* gtk/gtkarrow.c: Convert to new property API, patch from
	Lee Mallabone
2001-02-21 00:29:03 +00:00
Sven Neumann
8832f1d3ad use draw_vline method of parent_class, not draw_hline
2001-02-20  Sven Neumann  <sven@convergence.de>

	* src/pixbuf-draw.c (draw_vline): use draw_vline method of
	parent_class, not draw_hline
2001-02-20 21:15:31 +00:00
Jonathan Blandford
f88d35bba7 New function to create an icon set from a pixbuf.
Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
	function to create an icon set from a pixbuf.
2001-02-20 19:07:15 +00:00
Alexander Larsson
699c933422 Add a "markup" property.
2001-02-20  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkcellrenderertext.[ch]:
	Add a "markup" property.

	* gtk/treestoretest.c:
	Use the markup property, remove some leftover stuff from
	GtkTreeModelMapping.
2001-02-20 16:16:22 +00:00
Alexander Larsson
5efcd1a640 Queue a redraw if the selectable setting was changed.
2001-02-20  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtklabel.c (gtk_label_set_selectable):
	Queue a redraw if the selectable setting was changed.
2001-02-20 15:36:28 +00:00
Christophe Merlet
fe145d152e Updated French translation. 2001-02-20 14:40:01 +00:00
Alexander Larsson
065b633961 Actually copy the whole gc, not just the public parts.
2001-02-20  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
	Actually copy the whole gc, not just the public parts.

	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
	GDK_WINDOW_TEMP are not toplevel. Fixes selectable
	labels.
2001-02-20 10:56:41 +00:00
Havoc Pennington
f95dceaaf7 fix these docs to reflect the current state of affairs
2001-02-20  Havoc Pennington  <hp@pobox.com>

	* gdk/tmpl/rgb.sgml: fix these docs to reflect the current state
	of affairs
2001-02-20 05:31:19 +00:00
Havoc Pennington
50b1ab4118 add --deprecated-guards
2001-02-19  Havoc Pennington  <hp@pobox.com>

	* gdk/Makefile.am (SCAN_OPTIONS): add --deprecated-guards

	* gdk/gdk-sections.txt: update

	* gdk/gdk-docs.sgml: update

2001-02-19  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkwindow.c: docs

	* gdk/gdkrgb.c: docs

	* gdk/gdkregion-generic.c: docs

	* gdk/gdkgc.c (gdk_gc_set_values): docs

	* gdk/gdkdraw.c: docs

	* gdk/gdkdrawable.h: deprecate drawable get/set data
2001-02-20 05:21:44 +00:00
Havoc Pennington
131aac575f prepend underscore (gdk_pixbuf_get_named_module): prepend underscore
2001-02-18  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
	(gdk_pixbuf_get_named_module): prepend underscore
	(gdk_pixbuf_get_module): prepend underscore

2001-02-18  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf/Makefile.am (IGNORE_HFILES): add gdk-pixbuf-marshal.h

	* gdk-pixbuf/gdk-pixbuf-sections.txt: fixes
2001-02-20 02:59:30 +00:00
Jonathan Blandford
0f9fadbec2 Add simple new demo.
Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>

	* demos/gtk-demo/dialog.c: Add simple new demo.
2001-02-20 01:37:27 +00:00
Havoc Pennington
bc31a1bcca add insert_child_anchor signal, bug #50245
2001-02-19  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
	insert_child_anchor signal, bug #50245

	* gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
	from create_child_anchor, so the anchor is passed in

	* gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
	(_gtk_widget_segment_new): have the child anchor object passed in,
	instead of creating it.

	* gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
	to gtk_text_buffer_get_modified
2001-02-19 23:27:27 +00:00
Havoc Pennington
027c315499 hmm, someone changed GLib without fixing GTK
2001-02-19  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
	changed GLib without fixing GTK

	* gtk/gtkrange.h: Rename all the stupid implementation detail
	functions to have an underscore in front. Most of them should
	probably just go away, but for starters don't export them.
	Bug #50482

2001-02-19  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
2001-02-19 22:51:15 +00:00
Havoc Pennington
f4fa22da55 test was backward, so deprecated functions were excluded by default
2001-02-19  Havoc Pennington  <hp@redhat.com>

	* gdk/gdkcolor.h: test was backward, so deprecated functions were
	excluded by default

	* gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
	clean up the old code a bit

	* gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
	inconsistent state

	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
	draw inconsistent state

	* gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
	(create_menu): add inconsistent test

	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
	new function
	(gtk_check_menu_item_get_inconsistent): new function
	(gtk_real_check_menu_item_draw_indicator): draw the inconsistent
	state (using etched in for now)

	* gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
	draw inconsistent state

	* gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
	function, used when the user has selected a range of stuff in
	different states
	(gtk_toggle_button_get_inconsistent): accessor for that
	(gtk_toggle_button_paint): draw inconsistent state (etched in?
	don't know what else to do)
2001-02-19 22:25:30 +00:00
Hans Breuer
6fb6363e30 updated for win32 msvc build (forgot this before) 2001-02-19 22:02:23 +00:00
Hans Breuer
c3aba35edf updated for win32 msvc build 2001-02-19 21:54:04 +00:00
Havoc Pennington
b58ba480af GDK_DISABLE_COMPAT_H, GDK_DISABLE_DEPRECATED (we need to merge those two
2001-02-19  Havoc Pennington  <hp@redhat.com>

	* demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
	GDK_DISABLE_DEPRECATED (we need to merge those two #defines)

	* gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
	(gdk_key_repeat_restore): nuke

	* gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
	(gdk_init_check): no atexit func

	* gdk/gdkrgb.h: mark some stuff deprecated

	* gdk/gdkcolor.h: mark some stuff deprecated

	* gdk/gdk.h: deprecated gdk_exit, gdk_input_*

	* gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2001-02-19 20:38:15 +00:00
Havoc Pennington
3a99bdf5a7 use the visual scroll steps.
2001-02-16  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
	scroll steps.

	* gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
	steps, and add Ctrl-arrow shortcuts for paging visually as with
	HScale, since Page Up and Page Down move logically.

	* gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
	GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions

	* gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
	steps
	(gtk_range_scroll): handle the visual steps

	* gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
	scroll steps

	* gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
	steps, not the logical ones.

	* gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
	(scroll_vertical): handle up/down steps
2001-02-19 20:06:37 +00:00
Alexander Larsson
ba46da61a7 Copy data and free data with free().
2001-02-19 Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
	Copy data and free data with free().

	* gdk-pixbuf/gdk-pixbuf.c:
	* gdk-pixbuf/io-jpeg.c:
	* gdk-pixbuf/io-png.c:
	Use g_try_malloc/g_free instead malloc/free.

	* gdk-pixbuf/test-gdk-pixbuf.c:
	Must... initialize... gobject...

	* gdk-pixbuf/pixops/timescale.c:
	* gtk/gtkcalendar.c:
	Use g_malloc instead of malloc.
2001-02-19 14:35:25 +00:00
9
1f6effe99b Comment out property assignments, these don't work yet.
2001-02-19    <alla@lysator.liu.se>

	* gtk/testgtkrc:
	Comment out property assignments, these don't work yet.
2001-02-19 13:58:35 +00:00
Havoc Pennington
4821d87303 sync up automated changes made by gtk-doc (manually verified correctness) 2001-02-18 23:19:46 +00:00
Havoc Pennington
1a1e293d31 docs
2001-02-17  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
2001-02-18 04:08:30 +00:00
Havoc Pennington
cd970eafe8 missed a couple spaces before parens 2001-02-18 02:00:22 +00:00
Havoc Pennington
fa60589554 clean this up a bit.
2001-02-17  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
	bit.
2001-02-18 01:59:18 +00:00
Havoc Pennington
e90d8357a9 fix screwup with shadowed variables that had broken size request in some
2001-02-17  Havoc Pennington  <hp@pobox.com>

	* gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
	shadowed variables that had broken size request in some cases,
	leading to bogus tooltips (#50996)

2001-02-06  Jon K Hellan  <hellan@acm.org>

	Implement fast browsing of tooltips, bug #50619

	* gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
	and last_popdown

	* gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
	use_sticky_delay and last_popdown.
	(gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
	time of popdown.
	(gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
	is NULL.
	(gtk_tooltips_recently_shown): New static function.  Return true
	if < sticky_delay has elapsed since last popdown.
	(gtk_tooltips_event_handler): Display window after sticky_delay
	(presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
	since last popdown.

2001-02-17  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
	instead of (). #6394

	* gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
	G_CONST_RETURN, make it return by reference, #50473
2001-02-17 17:21:21 +00:00
Tim Janik
ca26902c65 default initialize the generated ENTER_NOTIFY event with 0, otherwise not
Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
        generated ENTER_NOTIFY event with 0, otherwise not explicitely
        setup fields contain garbage (e.g. subwindow, breaking
        gdk_drawable_ref() upon event copy).
        (gtk_menu_stop_navigating_submenu_cb): same here.

        * gtk/gtklist.c (gtk_list_vertical_timeout):
        * gtk/gtklist.c (gtk_list_horizontal_timeout):
        * gtk/gtkclist.c (vertical_timeout):
        * gtk/gtkclist.c (horizontal_timeout): change direct assignment
        default-zero-intialization for unions to memset(,0,), as unions are
        not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
        has to become GdkEvent x; memset (&x, 0, sizeof (x)); )

        * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
        g_closure_sink() warning.

        * gtk/gtktreemodel.c (gtk_tree_model_get_valist):
        * gtk/gtktreestore.c (gtk_tree_store_set_valist):
        * gtk/gtkliststore.c (gtk_list_store_set_valist):
        fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2001-02-17 06:04:40 +00:00
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
Havoc Pennington
08add3cd50 convert the X coordinates so they're with respect to the line, rather than
2001-02-15  Havoc Pennington  <hp@redhat.com>

	* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
	the X coordinates so they're with respect to the line, rather than
	with respect to the layout.

	* gtk/gtkalignment.c: Convert to new property API, patch from Lee
	Mallabone

	* gtk/testgtk.c (create_range_controls): add vscale tests,
	and inverted test

	* gtk/gtkrange.c (gtk_range_set_inverted): new function to fix
	#50806

	* gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN

	* gtk/gtktextiter.h (gtk_text_iter_is_last): rename
	gtk_text_iter_is_end

	* gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
	rename gtk_text_buffer_get_end_iter

	* gtk/testgtk.c (create_labels): Add test for selectable

	* gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
	the selection stuff. This code is kind of broken since it doesn't
	use the theme engine.

	* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region):
	fix infinite loop and y offset problem
	(gdk_draw_layout_line_with_colors): fix foreground color handling

        * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag
	that makes the label selectable.

	* gtk/gtklabel.c (gtk_label_style_set): recreate the label's
	layout when the style is set, since fonts etc. could have changed.
2001-02-17 00:11:03 +00:00
Jonathan Blandford
f139b1c903 Removed gtktreemodelsimple.[ch] removed
Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
	* gtk/gtktreemodelsimple.[ch]: removed
2001-02-16 19:22:13 +00:00
Alexander Larsson
29f16cc671 New files. Implement GtkTreeModelMapping.
2001-02-16  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtktreemodelmapping.[ch]:
	New files. Implement GtkTreeModelMapping.

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

	* gtk/gtk.h:
	Add gtktreemodelmapping.h

	* gtk/treestoretest.c:
	Test the GtkTreeModelMapping
2001-02-16 18:16:14 +00:00
Valek Frob
1c31afa007 Updated russian translation. 2001-02-16 10:33:09 +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
f1177b43fa add "static" to a private function (gtk_image_menu_item_class_init):
2001-02-14  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
	"static" to a private function
	(gtk_image_menu_item_class_init): remove destroy handler,
	add "image" object property
2001-02-15 03:40:48 +00:00
Alexander Larsson
73c5da419c Add a shortcut if the window and the current clip_region doesn't overlap.
2001-02-13  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
	Add a shortcut if the window and the current clip_region doesn't
	overlap. This is needed when there are a lot of windows in a
	window. The layout test in testgtk is a good test.

	* gdk/linux-fb/gdkwindow-fb.c:
	Whitespace fix.
2001-02-13 16:22:11 +00:00
Sven Neumann
941378639a replaced deprecated gtk_drawing_area_size
2001-02-13  Sven Neumann  <sven@convergence.de>

	* demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2001-02-13 13:40:27 +00:00
Alexander Larsson
e86265ecf3 Don't reference last_cursor if it is null. Fixes crash when rotating the
2001-02-13  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
	Don't reference last_cursor if it is null. Fixes crash when rotating
	the screen before having moved the mouse.

	* gdk/linux-fb/gdkcc-fb.c: Zapp!

	* gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c

	* gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw when
	using 90 or 270 degrees rotation.
2001-02-13 13:35:48 +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
Owen Taylor
41b2d039af Remove gdkcc.h reference.
Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (gdk_headers): Remove gdkcc.h
	reference.

	* configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
	and refuse to initialize GTK+ if they fail.

Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Add check for gtk-doc version.

Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_size_request): Fix bug
	where the xpad/ypad was only being used on one side!
2001-02-13 04:56:07 +00:00
Owen Taylor
32abeb4c96 Use the new snazzy mother-of-all-gtk-doc-makefiles.
Sun Feb 11 22:16:34 2001  Owen Taylor  <otaylor@redhat.com>

	* */Makefile.am: Use the new snazzy mother-of-all-gtk-doc-makefiles.

	* gdk/tmpl/* gdk-pixbuf/tmpl/*: Recover a bunch of docs that were
	lost at one point.
2001-02-12 17:50:13 +00:00
Tor Lillqvist
730a2bdc6b Remove gdkcc-win32.c from here, too.
2001-02-11  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/Makefile.am: Remove gdkcc-win32.c from here, too.
2001-02-11 11:06:59 +00:00
Tor Lillqvist
e8aacae47d New function, copied from X11 version.
2001-02-11  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
	function, copied from X11 version.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
	DestroyCursor failures. The reason for the problem (despite the
	inconsistent messages from GetLastError()) was that
	DestroyCursor() cannot be called while a cursor is set in a
	window. Set the new cursor first and then destroy the old one.
	Thanks to jpe@archaeopteryx.com.

	* gdk/win32/gdkcc-win32.c: Removed.

	* gdk/gdk.def
	* gdk/makefile.mingw.in: Update. Godbye GdkColorContext.

	* gtk/gtk.def
	* gtk/makefile.mingw.in: Updates.
2001-02-11 11:00:14 +00:00
Havoc Pennington
dbb0342835 windows (file is blank)
2001-02-08  Havoc Pennington  <hp@pobox.com>

	* gtk/windows.sgml: windows (file is blank)

	* gtk/framebuffer.sgml: framebuffer (file is blank)

	* gtk/compiling.sgml: how to use pkg-config, etc. (file is
	blank for now)
2001-02-09 06:14:34 +00:00
Havoc Pennington
45510aefc3 better error message if you try to add a widget to a bin that already has
2001-02-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkbin.c (gtk_bin_add): better error message if you try to
	add a widget to a bin that already has a child.

	* gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512

	* docs/Changes-2.0.txt: note that GdkColorContext is gone.

	* gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c

	* gdk/gdk.h: remove gdkcc.h

	* gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h

	* gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
	GdkPixbuf, since the previous implementation was GdkColorContext
	dependent.

	* gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2001-02-09 00:40:48 +00:00
Jonathan Blandford
589b472609 moved back to a sane value!
Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
	a sane value!
2001-02-08 23:59:40 +00:00
Havoc Pennington
a87d840595 let's darken colors, not lighten them.
2001-02-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
	lighten them.
2001-02-08 23:54:02 +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
Sven Neumann
ea6096cc53 convert area_height to pango dimensions after painting the background. We
2001-02-07  Sven Neumann  <sven@convergence.de>

	* gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to
	pango dimensions after painting the background. We used to draw
	gigantic flat boxes here.
2001-02-07 19:43:25 +00:00
Alexander Larsson
82e2421542 Use g_free, since the buffer is allocated with g_try_alloc().
2001-02-07  Alexander Larsson  <alexl@redhat.com>

	* io-xpm.c (free_buffer):
	Use g_free, since the buffer is allocated with g_try_alloc().
2001-02-07 11:37:05 +00:00
Christophe Merlet
6aa710b91b PACKAGE must be gtk20, no? 2001-02-06 19:01:43 +00:00
Christophe Merlet
8eb4c37e3d Oupsss, forgotten lots of errors in french translation. 2001-02-06 15:15:41 +00:00
Christophe Merlet
be989cea61 Updated French translation. 2001-02-06 14:46:20 +00:00
Owen Taylor
ad6a316ee5 Fix syntax error introduced with earlier commit) (pointed out by Ollie
Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
	error introduced with earlier commit) (pointed out by
	Ollie Lho)
2001-02-06 03:08:34 +00:00
GMT 2001 Tony Gale
5975d4b2b7 s/MISK/MISC/
Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2001-02-05 13:24:04 +00:00
Tor Lillqvist
90359c8234 gdk/gdk.def Provide dummy implementations.
2001-02-04  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def
	* gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
	Provide dummy implementations.
2001-02-04 11:06:48 +00:00
Tim Janik
55fca1cf70 HELL! premature insanity, back out old rc-data changes.
HELL!
premature insanity, back out old rc-data changes.
2001-02-04 07:26:31 +00:00
Tim Janik
cfea670dac and on goes the crusade. it just takes another dozen patchup commits
to cover up for an aborted cvs commit batch.
2001-02-04 07:19:48 +00:00
Tim Janik
2dfa121e06 hell, what CVS magic is going on here? 2001-02-04 07:08:46 +00:00
Tim Janik
536ff10119 erk, post-commit fixups 2001-02-04 07:07:17 +00:00
Tim Janik
153fd8bae7 patch this to call g_type_init() untill the new inlined pixbuf code makes its way into CVS. 2001-02-04 07:06:31 +00:00
Tim Janik
89a0a894bc removed gtk_signal_init() compat define.
Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.h: removed gtk_signal_init() compat define.

        * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
        GTypeDebugFlags debug_flags and pass it on to g_type_init ();
        deprecated this function.

        * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
        argument.

Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>

        * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.

Sun Feb  4 07:59:57 2001  Tim Janik  <timj@gtk.org>

        * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
        we finally need the gobject->gruntime rename.

        * *.c: scratched calls to g_type_init(), there's simply no point in
        doing that, use gtk_init().
2001-02-04 07:05:29 +00:00
Havoc Pennington
f2ceb1c46a Add the intro docs section
2001-02-03  Havoc Pennington  <hp@pobox.com>

	* gtk/tmpl/gtkfixed.sgml: Add the intro docs section
2001-02-04 03:11:11 +00:00
Havoc Pennington
a98a2b9936 Fix bug reported by Mikael Hermansson with patch from Mikael (if there was
2001-02-03  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
	Mikael Hermansson with patch from Mikael (if there was a toggle
	start one after the first character in the range, this function
	was broken). Bug #50380
2001-02-03 16:47:48 +00:00
Owen Taylor
d3e4e59214 Remove confusing comment about X11.
Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Remove confusing comment about X11.

Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
	regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)

Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
	it breaks things on BSD. If you want to compile GTK+ with
	-ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE
	when configuring, since GTK+ simply can't be "pure ANSI"
	in the header files it uses. (#8170, Greg Hudson)
2001-02-03 16:31:35 +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
cc00e1c5ee docs
2001-02-02  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c: docs

	* gtk/gtkwidget.c: docs
	(gtk_widget_set_colormap): add a reference to the colormap
	(gtk_widget_get_default_colormap): add a reference to the colormap

	* gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs

	* gtk/gtktextiter.c: docs

	* gtk/gtkmain.c (gtk_propagate_event): docs

	* gtk/gtkpaned.c (gtk_paned_get_position): docs
	(gtk_paned_set_position): docs

	* gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
	sort interface, no implementation yet.

	* demos/testpixbuf.c (new_testrgb_window): replace
	gtk_drawing_area_size() with gtk_widget_set_usize()

	* demos/testpixbuf-drawable.c (main): ditto

	* gtk/testgtk.c: remove use of GtkStatusbarMsg

	* gtk/gtktextbuffer.c: docs

	* gtk/gtkstock.c: docs

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs

	* gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs

	* gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs

	* gtk/gtkimage.c: add some docs in here
	(gtk_image_size_request): change name of
	gtk_widget_render_stock_icon
	(gtk_image_get_icon_set): don't dup returned string
	(gtk_image_get_icon_set): don't dup returned string

	* gtk/gtkwidget.c (gtk_widget_render_icon): rename from
	gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
	and gtkiconfactory.h functions

	* gtk/gtkiconfactory.c: add some docs in here

	* gtk/gtkmain.c (gtk_get_default_language): document
	(gtk_get_current_event): document
	(gtk_get_current_event_state): document
	(gtk_get_event_widget): document

	* gtk/gtkentry.c (gtk_entry_set_invisible_char): document

	* gtk/gtkcontainer.c: Add some documentation
	(gtk_container_add): give a more explanatory warning on adding an
	already-parented widget, this is kind of a FAQ and also a common
	typo that's easier to debug with a nice warning

	* gtk/gtkcellrenderertoggle.c
	(gtk_cell_renderer_toggle_get_active): remove, I was on crack
	adding this, it's useless
	(gtk_cell_renderer_toggle_set_active): remove
	(gtk_cell_renderer_toggle_get_radio): add

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
	the NULL cell renderer, that doesn't make any sense to me.

	* demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
	demo code should never use deprecated features.

	* demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
	code should never use deprecated features.

	* gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
	gtk_widget_queue_clear_area deprecated

	* gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
	deprecated

	* gtk/gtklabel.h: mark gtk_label_get() deprecated

	* gtk/gtkimage.h: mark the legacy GtkImage functions that took
	a GdkImage deprecated, replaced by new consistently-named
	functions

	* gtk/gtkmain.h: Mark gtk_exit() deprecated

	* gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated

	* gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string
	deprecated

	* gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file,
	so it won't appear in docs and confuse people.

	* gtk/gtkprogressbar.h: Mark all the old methods deprecated

	* gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
	macros deprecated. (can't mark the type itself deprecated, since
	GtkProgressBar is not deprecated and we need the type decl to use
	GtkProgressBar)

	* gtk/gtkpixmap.h: Mark deprecated

	* gtk/gtkoldeditable.h: Mark deprecated

	* gtk/gtklist.h: Mark deprecated

	* gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used
	for anything anymore.

	* gtk/gtkctree.h: Mark deprecated

	* gtk/gtkclist.h: Mark deprecated

	* gtk/gtkpreview.h: Mark deprecated

	* gtk/gtkpacker.h: Mark deprecated

	* gtk/gtktipsquery.h: Mark deprecated

	* gtk/gtkinputdialog.h: Add comment that it will move out of GTK

	* gtk/gtkvruler.h: Add comment that it will move out of GTK

	* gtk/gtkhruler.h: Add comment that it will move out of GTK

	* gtk/gtkruler.h: Add comment that it will move out of GTK

	* gtk/gtkgamma.h: Add comment that it will move out of GTK

	* gtk/gtkcurve.h: Add comment that it will move out of GTK
2001-02-03 01:08:27 +00:00
Owen Taylor
a2d1299475 Make gdk_colormap_sync private since it was never exported in a header
Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
	gdk_colormap_sync private since it was never exported
	in a header file.

	* gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
	colormap->colors[] for StaticGray, StaticColor colormaps.

	* gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
	was being used as if it was image->bits_per_pixel.

	* gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
	for the image in the GdkImage structure since it isn't
	reconstructable, and we need it to handle packed types

	* gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
	the assumption that on Win32 image->bits_per_pixel == image->depth,
	always.

	* gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.

	* gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
	warning message if no converter can be found.
2001-02-02 22:19:31 +00:00
Owen Taylor
a1a252ce46 Get rid of a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
	a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().

	* gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
	since some people set $(libdir) separately. (#1290, David Kaelbling)

Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
	defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
	MAXPATHLEN, but the code here depends on a fixed value.)
	(#4524)

Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
	where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)

Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (real_tree_move): If the node being moved isn't
	viewable there is no way that moving the node will cause the
	focus row to become not viewable, so omit check on the visibility
	of new_sibling, which is irrelevant. (Fixes #8002, David Helder)

Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
	selection before inserting new text.

Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
	Make the sensitivity of the reparented child track that of
	the original parent menu item. (#34218, David Hodson)

	* gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
	the case where the current item is destroyed properly.

	* gtk/gtkoptionmenu.c: Some additional code cleanups and fix
	some edge cases with child-less menuitems.

Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
	key pop down window. (#12074, Jon K Hellan)

Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
	toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan)
	The solution here isn't perfect - you get an extraneous
	emission of "toggle", which could conceivably confuse an app,
	but better than the current situation. LXR search seems to
	indicate that no apps in GNOME CVS connect to "toggle".

Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
        gtk_public_h_sources to directly here to avoid warning when
        building srcdir != builddir. (#9656)

Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c: Patch from Kipp Hickman to make the event
	handlers in gtkrange.c return the proper values (TRUE == handled)
	(#10316).

	This is just the tip of the iceberg, but gtkrange.c is the
	most common place where the propagation is problematical,
	and also a place where it is almost certainly safe to change
	this in the stable branch.

	(You don't want right click popups on a range control or anything...)

Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (clear_focus_area): We need to clear the focus
	area on focus out, even if a background pixmap isn't set.
	(#13941)

Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
	to deal with setting the shape properly when scrolling arrows are
	turned on, but not visible because there is sufficient space.
	(#13432)

Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
	items with submenus, destroy the item along with the submenu.
	(#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...'
	properly.

	* gtk/testgtk.c (menu_items): Add a dummy branch that we delete
	later.

Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
	the focus widget sometimes wasn't drawn with the default if there
	was no default widget.

	* gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
	unreference pixmaps.

	* gtk/gtkstyle.c (gtk_style_realize): Reference colormap
	for some extra safety.

Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
	the text of a cell to the old pointer value better, by
	copying the new text before freeing the old text. Some code
	cleanup. (#8079, Karl Nelson)

Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
	gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.

Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_remove): When removing an
	item from a menu, check to see if it matches
	menu->old_active_menu_item, and if so, unref and clear
	old_active_menu_item (Patch from Pavel Cisler)

	* gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset
	menu_shell->active_menu_item, if it is the child being
	removed. (Patch based on that of Gene Ragan, #50337)
2001-02-02 17:53:29 +00:00
Owen Taylor
d11bfcbde6 [ Merges of fixes from gtk-1-2, mostly ]
Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
	a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().

	* gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
	since some people set $(libdir) separately. (#1290, David Kaelbling)

Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
	defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
	MAXPATHLEN, but the code here depends on a fixed value.)
	(#4524)

Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
	where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)

Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (real_tree_move): If the node being moved isn't
	viewable there is no way that moving the node will cause the
	focus row to become not viewable, so omit check on the visibility
	of new_sibling, which is irrelevant. (Fixes #8002, David Helder)

Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
	selection before inserting new text.

Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
	Make the sensitivity of the reparented child track that of
	the original parent menu item. (#34218, David Hodson)

	* gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
	the case where the current item is destroyed properly.

	* gtk/gtkoptionmenu.c: Some additional code cleanups and fix
	some edge cases with child-less menuitems.

Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
	key pop down window. (#12074, Jon K Hellan)

Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
	toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan)
	The solution here isn't perfect - you get an extraneous
	emission of "toggle", which could conceivably confuse an app,
	but better than the current situation. LXR search seems to
	indicate that no apps in GNOME CVS connect to "toggle".

Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
        gtk_public_h_sources to directly here to avoid warning when
        building srcdir != builddir. (#9656)

Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c: Patch from Kipp Hickman to make the event
	handlers in gtkrange.c return the proper values (TRUE == handled)
	(#10316).

	This is just the tip of the iceberg, but gtkrange.c is the
	most common place where the propagation is problematical,
	and also a place where it is almost certainly safe to change
	this in the stable branch.

	(You don't want right click popups on a range control or anything...)

Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (clear_focus_area): We need to clear the focus
	area on focus out, even if a background pixmap isn't set.
	(#13941)

Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
	to deal with setting the shape properly when scrolling arrows are
	turned on, but not visible because there is sufficient space.
	(#13432)

Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
	items with submenus, destroy the item along with the submenu.
	(#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...'
	properly.

	* gtk/testgtk.c (menu_items): Add a dummy branch that we delete
	later.

Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
	the focus widget sometimes wasn't drawn with the default if there
	was no default widget.

	* gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
	unreference pixmaps.

	* gtk/gtkstyle.c (gtk_style_realize): Reference colormap
	for some extra safety.

Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
	the text of a cell to the old pointer value better, by
	copying the new text before freeing the old text. Some code
	cleanup. (#8079, Karl Nelson)

Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
	gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.

Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_remove): When removing an
	item from a menu, check to see if it matches
	menu->old_active_menu_item, and if so, unref and clear
	old_active_menu_item (Patch from Pavel Cisler)

	* gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset
	menu_shell->active_menu_item, if it is the child being
	removed. (Patch based on that of Gene Ragan, #50337)
2001-02-02 17:51:49 +00:00
Havoc Pennington
9565cb915e rename "private" field in struct to "priv" for C++
2001-02-01  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
	in struct to "priv" for C++
2001-02-02 05:31:27 +00:00
Owen Taylor
cebfe95660 A few updates for GTypePlugin.
Wed Nov 15 21:56:28 2000  Owen Taylor  <otaylor@redhat.com>

	* src/pixbuf-*: A few updates for GTypePlugin.
2001-02-01 23:55:43 +00:00
Alexander Larsson
8373550e8c Added some strerror() to the g_warnings().
2001-01-31  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
	Added some strerror() to the g_warnings().
2001-01-31 15:31:48 +00:00
Havoc Pennington
98ee8c7252 include glib-object.h instead of gvaluetypes.h
2001-01-31  Havoc Pennington  <hp@pobox.com>

	* gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
2001-01-31 15:09:59 +00:00
Alexander Larsson
57adee57ed A bunch of whitespace cleanup.
2001-01-31  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkselection-fb.c:
	* gdk/linux-fb/gdkcolor-fb.c:
	* gdk/linux-fb/gdkdrawable-fb2.c:
	* gdk/linux-fb/gdkfont-fb.c:
	* gdk/linux-fb/gdkim-fb.c:
	* gdk/linux-fb/gdkinput.c:
	* gdk/linux-fb/gdkkeyboard-fb.c:
	* gdk/linux-fb/gdkmain-fb.c:
	* gdk/linux-fb/gdkrender-fb.c:
	A bunch of whitespace cleanup.
2001-01-31 09:18:20 +00:00
Havoc Pennington
f7d593c99d bracket in #ifdef GTK_ENABLE_BROKEN.
2001-01-30  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in
	#ifdef GTK_ENABLE_BROKEN.

	* gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
	GTK_ENABLE_BROKEN just before including the broken headers.

	* gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
	deprecated types registered.

	* gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
	we have to test the broken stuff.

        * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN

2001-01-30  Havoc Pennington  <hp@pobox.com>

        Also committed a bunch of automatic changes made by gtk-doc,
	after reviewing for correctness.

	* gtk/tmpl/gtktext.sgml: add warning about deprecation and note
	about what to use instead

	* gtk/tmpl/gtktree.sgml: ditto

	* gtk/Makefile.am (scan): pass --deprecated-guards option to
	gtk-doc; requires new version of gtk-doc from CVS

	* gtk/gtk-docs.sgml: move GtkText to the deprecated section
	instead of the GtkTextView section. Oops.
2001-01-31 03:51:14 +00:00
Havoc Pennington
5cd2993201 fix bug in here where prev pointer was set to the wrong thing
2001-01-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
	here where prev pointer was set to the wrong thing

	* gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
	(gtk_tree_path_is_descendant): new function

	* gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
	cached length
	(gtk_list_store_get_iter): don't modify iter if we can't get the
	path.

	* gtk/gtkliststore.h (struct _GtkListStore): cache the length

	* gtk/gtktreednd.h: add virtual function row_drop_possible() to
	GtkTreeDragDest

	* gtk/gtktreestore.c (copy_node_data): fix varargs type error that
	was causing segfault

	* gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
	pointer to NULL

	* gtk/gtktreestore.c (gtk_tree_store_append): fix memleak

	* gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
	on returning FALSE
	(gtk_list_store_iter_children): ditto
	(gtk_list_store_iter_nth_child): ditto
	(gtk_list_store_iter_nth_child): ditto
	(gtk_list_store_iter_parent): ditto

	* gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
	on iter->user_data != NULL instead of silently accepting it.
	(gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
	we are returning TRUE.
	(gtk_tree_store_iter_children): ditto
	(gtk_tree_store_iter_nth_child): ditto
	(gtk_tree_store_iter_parent): ditto
	(gtk_tree_store_insert): remove handling of parent->user_data ==
	NULL, replace with parent == NULL

	* gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
	and a comment explaining things

	* gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
	interface support to GtkTreeStore.

	* gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
	FALSE if no prev, fix

	* gtk/gtktreeview.c (set_source_row): use a row reference
	(set_dest_row): use a row reference
2001-01-31 00:57:49 +00:00
Owen Taylor
a8e3c2058d Added note explaining how the @button parameter is off by 1. (#6739)
Tue Jan 30 16:01:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkclist.sgml: Added note explaining how
	the @button parameter is off by 1. (#6739)
2001-01-30 21:03:03 +00:00
Kjartan Maraas
9ad5f06ef9 Updated Norwegian translation. Updated some.
2001-01-29  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
	* POTFILES.in: Updated some.
2001-01-29 20:30:56 +00:00
Owen Taylor
09b9317283 add several missing instances of Alex's name, remove conflict indicators 2001-01-29 20:13:35 +00:00
Jonathan Blandford
f197495d1c Fix stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
	stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
	(gtk_tree_selection_select_iter): The same as above.
2001-01-27 20:50:52 +00:00
Havoc Pennington
d8d019a1e9 add GtkTreeRowReference which holds a handle to a specific row (particular
2001-01-26  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
	which holds a handle to a specific row (particular set of values
	in the model, i.e. pointer-identity row).

	* gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
	use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
	Still need to use it for the src/dest row saved on the drag context.
2001-01-27 00:50:38 +00:00
Havoc Pennington
ef4356b567 adapt to handle PangoColor
2001-01-26  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor

	* gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
	not offset by TREE_VIEW_HEADER_HEIGHT
	(gtk_tree_view_tree_to_widget_coords): fix to not offset by
	TREE_VIEW_HEADER_HEIGHT

	* configure.in (included_loaders): for me, --with-included-loaders
	generates the error "the specified loader yes does not exist",
	i.e. the arg defaults to "yes", so change test for value ""
	to test for value "yes", and include all loaders in that case.

	* gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function

	* gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
	handle TREE_VIEW_VERTICAL_SEPARATOR
	(gtk_tree_view_bin_expose): fix to consider the row offset as
	pointing halfway into vertical separator.
	(gtk_tree_view_draw_node_focus_rect): ditto

	* gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
	--gtk-debug=updates, which causes gdk_window_set_debug_updates
	(TRUE) to be called.

	* gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
	debug mode where the invalid region is colored in on invalidate,
	so you can see the flicker and know whether your redraw code is
	doing a good job.

	* gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in
	tree window coordinates (clip rect is in tree window coords)

	* gtk/Makefile.am: add gtktreednd.[hc]

	* gtk/gtkliststore.c: implement gtktreednd interfaces.

	* gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
	drag-and-drop data operations on a model (so we can set up tree
	drag-and-drop automatically)

	* gtk/testgtk.c: Add a window to change sensitivity in the
	GtkLabel test; add a way to change the entry frame in GtkEntry
	test

	* gtk/gtkentry.c (gtk_entry_set_has_frame):
	(gtk_entry_get_has_frame): new functions to remove the frame
	around an entry
	(gtk_entry_size_request): shrink requisition if no frame
	(gtk_entry_draw_focus): don't draw frame if no frame

	* gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
	checks inside a cell renderer
	(gtk_default_draw_option): ditto for options

	* gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
	children from the alignment, not the button
	(gtk_tree_view_column_init): ref/sink the column, to emulate
	GObject refcounting.

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink

	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
	Use theme functions to draw the toggles

	* gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors

	* gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
	GdkPangoAttrEmbossed to use in rendering insensitive text

	* gdk/gdkpango.c (gdk_draw_layout_line): render new properties

	* gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
	using new GDK features
2001-01-26 21:12:05 +00:00
Havoc Pennington
d3f92415e6 fix included modules case.
2001-01-26  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf-io.c (mname): fix included modules case.
2001-01-26 18:50:58 +00:00
4
9234d91146 Splitted gtk_image_clear into gtk_image_clear() and gtk_image_reset().
2001-01-24    <alexl@redhat.com>

	* gtk/gtkimage.c:
	Splitted gtk_image_clear into gtk_image_clear() and
	gtk_image_reset(). Call gtk_image_clear() in ::destroy
	to avoid leaks.

	* gtk/gtklabel.c (set_markup):
	Don't leak text.

	* gtk/gtktextlayout.c:
	Always free display->shaped_objects.

	* gtk/testgtk.c (create_clist):
	Don't leak custom style.
2001-01-24 08:25:41 +00:00
Alexander Larsson
892cd31691 Apparantly i forgot to check in the changelog. :) 2001-01-24 08:03:20 +00:00
3
bedaf31f28 Don't leak image. Simplify using gdk_colormap_query_color().
2001-01-23    <alexl@redhat.com>

	* gtk/gtkcolorsel.c (grab_color_at_mouse):
	Don't leak image. Simplify using gdk_colormap_query_color().
	(gtk_color_selection_init): Don't leak dropper_pixmap and mask.

	* linux-fb/gdkcolor-fb.c:
	Implemented gdk_colormap_query_color.
2001-01-23 15:28:18 +00:00
3
c181cd8efc Don't leak built-in cursors.
2001-01-23    <alexl@redhat.com>

        * linux-fb/gdkcursor-fb.c:
	Don't leak built-in cursors.

	* linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
	Don't leak tmp_points.

	* linux-fb/gdkfont-fb.c (gdk_font_from_description):
	Don't modify desc. Don't leak font if the PangoFont
	isn't found.

	* linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
	Free dash_list.

	* linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
	Don't leak string.
2001-01-23 14:37:54 +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
2
a081fe7d54 Don't leak visible_region. Use visible_region instead of region.
2001-01-22    <alexl@redhat.com>

	* gdk/gdkwindow.c (gdk_window_invalidate_region):
	Don't leak visible_region. Use visible_region instead of region.

	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
	Don't do extra gdk_drawable_ref(). This is not X.
	(gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
	gdk_fb_focused_window is ref:ed.
	(gdk_fb_window_send_crossing_events): Watch out for destroyed
	windows.
2001-01-22 14:35:49 +00:00
2
18cb3ee139 Don't leak the PangoFontDescriptor.
2001-01-22    <alexl@redhat.com>

	* gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
	Don't leak the PangoFontDescriptor.
2001-01-22 12:40:35 +00:00
John Harper
8c9eb8b6a0 new pixbuf loader, for X bitmap files. Basically a collision between
2001-01-20  John Harper  <jsh@eazel.com>

	* io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
	collision between Xlib's RdBitF.c and io-tiff.c

	* gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
	io-xbm.c support

	[ merged from stable gdk-pixbuf module. Untested, but it
	compiles, and works fine in the stable module ]
2001-01-22 02:08:53 +00:00
Andraz Tori
5c9801759e Updated Slovenian translation 2001-01-21 22:03:09 +00:00
Jonathan Blandford
5f25ae3873 Make fail when not realized. (gtk_tree_view_scroll_to_cell): Make work
Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
	when not realized.
	(gtk_tree_view_scroll_to_cell): Make work when not realized.
	(gtk_tree_view_realize): add scroll_to support
	(gtk_tree_view_finalize): add a finalize method.  Populate.
	(gtk_tree_view_insert_column): ref and sink the column.
	(gtk_tree_view_append_column): ref and sink the column.
	(gtk_tree_view_queue_draw_node): New function to handle redrawing
	individual nodes.  Should make the code much more efficient, if
	actually used.

gtk_tree_view_queue_draw_node isn't actually used yet, but it should start
making Owen less grumpy.
2001-01-21 18:45:20 +00:00
Havoc Pennington
ddedf10d15 byte_offset variable was being used to mean both "offset into layout" and
2001-01-19  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
	byte_offset variable was being used to mean both "offset into
	layout" and "offset into buffer line" which was no longer true
	with addition of preedit string; fix
2001-01-19 23:00:38 +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
Yuri Syrota
3da8e3c7dd Updated Ukrainian translation 2001-01-19 12:16:30 +00:00
9
e275f77943 Define EMULATE_GDKFONT. Add extra pango_font stuff to GfkFontPrivate.
2001-01-19    <alexl@redhat.com>

	* gdk/linux-fb/gdkprivate-fb.h:
	Define EMULATE_GDKFONT.
	Add extra pango_font stuff to GfkFontPrivate.

	* gdk/linux-fb/gdkdrawable-fb2.c:
	* gdk/linux-fb/gdkfont-fb.c:
	If EMULATE_GDKFONT defined, implement a slow lame GdkFont
	emulation using PangoFont.
2001-01-19 10:38:12 +00:00
Havoc Pennington
ed4204456a Add "getters" for all the non-deprecated set_foo functions. Added missing
2001-01-17  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
	all the non-deprecated set_foo functions. Added missing object
	properties, and added g_object_notify() to setters.
	Wrote docs.
2001-01-18 04:10:40 +00:00
Tor Lillqvist
f0c92577d3 No need to include windows.h.
2001-01-18  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf-io.c: (Win32) No need to include windows.h.
2001-01-17 22:30:42 +00:00
Tor Lillqvist
576ef7f29a gtk/gtkmain.c Use the new
2001-01-18  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkmain.c
	* gtk/gtkrc.c: (Win32) Use the new
	g_win32_get_package_installation_(sub)directory() functions.

	* config.h.win32.in: New file.

	* config.h.win32: Removed.

	* configure.in: Output config.h.win32.

	* Makefile.am: Add it to EXTRA_DIST.

	* gtk/gtk.def: Update.

2001-01-16  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
	Eliminate redraws when input-only windows are shown or
	hidden. Thanks to jpe@archaeopteryx.com.

2001-01-18  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
	g_win32_get_package_installation_subdirectory() function.
	(gtk_win32_get_installation_directory): Remove this then.
2001-01-17 22:26:19 +00:00
Owen Taylor
18fb9bcd53 Set the attributes onto the PangoLayout even if they are newly created
Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_size_request): Set the
	attributes onto the PangoLayout even if they are newly
	created from label->pattern.
2001-01-17 21:32:34 +00:00
Owen Taylor
7525412032 Commit changelog entries 2001-01-17 20:05:41 +00:00
Owen Taylor
2a1e8b06b4 Remove unused variable.
Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdnd-x11.c: Remove unused variable.

	* gtk/gtkdnd.c: Encapsulate storing and retrieving info
	structures in functions. Fixes bug where gtk_dataset_*
	was accidentally still being used in one place, causing
        every dest side event to be treated independently.

	* gtk/gtkdnd.c: Remove last vestages of handling
	::draw (fixes warning)

	* gtk/gtkentry.[ch]: Add drag and drop support.

	* gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
	new function gtk_check_drag_threshhold() for checking
	to check if (dx,dy) has exceeded the threshhold for starting
	a drag and use it everywhere.
2001-01-17 20:05:08 +00:00
Owen Taylor
2c41cf9058 Commit missed changelog entry bit. 2001-01-17 19:32:55 +00:00
7
9012254c1e Doh! Mixed up x and y.
2001-01-17    <alexl@redhat.com>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
	Doh! Mixed up x and y.

	* gdk/linux-fb/gdkglobals-fb.c:
	Removed gdk_fb_pointer_grab_window_events,
	added _gdk_fb_pointer_grab_owner_events and
	_gdk_fb_keyboard_grab_owner_events.

	* gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
	Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
	crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
	(gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
	Send crossing events after ungrab finished.
	(gdk_keyboard_grab): Set ..._owner_events
	(type_masks): Move out of function.
	(gdk_fb_other_event_window, gdk_fb_pointer_event_window,
	gdk_fb_keyboard_event_window): New functions, return the
	window an event should be targeted at. Handles grabs and
	event propagation. Can return NULL.
	(gdk_event_make): Remove event_mask checking. Now always
	returns an event.

	* gdk/linux-fb/gdkkeyboard-fb.c:
	* gdk/linux-fb/gdkproperty-fb.c:
	* gdk/linux-fb/gdkselection-fb.c:
	Use new event_window/gdk_event_make() behaviour.

	* gdk/linux-fb/gdkmouse-fb.c:
	Use new event_window/gdk_event_make() behaviour.
	Only send motion events if in the same window.
	If grabbed, use cursor from window if sibling of grabbed
	window, and cursor from grabbed window otherwise.

	* gdk/linux-fb/gdkprivate-fb.h:
	Update gdk_fb_window_send_crossing_events, gdk_event_make
	and grab varaible declarations. Add gdk_fb_*_event_window().

	* gdk/linux-fb/gdkwindow-fb.c:
	Use new event_window/gdk_event_make() behaviour.
	Keep correct track of focus window.
	(gdk_window_set_events): Set all specific button motion masks
	if GDK_BUTTON_MOTION_MASK set.

	* gtk/gtkdnd.c (gtk_drag_update):
	Free info->last_event if gdk_drag_motion returned FALSE.
2001-01-17 15:52:22 +00:00
GMT 2001 Tony Gale
2d28a30379 FAQ update: - Update to bugzilla - Add GTK+ and security/SUID/SGID - Add
Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>

	* docs/faq/gtk-faq.sgml: FAQ update:
	  - Update to bugzilla
	  - Add GTK+ and security/SUID/SGID
	  - Add DnD question
2001-01-16 13:17:21 +00:00
Alexander Larsson
268e636201 Some cleanups.
2001-01-16  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkdnd-fb.c:
	Some cleanups.
2001-01-16 12:21:08 +00:00
Havoc Pennington
8e8dd66aec add test stuff for CellRendererToggle
2001-01-15  Havoc Pennington  <hp@pobox.com>

	* tests/testtreeview.c: add test stuff for CellRendererToggle

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
	accessor

	* gtk/gtkcellrenderertoggle.c: distinguish different event types,
	only toggle on button press (would do release like GtkButton, but
	we'd need implicit grab code for treeview cells)
2001-01-16 03:49:24 +00:00
Tor Lillqvist
18e95c4e0f Include <stdlib.h> for getenv().
2001-01-16  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
	GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.

	* gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
	to g_{locale,filename}_{to,from}_utf8 to match current API.

	* gtk/makefile.msc.in (gtk_OBJECTS)
	* gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.

	* gtk/gtk.def: Update.
2001-01-15 22:12:31 +00:00
Tor Lillqvist
420e4ee2f7 New implementaion that more closely mimics the events that an X server
2001-01-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
	implementaion that more closely mimics the events that an X server
	would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
	GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
	with nested preview widgets, for instance, more responsive when
	you move the mouse quickly into them.
	(find_window_for_pointer_event): Make it actually compile.
	(gdk_event_translate): Set send_event to the value of
	InSendMessage (). This doesn't really mean the same as X11's
	send_event flag, but is close enough, says jpe@archaeopteryx.com
2001-01-15 19:48:53 +00:00
Alexander Larsson
b299835e86 Implemented drag and drop. Seems to be mostly working. I sometimes get an
2001-01-15  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkdnd-fb.c:
	Implemented drag and drop.
	Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
	when it tries to free and then copy the same event (info->last_event).
	I am not sure about why	this happens, but will continue looking.
2001-01-15 15:46:28 +00:00
Alexander Larsson
6a184ba228 Use gdk_window_invalidate_rect instead of gdk_window_invalidate_rect_clear
2001-01-15  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkwindow-fb.c:
	Use gdk_window_invalidate_rect instead of
	gdk_window_invalidate_rect_clear to minimise flashing.
	When hiding windows you need to clear the root window though.
2001-01-15 10:22:15 +00:00
Alexander Larsson
c288355ffd For optization, add an full_shapes argument to gdk_fb_clip_region. If this
2001-01-15  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkdrawable-fb2.c:
	For optization, add an full_shapes argument to gdk_fb_clip_region.
	If this is false, only the cliprects of the shapes are used.

	* gdk/linux-fb/gdkprivate-fb.h:
	Export gdk_fb_window_peek_shape.
	Add full_shapes to gdk_fb_clip_region.

	* gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
	When moving a window, don't clear everything under the it, just the
	root window. Makes stuff faster and flash less.
	(gdk_window_get_pointer): Correctly handle offseted shapes, due to
	USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
	offset of the shape.
2001-01-15 09:54:28 +00:00
Havoc Pennington
f4b31ff5e6 offset the current invalid region, fixes redraw bug while scrolling the
2001-01-12  Havoc Pennington  <hp@redhat.com>

	* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the
	current invalid region, fixes redraw bug while scrolling the
	text widget

	* gtk/gtktextview.c, gtk/gtktextview.h:
	Rearrange the scrolling/validation/etc. code in a major way,
	so it seems to make sense to me. Probably isn't genuinely that
	much better, but...

	* gtk/gtktexttag.c (set_fg_color): fix name of property used for
	notifies

	* gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
2001-01-12 23:23:40 +00:00
Alexander Larsson
8e1a69c28b Hide mouse pointer while rotation. Show it afterwards.
2001-01-12  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
	Hide mouse pointer while rotation. Show it afterwards.
2001-01-12 15:55:56 +00:00
Alexander Larsson
058c2d9320 Take shaped windows in consideration when generating clip region.
2001-01-12  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
	windows in consideration when generating clip region.

	* gdk/linux-fb/gdkfb.h:
	Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.

	* gdk/linux-fb/gdkprivate-fb.h:
	Add shape to GdkWindowFBDatat.
	exported gdk_fb_window_get_abs_shape().
	removed gdk_fb_draw_lines declaration.

	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
	Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
	send focus changes when there is a grabbed window.
	(gdk_window_get_pointer): Handle shaped windows.
	(gdk_fb_region_create_from_bitmap): Convert bitmap to region.
	(gdk_fb_window_peek_shape): Returns the shape for a window,
	handles GDK_FB_USE_CHILD_SHAPE.
	(gdk_fb_window_get_abs_shape): Returns the shape of the window,
	offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
	(gdk_window_shape_combine_mask): Implement.

	* gtk/gtkwindow-decorate.c:
	HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
	setting the shape of a window makes the window transparent.
2001-01-12 15:45:26 +00:00
Havoc Pennington
696f0626bc Oops, broke some macros
2001-01-11  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreemodelsimple.h: Oops, broke some macros
2001-01-12 04:47:56 +00:00
Havoc Pennington
69c58e538a add this function, bug 40251
2001-01-10  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
	add this function, bug 40251

	* gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
	of type macro
2001-01-11 17:59:40 +00:00
Alexander Larsson
b29eece81f Added ENABLE_SHADOW_FB
2001-01-11  Alexander Larsson  <alexl@redhat.com>

	* acconfig.h:
	Added ENABLE_SHADOW_FB

	* configure.in:
	Added --disable-shadowfb

	* gdk/linux-fb/gdkcursor-fb.c:
	Update shadowfb when updating cursor

	* gdk/linux-fb/gdkdrawable-fb2.c:
	Added wrappers for shadowfb that calls 	the normal drawable
	methods, but calls gdk_shadow_fb_update(bounding box) when
	GdkWindows are drawed to.
	Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
	which also returns the bounding box.

	* gdk/linux-fb/gdkfb.h:
	Added GdkFBAngle type and gdk_fb_set_rotation declaration.

	* gdk/linux-fb/gdkgeometry-fb.c:
	Update shadowfb when scrolling window.

	* gdk/linux-fb/gdkglobals-fb.c:
	Add _gdk_fb_screen_angle.

	* gdk/linux-fb/gdkkeyboard-fb.c:
	Test code for screen rotation. Shift-F2 in the xlate driver
	rotates the screen.

	* gdk/linux-fb/gdkmain-fb.c:
	Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.

	* gdk/linux-fb/gdkmouse-fb.c:
	Use fb_width/height instead of modeinfo.xres/yres.

	* gdk/linux-fb/gdkprivate-fb.h:
	Added fb_men, fb_width, fb_height & fb_stride. When using
	shadow fb these can differ from the framebuffer stuff.
	Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
	gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
	_gdk_fb_screen_angle. Removed CM, RP.

	* gdk/linux-fb/gdkrender-fb.c:
	Added code for shadowfb handling and screen rotation using
	shadowfb.

	* gdk/linux-fb/gdkwindow-fb.c:
	Use fb_mem, fb_stride, fb_width, fb_height.
	Added recompute_rowstride to reset the rowstride of all windows.
	Added gdk_fb_recompute_all() which recomputes rootwindow size,
	window abs positions and window rowstrides. Usefull when the
	rotation has changed.
2001-01-11 16:39:21 +00:00
GMT 2001 Tony Gale
d2c345480b update to make web site updating easier
Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>

	* docs/faq/gtk-faq.sgml: update to make web site updating easier
2001-01-11 13:18:03 +00:00
Havoc Pennington
740ee8ef94 handle case where sibling == iter (gtk_tree_store_insert_after): handle
2001-01-10  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
	where sibling == iter
	(gtk_tree_store_insert_after): handle sibling == iter
	(gtk_tree_store_prepend): remove stamp checks
	(gtk_tree_store_insert_before): ditto
	(gtk_tree_store_append): ditto
	(gtk_tree_store_get_path): ditto
	(gtk_tree_store_get_value): ditto
	(gtk_tree_store_iter_has_child): ditto
	(gtk_tree_store_iter_n_children): ditto
	(gtk_tree_store_iter_nth_child): ditto
	(gtk_tree_store_insert_after): ditto
	(gtk_tree_store_is_ancestor): ditto
	(gtk_tree_store_iter_depth): ditto
	(gtk_tree_store_insert_before): assert that sibling's parent is
	the same as the passed-in parent
	(gtk_tree_store_insert_after): assert that sibling's parent is
	the same as the passed-in parent


	* gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience
	function to get the first iterator in a model

	* gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
	conventionally the "root" in this sense is just NULL afaict.

	* gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
	where sibling == iter
	(gtk_list_store_insert_after): handle case where sibling == iter

	* tests/testtreeview.c (run_automated_tests): fairly lame basic
	automated tests for ListStore, TreeStore

        * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
	(gtk_list_store_insert): update tail pointer, and fix it to work
	(gtk_list_store_insert_before): update tail pointer, and fix it to work
	(gtk_list_store_append): use tail to be faster
	(gtk_list_store_prepend): fix it, update tail pointer
	(gtk_list_store_insert_after): fix it, update tail pointer

	* gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for
	the list
2001-01-10 23:44:22 +00:00
Havoc Pennington
85267e9224 don't draw if label->layout is NULL due to a pending resize
2001-01-09  Havoc Pennington  <hp@redhat.com>

	* gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
	is NULL due to a pending resize

	* gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
	column width to values less than 1

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
	width to be between min/max width, and still set the width
	even if autosize is turned on, so the tree view can use this
	function in order to autosize.
	(gtk_tree_view_column_init): set initial width to 1 not 0

	* gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
	setter function to modify column width, so we get notification
	(gtk_tree_view_insert_iter_height): ditto
	(gtk_tree_view_calc_size): ditto
	(gtk_tree_view_check_dirty): ditto

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
	properties to change all the interesting attributes of the tree
	view column.
	(gtk_tree_view_column_set_header_clickable): rename set_clickable
	(gtk_tree_view_column_get_clickable): add
	(gtk_tree_view_column_set_cell_renderer): don't unset the current
	attributes; assume a cell renderer with equivalent object
	properties has been swapped in. Do g_object_notify().
	(gtk_tree_view_column_set_visible): g_object_notify
	(gtk_tree_view_column_get_sizing): rename from get_col_type
	(gtk_tree_view_column_set_sizing): g_object_notify
	(gtk_tree_view_column_set_width): add g_object_notify
	(gtk_tree_view_column_set_min_width): ditto
	(gtk_tree_view_column_set_max_width): ditto
	(gtk_tree_view_column_set_title): ditto
	(gtk_tree_view_column_set_clickable): ditto
	(gtk_tree_view_column_set_widget): ditto
	(gtk_tree_view_column_set_justification): ditto
2001-01-09 23:24:20 +00:00
Havoc Pennington
637c61da76 handle case where there are no rows in the model
2001-01-09  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
	there are no rows in the model

	* gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
	NULL, then return the start of the list

	* gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
	if we can't get any rows from an empty model

	* gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
	extraneous * after function pointer typedef usage

	* Makefile.am: don't specify full path to cp and rm

	* gtk/gtkcellrenderertextpixbuf.c
	(gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
	NULL before dereferencing, fixes a segfault that happened from
	time to time

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
	use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
	and reindent the function
	(gtk_cell_renderer_pixbuf_get_size): indentation

	* gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
	we quit it
	(gtk_dialog_add_buttons_valist): add g_return_if_fail
	(gtk_dialog_set_default_response): New function, to set default
	button
	(gtk_dialog_set_response_sensitive): New function, to set
	sensitivity of buttons

	* gtk/gtkcellrendererpixbuf.c
	(gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
	(gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf

	* gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
	handle any G_TYPE_OBJECT subclass, not just the base class, and
	also boxed types.
	(_gtk_tree_data_list_value_to_node): ditto

	* gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if
	--gtk-debug=tree

	* gtk/gtkmain.c: add GTK_DEBUG_TREE

	* gtk/gtkdebug.h: add GTK_DEBUG_TREE
2001-01-09 17:45:34 +00:00
Tor Lillqvist
0056107b5d Implement better mouse capturing. Do use SetCapture(). Thanks to
2001-01-09  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c: Implement better mouse
	capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
	(find_window_for_pointer_event): New function.
	(gdk_event_translate): Use it when handling mouse events.
2001-01-09 16:45:44 +00:00
Owen Taylor
c26e3eeebc Restore build.
Mon Jan  8 15:21:15 2001  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am (SUBDIRS): Restore build.

	* gdk/gdk-sections.txt gdk/gdk-docs.sgml
	  gdk-pixbuf/gdk-pixbuf-sections.txt
	  gtk/gtk-sections.txt gtk/gtk-docs.sgml: : Update.

	* */tmpl/*: Changes from update.
2001-01-09 16:41:17 +00:00
Owen Taylor
a801ea7bf0 Doc fixups.
Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
	gdk/gdk-pixbuf.h: Doc fixups.

	* gtk/gtkobject.h: Remove trailing , from enum
2001-01-09 16:23:57 +00:00
Alexander Larsson
7e3eadd61c Added --with-included-loaders option
2001-01-09  Alexander Larsson  <alla@lysator.liu.se>

	* configure.in:
	Added --with-included-loaders option

	* gdk-pixbuf/Makefile.am:
	* gdk-pixbuf/gdk-pixbuf-io.c:
	Add support for including selected gdk-pixbuf loaders only.

	* gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
	gtk_window_set_has_frame):
	Added inline documentation.

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
	* docs/reference/gdk/tmpl/windows.sgml:
	Added inline documentation.
2001-01-09 09:53:28 +00:00
Jonathan Blandford
136232bcd6 Skip realizing buttons that have already been realized.
Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
	realizing buttons that have already been realized.
2001-01-08 19:44:41 +00:00
Jonathan Blandford
15b23123f7 Show menu items before adding to option menu.
Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>

	* tests/testtreeview.c (main): Show menu items before adding to
	option menu.

	* gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
	around if we kill them.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
	Return if we pass in a NULL model.
2001-01-08 19:07:51 +00:00
Havoc Pennington
157cfa27ca hack on this some
2001-01-08  Havoc Pennington  <hp@redhat.com>

	* tests/testtreeview.c: hack on this some

	* gtk/gtktreestore.c (gtk_tree_store_setv): rename
	gtk_tree_store_set_valist, v is for arrays, valist for varargs
	list
	(gtk_tree_store_getv): rename gtk_tree_store_get_valist

	* gtk/gtkliststore.h: Add varargs set() and get() convenience
	functions
2001-01-08 18:26:05 +00:00
Alexander Larsson
59b6bf3863 New files. Contains an implementation of a minimal WM for linux-fb.
2001-01-08  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkwindow-decorate.[hc]:
	* gtk/Makefile.am:
	New files. Contains an implementation of a minimal WM for
	linux-fb.

	* gtk/gtkwindow.h:
	Add the possibility for GtkWindows to specify a frame. This
	is used for the window decoration code, but could concievably
	be used for X programs too (xmms style windows).
	GtkWindow->frame is the toplevel window if the window is framed.
	The signal frame_event gets all events that are targeted to
	GtkWindow->frame.
	(_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.

	* gtk/gtkwindow.c:
	Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
	Call out to gtkwindow-decorate.c for WM support in linx-fb.
2001-01-08 17:04:17 +00:00
Owen Taylor
d936beb3be Add @x_cflags@ (#36310)
Mon Jan  8 11:41:41 2001  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am (INCLUDES): Add @x_cflags@ (#36310)
2001-01-08 16:42:47 +00:00
Alexander Larsson
49bb8dfa19 Correct filename ~/.pangoft2_aliases
2001-01-08  Alexander Larsson  <alexl@redhat.com>

	* docs/README.linux-fb:
	Correct filename ~/.pangoft2_aliases

	* gdk/gdkwindow.h:
	Added new function gdk_window_get_decorations.

	* gdk/linux-fb/gdkfb.h:
	Removed _gdk_window_get_decorations declaration.
	Renamed _gdk_window_set_child_handler to
	gdk_fb_window_set_child_handler.

	* gdk/linux-fb/gdkwindow-fb.c:
	Renamed _gdk_window_set_child_handler to
	gdk_fb_window_set_child_handler.

	* gdk/x11/gdkwindow-x11.c:
	New function gdk_window_get_mwm_hints().
	Implemented gdk_window_get_decorations.

	* docs/reference/gdk/tmpl/windows.sgml:
	* docs/reference/gdk/gdk-sections.txt:
	Added gdk_window_get_decorations docs.
2001-01-08 16:42:08 +00:00
Alexander Larsson
94dfd3dd82 Possibly send focus events when the mouse moves from one window to
2001-01-08  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
	gdk_fb_window_find_focus, gdk_fb_send_focus_change,
	gdk_fb_window_send_crossing_events):
	Possibly send focus events when the mouse moves from one
	window to another.
2001-01-08 11:12:21 +00:00
Tor Lillqvist
c921abb888 Adapt calls to g_{locale,filename}_{to,from}_utf8 to match current API.
2001-01-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
	gdk_window_new): Adapt  calls to g_{locale,filename}_{to,from}_utf8
	to match current API.

	* gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
	environment variable is set, don't call g_error when on a
	palettized (PseudoColor) display. Some people want to use GTK+
	in 256-colour mode even though works only partially.

	* gdk/gdk.def
	* gtk/gtk.def
	* gtk/makefile.mingw.in: Update.
2001-01-07 18:00:15 +00:00
Havoc Pennington
5c37906778 hack on this a bit
2001-01-05  Havoc Pennington  <hp@redhat.com>

	* tests/testtreeview.c: hack on this a bit

	* gtk/gtktextlayout.c (gtk_text_layout_class_init):
	s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST

	* gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS):
	was spelled incorrectly
	(GTK_IS_TREE_MODEL_SIMPLE): ditto

	* gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
	from gtk_tree_view_set_headers_active

	* gtk/gtktexttag.c:
	(gtk_text_tag_get_property): handle PROP_DIRECTION
	(gtk_text_tag_set_property): g_object_notify when we toggle the _set
	properties, bug 40235

	* gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
	forward_to_line_end
2001-01-06 01:31:58 +00:00
Owen Taylor
eb2fdbb176 Adopt to new prototypes for unicode,locale,filename conversion functions.
Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
	modules/input/gtkimcontextxim.c: Adopt to new prototypes
	for unicode,locale,filename conversion functions.
2001-01-05 21:23:53 +00:00
Havoc Pennington
1299c1df6f this function was broken if called on the first position in the buffer.
2001-01-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
	broken if called on the first position in the buffer.

	* gtk/gtktextlayout.c (line_display_index_to_iter): fix
	forward_to_delimiters to be called only if we aren't already at
	the delimiters.
2001-01-05 19:51:55 +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
Alexander Larsson
30888237b9 free colormap in here. Sync from X port. (gdk_fb_set_colormap): allow the
2001-01-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
	colormap in here. Sync from X port.
	(gdk_fb_set_colormap): allow the colormap to be NULL if you like.
	Sync from X port.
	(gdk_fb_clip_region): Comment out g_warning about empty clip region.
	This happens now and then, and i don't think it is a bug.
	(gdk_fb_draw_polygon): Correctly add extra point if startpoint
	!= endpoint.
	(gdk_fb_draw_lines): Don't draw dashed lines if line_style is
	GDK_LINE_SOLID.

	* gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
	some of the fields filled in at least.

	* gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
	miLineArcD is no more, remove it from the function definition.
2001-01-05 14:01:36 +00:00
Havoc Pennington
ae89b1e1b1 add this
2001-01-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
	this

	* gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
	user_data instead of tree_node

	* gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
	TREE_VIEW_COLUMN_SIZE

	* gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
	"size" field to "width" finishes bug 40061

	* gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
	for bitfields, bug 40268
2001-01-04 23:36:19 +00:00
Havoc Pennington
c020b3b4f8 Rename some stuff:
2001-01-04  Havoc Pennington  <hp@redhat.com>

        Rename some stuff:

	s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;

	s/GtkModelSimple/GtkTreeModelSimple/g;
	s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
	s/gtk_model_simple/gtk_tree_model_simple/g;
	s/gtkmodelsimple/gtktreemodelsimple/g;

	s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;

	s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
	s/column_set_col_type/column_set_sizing/g;

	s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
	s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;

	s/GtkCellRendererType/GtkCellRendererState/g;

	* gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
	(gtk_cell_renderer_toggle_class_init): change "state" property to
	"active", to match GtkToggleButton
	(gtk_cell_renderer_toggle_get_active): new function, bug
	40269
	(gtk_cell_renderer_toggle_set_active): new function
	(gtk_cell_renderer_toggle_set_property): route changes to toggle
	state through gtk_cell_renderer_set_active
2001-01-04 21:33:24 +00:00
Jonathan Blandford
ef069fa0a0 Changed a bunch of boxed types to pointers temporarily until they work
Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
	temporarily until they work again.  Brought up to date with
	changes in the model.
	* gtk/gtkmodelsimple.h: Brought up to date with changes in the
	model.
2001-01-04 20:42:49 +00:00
Havoc Pennington
b0a909b8c4 if index is equal to the line length, then position iterator before
2001-01-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (line_display_index_to_iter): if index is
	equal to the line length, then position iterator before paragraph
	separators. Fixes crash reported by Mikael Hermansson when
	pressing left arrow from the start of a line.

	* gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
	about byte indexes off the end
	(iter_set_from_char_offset): add g_error about char offsets
	off the end
2001-01-04 20:01:32 +00:00
Havoc Pennington
c7826b5f63 Adapt to uscore-ification of gtktextiterprivate
2001-01-03  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use
	of private functions; remove inclusion of private headers.

	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this
	function, so we don't need private functions in gtktextdisplay.c

	* gtk/gtktextiterprivate.h: underscore-ification

	* gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
	to instead say "only useful to implement widgets"

	* gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
	GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
	GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.

	* gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
	This function was completely broken

	* gtk/testtext.c (line_numbers_expose): use gtk_paint_layout

	* gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout

	* gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout

	* gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout

	* gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout

	* gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
	gtk_paint_layout

	* gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
	gtk_paint_layout

	* gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
	Progress on bug 40103. Add draw_layout to draw a PangoLayout.
	(struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
	which were not implemented.

	* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
	insert_pixbuf signal. Rename delete_text to delete_range since it
	also deletes pixbufs and child anchors. This almost closes bug
	40245 (still need to deal with child anchors)

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
	insert_pixbuf, change signal names as appropriate, change types of
	signals taking marks/tags to have the specific type, not just
	G_TYPE_OBJECT

	* gtk/gtkmain.c (gtk_get_current_event_state): Add this function;
	closes bug 40051

	* gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
	unnecessary remove_contents() call
	(gtk_option_menu_class_init): add a "changed" signal, closes
	bug 40039
	(gtk_option_menu_update_contents): emit "changed" if the
	active menu item changes

	* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
	cast to GtkObject, reported by Jonas Borgstrom
	(gdk_pixbuf_loader_finalize): don't close the loader on finalize;
	we can't do stuff with side effects in finalize. Instead, spew a
	warning if the loader isn't closed.

	* gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
	colormap in here, non-X ports probably need to sync to this change

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove
	assertion that colormap != NULL, you can set the colormap to NULL
	if you like.

	* Makefile.am: remove gtk-config-2.0

	* configure.in: Use pkg-config to locate GLib. Remove
	separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
	and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
	Use pkg-config to locate Pango. Output correct Pango libs to
	gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).

	* Makefile.am (pkgconfig_DATA): install only target-specific pc
	files
	(install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
	X11 pc files

	* gtk+-2.0.pc.in (Requires): require the GDK for the current target
	unref from here
2001-01-04 17:48:43 +00:00
Jorge Godoy
7b8ec35897 Updating some pt_BR translations 2001-01-04 17:01:34 +00:00
Alexander Larsson
eb1a557a73 Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2001-01-03  Alexander Larsson  <alla@lysator.liu.se>

	* configure.in:
	Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2001-01-03 10:53:14 +00:00
Owen Taylor
80dae4f300 Fix unitialized variable when moving back onto a single line.
Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c
	(gtk_text_layout_move_iter_to_previous_line): Fix unitialized
	variable when moving back onto a single line.
2001-01-02 21:43:35 +00:00
Havoc Pennington
a7aa33f14e Havoc Pennington <hp@redhat.com>
* gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@

	* gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@

	* configure.in (LIBTOOL_EXPORT_OPTIONS): define
	LIBTOOL_EXPORT_OPTIONS with options to control symbol export
2001-01-02 16:15:35 +00:00
Havoc Pennington
aac55c4664 uscore-prepend all the stuff in here.
2001-01-01  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.

	* gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for
	GtkTextAttributes

	* gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug
	#40246
	(gtk_text_attributes_copy_values): rename from
	gtk_text_attributes_copy
	(gtk_text_attributes_copy): a more standard GTK copy function,
	which returns a new object
2001-01-01 20:26:10 +00:00
Havoc Pennington
66f87948e2 Adapt to GtkTreeSelection changes
2001-01-01  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreeview.c: Adapt to GtkTreeSelection changes

	* gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
	don't fill in tree_view->priv->selection, kind of an unexpected
	side effect

	* gtk/gtkcellrenderertext.c: Remove definition of _ and include
	gtkintl.h

	* gtk/gtkcellrenderer.c: Remove definition of _ and include
	gtkintl.h
	(gtk_cell_renderer_get_property): remove calls to g_value_init

	* gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
	gtkintl.h

	* gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
	and include gtkintl.h
	(gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
	property names

	* gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
	GtkTreeSelection
	(_gtk_tree_selection_new_from_with_view): rename, return
	GtkTreeSelection
	(_gtk_tree_selection_set_tree_view): rename with uscore
	(gtk_tree_selection_get_selected): fill in the "model" out param
	first, so it gets filled in even if we return at the top of the
	function
	(gtk_tree_selection_real_select_all): add a comment and an else{}
	to clarify this a bit
	(gtk_tree_selection_real_unselect_all): add the same else{}

	* gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
	set_tree_view to have underscore prefixes, move them to the
	private header, fix return type of new_with_tree_view
	(struct _GtkTreeSelection): mark struct
	fields private

	* gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
	GtkTreeModelFlags, not a guint
	(gtk_tree_path_prev): return gboolean not gint
	(gtk_tree_path_up): return gboolean not gint

	* gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
	return GtkTreeModelFlags, not a guint

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
	that child model is non-null before unrefing it
	(g_value_int_compare_func): make this a qsort compare func, not
	a boolean predicate

	* gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
	(add -umn to the end), and mark it unimplemented
	(gtk_tree_model_sort_resort): remove, this wasn't implemented, and
	I don't see what it's for - doesn't the model always sort itself?
	(gtk_tree_model_sort_set_compare): this had the wrong signature

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
	Fix the docs to say that it destructively replaces existing
	attributes (previously said that it added attributes).
	(gtk_tree_view_column_set_visible): canonicalize bool before
	equality testing. Also, check for realization before
	hiding/showing the tree_column->window; if this window could exist
	before realization, then it's busted and needs fixing, we can't
	create GDK resources pre-realization. Also, remove
	superfluous queue_resize(), since set_size() does that for us.
	(gtk_tree_view_column_set_col_type): check realization before
	using tree_column->window

	* gtk/gtktreedatalist.c: fix filename in copyright notice
2001-01-01 19:01:54 +00:00
Yukihiro Nakai
e5d534b3fd ja.po: Update Japanese translation 2001-01-01 09:39:56 +00:00
Havoc Pennington
7a958797e2 Rearrange all the scroll-while-dragging-or-selecting code to be different,
2000-12-31  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextview.c: Rearrange all the
scroll-while-dragging-or-selecting code to be different, not
necessarily better. ;-)
(gtk_text_view_scroll_to_mark): Change this
function to take within_margin as a fraction instead of a pixel
value, and to take alignment arguments (indicating where to align
the mark inside the visible area)

* gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
to GtkObject

* gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
behavior so that offsets past the end of the line are not
allowed, and an offset equal to the line length moves the iterator
to the next line
(gtk_text_iter_set_line_index): make parallel change
(gtk_text_iter_get_bytes_in_line): add this function

* gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
of byte indexes off the end of the line; byte index at the end of
the line now returns FALSE and doesn't fill in the requested
values, byte index past the end of the line is an error.  Also,
don't allow -1 offset anymore, since its meaning is unclear.

This change exposes some bug in visual cursor motion, where we
end up with a huge invalid byte index; needs fixing. Symptom of
bug is a crash when you hit up arrow.

(_gtk_text_line_char_locate): match the change to byte_locate

* gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
from start of line properly. fixes bug reported by Mikael
Hermansson where backspace would delete all text before the
cursor.
2000-12-31 23:28:57 +00:00
Sami Pesonen
72cdcb6323 Finnish translation updated by Pauli Virtanen <pauli.virtanen@saunalahti.fi> 2000-12-30 23:39:24 +00:00
Tor Lillqvist
ee4c69b68e New function, as in the X11 backend. (gdk_window_new,
2000-12-30  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c
	(gdk_window_impl_win32_get_visible_region): New function, as in
	the X11 backend.
	(gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
	instead of duplicating the same code here.

	* gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
	GDK_COLORMAP macro.

	* gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
	destroy function.
	(gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
	access that.

	* gtk/gtk.def: Update.

	* gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.

2000-12-26  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
	we are on a palettized display ("PseudoColor" in X11), as the code
	for that doesn't work anyway, and never has.

2000-12-30  Tor Lillqvist  <tml@iki.fi>

	* gdk_pixbuf.def: Update.
2000-12-30 20:06:14 +00:00
Havoc Pennington
d5be411c7b Set the system colormap on input only windows, to avoid special cases all
2000-12-30  Havoc Pennington  <hp@pobox.com>

* gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
colormap on input only windows, to avoid special cases all over
the code for these windows.
2000-12-30 15:44:41 +00:00
Alexander Larsson
3944c2dbfc Don't use isprint() for chars > 255.
2000-12-22  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
	Don't use isprint() for chars > 255.
2000-12-22 12:33:07 +00:00
Havoc Pennington
44a09c3746 more work
2000-12-21  Havoc Pennington  <hp@redhat.com>

	* tests/testtreeview.c: more work
2000-12-21 22:17:38 +00:00
Alexander Larsson
217e946c32 Update the docs to the new pangoft2 way.
2000-12-21  Alexander Larsson  <alexl@redhat.com>

	* docs/README.linux-fb:
	Update the docs to the new pangoft2 way.
2000-12-21 12:27:50 +00:00
Alexander Larsson
ee053ddd2e Uh? What happed? My cvs checkin got broken pipe.. 2000-12-21 10:33:40 +00:00
Alexander Larsson
a92170b6ca For linux-fb get the pangoft2 cflags and libs. This needs a recent pango
2000-12-21  Alexander Larsson  <alexl@redhat.com>

	* configure.in:
	For linux-fb get the pangoft2 cflags and libs. This needs a recent
	pango version.
	Remove modules/linux-fb/Makefile.

	* gdk/linux-fb/gdkdrawable-fb2.c:
	Render glyphs using freetype.

	* gdk/linux-fb/gdkfb.h:
	Add new fb-specific functions needed for managing windows.

	* gdk/linux-fb/gdkmain-fb.c:
	Remove gdk_font_init/fini() calls.

	* gdk/linux-fb/gdkpango-fb.c:
	Remove old implementation. Use pangoft2 instead.

	* gdk/linux-fb/gdkprivate-fb.h:
	Remove PangoFBFont and related stuff.

	* gdk/linux-fb/gdkwindow-fb.c:
	Implement drawable->get_visible_region.
	Implement support for _gdk_window_set_child_handler () and
	_gdk_window_get_decorations().

	* modules/Makefile.am:
	Remove linux-fb subdir.

	* modules/linux-fb/*:
	Removed all.
2000-12-21 10:31:30 +00:00
Jonathan Blandford
dadf966b3b :get_property): remove g_value_init calls, as they are no longer needed.
2000-12-20  Jonathan Blandford  <jrb@redhat.com>

	    * gtk/gtkcellrenderer*.c (::get_property): remove
              g_value_init
	      calls, as they are no longer needed.

	      * gtk/gtktreemodelsort.c: Fix up the comparison code.

	      * gtk/gtktreemodel.h: Start work on ::reordered signal.
	      Need to
	      figure out how to emit a signal on an interface.
2000-12-21 05:27:06 +00:00
Havoc Pennington
f00175cf07 new directory to contain tests, gtk/test* should move here sometime (with
2000-12-20  Havoc Pennington  <hp@redhat.com>

	* tests: new directory to contain tests, gtk/test* should move
	here sometime (with appropriate on-cvs-server hackery)

	* tests/testtreeview.c, tests/Makefile.am: a test

	* configure.in (AC_OUTPUT): add tests/Makefile

	* gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
	and "invisible_set" which were missing

	* gtk/gtkrbtree.h: some cheesy indentation fix
2000-12-21 01:53:39 +00:00
Alexander Larsson
8d1ff18de0 Attach the style to the window so that the style it is not leaked when
2000-12-20  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkinvisible.c (gtk_invisible_realize):
	Attach the style to the window so that the style it is not
	leaked when unrealizing the window.
2000-12-20 16:32:41 +00:00
Kenneth Christiansen
d19234c6ca translations from keld
gedit/po/da.po
achtung/po/da.po balsa/po/da.po bonobo/po/da.po
bug-buddy/po/da.po control-center/po/da.po ee/po/da.po
evolution/po/da.po galeon/po/da.po gdm2/po/da.po
gfloppy/po/da.po gimp/po/da.po gimp/po-plug-ins/da.po
gimp/po-script-fu/da.po glade/po/da.po gnome-applets/po/da.po
gnome-chess/po/da.po gnome-core/po/da.po gnome-db/po/da.po
gnome-games/po/da.po gnome-iconedit/po/da.po
gnome-libs-HEAD/po/da.po gnome-libs/po/da.po
gnome-pilot/po/da.po gnome-utils/po/da.po gnopo/po/da.po
gnorpm/po/da.po gnumeric/po/da.po gtk+/po/da.po
gtranslator/po/da.po guppi3/po/da.po
helix-setup-tools/po/da.po libgtop/po/da.po magicdev/po/da.po
mc/po/da.po memprof/po/da.po nautilus/po/da.po pan/po/da.po
rp3/po/da.po sodipodi/po/da.po xpdf/po/da.po
2000-12-20 09:21:58 +00:00
Owen Taylor
c7755bc949 Check for FreeType using freetype-config, since we can't rely on Xft to
Tue Dec 19 23:47:27 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in gdk/x11/Makefile.am: Check for FreeType
	using freetype-config, since we can't rely on Xft
	to pull in the libraries for us, or rely on it being
	in the default include path first.

	* gtk/gtkframe.c: Fix some problems where the gap wasn't
	being drawn in the right place, especially for right-aligned
	frame labels.

Thu Dec 14 21:02:59 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c (gtk_font_selection_select_font): Update
	the font_name entry as needed.
2000-12-20 04:49:49 +00:00
Jonathan Blandford
fb14db07bd sync 2000-12-20 00:37:58 +00:00
Havoc Pennington
00a6a1b219 do begin/end user action where appropriate (gtk_text_view_commit_handler):
2000-12-18  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
	begin/end user action where appropriate
	(gtk_text_view_commit_handler): add begin/end user action

	* gtk/gtktextbuffer.c: add begin/end user action signals, and
	bracket interactive operations with begin/end user action pair.

	* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
	"interactive" arg from insert_text and delete_text signals.
	Add begin_user_action, end_user_action signals
	(gtk_text_buffer_begin_user_action):
	(gtk_text_buffer_end_user_action): New functions to delimit
	a user-visible action

	* gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
	signals.
2000-12-18 21:01:17 +00:00
Havoc Pennington
d788d9b054 wow, that implementation was pretty non-working.
2000-12-18  Havoc Pennington  <hp@redhat.com>

	* gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
	was pretty non-working.

	* gtk/testtext.c (fill_file_buffer): make this a bit more robust
	by passing the length to g_utf8_validate().
2000-12-18 19:12:35 +00:00
Christopher R. Gabriel
e74c3a06f9 Updated italian translation 2000-12-18 15:24:55 +00:00
Havoc Pennington
fde4fecfd2 Port to GObject, can go back in gdk-pixbuf after setting up a
2000-12-16  Havoc Pennington  <hp@pobox.com>

* gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
Port to GObject, can go back in gdk-pixbuf after setting up
a gdk-pixbuf-marshal.h header over there.

* gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
(gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
args
(gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
set
(gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
here, do it when we create the buttons later
(gtk_tree_view_realize_buttons): add some g_return_if_fail
(gtk_tree_view_map): paranoia checks that column->button is shown
and unmapped
(gtk_tree_view_size_request): only request visible children.
Move header size calculation in here, for cleanliness, and
to maintain invariants for child widgets if we eventually
let users set different children inside the buttons
(gtk_tree_view_map_buttons): factor out code to map buttons,
since it was being called several times
(gtk_tree_view_size_allocate_buttons): move_resize the drag
windows instead of just moving them; their height may change
if we allow random widgets in there, or the theme changes.
(gtk_tree_view_size_allocate): move button size allocation
above emitting the scroll signals, to ensure a sane state when we
hit user code
(gtk_tree_view_button_release): remove queue_resize after
tree_view_set_size(), set_size() will handle any resize queuing
that's needed
(gtk_tree_view_focus_in): just queue a draw, don't fool with
draw_focus goo
(gtk_tree_view_focus): use gtk_get_current_event() and
gdk_event_get_state()
(gtk_tree_view_deleted): don't queue_resize() after calling set_size()
(gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
semicolon
(gtk_tree_view_create_button): show the button here
(gtk_tree_view_button_clicked): actually emit the clicked signal
on the column
(_gtk_tree_view_set_size): return right away if the size is
unchanged, as a cheesy optimization
(gtk_tree_view_setup_model): rename set_model_realized to
setup_model to match the flag that indicates whether we've
called it
(gtk_tree_view_get_hadjustment): create adjustment if it doesn't
exist, because set_scroll_adjustment does that and it shouldn't
matter what order you call these in
(gtk_tree_view_get_vadjustment): ditto
(gtk_tree_view_set_headers_visible): canonicalize the bool,
for paranoia
(gtk_tree_view_set_headers_visible): call
gtk_tree_view_map_buttons() instead of using cut-and-paste code
(gtk_tree_view_append_column): clarify whether the return value
is the count of columns before or after, and do the increment
separately from the return statement so you can tell from the code.
(gtk_tree_view_remove_column): ditto
(gtk_tree_view_insert_column): ditto
(gtk_tree_view_get_column): remove g_return_if_fail for columns
outside the existing range, the docs say that outside-range
columns are allowed, so we handle them as documented. (Presumably
this allows a nice loop with column != NULL as test.)
(gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
mean (left/right/center etc.).
(gtk_tree_view_collapse_all): only queue a draw if we're mapped
(gtk_tree_view_expand_row): add docs
(gtk_tree_view_collapse_row): add docs

* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
function to emit the clicked signal on a column

* gdk/gdkevents.c (gdk_event_get_state): new function, to get the
state of an event
(gdk_event_get_time): don't treat GDK_SCROLL
as a button event, remove default case from switch so gcc
will whine if we don't explicitly handle all event types

* gtk/gtktreeselection.h: added some FIXME

* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
"columns" to "n_columns" and "column" to "columns" for clarity
2000-12-17 23:50:00 +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
Havoc Pennington
9d41afc90a only AC_DEFINE(HAVE_XFT) if we actually determined that we have Xrender
2000-12-14  Havoc Pennington  <hp@pobox.com>

* configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
that we have Xrender
2000-12-15 03:16:35 +00:00
Owen Taylor
6e5a269f38 Add two virtualized functions gdk_drawable_get_clip_region - to get the
Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
	Add two virtualized functions gdk_drawable_get_clip_region - to
	get the clip region when drawing.

	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
	use invalidate_region.

	* gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
	region.

	* acconfig.h configure.in: Check for Xft. For now, assume
	that if Xft is found, Pango was compiled with Xft support
	as well.

	* gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add
	gdk_colormap_query_color().

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
	with Xft if appropriate.

	* gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
	a pangoxft context if we have XFT and the environment
	variable GD_USE_XFT is set.

	* gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
	and also possibly an XftDraw structure.

        * gtk/gtkfontsel.c: Handle the case where the font from the
	style doesn't match any of the fonts a bit better.

	* gtk/testgtk.c: Add tabs between directional segments for
	hebrew/arabic test. (Not really necessary, just a little
	prettier.)
2000-12-15 01:46:41 +00:00
Havoc Pennington
2142a98c9e fix unicode validation when reading a file
2000-12-14  Havoc Pennington  <hp@redhat.com>

	* gtk/testtext.c (fill_file_buffer): fix unicode validation when
	reading a file
2000-12-15 00:52:00 +00:00
Havoc Pennington
94ec8cff93 remove unused call to get_last_line()
2000-12-14  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
	unused call to get_last_line()

	* gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
	here until boxed is working (and maybe after that - we should
	really not gratuitously break old code)

	* gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
	specific types for font_desc and tabs args, move them to
	GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get
	fixed. Move GdkColor args to GTK_TYPE_POINTER also.

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
	use GTK_TYPE_POINTER for signal signatures as a hack-around

	* gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
	PangoTabArray

	* gtk/gtktextlayout.c (line_display_iter_to_index):
	make static
	(line_display_index_to_iter): make static

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
	to marshal a string not a boxed

	* gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text

	* gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
	since the UTF-8 isn't validated yet

	* gtk/gtktextsegment.c (char_segment_check_func): don't require
	lines to end in '\n'

	* gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
	forward_to_delimiters, and grapheme boundaries
	(gtk_text_view_delete_from_cursor): properly handle non-newline
	delimiters, and grapheme boundaries

	* gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
	to gtk_text_iter_forward_to_delimiters, and make it work properly
	if empty lines end with a character other than '\n'

	* gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
	position
2000-12-14 23:26:59 +00:00
Tor Lillqvist
2e70f892cc Add gdkkeys.
2000-12-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.

	* gtk/gtk.def
	* gdk/gdk.def: Update.

	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkkeys-win32.c: New file. Move some functions from
	gdkmain-win32.c here.

	* gdk/win32/makefile.mingw.in (all): No need to make
	gdk-win32res.o here, the makefile one step up will call us to make
	it.

	* gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
	gdkkeys-win32.

	* gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.

	* gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
	call to g_source_add().

	* gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
	leak. Thanks to Andreas Kemnade.
2000-12-14 23:14:18 +00:00
Tor Lillqvist
ea099b2402 Simplify, now that the .po files are already in UTF-8.
2000-12-14  Tor Lillqvist  <tml@iki.fi>

	* makefile.mingw: Simplify, now that the .po files are already in
	UTF-8.
2000-12-14 21:15:05 +00:00
Kenneth Christiansen
817018aeeb Translations from keld
achtung/po/da.po balsa/po/da.po bonobo/po/da.po
bug-buddy/po/da.po control-center-HEAD/po/da.po ee/po/da.po
evolution/po/da.po galeon/po/da.po gconf/po/da.po
gdm2/po/da.po gernel/po/da.po gfloppy/po/da.po gimp/po/da.po
gimp/po-plug-ins/da.po glade/po/da.po gnome-chess/po/da.po
gnome-core/po/da.po gnome-db/po/da.po gnome-games/po/da.po
gnome-iconedit/po/da.po gnome-libs-HEAD/po/da.po
gnome-libs/po/da.po gnome-lokkit/po/da.po gnome-pilot/po/da.po
gnome-utils/po/da.po gnome-vfs/po/da.po gnopo/po/da.po
gnorpm/po/da.po gnumeric/po/da.po gtk+/po/da.po
guppi3/po/da.po helix-setup-tools/po/da.po libgtop/po/da.po
magicdev/po/da.po mc/po/da.po memprof/po/da.po pan/po/da.po
rp3/po/da.po xpdf/po/da.po
2000-12-14 14:52:14 +00:00
Havoc Pennington
be59b202e8 Remove double _ in front of some functions
2000-12-13  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextbtree.h: Remove double _ in front of some functions

* gtk/gtktext*.[hc]: update accordingly
2000-12-14 04:58:44 +00:00
Havoc Pennington
bacb35ba3c Put _ in front of every function in this header file
2000-12-13  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextbtree.h: Put _ in front of every function in this
header file

* gtk/gtktext*.[hc]: update to reflect renamed btree functions
2000-12-14 04:54:03 +00:00
3
02eac1c64d Add support for ps2 intellimouse.
2000-12-13    <alexl@redhat.com>

	* gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
	Add support for ps2 intellimouse.

	* gdkkeyboard-fb.c:
	Move shift-F1 repaint handling to xlate handler only.

	* docs/README.linux-fb:
	Add imps2 to docs.
	Document the new refresh keys.
2000-12-13 10:03:16 +00:00
Tim Janik
2c9eb3a572 doh, this was broken beyond believe.
Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>

	* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.

	* gtk/gtkbox.c: change property types from (u)long to (u)int for
	::position and ::padding.

	* gtk/gtkcontainer.c: make ::border_width an INT property.

	* gtk/gtkpacker.c: make ::position an INT property.

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
	guard against NULL h/v scrollbars, since this is used at construction
	time.

	* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
	internal gtk_clist_constructor().

	* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
	gtk_ctree_constructor().

	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
	::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.

	* docs/reference/Makefile.am: fun stuff, disabled docs generation
	again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.

	* gtk/gtkwidget.[hc]:
	removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
	and gtk_widget_get().
	(gtk_widget_new): use g_object_new_valist().
	(gtk_widget_set): use g_object_set_valist().

	* gtk/gtkobject.[hc]:
	removed gtk_object_arg_get_info(), gtk_object_getv(),
	gtk_object_query_args(), gtk_object_newv(),
	gtk_object_class_add_signals(),
	gtk_object_class_user_signal_new(),
	gtk_object_class_user_signal_newv(),
	gtk_object_arg_set(), gtk_object_arg_get(),
	gtk_object_args_collect(),
	gtk_object_default_construct(),
	gtk_object_constructed(),
	GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
	removed nsignals, signals and n_args members from GtkObjectClass.
	(gtk_object_new): use g_object_new_valist().
	(gtk_object_set): use g_object_set_valist().
	(gtk_object_get): use g_object_get_valist().

	* gtk/gtkcompat.h: define gtk_object_default_construct().

	* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
	g_object_new().

	* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
	fucntions, cleaned up method assignments (make sure your structures
	are setup properly before calling out). removed all GTK_CONSTRUCTED
	hacks ;)
2000-12-13 01:34:41 +00:00
Owen Taylor
90461d7def Fix off-by-one error in checks. (Dave Lambert)
Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix
	off-by-one error in checks. (Dave Lambert)
2000-12-12 16:54:47 +00:00
Alexander Larsson
944046942a Don't free gdk_fb_keyboard twice.
2000-12-12  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
	Don't free gdk_fb_keyboard twice.
2000-12-12 12:11:14 +00:00
Tim Janik
53d7e43060 get rid of object_signal:: GtkObject argument uses, use GObject
Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c:
        (create_tooltips):
        (create_statusbar): get rid of object_signal:: GtkObject argument uses,
        use GObject swapped_signal:: properties instead.

        * gtk/gtkcellrenderertoggle.c:
        * gtk/gtkcellrenderertextpixbuf.c:
        * gtk/gtkcellrenderertext.c:
        * gtk/gtkcellrendererpixbuf.c:
        * gtk/gtkcellrenderer.c:
        * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
        missing warnings for invalid property ids, install properties
        with g_object_class_install_property() now.

        * gtk/gtksignal.c:
        (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
2000-12-12 07:32:32 +00:00
Owen Taylor
0cdc00ec0b Add a function to determine if a window is the focus widget within its
Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
	to determine if a window is the focus widget within
	its toplevel.

	* gtk/gtkcontainer.[ch]: Fix the return type of ::focus
	to be boolean.

	* gtk/gtkcontainer.c (gtk_container_real_focus): Move handling
	of the case where the container CAN_FOCUS to here instead
	of having it in each individual move-the-focus place.

	* gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
	focusing to be geometric in a much more obvious sense. Arrowing
	around is still non-intuitive because it isn't perfect and
	because entries, etc, grab the arrow keys, but it at least
	usually will do what you expect now.

	* gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
	file.

	* gtk/gtknotebook.c: Change tabs to be a single item in
	the focus chain. Make movement of focus on tabs with arrow
	keys wrap around.

	* gtk/gtknotebook.c (gtk_notebook_find_child): Add
	CHECK_FIND_CHILD macro to give informative error messages
	instead of silent returns.

	* gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT
	flag since we handle GdkReturn on the tabs.

	* gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
	windows rather than sending expose events directly.

	* gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure
	definition for GtkNotebookPage into .c file, since it is private.

	* gtk/testgtk.c (create_notebook): Add option for
	testing borderless notebook.

	* gtk/testgtk.c (page_switch): Removed egregious poking
	around in GTK+ internals.

	* docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.

	* gtk/gtkclist.[ch]: Remove key press handler, handle focusing
	properly through gtk_clist_focus. Make the title headers a
	single item in the tab-focus chain, and make left-right wrap
	around.

	* gtk/gtkwindow.c (gtk_window_focus): Add a custom
	focus method so that wrapping around works properly.

	* gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() -
	that is handled for the widget now.
2000-12-11 17:47:24 +00:00
Owen Taylor
5a188a9f13 Flag invisible widgets as TOPLEVEL.
Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
	widgets as TOPLEVEL.

	* gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
	TOPLEVEL widgets are containers.

	* gtk/gtkinvisible.h: Remove useless include.
2000-12-11 16:43:47 +00:00
Havoc Pennington
310a0d4fcc Handle chopping off \r\n and 0x2029 in addition to \n before passing to
2000-12-11  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
	Handle chopping off \r\n and 0x2029 in addition to \n before
	passing to PangoLayout

	* gtk/gtkimcontextsimple.c
	(gtk_im_context_simple_get_preedit_string):
	return an empty string if no match is pending

	* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
	assertion that the returned preedit string was sane

	* gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
	s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
	s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
2000-12-11 15:51:20 +00:00
Owen Taylor
116853db94 Fix up finalizer to chain to its parent.
Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize):
	Fix up finalizer to chain to its parent.
2000-12-11 15:04:36 +00:00
Alexander Larsson
a2a237101a Clearified the difference between the keyboard types. Wrote a note about
2000-12-11  Alexander Larsson  <alexl@redhat.com>

	* docs/README.linux-fb (GDK_KEYBOARD_TYPE):
	Clearified the difference between the keyboard types. Wrote a note
	about the magic sysrq key to get out of raw mode.
2000-12-11 08:48:13 +00:00
Kenneth Christiansen
c817b32d50 Updates from Keld achtung/po/da.po balsa/po/da.po bonobo/po/da.po
Updates from Keld
achtung/po/da.po balsa/po/da.po bonobo/po/da.po
bug-buddy/po/da.po control-center-HEAD/po/da.po
control-center/po/da.po dia/po/da.po dr-genius/po/da.po
ee/po/da.po eog/po/da.po evolution/po/da.po gal/po/da.po
galeon/po/da.po gconf/po/da.po gdm2/po/da.po
Tag: gedit-1-0
gedit/po/da.po
No tag
gernel/po/da.po gfax/po/da.po gfloppy/po/da.po ggv/po/da.po
ghex/po/da.po gimp/po/da.po gimp/po-libgimp/da.po
gimp/po-plug-ins/da.po gimp/po-script-fu/da.po glade/po/da.po
gnome-applets/po/da.po gnome-chess/po/da.po
gnome-core/po/da.po gnome-db/po/da.po gnome-games/po/da.po
gnome-iconedit/po/da.po gnome-libs-HEAD/po/da.po
gnome-libs/po/da.po gnome-lokkit/po/da.po gnome-media/po/da.po
gnome-pilot/po/da.po gnome-pim/po/da.po gnome-print/po/da.po
gnome-utils/po/da.po gnome-vfs/po/da.po gnomeicu/po/da.po
gnopo/po/da.po gnorpm/po/da.po gnumeric/po/da.po
gphoto/po/da.po gtk+/po/da.po gtkhtml/po/da.po
gtranslator/po/da.po guppi3/po/da.po gxsnmp/po/da.po
helix-setup-tools/po/da.po libgda/po/da.po libgtop/po/da.po
magicdev/po/da.po mc/po/da.po memprof/po/da.po oaf/po/da.po
pan/po/da.po pong/po/da.po
Tag: v_1_0_x
pybliographer/po/da.po
No tag
rp3/po/da.po sodipodi/po/da.po xpdf/po/da.po
2000-12-10 07:14:57 +00:00
James Henstridge
21430de47d add prot struct member to hold masks for detecting the start of a protocol
2000-12-09  James Henstridge  <james@daa.com.au>

        * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
        member to hold masks for detecting the start of a protocol packet.
        (mouse_devs): add packet start masks for ps2 and ms device types.
        Left the mask for fidmour blank, as I have no idea what it should
        be.
        (handle_mouse_io): skip bytes until we get to the start of a
        packet.  My Logitech mouse seems to be passing an extra NULL pad
        byte, and GPM does a similar thing here.
        (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
        this is the ms mouse driver.
        (gdk_fb_mouse_ms_packet): fix up button handling, which was
        completely broken except for button1.  It was checking the wrong
        bit in the packet for the status of the right mouse button, and
        wrongly assuming right == button2 rather than 3.  I fixed that and
        also added support for middle button (button2).
2000-12-09 11:10:41 +00:00
8
eccd33b2e7 Add focus_in and focus_out implementation to im_context_class as
2000-12-08    <tajima@eng.sun.com>

        * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
          Add focus_in and focus_out implementation to im_context_class
          as gtk_im_context_xim_focus_in and gtk_im_context_xim_focus_out.
2000-12-09 01:06:55 +00:00
8
ad3f7d9653 make need_im_reset flag effective to avoid reset_ic operation being done
2000-12-08    <tajima@eng.sun.com>

        * gtk/gtktextview.c (gtk_text_view_reset_im_context):
        * gtk/gtkentry.c (gtk_entry_reset_im_context):
          make need_im_reset flag effective to avoid reset_ic operation
          being done repeatedly.
2000-12-09 01:04:54 +00:00
Havoc Pennington
565074f9a3 fix breakage here that cause a segfault on text insertion
2000-12-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
	that cause a segfault on text insertion

	* gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix
	warning

	* gtk/gtktextiter.c (test_log_attrs): use
	_gtk_text_buffer_get_line_log_attrs to speed things up a bit

	* gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs):
	Get log attrs for a line, using a cache stored on the buffer

	* gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
	reported by Jeff Franks
2000-12-08 20:08:52 +00:00
Alexander Larsson
544bfc3d1a Clarification. 2000-12-08 16:52:06 +00:00
Alexander Larsson
fefedcaa04 Forgot to mention shift-F1 2000-12-08 16:33:49 +00:00
Alexander Larsson
78b055e77b /dev/ttyS0 -> /dev/mouse
2000-12-08  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
	/dev/ttyS0 -> /dev/mouse
2000-12-08 16:32:57 +00:00
Alexander Larsson
b09aade537 Add dummy gdk_fontset_load 2000-12-08 16:01:46 +00:00
Alexander Larsson
3e3cc0224b Docs, docs, anyone want docs!
2000-12-06  Alexander Larsson  <alexl@redhat.com>

	* docs/README.linux-fb:
	* docs/Makefile.am:
	Initial GtkFB docs.

	* gdk/linux-fb/Makefile.am:
	Define GDK_DATA_PREFIX.

	* gdk/linux-fb/gdkmain-fb.c:
	Fix typo.
	Change default display to /dev/fb0.

	* gdk/linux-fb/gdkpango-fb.c:
	Add $(prefix)/share/fonts/ to font path.
2000-12-08 15:00:07 +00:00
Alexander Larsson
6d0c6b792e New file containing the abstracted keyboard driver. Most code taken from
2000-12-08  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkkeyboard-fb.c:
	New file containing the abstracted keyboard driver. Most code
	taken from gdkinput-ps2.c

	* gdk/linux-fb/gdkinput-ps2.c:
	Removed file.

	* gdk/linux-fb/Makefile.am:
	Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.

	* gdk/linux-fb/gdkcolor-fb.c:
	display->fb was renamed to display->fb_fd.

	* gdk/linux-fb/gdkcursor-fb.c:
	gdk_mouse_get_info -> gdk_fb_mouse_get_info

	* gdk/linux-fb/gdkinput.c:
	Moved gdk_input_init here from gdkinput-ps2.c

	* gdk/linux-fb/gdkmain-fb.c:
	display->fb was renamed to display->fb_fd.
	Now the tty and the console is opened here instead
	of in the keyboard driver. Also check GDK_VT to see what
	tty to open.
	Move gdk_beep () here from gdkinput-ps2.c
	gdk_mouse_get_info -> gdk_fb_mouse_get_info

	* gdk/linux-fb/gdkmouse-fb.c:
	Add header.
	gdk_mouse_get_info -> gdk_fb_mouse_get_info
	Return correct keyboard modifiers.
	GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy

	* gdk/linux-fb/gdkprivate-fb.h:
	Add tty and vt info to display.
	Add orignal modeinfo storage to display
	Update global functions

	* gdk/linux-fb/gdkwindow-fb.c:
	Added gdk_fb_window_find_focus().
	gdk_mouse_get_info -> gdk_fb_mouse_get_info
2000-12-08 12:38:48 +00:00
Pablo Saratxaga
73773718b0 Added Azeri file 2000-12-08 00:39:48 +00:00
Havoc Pennington
6a2abb2867 fix name of function, noticed by Alex
2000-12-07  Havoc Pennington  <hp@pobox.com>

* gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of
function, noticed by Alex
2000-12-07 14:30:07 +00:00
Elliot Lee
89709dd14f Detect freetype properly Make use of above.
* configure.in: Detect freetype properly
* modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of above.
2000-12-06 18:45:42 +00:00
Alexander Larsson
7fa13eaf35 Add gdkmouse-fb.c
2000-12-06  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/Makefile.am:
	Add gdkmouse-fb.c

	* gdk/linux-fb/gdkmouse-fb.c:
	New file. Abstracted the mouse drivers a bit.

	* gdk/linux-fb/gdkcursor-fb.c:
	The cursor hide/show functions was moved here from gdkinput-ps2.c.

	* gdk/linux-fb/gdkinput-ps2.c:
	Removed old mouse handling code. Moved cursor handling code
	to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
	gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
	gdk_mouse_get_info.

	* gdk/linux-fb/gdkmain-fb.c:
	Pass NULL pointers for x,y in gdk_mouse_get_info call.

	* gdk/linux-fb/gdkprivate-fb.h:
	Removed public gdk_fb_find_common_ancestor, added and renamed
	functions for the new mouse handling code.

	* gdk/linux-fb/gdkwindow-fb.c:
	Moved gdk_fb_window_send_crossing_events here. added global
	variable gdk_fb_window_containing_pointer. made
	gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
	renamed to gdk_mouse_get_info.
2000-12-06 17:27:52 +00:00
Pablo Saratxaga
f71ea1c09a fixed headers and syntax errors 2000-12-06 16:25:15 +00:00
Alexander Larsson
b7f7cba72b Update to match latest gmain/gsource changes.
2000-12-06  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkevents-fb.c:
	Update to match latest gmain/gsource changes.

	* gdk/linux-fb/gdkinput-ps2.c:
	Bogus gdk_keymap_get_entries_for_keycode implementation so that
	it links. Will be implemented later.
2000-12-06 12:11:45 +00:00
Havoc Pennington
36aac0177b add gdkkeys.[hc]
2000-12-03  Havoc Pennington  <hp@pobox.com>

* gdk/Makefile.am: add gdkkeys.[hc]

* gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
files from gdk.h, gdk.c; add GdkKeymap type and operations on it.

* acconfig.h, configure.in: add checks and command line options
for XKB

* gdk/x11/gdkkeys-x11.c: Implement the above functions

* gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
and group in the key event

* gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
field with the low-level hardware key code, and a group
field with the keyboard group

* gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
and declare a couple globals used for keymap handling

* gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
hold down Shift-Control and type a hex number to get a Unicode
character corresponding to the hex number
(gtk_im_context_simple_get_preedit_string): Fix cursor position
(return bytes not chars)
2000-12-06 05:31:30 +00:00
Elliot Lee
3bc53c742d Make GdkColor specify element sizes to avoid waste on 64-bit platforms.
* gdk/gdkcolor.h: Make GdkColor specify element sizes
to avoid waste on 64-bit platforms.
2000-12-05 22:59:40 +00:00
Owen Taylor
a4b2a6a857 Fix link to PNG home, remove reference to fribidi.
Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>

	* INSTALL: Fix link to PNG home, remove reference
	to fribidi.

	* gdk/x11/gdkevents-x11.c: Fix up for new GMain API.

	* gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
	tested.)

	* gtk/gtkcheckmenuitem.c: Permanently turn on
	always_show_toggle.

	* gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to
	be NULL. (Vladimir Klebanov, #26545)

	* gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix
	some signed/unsigned comparison problems. (#6510,
	David Kaelbling)

	* gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
	return type to boolean (Oskar Liljeblad, #18648)
2000-12-05 20:53:30 +00:00
Owen Taylor
691576eb40 Fix to say that file_selection_complete() filters both files and
Thu Nov 30 00:53:45 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkfilesel.sgml: Fix to say that file_selection_complete()
	filters both files and directories.

	* gtk/tmpl/gtktogglebutton.sgml: Fix description
	of gtk_toggle_button_toggled().
2000-12-05 20:50:24 +00:00
Alexander Larsson
f2e4ead7db Remove bogus colormap setting.
2000-12-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
	Remove bogus colormap setting.
2000-12-05 17:01:39 +00:00
Alexander Larsson
b9ef6f2cba More complete colormap handling. Now GdkRGB work in 8 bpp modes.
2000-12-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkcolor-fb.c:
	More complete colormap handling. Now GdkRGB work in 8 bpp modes.

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
	Must set colormap.
2000-12-05 16:58:25 +00:00
GMT 2000 Tony Gale
b3fcc83a62 DND updates
Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml: DND updates
2000-12-05 13:18:56 +00:00
Alexander Larsson
f1046d9a66 Remove old debug g_warning(). (gdk_fb_draw_drawable): The src argument can
2000-12-05  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
	Remove old debug g_warning().
	(gdk_fb_draw_drawable): The src argument can be either a wrapper
	or an implementation, just pass the implementation to draw_drawable_2.

	* gdk/linux-fb/gdkprivate-fb.h:
	Added GDK_IS_DRAWABLE_IMPL_FBDATA()

	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
	clear and invalidate area when window is destroyed.
	(send_map_events): Remove old commented out code.
2000-12-05 11:39:26 +00:00
Alexander Larsson
b7118c8094 Use italic instead of oblique in font aliases.
2000-12-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkpango-fb.c:
	Use italic instead of oblique in font aliases.

	* gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
	_gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
	other unsupported functions.
2000-12-05 09:47:13 +00:00
Havoc Pennington
c149ce5963 got the facts wrong in ChangeLog re: notebook hack 2000-12-04 23:06:13 +00:00
Havoc Pennington
9365d0d7dc fix this to be sane
2000-12-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane

	* gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler

	* gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler

	* gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary
	hack to avoid infinite loops (queue draw instead of draw) -
	Owen has more appropriate fixes in a branch he'll check in later.

	* gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
	separator, CR, and CRLF as line ends

	* gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
	into lines using pango_find_paragraph_boundary(); other bits of
	the widget are still going to be broken if the boundary isn't '\n'
	though
2000-12-04 23:04:17 +00:00
Alexander Larsson
d77144614b Divide size by 2, not multiply.
2000-12-04  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
	multiply.

	* gdk/linux-fb/gdkpango-fb.c:
	Copied some 26.6 scaling macros from pango to clean up the rounding.
	(pango_fb_font_get_glyph_info): Correct sign on x value.

	* gdk/linux-fb/gdkprivate-fb.h:
	Removed unreferenced external functions.

	* modules/linux-fb/Makefile.am: Use ` instead of '.

	* modules/linux-fb/basic.c:
	Remove dead code. In particular the dummy lang engine which broke all
	pango layouts in GtkFB. Don't include tables-big.i anymore.

	* modules/linux-fb/tables-big.i:
	Upgrade to latest version from pango. Left for reference, basic_ranges
	moved to basic.c.
2000-12-04 17:59:43 +00:00
Havoc Pennington
9cca191b6a Fix bugs Alex found:
2000-12-04  Havoc Pennington  <hp@redhat.com>

        Fix bugs Alex found:

	* gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
	to "draw"

	* gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"

	* gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"

	* gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw()
	implementation in here, apparently the expose() implementation was
	dead code.
2000-12-04 16:11:51 +00:00
Alexander Larsson
15c81f52d3 Return positive descent.
2000-12-04  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
	Return positive descent.
2000-12-04 12:07:41 +00:00
Havoc Pennington
5995baabef Remove "draw" virtual method and signal
2000-12-02  Havoc Pennington  <hp@pobox.com>

* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
method and signal

* gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
calls gdk_window_process_updates() to push the exposes through
(gtk_widget_class_init): No more draw signal, no
gtk_widget_real_draw()

* gtk/gtkbin.c (gtk_bin_draw): remove

* gtk/gtkbox.c (gtk_box_draw): remove

* gtk/gtkbutton.c (gtk_button_draw): remove

* gtk/gtkcalendar.c (gtk_calendar_draw): remove

* gtk/gtkcheckbutton.c (gtk_check_button_draw): remove

* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove

* gtk/gtkclist.c (gtk_clist_draw): remove

* gtk/gtkentry.c (gtk_entry_draw): remove

* gtk/gtkeventbox.c (gtk_event_box_draw): remove

* gtk/gtkfixed.c (gtk_fixed_draw): remove

* gtk/gtkframe.c (gtk_frame_draw): remove

* gtk/gtkhandlebox.c (gtk_handle_box_draw): remove

* gtk/gtkhpaned.c (gtk_hpaned_draw): remove

* gtk/gtklayout.c (gtk_layout_draw): remove

* gtk/gtklist.c (gtk_list_draw): remove

* gtk/gtklistitem.c (gtk_list_item_draw): remove

* gtk/gtkmenu.c (gtk_menu_draw): remove

* gtk/gtkmenubar.c (gtk_menu_bar_draw): remove

* gtk/gtkmenuitem.c (gtk_menu_item_draw): remove

* gtk/gtknotebook.c (gtk_notebook_draw): remove

* gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove

* gtk/gtkpacker.c (gtk_packer_draw): remove

* gtk/gtkrange.c (gtk_range_draw): remove

* gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove

* gtk/gtkspinbutton.c (gtk_spin_button_draw): remove

* gtk/gtktable.c (gtk_table_draw): remove

* gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove

* gtk/gtktext.c (gtk_text_draw): remove

* gtk/gtktextview.c (gtk_text_view_draw): remove

* gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove

* gtk/gtktoolbar.c (gtk_toolbar_draw): remove

* gtk/gtktree.c (gtk_tree_draw): remove

* gtk/gtktreeitem.c (gtk_tree_item_draw): remove

* gtk/gtktreeview.c (gtk_tree_view_draw): remove

* gtk/gtkviewport.c (gtk_viewport_draw): remove

* gtk/gtkvpaned.c (gtk_vpaned_draw): remove

* gtk/gtkvscale.c (gtk_vscale_draw): remove

* gtk/gtkwindow.c (gtk_window_draw): remove
2000-12-04 01:15:37 +00:00
Anders Carlsson
b18bb07b2d Commit GtkToggleButton fix to HEAD too. 2000-12-02 18:05:34 +00:00
Havoc Pennington
35876710dc don't create dangling pointers to the appearance attributes from the line
2000-11-30  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
dangling pointers to the appearance attributes from the
line display

* gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
width/height to mean "full width/height of drawable"

* gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
click to select word/line

* gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters
when getting log attrs. Get a slice, so that pixmaps and stuff
are properly handled.

* gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
paste into the selection (replaces selection now, previously
crashed or added to selection). Reveals longstanding btree bug -
select multiple lines, middle-click on the selection, boom. This
isn't related to my changes though.

* gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
PangoLogAttrs changes
(gtk_entry_move_backward_word): ditto

        * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
	functions return bool whether the iter moved onto a
	dereferenceable position.

	 * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
	 functions for motion in terms of display lines.

	 * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
	 get the buffer a mark is inside
2000-12-02 07:51:37 +00:00
Alexander Larsson
fb14d1299e Forgot to check in ChangeLog entry. 2000-12-01 17:25:15 +00:00
1
f3e06d23bf Note: GtkFB now requires Freetype 2 final.
2000-12-01    <alexl@redhat.com>

	* gdk/linux-fb/Makefile.am:
	* modules/linux-fb/Makefile.am:
	Freetype 2 final uses freetype-config

	* gdk/linux-fb/gdkpango-fb.c:
	Upgrade to use Freetype 2 final.
	More flexible support for font aliases, this also fixes a bug with
	GtkFontSelector, as the aliases must be visible in the font/family list,
	or GtkFontSelector reads uninitialized memory.
2000-12-01 17:14:29 +00:00
Hidetoshi Tajima
97bfa3300d Add NULL argument to XGetIMValues to properly terminate variable argument
2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>

	* modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
	XGetIMValues to properly terminate variable argument list, and do
	NULL return check for ic_values and xim_styles.

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
	Restore preedit state after XmbResetIC().

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
	XvaCreateNestedList() should take XvaNestedList, but not
	XvaNestedList*.

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
	preedit_draw_callback, preedit_caret_callback): Match
	"preedit-changed" signal name to "preedit_changed" to be
	consistent to the spec.

	* gtk/gtkimcontextsimple.c (check_table):
	Match "preedit-changed" to "preedit_changed" to be consistent
	to the spec.
2000-12-01 04:40:45 +00:00
0
1e5b472e67 Match "preedit-changed" to "preedit_changed" to be consistent to the spec.
2000-11-30    <tajima@eng.sun.com>

	* gtk/gtkimcontextsimple.c (check_table):
	Match "preedit-changed" to "preedit_changed" to be consistent
	to the spec.
2000-12-01 04:07:38 +00:00
Owen Taylor
1f7d7453b1 Properly handle gc->clip_region == NULL>
Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
	gc->clip_region == NULL>
2000-12-01 04:05:47 +00:00
Hidetoshi Tajima
c396e4bb05 -Add NULL argument to XGetIMValues.
-Check NULL return for xim_styles and ic_values.
-Restore preedit state after XmbResetIC.
-Change XVaNestedList* to XVaNestedList.
-Match "preedit-changed" to "preedit_changed".
2000-12-01 03:43:14 +00:00
Tor Lillqvist
68ae419bfb Changes by Hans Breuer:
2000-11-30  Tor Lillqvist  <tml@iki.fi>

	Changes by Hans Breuer:

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
	Dont't use negative width and height as max_hints. This fixes
	Owen's recent testgtk changes for win32.

	* gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
	gdk_win32_hdc_release): These are exported and may be called with
	other drawable types than our GdkDrawableImplWin32 (?).

	* gdk/gdkwindow.c: Backing store appears to work on Windows now,
	so always #define USE_BACKING_STORE.

	* gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
	of printf for debugging output.

	* gtk/gtktextlayout.c (allocate_child_widgets): Ditto.

	* gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.

	* gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
	declaration.

	* gtk/gtktexttypes.h: Ditto.

	* gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
	(GDK_VoidSymbol) also if in case of arg check failure.

	* gtk/gtkimcontextsimple.c
	(gtk_im_context_simple_get_preedit_string): Don't assign cursor
	position to the pointer, but to the variable it points to.

	* gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.

	* gtk/gtk.def: Updates.
2000-11-30 23:39:50 +00:00
Elliot Lee
094159e431 Inherits from GTK_TYPE_OBJECT, not GTK_TYPE_TREE_MODEL.
Inherits from GTK_TYPE_OBJECT, not GTK_TYPE_TREE_MODEL.
2000-11-30 01:20:13 +00:00
Alexander Larsson
b1b6c9fc7a Set the size of the font from the description. (gdk_text_width): Gross
2000-11-29  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
	Set the size of the font from the description.
	(gdk_text_width): Gross hack that calculates the width
	of text by text_length * size/2. This is necessary because
	GtkLabel does some ugly gtk_string_width call to calculate
	an good size.
	(linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
2000-11-29 13:49:37 +00:00
GMT 2000 Tony Gale
696d0bc1b0 DND updates
Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>

	* docs/tutorial/gtk-tut.sgml: DND updates
2000-11-29 13:41:51 +00:00
Alexander Larsson
92bc6d4175 If you pass width or height == 0 to gdk_window_clear_area they should be
2000-11-29  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
	If you pass width or height == 0 to gdk_window_clear_area they
	should be calculated from the window size.
2000-11-29 13:13:20 +00:00
Alexander Larsson
57356cfe07 If there is a grab, but no grab-cursor, use the cursor from the grabbed
2000-11-29  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
	a grab, but no grab-cursor, use the cursor from the grabbed
	window. (gdk_fb_window_send_crossing_events): Send normal
	enter/leave notifications if grab and owner_events == TRUE.
2000-11-29 12:52:41 +00:00
Alexander Larsson
3c6f0d5f3e Do implicit button grabs, even if the window doesn't want the event.
2000-11-29  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkinput-ps2.c (send_button_event):
	Do implicit button grabs, even if the window doesn't
	want the event.
	(gdk_fb_window_send_crossing_events): If there is a
	grab, only the grabbed window gets normal enter/leave
	notifications. On ungrab go from grabbed window to current.
	Don't send any notification to b when propagating from c -> b.
	If setting a grab on window, don't set prev_window.
	(handle_mouse_input): Send enter/leave events to the window the
	mouse is over, not the grabbed one.
2000-11-29 11:49:17 +00:00
Elliot Lee
de5298f9ba Only build im-xim if USE_X11 is enabled s/strcpy/memcpy/ to save a few
* modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
	* gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
2000-11-28 18:46:11 +00:00
Elliot Lee
2e39ad6a28 Zap warning.
Zap warning.
2000-11-28 18:45:03 +00:00
Elliot Lee
8161dc23b9 basic.c: Include string.h Makefile.am: -L$(top_builddir)/gdk-pixbuf/.libs
basic.c: Include string.h
Makefile.am: -L$(top_builddir)/gdk-pixbuf/.libs
2000-11-28 17:58:38 +00:00
Alexander Larsson
270d45a3e5 The cursor should be hidden if it is part of either the source or
2000-11-28  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
	The cursor should be hidden if it is part of either the
	source or destination region. Not only if it is in both.
	(gdk_window_set_transient_for): Silence warnings.
2000-11-28 16:39:55 +00:00
Alexander Larsson
7f8a4aa1c3 Fix filled arcs and commit previous stuff which i somehow missed. 2000-11-28 15:38:23 +00:00
Alexander Larsson
26b7063388 Implement configure events and correct enter/leave notification. 2000-11-28 08:44:02 +00:00
Kenneth Christiansen
ab521efc4c Translations from Keld
gtk+/po/da.po
2000-11-28 04:35:33 +00:00
Havoc Pennington
60bc586718 Remove a trailing comma
2000-11-27  Havoc Pennington  <hp@redhat.com>

        * gtk/gtkprivate.h (enum): Remove a trailing comma
2000-11-28 01:01:58 +00:00
Kenneth Christiansen
e4c935d66f Translations from Keld
gtk+/po/da.po
2000-11-27 20:49:38 +00:00
Federico Mena Quintero
ba97b1467a Connect to the "changed" callback of the adjustment. We need to redraw the
2000-11-27  Federico Mena Quintero  <federico@helixcode.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
	the "changed" callback of the adjustment.  We need to redraw the
	spin button's arrows when the adjustment's range changes.
	(adjustment_changed_cb): Draw the arrows.
	(gtk_spin_button_value_changed): Draw the arrows.
2000-11-27 17:47:52 +00:00
Alexander Larsson
1c805555ce Huge GtkFB patch with lots of small bugfixes and initial selections implementation.
2000-11-23  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkselection-fb.c:
	Initial selection implementation.

	* gtk/gtkselection.c:
	if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
	requestor in gtk_selection_request.

	* gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
	Added gdk_selection_property atom.

	* gdk/linux-fb/gdkprivate-fb.h:
	Export _gdk_selection_window_destroyed.
	Removed mask_off_x/y from GdkCursorPrivateFB.
	Removed hbearing, added top, left to PangoFBGlyphInfo.

	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
	Call _gdk_selection_window_destroyed
	(_gdk_windowing_window_init): Don't call gdk_cursor_new() before
	the root window has been created.
	(static_dx_hack, static_dy_hack, compare_draw_rects,
	gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
	in region. They are already sorted. Instead just traverse them in
	reverse if draw_direction < 0.

	* gdk/linux-fb/gdkinput-ps2.c (send_button_event):
	Double-clicks must be sent after the normal button_press.
	(gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.

	* gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
	Pass _gdk_fb_screen_gc instead of NULL.

	* gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
	Initialize gdk_selection_property.
	(gdk_event_make): Remove unused code.

	* gdk/linux-fb/gdkcursor-fb.c:
	Make the pixmap for the cursor the same size as the mask. Also remove
	the mask_off_x/y fields in GdkCursorPrivateFB and combine
	_gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
	Now the whole cursor is visible.

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
	Fix bug where xdest+height instead of ydest+height was used
	to calculate if the source and dest overlapped. This fixes the
	redraw bug when the main window in testgtk was scrolled when
	partially covered by a tall window.
	Copy rectangles in region in order depending on draw_direction.
	Also moved the draw_direction flipping of start_y and end_y into
	the gc functions, as this might not be what all of them want.
	(gdk_fb_draw_lines): Support dashed lines.
	(gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
	so that the text is positioned correctly (was 1 pixel high).

	gdk/linux-fb/gdkgc-fb.c:
	Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
	all lines were drawn a pixel to short. Also checked the default of
	the rest of the values, and they're the same as X now.

	* gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
	Clean up pixel positioning of the glyphs. Just use bgy->top and
	bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
	to all divisions to get correct rounding behaviour.

	* gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
	gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
	Moved start_y/end_y flip into draw_drawable implementations.
	Flip also x rendering when draw_direction < 0.
	Remove unneccesary multiply with draw_direction.
2000-11-25 15:44:35 +00:00
GMT 2000 Tony Gale
f8cec46535 - get rid of gtk_toggle_button_toggled FUD - start DND section - needs
Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml:
          - get rid of gtk_toggle_button_toggled FUD
          - start DND section - needs work - based on:
                http://wolfpack.twu.net/docs/gtkdnd/
2000-11-22 14:15:04 +00:00
Alexander Larsson
2382edbdb6 Correct calculation of font metrics. Now GtkEntrys have sane size.
2000-11-22  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
	Correct calculation of font metrics. Now GtkEntrys have sane
	size.
2000-11-22 12:09:08 +00:00
Alexander Larsson
5b4c8afa7e i2000-11-22 Alexander Larsson <alexl@redhat.com>
* gdk/gdktypes.h:
	Add new type GdkSpan

	* docs/reference/gdk/gdk-sections.txt,
	docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
	gdk/gdkregion.h:
	Implement and document gdk_region_spans_intersect_foreach.

	* gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
	Add new file gdkrender-fb.c which contains all core
	rendering code.
	Add gdk_fb_fill_rectangle_generic (old rectangle code) and
	gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
	(optimized rectangle fillers).

	* gdk/linux-fb/gdkdrawable-fb2.c:
	Move all rendering code to gdkrender-fb.c.
	Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
	Use the new span intersection functions in gdk_fb_fill_spans.
	gdk_fb_draw_rectangle() clips filled rectangles and calls
	gc->fill_rectangle with the result.
	gdk_fb_fill_spans() gets extra argument "sorted".

	* gdk/linux-fb/gdkevents-fb.c:
	Remove unused includes and defines.
	New function gdk_fb_get_time() to get correct time for events.

	* gdk/linux-fb/gdkinput-ps2.c:
	Use gdk method of generating multiple-clicks (gdk_event_button_generate)
	Make sure to set the time of all events.

	* gdk/linux-fb/gdkmain-fb.c:
	Use gdk_fb_get_time ().

	* gdk/linux-fb/gdkprivate-fb.h:
	New virtual GC calls: fill_span & fill_rectangle.
	Export gdk_fb_get_time().
	gdk_fb_fill_spans() gets extra argument "sorted".

	* gdk/linux-fb/mi*.c:
	Use GdkSpan instead of GdkRectangle.
	Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
	from XFree 4 source)
2000-11-22 10:07:34 +00:00
2
c76c5f4857 It's amazing what reversing the order in an if statement will do. Doing so
2000-11-22    <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
	reversing the order in an if statement will do.  Doing so managed
	to make the treemodelsort half work.  Other half will follow after
	I get the insert function fully fixed.
2000-11-22 07:45:28 +00:00
Jonathan Blandford
a2771e40bc sync to home 2000-11-22 05:16:37 +00:00
Elliot Lee
f8ab34e606 GdkEventButton->button can occupy significantly more than 2 bits. Besides,
* gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly more than 2
bits. Besides, I need to implement an evil hack. :)
2000-11-22 01:00:26 +00:00
Robert Brady
2fe5a448ee Prepare for tarball-of-po-files. 2000-11-21 17:53:43 +00:00
GMT 2000 Tony Gale
ac22e4f8b4 minor corrections
Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml: minor corrections
2000-11-21 14:19:15 +00:00
Jonathan Blandford
7a2e1974f0 Add convertion functions to let you convert to and from relative path's
2000-11-20  Jonathan Blandford <jrb@redhat.com>
	* gtk/gtktreemodelsort.h: Add convertion functions to let you
	  convert to and from relative path's and iters.

	* gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
	  testing sorting functions a bit better.  Currently broken -- will
	  fix in morning.
2000-11-21 09:07:45 +00:00
Havoc Pennington
18dd625fa3 Documented a bunch of functions in here (gtk_widget_realize): Warn if you
2000-11-20  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwidget.c: Documented a bunch of functions in here
	(gtk_widget_realize): Warn if you try to realize
	a widget with no parent that isn't a toplevel
	(gtk_widget_intersect): return a gboolean
2000-11-21 02:06:21 +00:00
Havoc Pennington
6f7dd53b80 Semi-finish widget embedding. Need guffaw scrolling to be implemented in
2000-11-20  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
	gtk/testtext.c: Semi-finish widget embedding. Need guffaw
	scrolling to be implemented in GDK to finish. Also, right now
	we just size_allocate all children on every layout change,
	which is pretty lame. Test commented out of testtext.c,
	until it works better.
2000-11-20 23:51:51 +00:00
Alexander Larsson
2999f465b4 Removed unused arguments from gdk_fb_drawable_get_pixel().
2000-11-20  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkdrawable-fb2.c:
	Removed unused arguments from gdk_fb_drawable_get_pixel().

	* gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
	Renamed fidur specific mouse packet data in MouseDevice to
	generic. Used it in ps2 mouse handling code to avoid blocking
	reads.
2000-11-20 10:12:40 +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
14ec95efb4 Fix off-by-one error when destroying allocated segments on failure.
Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix
	off-by-one error when destroying allocated segments
	on failure. (Elliot)
2000-11-18 17:01:01 +00:00
Owen Taylor
1f74dcee1b Patch from ChiDeok Hwang to fix memleaks found by Evan Martin.
Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
	memleaks found by Evan Martin.
2000-11-18 16:48:39 +00:00
Owen Taylor
0204bd1cef Nov 17 20:14:20 2000 Owen Taylor <otaylor@redhat.com>
* Released 1.3.2

	* NEWS: Updates for 1.3.2
2000-11-18 01:49:50 +00:00
Owen Taylor
f12db85a24 Released 1.3.2
Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>

        * Released 1.3.2

	* NEWS: Updates for 1.3.2
2000-11-18 01:49:13 +00:00
Tor Lillqvist
99b14ff2c5 Update.
2000-11-18  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtk.def: Update.

	* gtk/gtktexttypes.h: Mark variables for export/import from DLL.
2000-11-17 22:30:47 +00:00
Tor Lillqvist
2c2dbae197 Add comment that GdkXEvent isn't only for XEvent, but in general for
2000-11-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
	but in general for window system specific events.

	* gtk/gtk.def
	* gtk/makefile.mingw.in
	* gtk/makefile.msc.in: Update.
2000-11-17 21:59:04 +00:00
Owen Taylor
b29a24d028 Do not, in any circumstances, distribute gtk.immodules.
Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
	distribute gtk.immodules.

	* gtk/Makefile.am (install-data-local): Don't install the
	gtk.immodules file created for the uninstalled modules;
	instead run gtk-query-immodules after install
2000-11-16 21:17:53 +00:00
Owen Taylor
a8b012d0a0 cvsignore updates 2000-11-16 16:14:17 +00:00
Owen Taylor
26aa13b0ef Point -rpath to the right install location.
Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>

	* modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
	-rpath to the right install location.

	* modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
	-export-dynamic.

	* gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
	properly.
2000-11-16 16:11:05 +00:00
Havoc Pennington
74df6fc0a5 Apply patch from Mikael Hermansson to temporarily stop blinking while the
2000-11-15  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
patch from Mikael Hermansson to temporarily stop blinking while
the user is using the keyboard to type or navigate.

Also, when blinking, stay on for longer than we stay off. Also,
return from start_cursor_blink if !cursor_visible, to save
checking that flag all over the place before we call
start_cursor_blink.
2000-11-16 05:45:42 +00:00
Robert Brady
2a38b7e592 Remove the locale-specific gtkrc's, as they only contain a "fontset" line,
Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>

	* gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
	only contain a "fontset" line, which is now ignored.

	* gtk/Makefile.am: Don't build the above.

	* gtk/gtkentry.c (gtk_entry_button_release): Make
	double-click-to-select-word work.
2000-11-16 01:51:17 +00:00
Owen Taylor
afb5788071 Don't move back one char when we are actually at the end of the paragraph.
Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end):
	Don't move back one char when we are actually at the end of the
	paragraph.

CV: ----------------------------------------------------------------------
2000-11-16 01:19:27 +00:00
Robert Brady
c087b64c77 Kill stray conflict line. 2000-11-16 00:47:38 +00:00
Robert Brady
fe682268d1 'o' < 'p'.
2000-11-15  Robert Brady  <robert@suse.co.uk>

	* modules/input/iminuktitut.c (inuktitut_compose_seqs):
	'o' < 'p'.

	* gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
	bind_textdomain_codeset.

	(gtk_init_check): Make the warning about translating default:LTR
	sterner.
2000-11-16 00:41:02 +00:00
Owen Taylor
bc41c3ffcf remove unecessary rules for win32-specific config-substituted targets. If
Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>

	* **/Makefile.am : remove unecessary rules for win32-specific
	config-substituted targets. If you want these rules, use
	--enable-maintainer-mode (called automatically by autogen.sh).
	Stops a lot of unneccessary make-time warnings.

	* gtk/gtktext{layout,display}.c: Factor in total width as
	well as screen when figuring alignment for word-wrap as well as
	no wrap; this is necessary to handle lines that cannot be wrapped
	at all.
2000-11-16 00:16:46 +00:00
Havoc Pennington
ac5c0dbc98 Implement essential color cycling feature
2000-11-15  Havoc Pennington  <hp@redhat.com>

	* gtk/testtext.c: Implement essential color cycling feature
2000-11-15 23:25:08 +00:00
Elliot Lee
152f160a8a Add s'more TODO items.
Add s'more TODO items.
2000-11-15 22:08:10 +00:00
Havoc Pennington
306db7d03d Invalidate the side windows when we invalidate the main window.
2000-11-15  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (changed_handler): Invalidate the side windows
	when we invalidate the main window.

	* gtk/testtext.c (create_view): Get rid of text_changed_callback,
	GtkTextView will now invalidate the side windows for us when text
	changes.
2000-11-15 21:22:52 +00:00
Owen Taylor
de49f2ce05 ed Nov 15 16:02:20 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
	unconditionally, since we may need to update the horizontal
	scrollbars even if the height didn't change.

	* gtk/gtktextlayout.c (add_preedit_attrs): Always get
	the extra attrs, since some of them affect size.

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
	x_offset correctly.
2000-11-15 21:12:58 +00:00
Havoc Pennington
c990d4ab1a If indent is negative, don't move the first line out into the margin,
2000-11-15  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (set_para_values): If indent is negative,
	don't move the first line out into the margin, instead move the
	whole paragraph in order to make space for the first line within
	the margin
2000-11-15 19:50:45 +00:00
Havoc Pennington
5bd2297932 offset redraw rect by xoffset in addition to yoffset, so horizontal
2000-11-15  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (changed_handler): offset redraw rect by
	xoffset in addition to yoffset, so horizontal scrolling doesn't
	break redraws
2000-11-15 17:49:07 +00:00
Havoc Pennington
42bb04b2ce Remove extra pixel from the cursor (render_layout_line): fix reversed test
2000-11-15  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
	from the cursor
	(render_layout_line): fix reversed test that caused weird
	underlines to get drawn
2000-11-15 17:43:08 +00:00
Alexander Larsson
0c4f41198a Fixed some debug macros. 2000-11-15 13:48:13 +00:00
Alexander Larsson
2eb744a3c4 Added virtual functions set_pixel, get_color, fill_span and draw_drawable
2000-11-15  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkprivate-fb.h:
	Added virtual functions set_pixel, get_color,
	fill_span and draw_drawable to the GC.
	Added global _gdk_fb_screen_gc to use instead of
	NULL when drawing to the screen.
	Added _gdk_fb_gc_calc_state() prototype.

	* gdk/linux-fb/gdkgc-fb.c:
	Call _gdk_fb_gc_calc_state() on any gc state change.

	* gdk/linux-fb/gdkglobals-fb.c:
	Add _gdk_fb_screen_gc

	* gdk/linux-fb/gdkdrawable-fb2.c:
	_gdk_fb_gc_calc_state() calculates best functions
	for the GC state and depth.
	Moved bpp specialized code to separate functions.
	Added optimized 24 bpp AA draw_drawable.

	* gdk/linux-fb/gdkevents-fb.c:
	Silence gcc warning.

	* gdk/linux-fb/gdkimage-fb.c:
	Use _gdk_fb_screen_gc

	* gdk/linux-fb/gdkwindow-fb.c:
	Init and use _gdk_fb_screen_gc

	* gdk/linux-fb/mitypes.h:
	Remove unused types.
2000-11-15 12:45:30 +00:00
Havoc Pennington
376d6c1914 use PANGO_PIXELS() to convert to pixels
2000-11-14  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
to pixels
2000-11-15 05:35:57 +00:00
Havoc Pennington
c72cec38f1 change "offset" to "rise"
2000-11-14  Havoc Pennington  <hp@pobox.com>

* gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"

* gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
unknown char, no real reason we were using a variable.
Remove gtk_text_unknown_char variable. Fix all the text widget
files accordingly.

* gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC,
since the Unicode spec seems to prefer that character for our
purposes.
2000-11-15 03:41:45 +00:00
Robert Brady
98e453dc04 The return value of g_getenv() isn't freeable, so g_strdup it.
Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>

	* gtk/gtkrc.c (gtk_rc_get_im_module_file): The return
	value of g_getenv() isn't freeable, so g_strdup it.

	* modules/input/inuktitut.c: Inuktitut input method.

	* modules/input/Makefile.am: Build this.
2000-11-15 02:45:55 +00:00
Elliot Lee
0ac162b1b6 Install gtk.immodules, needed for operation of gtk programs.
2000-11-14  Elliot Lee  <sopwith@redhat.com>

	* gtk/Makefile.am: Install gtk.immodules, needed for operation
	of gtk programs.
2000-11-15 01:43:45 +00:00
Owen Taylor
10822e2fd0 Fix reversed > that was causing Home to go to end of previous line.
Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
	reversed > that was causing Home to go to end of previous line.

	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
	modified-keypresses (leave for bindings.)

	* modules/input/Makefile.am: Remove useless -export-dynamic
	from module LDFLAGS.
2000-11-15 01:16:03 +00:00
Owen Taylor
703944fd36 Add -avoid-version for all modules.
Tue Nov 14 11:51:26 2000  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am: Add -avoid-version for all modules.
2000-11-15 01:14:37 +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
Tor Lillqvist
2d24862ffd Rename gtk/gtk.rc.in to gtk/gtk-win32.rc.in because the build-dll
script (in GLib) looks for the resource file having the same basename
as the DLL being built. Update configure.in and gtk/Makefile.am accordingly.
2000-11-14 23:07:33 +00:00
Tor Lillqvist
bf53eae5bf Add new objects.
2000-11-15  Tor Lillqvist  <tml@iki.fi>

	* gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.

	* gtk/gtk.def: Update.

	* gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
	included.
	(gtk_rc_get_im_module_file): Use run-time installation directory
	on Win32.
2000-11-14 23:01:47 +00:00
Tor Lillqvist
8a26c540a3 Remove. New file. New file Corresponding changes.
2000-11-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/rc/gdk.rc: Remove.
	* gdk/win32/rc/gdk.rc.in: New file.
	* gdk/win32/rc/Makefile.am: New file
	* gdk/win32/Makefile.am: Corresponding changes.

	* gtk/gtk.rc: Remove.
	* gtk/gtk.rc.in: New file.
	* gtk/Makefile.am: Corresponding changes.

	* configure.in: Corresponding changes.
2000-11-14 22:16:24 +00:00
Tor Lillqvist
1aebb62ce8 Remove, useless. A distribution already has a built gtkcompat.h.
2000-11-14  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkcompat.h.win32: Remove, useless. A distribution already
	has a built gtkcompat.h. Developers using CVS code on Win32 can
	hand-edit it from gtkcompat.h.in.

	* gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
	gtkcompat.h from gtkcompat.h.win32.
2000-11-14 21:57:23 +00:00
Havoc Pennington
6da9e17a1e Fix drag-and-drop to default to GDK_ACTION_MOVE if the drag is within a
2000-11-14  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
	to default to GDK_ACTION_MOVE if the drag is within a single
	widget. Defaults to GDK_ACTION_COPY between widgets.
2000-11-14 21:07:11 +00:00
Owen Taylor
2672c1173e removed accidentally committed debugging message 2000-11-14 20:36:03 +00:00
Owen Taylor
c879883dc6 Fix srcdir != builddir
Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>

	* demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir

	* gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk

	* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
	srcdir != builddir

	* modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk

	* configure.in (GTK_VERSION): Up to 1.3.2

	* modules/input/Makefile.am (im_xim_la_SOURCES): Add
	gtkimcontextxim.h

	* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
	missing doc comment.
2000-11-14 16:38:04 +00:00
Owen Taylor
5dd656fa8d Add some new template files to cvs 2000-11-14 16:37:32 +00:00
Owen Taylor
30beffe1d1 cd to srcdir before calling gtkdoc-fixref, distribute index.sgml.
Mon Nov 13 16:58:43 2000  Owen Taylor  <otaylor@redhat.com>

	* {gtk,gdk,gdk-pixbuf}/Makefile.am: cd to srcdir before
	calling gtkdoc-fixref, distribute index.sgml.

	* gtk/gtk-docs.sgml gtk/Makefile.am gtk/gtk-sections.txt
	gtk/gtk.types: Update
2000-11-14 16:36:20 +00:00
Szabolcs Ban
24a6f35b5c Fixed previous UTF-8 crack 2000-11-14 15:50:47 +00:00
Alexander Larsson
ad1906ae5e Use the glib iconv wrappers.
2000-11-14  Alexander Larsson  <alexl@redhat.com>

	* modules/linux-fb/basic.c:
	Use the glib iconv wrappers.
2000-11-14 10:09:21 +00:00
Szabolcs Ban
8bbd2b0f02 Fixed 2000-11-14 09:13:11 +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
Elliot Lee
f15049bd02 Add a couple of missing G_GNUC_CONST's.
Add a couple of missing G_GNUC_CONST's.
2000-11-13 19:47:31 +00:00
Jonathan Blandford
fbd9c79f37 confirm path != NULL ditto
Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
	* gtk/gtktreemodel.c (gtk_tree_path_free): ditto

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
	work better.
2000-11-13 19:23:24 +00:00
Havoc Pennington
15e0004b10 Free the filename of the module file.
2000-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of
	the module file.

	* gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
	dest->language

	* gtk/testtext.c: Test pixels above/below/inside paragraphs
	settings

	* gtk/gtktextview.c: Implement object args and setters/getters for
	all the aspects of the GtkTextAttributes that are not set from
	GtkWidget attributes. This is spacing, justification, margins,
	etc.

	(gtk_text_view_set_arg)
	(gtk_text_view_get_arg): implement get/set for editable, wrap mode
	args
	(gtk_text_view_class_init): Add args for justify, left_margin,
	right_margin, indent, and tabs


	* gtk/gtktextlayout.c (set_para_values): fix to display indent
	attribute properly

	* gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute,
	replace with indent attribute

	* gtk/gtktextlayout.c (set_para_values): multiply indent by
	PANGO_SCALE

	* gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
	rearranging code to do that
	(gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
	i.e. don't subtract the top_margin first, just to keep
	all margin-futzing in one place.

	* gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter

	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
	special case of last line, Pango now handles this itself.
	(gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the
	Y coordinate
	(gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
	(find_display_line_above): wasn't moving the byte index as it
	iterated over lines, so always returned byte 0. Also, port to use
	PangoLayoutIter.
	(find_display_line_below): same problem as
	find_display_line_above. Also, port to use PangoLayoutIter.
2000-11-13 18:49:52 +00:00
Alexander Larsson
be698675c7 Cleanup and reindent of GtkFB.
Added some serial mouse support.
Updates to latest Gtk+/pango
2000-11-13 17:40:23 +00:00
Sebastian Wilhelmi
b664be5ffb GCompareFunc -> GEqualFunc where applicable.
2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
	gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
	gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
	gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
	GEqualFunc where applicable.

	* gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
	pango_font_description_equal as changed in pango.

	* gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.

	* gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.

	* gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.

	* gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.

	* gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.

	* gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.

	* gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
	gtk_gc_drawable_compare -> gtk_gc_drawable_equal.

	* gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
	gtk_rc_styles_compare -> gtk_rc_styles_equal.
2000-11-13 13:15:41 +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
Robert Brady
d8a06dbadc Fix a URL. 2000-11-13 04:18:38 +00:00
Havoc Pennington
7768d1dfb4 Add an "invisible_char" argument to set the char displayed when visibility
2000-11-09  Havoc Pennington  <hp@pobox.com>

* gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char"
argument to set the char displayed when visibility == FALSE
(gtk_entry_create_layout): If !entry->visible, replace
all chars with the "invisible char"

* gtk/testgtk.c: Test the invisible_char deal
2000-11-13 03:29:14 +00:00
Robert Brady
895c094a2c Fall back to "fixed" if we can't get a native font in the right encoding.
Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>

	* gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
	can't get a native font in the right encoding.
2000-11-13 02:20:52 +00:00
Robert Brady
0e0811dab5 Chinese .po have been renamed. 2000-11-13 00:39:46 +00:00
Robert Brady
f403dd89e6 Bad Italian translation team!
When I say

   Translate to default:RTL if you want your widgets
   to be RTL, otherwise translate to default:LTR.

I do _not_ mean

   otherwise translate to predefinito:LTR.

Hmm, perhaps the warning should be a little stronger. But anyway.
2000-11-13 00:32:42 +00:00
Owen Taylor
549e225c8b Fix warning when moving between paragraphs.
Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
	Fix warning when moving between paragraphs.

	* gtk/gtkentry.[ch]: Change move => move_cursor,
	delete => delete_from_cursor, insert => insert_at_cursor
2000-11-13 00:30:05 +00:00
Robert Brady
4835157161 Convert it all to UTF-8. 2000-11-13 00:24:47 +00:00
Robert Brady
87f494aaa1 A vietnamese VIQR-based input method.
Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>

   * modules/input/imviqr.c: A vietnamese VIQR-based input method.

   * modules/input/imthai-broken.c: A Thai input method for use if
   Thai keys are really generating Latin1 keysyms.

   * modules/input/Makefile.am: Build these.
2000-11-12 22:59:39 +00:00
Robert Brady
b17f1a964a g_filename_{to,from}_utf8 now takes an extra parameter.
Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>

	* gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c:
	g_filename_{to,from}_utf8 now takes an extra parameter.

	* gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
	strftime into UTF-8.

	(column_from_x, gtk_calendar_paint_day_names): Support RTL
	calendars.

	(gtk_calendar_paint_day_names): Draw day names in the right
	place.
2000-11-12 22:15:43 +00:00
Owen Taylor
2cb2d33b20 Fix problem with using result of g_get_charset() backwards - pointed out
Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
	problem with using result of g_get_charset() backwards -
	pointed out by Mikael Hermansson <mikeh@bahnhof.se>.

	* gtk/gtkwindow.c (gtk_window_compute_hints): Support
	negative min_width/height and max_width/height to
	mean "requisition"; this allows setting a window
	to be user-resizable in only one direction easily.

	* gtk/testgtk.c (create_main_window): Remove hard-coded
	usize - set a default size in the vertical direction.
2000-11-12 19:16:11 +00:00
Owen Taylor
114d0b6b25 Add some missing casts. Support 2 and 3 button clicks on the arrows to
Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c: Add some missing casts. Support
	2 and 3 button clicks on the arrows to mean
	"move by pages" and "jump to end". (Like gtkspinbutton)
2000-11-12 18:42:30 +00:00
Hans Breuer
6bda7a895e portability fixes and corrected prototypes for self-contained build 2000-11-12 15:58:18 +00:00
Hans Breuer
aceeae34fb corrected object casts, make it work again on win32 2000-11-12 15:46:55 +00:00
Owen Taylor
8f05462d59 Call gtk_widget_activate for GDK_Return.
Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_key_press): Call
	gtk_widget_activate for GDK_Return.

	* gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
	of preedit cursor position.
2000-11-12 04:56:51 +00:00
Owen Taylor
dfba226908 Make parent_class static.
Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcellrenderertextpixbuf.c: Make parent_class
	static.

Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
	gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
	Add support for positioning the cursor within the preedit string.

Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c: Check for bindings after passing
	events to im context filter.

Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (add_preedit_attrs): Handle
	empty attribute lists properly.

Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/queryimmodules.c (main): Return non-zero exit
	status if errors were encountered querying any
	modules.

Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
	don't include gtkthemes.h.

	* gtk/testgtk.c gtk/testtext.c: Set environment variables
	to point

	* gtk/Makefile.am: Add new .c and .h files, build
	gtk-query-immodules and use it to create a gtk.immodules
	file for use of test programs.

	* gtk/gtkpreview.c: remove extra blank line.

Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table):
	Add the ability to add extra tables beyond the default
	one, and also the ability to have compose sequences
	that are prefixes of other compose sequences.

	* gtk/gtkimcontextsimple.c: Export a preedit string which
	consists of possible candidates for keystrokes that have
	been entered but not yet committed.

	* gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
	gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()

	* gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems):
	Add a function to add input-method switching menu items
	to a menu.

	* gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
	when switching input methods.

	* gtk/gtkimcontextsimple.[ch]: Change the format of
	the compose table to allow compose tables of different
	lengths / sequence.

Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmodule.[ch]: Support routines for loading
	GtkIMContext implementations dynamically at runtime.

	* gtk/queryimmodules.c: Program to query the available
	input modules and write the results into a file.

	* gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
	extra config options "im_module_file" (cache file for
	input method modules), and "im_module_path" - path
	to look for modules when generating cache file.

	This doesn't scale.

Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the
	generic	code from gtkthemes into a new abstraction
	GtkModule which has the logic for implementing
	a loadable module which implements a number of
	GObject types.

Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkeditable.[ch]: Convert GtkEditable from
	a class into an interface

	* gtk/gtkoldeditable.[ch]: Move the old editable
	implementation into here, so legacy widgets can
	still rely on the implemenation. GtkOldEditable
	exports GtkEditable. Make selection handling
	code use new text conversion functions (and
	handle UTF-8 as a side-effect). Use GtkClipboard
	for CLIPBOARD.

	* gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
	Adopt to match above changes.

	* gtk/gtkentry.[ch]: Implement GtkEditable directly,
	avoid GtkOldEditable implementation. Restructure
        to reduce number of places that modify state directly.
	Move to GtkBindingSet. Display the preedit string.
	Queue recomputation of PangoLayout and scroll position
	to improve effiency of doing complex changes naively.
	Add a menu with cut/copy/paste and input method selection.

Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
	to set preedit string and attributes; display preedit string by
	inserting string and attributes at cursor when creating the
	GtkTextLineDisplay.

	* gtk/gtktextlayout.c: Move all conversions between byte
	positions in PangoLayout and GtkTextIter into new functions
	line_display_iter_to_index/index_to_iter that properly
	handle the preedit string.

	* gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
	it to return const char * (eventually will end up
	as GCONST char *, most likely.)

	* gtk/gtktextview.[ch]: Handle the preedit string, call
	gtk_im_context_reset() as necessary, add a menu to switch
	input methods.

	* gtk/gtktextlayout.[ch]: Remove useless
	gtk_text_layout_get_log_attrs() function.
2000-11-12 03:43:24 +00:00
Owen Taylor
b9d3287313 Rip out support for multiple locales; that simple doesn't work reliably
Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>

	* modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
	out support for multiple locales; that simple doesn't
	work reliably with current Xlib

	* gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
	gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
	Add support for positioning the cursor within the preedit string.

Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>

	* modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
	at XIM input method module.

Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>

	* modules/input/Makefile.am (moduledir): remove
	leftover bin program target.

Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>

	* modules/input/imcyrillic-translit.c: A sample input
	method (based on GtkIMContextSimple with an extra table),
	which demonstrates preedit strings and the module
	system for input modules
2000-11-12 03:40:47 +00:00
Owen Taylor
65ba8a26e4 Make parent_class static.
Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcellrenderertextpixbuf.c: Make parent_class
	static.

Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>

	* modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
	out support for multiple locales; that simple doesn't
	work reliably with current Xlib

	* gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
	gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
	Add support for positioning the cursor within the preedit string.

Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>

	* modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
	at XIM input method module.

	* gtk/gtktextview.c: Check for bindings after passing
	events to im context filter.

Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (add_preedit_attrs): Handle
	empty attribute lists properly.

Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/queryimmodules.c (main): Return non-zero exit
	status if errors were encountered querying any
	modules.

	* modules/input/Makefile.am (moduledir): remove
	leftover bin program target.

	* docs/make-todo: Fix typo in error message.

Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Add modules/input/Makefile

Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
	don't include gtkthemes.h.

	* gtk/testgtk.c gtk/testtext.c: Set environment variables
	to point

	* gtk/Makefile.am: Add new .c and .h files, build
	gtk-query-immodules and use it to create a gtk.immodules
	file for use of test programs.

	* gtk/gtkpreview.c: remove extra blank line.

Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table):
	Add the ability to add extra tables beyond the default
	one, and also the ability to have compose sequences
	that are prefixes of other compose sequences.

	* gtk/gtkimcontextsimple.c: Export a preedit string which
	consists of possible candidates for keystrokes that have
	been entered but not yet committed.

	* gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
	gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()

	* gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems):
	Add a function to add input-method switching menu items
	to a menu.

	* gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
	when switching input methods.

	* gtk/gtkimcontextsimple.[ch]: Change the format of
	the compose table to allow compose tables of different
	lengths / sequence.

Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmodule.[ch]: Support routines for loading
	GtkIMContext implementations dynamically at runtime.

	* modules/input/imcyrillic-translit.c: A sample input
	method (based on GtkIMContextSimple with an extra table),
	which demonstrates preedit strings and the module
	system for input modules

	* gtk/queryimmodules.c: Program to query the available
	input modules and write the results into a file.

	* gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
	extra config options "im_module_file" (cache file for
	input method modules), and "im_module_path" - path
	to look for modules when generating cache file.

	This doesn't scale.

Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the
	generic	code from gtkthemes into a new abstraction
	GtkModule which has the logic for implementing
	a loadable module which implements a number of
	GObject types.

Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkeditable.[ch]: Convert GtkEditable from
	a class into an interface

	* gtk/gtkoldeditable.[ch]: Move the old editable
	implementation into here, so legacy widgets can
	still rely on the implemenation. GtkOldEditable
	exports GtkEditable. Make selection handling
	code use new text conversion functions (and
	handle UTF-8 as a side-effect). Use GtkClipboard
	for CLIPBOARD.

	* gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
	Adopt to match above changes.

	* gtk/gtkentry.[ch]: Implement GtkEditable directly,
	avoid GtkOldEditable implementation. Restructure
        to reduce number of places that modify state directly.
	Move to GtkBindingSet. Display the preedit string.
	Queue recomputation of PangoLayout and scroll position
	to improve effiency of doing complex changes naively.
	Add a menu with cut/copy/paste and input method selection.

Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
	to set preedit string and attributes; display preedit string by
	inserting string and attributes at cursor when creating the
	GtkTextLineDisplay.

	* gtk/gtktextlayout.c: Move all conversions between byte
	positions in PangoLayout and GtkTextIter into new functions
	line_display_iter_to_index/index_to_iter that properly
	handle the preedit string.

	* gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
	it to return const char * (eventually will end up
	as GCONST char *, most likely.)

	* gtk/gtktextview.[ch]: Handle the preedit string, call
	gtk_im_context_reset() as necessary, add a menu to switch
	input methods.

	* gtk/gtktextlayout.[ch]: Remove useless
	gtk_text_layout_get_log_attrs() function.
2000-11-12 03:35:09 +00:00
Tor Lillqvist
22a0c3a5f5 gdk/gdk.def Update.
2000-11-11  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def
	* gtk/gtk.def: Update.

	* gdk/win32/*.c: Add last argument to g_type_register_static()
	calls.

	* gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.

	* gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
	generated by older wheel mouse drivers. Get the correct y
	coordinate from WM_MOUSEWHEEL messages.

	* gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
	gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
	gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
	Debugging functions.

	* gdk/win32/gdkprivate-win32.h: Declare them.

	* gdk/win32/gdkinput-win32.h: Add declaration for
	gdk_input_window_destroy().

	* gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.

	* gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
2000-11-11 18:39:57 +00:00
Tor Lillqvist
4a08e76b2b Use g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
2000-11-11  Tor Lillqvist  <tml@iki.fi>

	* io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
	g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
	mktemp() and open()).

	* io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
2000-11-11 00:34:47 +00:00
Jonathan Blandford
48a1ddbeb1 New function to help handle keeping things in sync.
Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
	function to help handle keeping things in sync.
2000-11-11 00:02:05 +00:00
Robert Brady
8789984576 Module name has changed for gtk20. 2000-11-10 23:19:54 +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
jjranta
8ced8f9d84 Updated Finnish translation 2000-11-09 11:00:05 +00:00
Havoc Pennington
167e741e93 Add visible and visible_set args, don't know where these had gone, I
2000-11-08  Havoc Pennington  <hp@pobox.com>

* gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
visible_set args, don't know where these had gone, I thought they
used to be there

* gtk/testtext.c: Add a menu item to apply invisibility tag;
now we can test the feature and see that it's totally broken.
2000-11-09 04:51:53 +00:00
Havoc Pennington
bbabca88a3 Make DND copy pixbufs and tags when source and target share a tag table.
2000-11-08  Havoc Pennington  <hp@pobox.com>

        Make DND copy pixbufs and tags when source and target share a
	tag table.

	* gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
	in-process GTK_TEXT_BUFFER_CONTENTS target
	(gtk_text_view_drag_data_received): Paste from
	GTK_TEXT_BUFFER_CONTENTS if we receive it.
2000-11-09 04:03:19 +00:00
Alexander Larsson
814957b46e Add note about GtkMenuPositionFunc API changes.
2000-11-08  Alexander Larsson  <alexl@redhat.com>

	* docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
	API changes.

	* gtk/gtkmenu.c: Add support for scrolling menus.
	Remove gtk_menu_append/prepend/insert, these have been moved to
	gtkcompat.h as #defines.

	* gtk/gtkcompat.h.in:
	Add compatibility #defines for gtk_menu_append/prepend/insert

	* gtk/gtkmenu.h: Add data needed for scrolling menus.
	GtkMenuPositionFunc gets an extra argument push_in.
	gtk_menu_append/prepend/insert removed.

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
	positioning behaviour to fit to scrolling menus.

	* gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
	into menuitem->submeny. That is wrong, and broke torn
	off submenus of torn off menus, since they were unrealized
	when the first menu was unrealized.

	* gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
	gtk_menu_shell_select_item() since these need to be overridden in
	GtkMenu.

	* gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
	positioning behaviour to fit to scrolling menus.
	(gtk_option_menu_key_press, gtk_option_menu_button_press): Select
	the current item so that it is prelighted when the menu pops up.
	This is a workaround to the fact that the menu doesn't get the
	initial enter event (due to grabs).

	* gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
	s/gtk_menu_append/gtk_menu_shell_append/

	* gtk/gtknotebook.c:
	s/gtk_menu_insert/gtk_menu_shell_insert/

	* gtk/testgtk.c (create_menu, create_menus):
	Create the first menu with 50 items so that menu scrolling
	can be tested.


	Patch from Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
	system to handle size requests.  First, we ask what the size of
	the toggle is.  Then, when allocating the size, we allocate the
	toggle_size first.  This way we can have multiple menu-item
	classes w/o needing a seperate class for each.

	* gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
	* gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.

	* gtk/gtkcheckmenuitem.c
	(gtk_check_menu_item_toggle_size_request): New function to handle
	the toggle size-request.
2000-11-08 17:34:52 +00:00
Szabolcs Ban
b440118aa4 Updated Hungarian translation 2000-11-08 10:21:10 +00:00
Havoc Pennington
d3c9910ad2 Half-ass somewhat fix this function, so that scrolling to the insertion
2000-11-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
	Half-ass somewhat fix this function, so that scrolling to the
	insertion point works. Pango hacking is in the future to really
	fix it.

	* gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
	length of data, no longer used.

	* gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
	method contents in here, get rid of destroy method
	(gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
	that were backward. Remove debug spew.
	(cut_or_copy): Make the clipboard work with insert_range to
	preserve tags and pixbufs, not just the primary selection.
2000-11-07 23:05:19 +00:00
Havoc Pennington
f1de9df051 rename to gtk_text_mark_get_visible
2000-11-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextmark.c (gtk_text_mark_is_visible): rename
	to gtk_text_mark_get_visible

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
	bug that was generating an invalid iterator

	* gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
	ensure_char_offsets() in front of code placing the iter in an
	invalid state.

	* gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
	make override_location arg const
	(paste): Replace the selection if we paste into the
	current selection

	* gtk/gtkselection.h: Remove "GtkSelectioData"
	(struct _GtkSelectionData): move the definition here.

	* gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
	Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies

	* gtk/gtktextiter.c (gtk_text_iter_get_tags): New function

	* gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
	(gtk_text_buffer_insert_range_interactive): implement
	(gtk_text_buffer_get_tags): Remove, replaced by
	gtk_text_iter_get_tags()

	* gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
	limit parameter, to avoid infinite linear scan.
	(gtk_text_iter_backward_search): Add search limit
	(gtk_text_iter_forward_find_char): Add search limit
	(gtk_text_iter_backward_find_char): Add search limit
2000-11-07 21:01:02 +00:00
Alexander Larsson
163dc54dea Forgot to remove stray g_print() 2000-11-07 14:26:31 +00:00
Alexander Larsson
224f6ec534 use g_object_new() instead of g_type_create_instance() which is a private
2000-11-07  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
	gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
	gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
	gdk/linux-fb/gdkwindow-fb.c:
	use g_object_new() instead of g_type_create_instance() which
	is a private function for fundamental type implementations.

	* gdk/linux-fb/gdkinput-ps2.c:
	Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
	instead just store the current modifier state. Add a (somewhat broken)
	keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
	Rename exported function gdk_input_ps2_get_mouseinfo to
	gdk_input_get_mouseinfo.

	* gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
	gdk/linux-fb/gdkwindow-fb.c:
	gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
2000-11-07 14:18:47 +00:00
Havoc Pennington
69f42512fa Derive from GtkDialog, and use stock buttons. Should be 100% source
2000-11-02  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
	use stock buttons. Should be 100% source compatible, appropriate
	filesel fields now point to dialog->vbox and dialog->action_area.
	On the bizarre side, dialog->action_area and filesel->action_area
	are not the same widget.
	(gtk_file_selection_init): Put some padding around the selection
	entry, so it isn't touching the GtkDialog separator.

	* gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog,
	use stock buttons, etc. Should also be source compatible.
	Set the dialog default title in _init not _new().

	* gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init):
	Use stock buttons; don't put a button box inside the existing
	dialog button box. Don't bother with push/pop colormap anymore.

	* gtk/gtkdialog.h (GtkResponseType): Add a bunch of more
	specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
	for message dialog, and necessary for the font selection and color
	selection with help and apply buttons.

	* gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer
	to the created button widget. Set GTK_CAN_DEFAULT on the button.
	(gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
	between buttons, put less padding around the action area.
	(gtk_dialog_run): Exit on unmap rather than on destroy.
	This will also exit the loop if the widget is hidden.
	(gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
	instead of GTK_RESPONSE_NONE; since we're already adding a bunch
	of GTK_RESPONSE_* stuff, this seems cleaner, and lets you
	special-case delete event.

	* gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
	formatting
2000-11-06 16:44:01 +00:00
Havoc Pennington
8aef169f86 Forgot to cvs add gtkiconfactory.sgml, gtkstock.sgml 2000-11-05 16:09:41 +00:00
Havoc Pennington
3f17a11137 documented some of the object args
2000-11-05  Havoc Pennington  <hp@pobox.com>

* gtk/tmpl/gtktexttag.sgml: documented some of the object args

* gtk/text_widget.sgml: fixups
2000-11-05 16:09:04 +00:00
Tim Janik
ab6b184e9d provide a toggle button to temporarily disable position recording in the
Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c (uposition_stop_configure): provide a toggle
        button to temporarily disable position recording in the
        "saved position" test.

Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkthemes.c: added compat code that temporarily implements
        GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
        going to be revamped by owen's upcoming GtkModule patches, but
        untill then people want gtk to build, right? ;)
2000-11-05 05:08:05 +00:00
Kenneth Christiansen
acf4b21ec2 Translations from Keld
ggv/po/da.po gnumeric/po/da.po gtk+/po/da.po
2000-11-04 17:32:05 +00:00
Havoc Pennington
5f91b6fca6 Added a bunch of stuff from unused
2000-11-04  Havoc Pennington  <hp@pobox.com>

* gtk/gtk-sections.txt: Added a bunch of stuff from unused


2000-11-04  Havoc Pennington  <hp@pobox.com>

* gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
list

* docs/Changes-2.0.txt: Add note about
gtk_container_get_toplevels()

* gtk/gtktextview.h: formatting

* gtk/gtktextview.c: don't start descriptions with "Returns",
confuses gtk-doc
2000-11-04 16:31:37 +00:00
Owen Taylor
ae9dbe51d2 When doing sanity checking on ACLOCAL_FLAGS, look for glib-2.0.m4 not
Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>

	* autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
	look for glib-2.0.m4 not glib.m4. (Ali Abdin)
2000-11-04 15:14:34 +00:00
Havoc Pennington
6c9d8adc49 Docs (gtk_text_tag_table_size): return a signed int
2000-11-03  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttagtable.c: Docs
	(gtk_text_tag_table_size): return a signed int

	* gtk/gtktexttag.c: s/tkxt/text/g; write documentation
	(gtk_text_tag_event): make the event_object a GObject

	* gtk/gtktextview.c: Write API docs for all functions.

	* gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
	for gtk_text_view_get_window_type() called on one of the private
	windows.

	* gtk/gtktextview.c: Instead of accessing text_view->buffer
	directly, call get_buffer() which demand-creates a default
	buffer. So gtk_text_view_new() can be used to create a view with a
	default buffer in it, if you just want an empty text box users can
	put data in. Useful for GUI builders also.
2000-11-03 23:31:06 +00:00
Pablo Saratxaga
42c519623e fixed big5 handling bug 2000-11-03 22:52:54 +00:00
Havoc Pennington
ca83d0a3dc Get widgets working on the btree/buffer side. Display of them still
2000-11-03  Havoc Pennington  <hp@redhat.com>

        Get widgets working on the btree/buffer side. Display of them
	still doesn't work.

	* gtk/gtktextview.c: start implementing child widget stuff

	* gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function

	* gtk/gtktextlayout.c: handle embedded widgets

	* gtk/gtktextdisplay.c: handle embedded widgets

	* gtk/gtktextchild.c: Implement all the child anchor goo

	* gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
	function

	* gtk/gtktextbtree.c: Add child anchor table to the btree struct
	(insert_pixbuf_or_widget_segment): abstract out common portions of
	creating a child anchor or a pixbuf segment.
	(gtk_text_btree_create_child_anchor): new function
	(gtk_text_btree_unregister_child_anchor): new function

	* gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
	allocate_child signal on GtkTextLayout

	* gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
	values
	(gtk_text_iter_get_child_anchor): new function

	* gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
	default handler for the changed signal, which calls
	gtk_text_buffer_set_modified(), instead of just always emitting
	changed then calling set_modified() manually. I guess this is
	maybe more flexible. It seems logical.
2000-11-03 20:40:57 +00:00
Tim Janik
b506b461cb _g_signal_handlers_destroy() is prefixed with '_' now.
Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
        now.

        * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
2000-11-03 08:18:20 +00:00
Owen Taylor
78ae775ee8 Fix a bunch of functions that should have been marked static.
Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
	been marked static.
2000-11-02 19:15:34 +00:00
Havoc Pennington
0ee86faa3c had a test backward
2000-11-02  Havoc Pennington  <hp@redhat.com>

	* gtk/testgtk.c (create_labels): had a test backward

	* gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
	fields, so the dest GC ends up with the correct clip origin,
	etc. Fixes a bug where colored labels didn't redraw
	properly.
2000-11-02 17:18:53 +00:00
Alexander Larsson
214c61d575 Add last argument to t_type_register_static call.
2000-11-02  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
	gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
	gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
	Add last argument to t_type_register_static call.

	* gdk/linux-fb/gdkdrawable-fb2.c:
	Add last argument to t_type_register_static call.
	export the get_image drawable virtual function.

	* gdk/linux-fb/gdkimage-fb.c:
	Add last argument to t_type_register_static call.
	rename gtk_image_get to _gdk_fb_get_image and
	export it for use by gdkdrawable-fb2.

	* gdk/linux-fb/gdkprivate-fb.h:
	export _gdk_fb_get_image.

	* gdk/linux-fb/gdkselection-fb.c:
	Add new api call stubs.

	* gtk/Makefile.am:
	Missing ( in linux-fb part.

	* modules/linux-fb/Makefile.am:
	Must link with gdk_pixbuf or get unresolved symbol.
2000-11-02 15:38:04 +00:00
Havoc Pennington
820e79a467 Use GTK_TYPE_TEXT_ITER and BOXED marshallers
2000-11-01  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use
GTK_TYPE_TEXT_ITER and BOXED marshallers

* gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto

* gtk/gtktexttag.c (gtk_text_tag_class_init): ditto

* gtk/gtk-boxed.defs: add GtkTextIter

* gtk/gtkmarshal.list: Add marshallers for text widget that
properly use OBJECT and BOXED
2000-11-02 02:38:22 +00:00
Havoc Pennington
e667f04912 Test set_markup_with_accel()
2000-11-01  Havoc Pennington  <hp@redhat.com>

	* gtk/testgtk.c (create_labels): Test set_markup_with_accel()

	* gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
	before returning it.
2000-11-01 23:56:18 +00:00
Havoc Pennington
fcaa719b7d Clip the rectangle to be rendered to the drawable, since
2000-11-01  Havoc Pennington  <hp@redhat.com>

	* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
	Clip the rectangle to be rendered to the drawable, since
	get_from_drawable() requires a region within the drawable
2000-11-01 16:34:23 +00:00
Havoc Pennington
1576774276 Um, don't randomly subtract 4 from coordinates.
2000-11-01  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
	from coordinates.
2000-11-01 16:24:21 +00:00
Havoc Pennington
b90d773c28 Check in these docs, I seem to have written them a while ago then
2000-11-01  Havoc Pennington  <hp@redhat.com>

	* gtk/tmpl/gtkmessagedialog.sgml: Check in these docs, I seem to
	have written them a while ago then forgotten about them.
2000-11-01 16:01:17 +00:00
Owen Taylor
b2e180cea0 Only ref the window if it isn't NULL.
Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c (gdk_event_copy): Only ref the window if
	it isn't NULL.
2000-11-01 15:55:48 +00:00
Havoc Pennington
fe9f9d03f4 New function to create a pixbuf pointing to a subregion of another pixbuf.
2000-11-01  Havoc Pennington  <hp@pobox.com>

* gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
a pixbuf pointing to a subregion of another pixbuf.

2000-11-01  Havoc Pennington  <hp@pobox.com>

* gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
on a label
(gtk_label_finalize): unref the attr list if any.

* gtk/testgtk.c (create_get_image): close test on second click
(make_message_dialog): close dialog if it exists

* gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute

* gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
gdk-pixbuf

* gtk/gtklabel.c (gtk_label_set_markup): new function to set label
from Pango markup format
(gtk_label_set_markup_with_accel): ditto but with accelerator
parsing

* gtk/gtkimage.c (gtk_image_expose): reformatting.

* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
reflect current state of GDK - use gdk_drawable_get_colormap, etc.
Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to
call gdk_window_get_origin().

* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
implement GDK_PIXBUF_ALPHA_FULL
2000-11-01 07:07:46 +00:00
Tim Janik
da5fdc1360 make use of g_signal_handlers_block_matched,
Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
        g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
        g_signal_handlers_disconnect_matched to block/unblock and disconnect
        multiple handlers respectively, instead of only treating the
        first handler found (bug reported by owen).
2000-11-01 03:03:52 +00:00
Jonathan Blandford
c42cee3e7f New function.
Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.

	* gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.

	* gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
	gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
	gtk/gtktreeviewcolumn.h: Fixed inline docs.

	* docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
	widget.  Needs writing someday.

	* docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
	the docs.
2000-10-30 23:21:38 +00:00
Robert Brady
72284e347d s/utf-8/UTF-8/ 2000-10-30 22:43:49 +00:00
Valek Frob
242b4755be Updated russian translation. 2000-10-30 21:20:30 +00:00
Havoc Pennington
94110facb2 Rename delete_at_cursor delete_from_cursor, and move to move_cursor.
2000-10-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.h, gtk/gtktextview.c:
	Rename delete_at_cursor delete_from_cursor, and
	move to move_cursor.
2000-10-30 17:14:55 +00:00
Havoc Pennington
5190c7397c Massive reindentation and reformatting. Arg alignment and comments still
2000-10-30  Havoc Pennington  <hp@redhat.com>

	* gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
	gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
	gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
	gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
	gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
	gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
	gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
	gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
	gtktexttypes.h, gtktextview.c, gtktextview.h:

	Massive reindentation and reformatting. Arg alignment and comments
	still need fixing in various places.
2000-10-30 17:03:00 +00:00
Havoc Pennington
ad8cdea4e8 Change run action signals to be named insert_at_cursor and
2000-10-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
	to be named insert_at_cursor and delete_at_cursor so C++ can
	handle them.
2000-10-30 15:41:57 +00:00
Chyla Zbigniew
d556aaa210 Updated Polish translation 2000-10-30 14:15:45 +00:00
Jorge Godoy
5d295bc47a Updating some pt_BR translations. (Update-Gnome.sh script)
any problem ricardo@conectiva.com.br please
2000-10-30 13:07:36 +00:00
Owen Taylor
17e7160c27 fix stray entity 2000-10-29 08:44:16 +00:00
Owen Taylor
0747204ba3 Minor tweaks to get things to work cleanly 2000-10-29 08:42:02 +00:00
Owen Taylor
9b1682bddc Updates to new gtk-doc, gsignal, causing quite a bit of diffs but little
Sun Oct 29 02:59:50 2000  Owen Taylor  <otaylor@redhat.com>

	* **: Updates to new gtk-doc, gsignal, causing quite
	a bit of diffs but little real changes.
2000-10-29 08:03:34 +00:00
Owen Taylor
77556b694f Another test commit TODO.xml 2000-10-29 02:44:07 +00:00
Owen Taylor
fcab748e7f Another test commit TODO.xml 2000-10-29 02:43:24 +00:00
Owen Taylor
10813a7d37 Another test commit TODO.xml 2000-10-29 02:38:38 +00:00
Owen Taylor
e8a6c2271f update, mostly to test rebuild scripts 2000-10-29 02:35:22 +00:00
Tor Lillqvist
d8dd345efa Make sure not to get a double directory separator in case the home
2000-10-28  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
	to get a double directory separator in case the home directory
	ends with one. This would cause trouble especially on Windows,
	where the path will be confused with the syntax for an an UNC
	(network share) path \\server\share\path.
	(gtk_rc_add_initial_default_files): Ditto.
2000-10-28 17:33:07 +00:00
Tor Lillqvist
f2d6705f18 Add en@IPA and ia.
2000-10-28  Tor Lillqvist  <tml@iki.fi>

	* makefile.mingw: Add en@IPA and ia.
2000-10-28 17:32:26 +00:00
Robert Brady
774de16743 And fix the marshaller for GtkTextView::delete. 2000-10-28 02:27:44 +00:00
Robert Brady
11f59345e4 add new marshaller for GtkTextView.
Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>

	* gtk/gtkmarshal.list: add new marshaller for GtkTextView.

	* gtk/gtktextview.c: Use correct marshaller.
2000-10-28 01:39:45 +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
Tor Lillqvist
2bf87de4cb Actually use glib-genmarshal. 2000-10-27 21:39:26 +00:00
Tor Lillqvist
3173b2d7a4 gtk/gtk.def Adjust to Tim's changes. Use glib-genmarshal etc.
2000-10-28  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtk.def
	* gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
	glib-genmarshal etc.
2000-10-27 21:38:00 +00:00
Tor Lillqvist
9c20673e8f Adjust to Tim's changes. Use glib-genmarshal etc.
2000-10-28  Tor Lillqvist  <tml@iki.fi>

	* gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
	glib-genmarshal etc.
2000-10-27 21:12:58 +00:00
Tim Janik
512e493c66 added dependancies for testtextbuffer which broke parallel builds.
Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: added dependancies for testtextbuffer which broke
        parallel builds.
2000-10-27 18:14:57 +00:00
Tim Janik
1f0b90b796 adapt to GSignal signature changes.
Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
2000-10-27 16:48:59 +00:00
Robert Brady
666b55720b Added translations for British, English (Phonetic), and Interlingua. 2000-10-27 01:26:06 +00:00
Havoc Pennington
3605930213 fix constness warning
2000-10-26  Havoc Pennington  <hp@redhat.com>

        * gtk/gtktextiter.c (my_strrstr): fix constness warning

        Fixed output of:
        nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_

        * gtk/gtktextsegment.c (char_segment_new): rename
        (_char_segment_new_from_two_strings): rename
        (_toggle_segment_new): rename

        * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
        (make_clipboard_widget): make it static
        (text_get_func): static
        (text_clear_func): static

        * gtk/gtkcolorsel.c (adjustment_changed): make this function
        static
        (hex_changed): make it static
        (hsv_changed): make it static
        (opacity_entry_changed): make it static

        * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
        (toggle_segment_check_func): rename with _gtk

        * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
        (_widget_segment_new): rename
        (_widget_segment_add): rename
        (_widget_segment_remove): rename
        (_widget_segment_ref): rename
        (_widget_segment_unref): rename

        * gtk/gtktextmark.c (_mark_segment_new): Rename
        _gtk_mark_segment_new
2000-10-26 23:50:57 +00:00
Havoc Pennington
a291b0be4c add new marshallers used by the text widget
2000-10-26  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkmarshal.list: add new marshallers used by the text widget

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
	types

	* gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
	marshaller types

	* gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
	gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
	license on these files.

	* gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
	work.

	* gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to
	runtime random number different for each tree, instead of
	a constant I made up.
2000-10-26 23:05:43 +00:00
Jorge Godoy
e279178d1a updating some pt_BR <ricardo@conectiva.com.br>
any problem, just tell me, and i reverse the commit.
2000-10-26 20:08:17 +00:00
Chih-Wei Huang
86b646a894 zh_TW po update 2000-10-26 08:38:48 +00:00
Tim Janik
6700994c24 buncha cleanups, kludged build sources dependencies with a Makefile:
Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: buncha cleanups, kludged build sources
        dependencies with a Makefile: oldest-source-stamp dependancy
        for the moment. automake is really fighting us here, with
        intentionally not allowing user-defined rules or dependancies
        prior to it's -include $(DEP_FILES) statement. sucks rocks!

        * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
        to public headers. tehy have a comment stating that they are
        "semi-public" aren't included by gtk.h and if enums popup there,
        they can be /*< skip >*/-ed.

        * gtk/gtktextlayout.h:
        * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
        added LGPL... <SIGH>
2000-10-26 05:50:36 +00:00
Tim Janik
f12ddea328 add this, it'S reall what it says 2000-10-26 01:18:15 +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
Tim Janik
aaee910027 invoke maketypes.awk with LC_ALL=C to avoid localization misbehaviour.
Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
        localization misbehaviour.

        * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
        a useless type without copy/free.

        * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
        of GTK_TYPE_CTREE_NODE.
2000-10-26 00:11:09 +00:00
Tim Janik
49631b2900 use g_value_set_static_{string|boxed} where applicable.
Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c:
        (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
        applicable.

        * gtk/gtk-boxed.defs (GtkSelectionData): specify
        gtk_selection_data_copy and gtk_selection_data_free
        do GtkSelectionData work as params in signals.
2000-10-25 23:38:46 +00:00
Tim Janik
d69496c060 urg, removed implementation of gtk_marshal_VOID__INT_INT_INT_INT. if
Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>

        * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
        implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
        couldn't they at least give it a non-standard name?

        * gtk/gtktextlayout.c: arg! yet another implementation of
        gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?

        * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
        gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
        home. now i know this _is_ a conspiracy.

        * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
        ::state-changed.

        * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
        (gtk_accel_group_create_add): marshaller signature fixups.

        * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
        pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.

        * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
        anymore.

Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>

        * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
        due to the signal system changes, it wouldn't build currently. to
        be fixed soon.

        * docs/Changes-2.0.txt: GtkSignal/GSignal updates.

        * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
        so it needs gtk_marshal_VOID__ENUM() instead of
        gtk_marshal_NONE__UINT().

        * gdk/gdk*.c: adapted type registration functions.

        * gtk/gtkbindings.c:
        * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
        gone.

        * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.

        * gtk/gtkobject.c:
        (gtk_object_destroy):
        (gtk_object_shutdown): fixed recursion guards. basically we have to
        catch the case where any of GObject.shutdown() or gtk_object_destroy()
        is called during ::destroy, and avoid recursion there.

        * gtk/gtktypeutils.c:
        * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
        boxed_copy/boxed_free. this needs a more general solution based on a
        publically installed code-generator utility.

        * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
        glib's gobject has support for that now.
        define GtkSignalMarshaller in terms of GSignalCMarshaller.


Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.[hc]:
        * gtk/gtkmarshal.[hc]:
        * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
        compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
        removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
        care of that.

        * *.c: marshaller name fixups.

        * gtk/gtkmarshal.list: added a comment briefing the format.

Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
        compatibility macros here now. more specifically, most of
        the API is preserved (yes, _most_, nonwithstanding the
        following exceptions listed, the API is stil lHUGE ;)
        things that got removed completely:
        GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
        gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
        gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
        gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
        gtk_signal_remove_emission_hook().
        non-functional functions variants:
        gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
        the GtkCallbackMarshal argument to gtk_signal_connect_full() is
        not supported anymore.
        (gtk_signal_compat_matched): new internal function to aid
        implementation of the compatibility macros, it  provides
        functionality to block/unblock/disconnect handlers based
        on func/data.

        * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,

        * *.c: adaptions to new type registration API signatures.


Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
2000-10-25 22:34:14 +00:00
Robert Brady
7ae3922d2c If window == NULL, assume the root window. (restoring the behaviour that
2000-10-25  Robert Brady  <robert@suse.co.uk>

	* gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
	gdk_property_delete): If window == NULL, assume the root window.
	(restoring the behaviour that was in 1.2).
--------------------------------------------------------------------
2000-10-25 21:05:37 +00:00
Robert Brady
aa9f75179d ChangeLog entry. 2000-10-25 19:35:38 +00:00
Robert Brady
f537723753 Allow creation of new files when saving.
2000-10-25  Robert Brady  <robert@suse.co.uk>

	* gtk/testtext.c (save_buffer): Allow creation of new files when
	saving.

	(fill_file_buffer): Don't die if a UTF-8 sequence is split across
	calls to read().
2000-10-25 19:14:19 +00:00
Tor Lillqvist
fb2127452a Include x11/gdkx.h only when building for X11.
2000-10-25  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.

	* gdk/win32/gdkdrawable-win32.c
	* gdk/win32/gdkimage-win32.c
	* gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
	X11 backend.

	* gdk/win32/gdkcc-win32.c
	* gdk/win32/gdkcolor-win32.c
	* gdk/win32/gdkfont-win32.c
	* gdk/win32/gdkinput-win32.c
	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
2000-10-25 18:07:12 +00:00
Havoc Pennington
2fab0eb1fa make it a static function
2000-10-24  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
	it a static function

	* gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
	redraw text when a tag is applied to it.

	* gtk/gtktexttag.c (gtk_text_tag_affects_size)
	(gtk_text_tag_affects_nonsize_appearance): private functions to
	see if a tag requires various kinds of redraw/layout to be queued
	up.

	* gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock

	* gtk/testtext.c (fill_example_buffer): Put the cursor
	at the start of the buffer, so search works by default

	* gtk/gtktextiter.c (lines_match): init match_start always

	* gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
	function, get iter at a line + a byte index

	* gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
	to set byte position within a line
	(gtk_text_iter_check): remove leftover G_BREAKPOINT thing
2000-10-24 22:44:14 +00:00
Jorge Godoy
873b316f23 updating pt_BR translations 2000-10-24 19:17:16 +00:00
Jorge Godoy
2b81e3587d updating translations 2000-10-24 18:41:20 +00:00
Jorge Godoy
bb3d633887 ng some potfile translations and adding some translations...
ng some potfile translations and adding some translations...

 <!--
2000-10-24 18:10:02 +00:00
Christopher R. Gabriel
83316aa4d6 Updated Italian translation
2000-10-24  Christopher R. Gabriel  <cgabriel@softwarelibero.org>

        * it.po: Updated Italian translation
2000-10-24 13:58:13 +00:00
Havoc Pennington
86b5c82a97 Re-enable the "find" dialog
2000-10-23  Havoc Pennington  <hp@redhat.com>

        * gtk/testtext.c: Re-enable the "find" dialog

	* gtk/testgtk.c: Add test for gdk_drawable_get_image

	* gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
	the arguments to gdk_draw_drawable were in the wrong order
	(gdk_window_paint_init_bg): This function was ignoring the
	init_region, instead of clipping to it, so the entire backing
	pixmap was cleared on every begin_paint()
	(gdk_window_begin_paint_region): Hmm, the same list-walking bug
	was in here again, the loop kept using the same GtkWindowPaint
	over and over.
	(gdk_window_begin_paint_region): Fix a bug where we had two
	x_offset instead of x_offset and y_offset

	* gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
	before we get the image.
	(gdk_draw_drawable): get the composite before we draw the drawable.
	(gdk_drawable_real_get_composite_drawable): default
	get_composite_drawable implementation that returns the drawable
	itself

	* gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
	get_composite_drawable virtual function

	* gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
	list-walking bug

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
	make this work if the source drawable is a GdkDrawableImplX11
	instead of a public drawable type. This is really broken; the
	problem is that GdkDrawable needs a virtual method get_xid(), but
	of course that doesn't work in practice. Enter RTTI.

	Also, improve mismatched depth message.

	* gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
	GdkPixmap

	* gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
	install _gdk_x11_get_image as our implementation of get_image

	* gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
	_gdk_x11_get_image and export for use in gdkdrawable-x11.c

	* gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
	gdk_drawable_get_image

	* gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image

	* gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
	get_image

	* gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
	trailing semicolon after for loop
2000-10-24 00:15:14 +00:00
Owen Taylor
ce821b23f5 *** empty log message *** 2000-10-23 16:15:26 +00:00
Owen Taylor
3e7225f189 Massive .cvsignore updates 2000-10-23 14:43:16 +00:00
Owen Taylor
5eba1098ee Fix typo
Wed Oct 18 11:01:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gdk-pixbuf/Makefile.am: Fix typo
2000-10-23 14:35:35 +00:00
Kenneth Christiansen
6de35e8589 Translations from Keld
bonobo/po/da.po gdict/po/da.po gernel/po/da.po gnopo/po/da.po
gtk+/po/da.po pan/po/da.po
2000-10-23 01:29:10 +00:00
Tor Lillqvist
fdd1f5ee86 Typo. 2000-10-22 17:19:51 +00:00
Tor Lillqvist
f49a2a0055 gdk/win32/gdkgc-win32.c Remove gcc -Wall warnings.
2000-10-22  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c
	* gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.

	Patches by Hans Breuer:

	* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
	SetBkMode() and SetTextAlign() before calling
	pango_win32_render().

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
	Set hcliprgn to NULL after destroying it.
	(gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.

	* gdk/win32/gdkgeometry-win32.c
	(_gdk_windowing_window_queue_antiexpose): More effective
	implementation.

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
	depth as default, not the visual's.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
	against empty title.

	* gdk/win32/gdkprivate-win32.h: Define a helper macro,
	IMAGE_PRIVATE_DATA.

	* gdk/win32/gdkimage-win32.c (gdk_image_get_type): Use it.
2000-10-22 17:16:42 +00:00
Tor Lillqvist
5fd61965e4 gtk/makefile.mingw.in Updates.
2000-10-22  Tor Lillqvist  <tml@iki.fi>

	* gtk/makefile.mingw.in
	* gtk/gtk.def: Updates.

	* gtk/testgtk.c: sleep() is called _sleep in MS's C
	library.

	* gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().

	* gtk/makefile.msc: Remove

	* gtk/makefile.msc.in: New file, like makefile.mingw.in.

	* gtk/Makefile.am: Add it.

	* configure.in: Generate it.

	* gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
	* gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
	something even if not implemented, to satisfy picky MSVC.
2000-10-22 16:01:20 +00:00
Robert Brady
2f9aee8d7f Check for bind_textdomain_codeset
2000-10-22  Robert Brady  <robert@suse.co.uk>

	* configure.in: Check for bind_textdomain_codeset

	* gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset
	present, make use of it.

	Add a translatable string "default:LTR" which, if translated
	to "default:RTL", will cause the default direction to be
	Right-to-Left.

	* gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget
	direction if marked as flippable.

	* gtk/gtkhscale.c: Mark widget as flippable.
2000-10-22 13:00:13 +00:00
Kenneth Christiansen
b687405d45 Translations from Keld
bug-buddy/po/da.po gdm2/po/da.po gimp/po/da.po
gnome-applets/po/da.po gnorpm/po/da.po gtk+/po/da.po
gtkhtml/po/da.po mc/po/da.po oaf/po/da.po
2000-10-21 00:43:47 +00:00
Havoc Pennington
1c9f0c0bac create some stock buttons with the default accel group (create_image):
2000-10-04  Havoc Pennington  <hp@redhat.com>

	* gtk/testgtk.c (create_buttons): create some stock buttons
	with the default accel group
	(create_image): test some new GtkImage features
	(make_message_dialog): test GtkMessageDialog
	(create_modal_window): fix someone's bizzarro indentation

        * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement
	GTK_WIN_POS_CENTER_ON_PARENT.
	Add "destroy with parent" setting, which means the window goes
	away with its transient parent.
	(gtk_window_get_default_accel_group): get the default accel group
	for the window.
	(gtk_window_set_destroy_with_parent): set/unset destroy with
	parent flag
	(gtk_window_read_rcfiles): invalidate icon set caches
	after reloading rcfiles

	* gtk/gtkenums.h (GtkWindowPosition): add
	GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog
	on its parent window when the dialog is mapped for the first time.

        * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add
	a simple message dialog class

	* gtk/gtkdialog.c (gtk_dialog_init): Connect delete event
	handler to emit response signal, and maybe later it would
	honor a hide_on_delete flag - though that isn't there yet.
	Set border width on the vbox to 2, so we get some padding.
	Use a button box for the action area.
	(gtk_dialog_key_press): synthesize a delete event if Esc
	is pressed and the GtkWidget key press handler didn't
	handle the escape key.
	(gtk_dialog_new_with_buttons): new function creates a dialog
	with some default buttons in it.
	(gtk_dialog_add_action_widget): add an activatable widget
	as a button in the dialog - you can also add a non-activatable
	widget by accessing the action area directly.
	(gtk_dialog_add_button): add a simple button - stock ID or
	label - to the action area
	(gtk_dialog_response): emit response signal
	(gtk_dialog_run): block waiting for the dialog, return
	the response. Override normal delete_event behavior, so that
	delete_event does nothing inside gtk_dialog_run().

	* gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
	emitted when an action widget is clicked or the dialog gets
	delete_event

	* gtk/gtk.h: add gtkmessagedialog.h

	* gtk/Makefile.am: add gtkmessagedialog.[hc]

2000-10-20  Havoc Pennington  <hp@redhat.com>

	* gtk/gtk-sections.txt: Add dialog docs
2000-10-20 23:14:41 +00:00
Jorge Godoy
779e461e89 updating pt_BR translation 2000-10-19 18:51:05 +00:00
Christian Rose
54eb0bc2e6 Updated Swedish translation. 2000-10-19 12:59:03 +00:00
Havoc Pennington
7a4c689387 Some updates
2000-10-18  Havoc Pennington  <hp@redhat.com>

	* gtk/gtk-sections.txt: Some updates

	* gdk/gdk-sections.txt: remove GdkPixbufAlphaMode

	* gdk-pixbuf/gdk-pixbuf-sections.txt: Add new API, remove
	GdkPixbufClass/GdkAnimationClass since those are private

	* gdk-pixbuf/Makefile.am (IGNORE_HFILES): ignore more headers

2000-10-18  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug
	where any number of empty lines would get skipped

	* gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
	edge.

	* gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
	warning about invalid iterators (explain more thoroughly)
	(gtk_text_iter_in_region): rename gtk_text_iter_in_range

	* gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
	big

	* demos/*.c: Add error handling

	* gtk/gtktextbuffer.c: don't modify const iterators

	* gtk/gdk-pixbuf-loader.c: Add full error handling here

	* gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
	on file load

	* gtk/gtkiconfactory.c: Update to reflect addition of error
	handling to gdk-pixbuf loaders

2000-10-16  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf-io.c (gdk_pixbuf_get_module)
	(gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
	add error reporting here also

	* make-inline-pixbuf.c (main): use GError

	* io-xpm.c: include unistd.h

	* gdk-pixbuf-util.c: include string.h

	* io-*.c: add error reporting

	* gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
	error reporting

	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting

	* gdk-pixbuf-io.h: Add GError** to load_increment and load
	methods

	* gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
	a G_FILE_ERROR if we fail to write or close the file.

	* gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
	G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
	the GError naming rules. Add GError** to load functions.
2000-10-18 18:42:54 +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
Jonathan Blandford
92bbfd05a8 Add my name to the ChangeLog. 2000-10-18 15:13:01 +00:00
Owen Taylor
3f908d035e cvsignore updates 2000-10-18 15:03:23 +00:00
Owen Taylor
a1a44c9904 remove generated files 2000-10-18 15:02:45 +00:00
Owen Taylor
1bb41ea9ed Remove generated gdk-decl.txt file from repository 2000-10-18 14:59:15 +00:00
7
3b42e087a9 Draw the arrows correctly.
2000-10-17    <jrb@redhat.com>

	* gtk/gtktreeview.c: Draw the arrows correctly.

Also, commit a few minor fixes so Havoc can make a model.
2000-10-17 23:06:56 +00:00
7
10e9727a90 Added user docs.
2000-10-17    <jrb@redhat.com>

	* gtk/gtktreemodel.c: Added user docs.

	* gtk/gtk.h: remove gtktreedatalist.h.
2000-10-17 22:21:01 +00:00
7
77d0165892 Get the correct parent when generating my type.
2000-10-17    <jrb@redhat.com>

	* gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
	parent when generating my type.

	* gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
	POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
2000-10-17 18:13:14 +00:00
6
457a5f9335 Move GtkTreeModel from object to interface.
2000-10-16    <jrb@redhat.com>

	* gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
	GtkTreeModel from object to interface.
2000-10-16 23:11:55 +00:00
Havoc Pennington
50ce7224fd #include gtklabel.h, fixing compilation
2000-10-16  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing
	compilation
2000-10-16 17:50:15 +00:00
Jonathan Blandford
4a4e6d6f10 Add API documentation to all public functions.
2000-10-16  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeselection.c: Add API documentation to all public
	functions.
2000-10-16 07:03:54 +00:00
Jonathan Blandford
6c54e65279 Added API documentation to all public functions.
2000-10-16  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeviewcolumn.c: Added API documentation to all public
	functions.
2000-10-16 06:14:53 +00:00
Jonathan Blandford
996cfd01c8 New function proposed by Guy Harris <gharris@flashcom.net>. Also, added
2000-10-15  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
	proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
	docs to all public functions.
2000-10-16 03:18:49 +00:00
Robert Brady
25734b929f s/utf-8/UTF-8 2000-10-15 23:44:47 +00:00
5
e6b9f2910b Fix GtkTreeNode *node ->GtkTreeNode node issue.
2000-10-15    <jrb@redhat.com>

	* gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
	gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
	gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
	gtk/gtktreemodel.h, gtk/gtktreeselection.c,
	gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
	issue.
2000-10-15 17:46:23 +00:00
Tor Lillqvist
3cd1330d6e Remove leftover CVS conflict indicator lines (>>>>>>>).
2000-10-15  Tor Lillqvist  <tml@iki.fi>

	* ChangeLog: Remove leftover CVS conflict indicator lines (>>>>>>>).

	* makefile.mingw: Add rules for fa, he, sp and sr.
2000-10-15 17:17:10 +00:00
Robert Brady
194d5dbd3f Added Persian translation from Roozbeh Pournader <roozbeh@sina.sharif.ac.ir> 2000-10-14 15:57:09 +00:00
Fatih Demir
1c19b4be12 Updated the tr.po for Gtk+ 2000-10-13 19:46:37 +00:00
Jonathan Blandford
e1968817d6 Forgot this. 2000-10-13 00:34:46 +00:00
Jonathan Blandford
829872e948 Added values other then G_TYPE_STRING. Minor commenting updates. Format
2000-10-12  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
	values other then G_TYPE_STRING.
	* gtk/gtktreeselection.c: Minor commenting updates.
	* gtk/gtktreeview.c: Format updates.
2000-10-13 00:34:38 +00:00
Christophe Merlet
c659596e22 Updated French translation. 2000-10-10 12:57:48 +00:00
Tor Lillqvist
658b4b1da8 Update.
2000-10-09  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Update.

	* gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
	lines that had been deleted by mistake (?).

	* gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
	also the case fg==white and bg==black (but still not randomly
	coloured cursors). Thanks to Wolfgang Sourdeau.

	* gdk/win32/*.c: Silence gcc -Wall.

	* gtk/gtk.def: Add missing entry points.

	Fixes by Hans Breuer:

	* gdk/makefile.msc
	* gdk/win32/makefile.msc: Update.

	* gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
	some MSVC thing, presumably), cause breakpoint on failures. Add
	GDK_NOR case. Call g_log_set_always_fatal.

	* gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
	should be pased by reference.

	* gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.

	* gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.

	* gdk/win32/gdkevents-win32.c
	* gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.

	* gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
	implementation object.

	* gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
	not just windows.

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
	Use the wrapper object.
2000-10-09 19:49:42 +00:00
Havoc Pennington
ea708d50f2 forgot to cvs add files from last commit 2000-10-09 17:23:03 +00:00
Havoc Pennington
518f32d97e contrib subdir
2000-10-06  Havoc Pennington  <hp@redhat.com>

	* Makefile.am (SRC_SUBDIRS): contrib subdir

	* gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
	so it can be used in Xlib version

	* demos/testpixbuf.c (update_timeout): error checking from 1.0
	tree

	* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
	change from 1.0 tree that returns first frame of animation
	if the loaded file is an animation.

        * contrib: add new directory to hold stuff that comes with GTK+
	but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)

	* configure.in: add contrib/*

2000-10-06  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf.h: add GdkPixbufAlphaMode

2000-10-06  Havoc Pennington  <hp@redhat.com>

        This entry is a summary of the merged-in changes from 1.0.
	Relevant original ChangeLog entries are spliced in after
	this entry; the files they refer to are from the 1.0
	gdk-pixbuf sources.

	* pixops/pixops.c (pixops_composite_nearest): sync a small fix
	from 1.0

	* io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
	Add progressive loader from 1.0

	* io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
	from 1.0 tree

	* io-pnm.c: new version from 1.0 tree

	* io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
	malloc not g_malloc

	* io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
	g_warning
	(gif_get_next_step): return 0 here, sync from 1.0

	* gdk-pixbuf-util.c: sync email address change for Cody
	Russell

2000-09-11  Jeffrey Stedfast  <fejj@helixcode.com>

	* gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
	last nights code was still "broken". Should now properly handle
	all error conditions gracefully.

2000-09-10  Jeffrey Stedfast  <fejj@helixcode.com>

	* gdk-pixbuf/io-pnm.c: Rewrote.

2000-09-09  Federico Mena Quintero  <federico@helixcode.com>

	* gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
	the correct dest offset.

2000-08-25  Federico Mena Quintero  <federico@helixcode.com>

	* gdk-pixbuf/io-xpm.c: #include <unistd.h>

2000-08-05  Larry Ewing  <lewing@helixcode.com>

	* gdk-pixbuf/io-tiff.c: stop leaking context->tempname.

	* gdk-pixbuf/io-xpm.c: same as above.

2000-07-26  Michael Meeks  <michael@helixcode.com>

	* gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
	g_malloc a malloc.

2000-07-21  Larry Ewing  <lewing@helixcode.com>

	* gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
	xpm at least supports the progressive interface like the one in
	io-tiff.c. This should be reimplemented as an actual progressive
	loader.

2000-07-19  Jonathan Blandford  <jrb@redhat.com>

	* demo/pixbuf-demo.c (update_timeout): changed scaling level to
	make it look better.
	* gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
	meeks to handle errors better.
2000-10-09 17:22:20 +00:00
Christian Rose
25840ef4a5 Updated Swedish translation. 2000-10-08 16:53:55 +00:00
Tor Lillqvist
a79259ee37 gdk_pixbuf.def pixbufloader_jpeg.def Add new entry points.
2000-10-07  Tor Lillqvist  <tml@iki.fi>

	* gdk_pixbuf.def
	* pixbufloader_jpeg.def
	* pixbufloader_png.def: Add new entry points.

	* makefile.mingw.in: Use libintl.
2000-10-06 22:01:45 +00:00
Havoc Pennington
286931edee s/format/type/g to be consistent with gdk_pixbuf_loader_new_with_type().
2000-10-06  Havoc Pennington  <hp@redhat.com>

	* gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
	consistent with gdk_pixbuf_loader_new_with_type().
	Return runtime error if a module is missing.

	* gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
2000-10-06 18:26:23 +00:00
Havoc Pennington
6b9f907270 Pixbuf saving, patch from David Welton.
2000-10-05  Havoc Pennington  <hp@redhat.com>

        Pixbuf saving, patch from David Welton.

	* Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
	(libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h

	* gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf

	* io-png.c (gdk_pixbuf__png_image_save): PNG save routine.

	* io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.

	* gdk-pixbuf-io.c (gdk_pixbuf_save):
	(gdk_pixbuf_savev): Implement pixbuf saving routines

	* gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
	function

	* gdk-pixbuf.h: Add public save routines; add pixbuf error
	types

	* gdk-pixbuf-io.h: Add save function to GdkPixbufModule

2000-10-05  Havoc Pennington  <hp@redhat.com>

        * demos/testpixbuf-save.c: add pixbuf save test

	* demos/Makefile.am: add testpixbuf-save.c
2000-10-06 18:19:18 +00:00
Yukihiro Nakai
a7e20093e9 ja.po: Update Japanese translation. 2000-10-06 06:49:46 +00:00
Jonathan Blandford
45178fc56a Forgot this file 2000-10-06 00:06:39 +00:00
Jonathan Blandford
6b6e6763b7 Replaced with GTK_TREE_SELECTION_OLD to prevent conflict with
2000-10-05  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
	GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
	* gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
	* gtk/gtktreeselection.[ch]: Replaced
	"node_selected"/"node_unselected" signal with "selection_changed"
	signal.
2000-10-06 00:06:00 +00:00
Dan Winship
98c0e90970 Fix comments to not claim that all three of these files are the JPEG image
* io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
	all three of these files are the JPEG image loader. (From
	gdk-pixbuf module.)
2000-10-05 21:40:37 +00:00
4
3ff4a2c081 Checked in initial draft of the new tree widget.
2000-10-04    <jrb@redhat.com>

	* gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
	tree widget.
2000-10-05 01:04:57 +00:00
Jonathan Blandford
76806e9a1e Fix obvious bug in circle drawing.
2000-10-04  Jonathan Blandford  <jrb@redhat.com>

	* gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
	drawing.
2000-10-04 23:16:05 +00:00
0
468689e31a Move list pointer forwards before removing item from list. (Crash reported
Wed Oct  4 15:52:15 2000    <otaylor@redhat.com>

	* gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
	Move list pointer forwards before removing item from
	list. (Crash reported by Salmaso Raffaele)

	* gdk/gdkwindow.h: Remove spurious trailing ,

	* gdk/Makefile.am (LDFLAGS): You can't do interlibrary
	dependencies on uninstalled libraries, sorry folks.
2000-10-04 19:53:53 +00:00
Havoc Pennington
b90b621e2c Fix copyrights
2000-10-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
	gtk/gtkiconfactory.c: Fix copyrights

	* demos/testpixbuf.c: add inline pixbuf test
2000-10-04 19:07:54 +00:00
Owen Taylor
0d15886459 Add gdk_window_iconify.
Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
	Add gdk_window_iconify.

	* gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
	(gdk_window_set_geometry_hints): Add win_gravity
	to geometry structure.

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
	Implement _NET_WM_PING.

	* gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
	Set _NET_WM_PID on the client leader.

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
	Handle UTF-8 better.

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
	UTF-8 better, set _NET_WM_NAME as well. Only set
	icon name if it hasn't previously been explicitely
	set.
2000-10-04 16:51:42 +00:00
Havoc Pennington
502e5a8859 Fix copyrights
2000-10-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
	gtk/gtkiconfactory.c: Fix copyrights

	* demos/testpixbuf.c: add inline pixbuf test
2000-10-04 16:39:44 +00:00
Havoc Pennington
928c069883 clean up trailing whitespace, add extensive tests for tag toggle
2000-10-03  Havoc Pennington  <hp@redhat.com>

	* gtk/testtextbuffer.c: clean up trailing whitespace,
	add extensive tests for tag toggle iteration.

	* gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan
	distance

	* gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
	optimize case where the tag root is on level 1
	(gtk_text_line_previous_could_contain_tag): attempt to implement
	(gtk_text_line_next_could_contain_tag): Abstract out node_compare
	functionality

	* gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
	Implement this, though not very efficiently.

	* gtk/gtktextiterprivate.h: reformat

	* gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
	iterator

	* gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
	this to properly revalidate the iterators.

	* gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
	properly at the end of the line (and therefore on empty lines)

	* gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
	maybe we should return a value...
2000-10-04 14:23:09 +00:00
Tor Lillqvist
69ac9451a6 Guard definition of alloca(). glib.h now handles that.
2000-10-03  Tor Lillqvist  <tml@iki.fi>

	* config.h.win32: Guard definition of alloca(). glib.h now handles
	that.

	* gdk/gdk.def
	* gtk/gtk.def: Add new entry points.

	Changes just to make GTK+ build without errors on Win32. No hope
	of it working in its current state, though...:

	* gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
	some functions from the X11 backend, just to make GTK+ build.

	* gdk/makefile.mingw.in
	* gtk/makefile.mingw.in: Use correct gdk_pixbuf version
	number. Add new object files.

	* gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
	GetMessageTime to get timestamp (where on X11 uses
	gdk_x11_get_server_time()).
2000-10-03 21:00:49 +00:00
Tor Lillqvist
74d7c91731 Add rule for make-inline-pixbuf. Use gdk-pixbuf's version number in the
2000-10-03  Tor Lillqvist  <tml@iki.fi>

	* makefile.mingw.in: Add rule for make-inline-pixbuf. Use
	gdk-pixbuf's version number in the rule for makefile.mingw itself.

	* gdk_pixbuf.def: Add new entry points.
2000-10-03 20:00:14 +00:00
Havoc Pennington
8ebf77d13b text_window_* weren't static and should have been. Start work on child
2000-10-02  Havoc Pennington  <hp@pobox.com>

        * gtk/gtktextview.c: text_window_* weren't static and should have
	        been.
		        Start work on child widgets; not yet complete,
syncing to
        office computer.

	        * gtk/gtktextchild.h: change this to contain a public interface,
		starting work on child interfaces.
		        * gtk/gtktextchildprivate.h: move private interfaces here

			* gtk/Makefile.am: update to reflect gtktextchildprivate.h

			* gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
			gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c,
			gtk/gtktextmark.c: copyright notices

			* gtk/gtktextmarkprivate.h: reformat, and put _ in
front of
        internal functions

	* gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
	internal function

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
	Reformatting
2000-10-02 14:29:24 +00:00
Havoc Pennington
632fda6f0b Handle NULL start/end pointers
2000-09-30  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
NULL start/end pointers

* gtk/gtktextbuffer.c: Write some docs
(gtk_text_buffer_get_selection_bounds): Allow start/end to be
NULL, so you can just check whether there's a selection.

* gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to
cleanup_line or segments_changed ourselves, it gets done
in unlink_segment

* gtk/gtktextmark.h:
s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/

* gtk/gtktextsegment.h: Clean up some indentation and naming mess

* gtk/gtktextmark.c: delete some more old Tk cruft

* gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
mark before removing it, so we can emit MARK_DELETED with a valid
pointer.
(gtk_text_buffer_mark_set): hold ref across signal emission

* gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
whining about attempts to delete special marks

* gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
underscore, since it's internal.

* gtk/gtktextbuffer.h: Remove find_string prototype, this is
now implemented in terms of iterators in gtktextiter.h

* gtk/gtktextbuffer.c (gtk_text_buffer_set_text):
New function, destructively sets contents of buffer. Also
a convenient way to clear the buffer by setting text to ""

* gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
multiline string literal

* gtk/testtext.c (text_changed_callback): Redraw line numbers if
text changes.

* gtk/gtktextiter.c (forward_char): Return FALSE if new location
is not dereferenceable
(gtk_text_iter_forward_lines): fix return value
2000-09-30 17:08:25 +00:00
Martin Baulig
f717bda197 Put the pkg-config scripts back to the correct pkg-config syntax
(the pkg-config that comes with the RedHat 7.0 glib-gtkbeta RPM and
 not the one from pkgconfig.sourceforge.net which is old).
2000-09-30 02:14:04 +00:00
Havoc Pennington
244996ffec fix indentation
2000-09-29  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation

        * gtk/gtktextview.c: Implement drag thresholding; change functions
	that set border window size to have nicer name
	(gtk_text_view_mark_set_handler):  Fix this to have the
	right signature.

	* gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes

	* gtk/testtext.c: Update with API changes, put line numbers on
	both sides.

	* gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
	with this

	* gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
	pixbuf; delete a big block of #if 0 Tk code

	* gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace
	insert_pixmap with insert_pixbuf
2000-09-30 00:17:22 +00:00
Martin Baulig
0415b69e76 file gdk.pc.in was initially added on branch gtk-1-2. 2000-09-29 22:43:24 +00:00
Martin Baulig
c27348342e file gtk+.pc.in was initially added on branch gtk-1-2. 2000-09-29 22:43:24 +00:00
Martin Baulig
ec319031cc Set this to `$(libexecdir)/pkgconfig'; this is the directory where
2000-09-29  Martin Baulig  <baulig@suse.de>

	* Makefile.am (pkgconfigdir): Set this to `$(libexecdir)/pkgconfig';
	this is the directory where pkg-config actually looks.

	* gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
	confusion with the GdkPixbuf of the GNOME 1.x platform.

	* *.pc.in: Made the pkg-config scripts actually work.
2000-09-29 20:58:42 +00:00
Havoc Pennington
d0cbd57de8 Implement the side windows.
2000-09-29  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextview.c: Implement the side windows.

* gtk/testtext.c: Implement simple line numbering in the
left side window; seems to make scrolling sloooow. Oops.
Also, cursor blink is for some reason causing redraws
of the line numbers. Should investigate...
2000-09-29 05:47:34 +00:00
Havoc Pennington
85735ec7f5 Set up infrastructure to deal with lots of scrolling child windows, and
2000-09-28  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c: Set up infrastructure to deal with lots of
	scrolling child windows, and draw focus rectangle properly.

	(gtk_text_view_buffer_to_window_coords):
	Coordinate transformation to deal with all these freaking windows
	and offsets
	(gtk_text_view_window_to_buffer_coords): transform the other way

	* gtk/testtext.c (create_buffer): Update to match Pango API change

	* gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
	anonymous tags
	(foreach_unref): don't emit remove signal from finalize, just
	set tag's parent to NULL
2000-09-28 21:10:40 +00:00
Havoc Pennington
3e6e7b94f6 remove Fix some warnings
2000-09-26  Havoc Pennington  <hp@redhat.com>

        * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
	Fix some warnings
2000-09-26 20:35:39 +00:00
Havoc Pennington
e8597130f5 Move more text widget headers into the private header list
2000-09-26  Havoc Pennington  <hp@redhat.com>

	* gtk/Makefile.am (gtk_private_h_sources): Move more text widget
	headers	into the private header list

	* Makefile.am (pkgconfig_DATA): install pkg-config files

	* configure.in: add pkg-config files

	* gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files

	* gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
	outstanding icon caches on theme change.

	* gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three
	important types:

	(GtkIconSource): Specification for creating a pixbuf
	appropriate for a direction/state/size triplet from
	a source pixbuf or filename

	(GtkIconSet): List of GtkIconSource objects that are used to
	create the "same" icon (e.g. an OK button icon), and cache for
	rendered icons

	(GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
	up the icon set for a given stock ID.  GTK maintains a stack of
	GtkIconFactory to search, and applications or libraries can add
	additional icon factories on top of the stack

        * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse
	the set of GtkIconSource specified for a given stock ID into
	a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the
	RcStyle, under the specified stock ID.

	* gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
	render_icon used to derive a GdkPixbuf from a GtkIconSource.
	This allows people to theme how prelight, insensitive, etc. are
	done.

	(gtk_style_lookup_icon_set): Look up a stock ID in the list of
	icon factories for a style, and return the resulting
	icon set if any.

	(gtk_style_render_icon): Render an icon using the render_icon
	method in the GtkStyleClass.

	* gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon):
	Use the style for a given widget to look up a stock ID, get the
	icon set, and render an icon using the render_icon method
	of the style

	* gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
	(contains information about a stock item), the built-in stock item
	IDs, and functions to add/lookup stock items.

	* gtk/stock-icons/*: Stock icons that come with GTK

	* gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
	a button based on a GtkStockItem
	(gtk_button_new_accel): Takes a uline string and accel group, and
	installs the accelerator.

	* gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
	image-display widget.
2000-09-26 20:22:17 +00:00
Havoc Pennington
9bec105a66 Draw the focus, and leave space to do so.
2000-09-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c: Draw the focus, and leave space to do so.

	* gtk/gtktexttypes.c: Remove Latin1 conversion stuff

	* gtk/gtktextbtree.c (gtk_text_btree_node_remove_data):
	Fix a bug when removing node data, we didn't properly
	re-splice the linked list after removing the data.

	* gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through
	GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget

	* gtk/gtktextbuffer.c (selection_received): fix g_convert usage

	* gtk/gtktextlayout.c (set_para_values): Set tab array
	for the layout from the GtkTextTag.

	* gtk/gtktexttypes.h: delete tab and search cruft,
	remove g_convert() in favor of GLib version

	* gtk/gtktexttypes.c: remove tab implementation from here,
	move to Pango

	* gtk/gtktexttag.h, gtk/gtktexttag.c: Implement
	tab stuff using new PangoTabArray from Pango

	* gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
	unused border_width stuff
2000-09-25 17:17:13 +00:00
Owen Taylor
f235c3cb5c file gtkmodule.c was initially added on branch gtk-new-im. 2000-09-16 17:11:25 +00:00
Owen Taylor
85f6d33937 file gtkmodule.h was initially added on branch gtk-new-im. 2000-09-16 17:11:25 +00:00
Owen Taylor
2a9abf57ce Remove g_convert (moved to glib) and now useless utf_to_latin1()
Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
	glib) and now useless utf_to_latin1() latin1_to_utf()
2000-09-14 21:19:11 +00:00
Owen Taylor
5fea69440e Add gtkclipboard.[ch
Thu Sep 14 12:43:30 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk.h gtk/Makefile.am: Add gtkclipboard.[ch
2000-09-14 16:44:04 +00:00
Owen Taylor
e6169335e2 updates 2000-09-14 16:41:37 +00:00
Owen Taylor
39339f14f5 Remove g_convert (moved to glib) and now useless utf_to_latin1()
Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
	glib) and now useless utf_to_latin1() latin1_to_utf()

	* gtk/gtktextview.[ch]: Change ::move_insert and
	::delete_text action signals to ::move and ::delete;
	create the signals with the right enumeration type,
	not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
	C-v bindings, change Home, End to move to beginning/end
	of line, Add C-Home C-End to move to beginning/end
	of buffer. Change ::cut_text to ::cut_clipboard, etc;
	combine ::scroll_text into ::move; use new GtkSelectionData
	functions to simplify DND text handling.

	* gtk/gtkenums.h gtk/gtktextview.h: Move movement,
	deletion enumerations here, rename enumeration values to
	be consistently plural.

	* gtk/gtktextbuffer.c: Use new clipboard interfaces
	for cut/copy/paste and primary selection.

	* gtk/gtktextbuffer.[ch]: Remove excess time and
	'interactive' arguments from cut/copy/paste;
	rename cut to cut_clipboard, etc; remove
	gtk_text_buffer_get_clipboard_contents().

	* gtk/gtktextlayout.[ch]: Add
	gtk_text_layout_move_iter_to_line_end() to move	the iter to
	line ends.

	* gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
	Functions to set or get a UTF-8 string on the selection
	data.

	* gtk/gtkclipboard.[ch]: New, simplified selection handling
	interfaces.

	* gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
	created widgets - one of these is useless if we don't.

	* gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
	a public function clear all targets registered for the
	widget.

	* gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
	Never call gtk_widget_realize() - that was just asking
	for bizarre side-effects.

	* gtk/gtkselection.c (gtk_selection_owner_set): Call
	gdk_selection_owner_set even if the widget is the
	same so that we reliably update the timestamp on
	the server.

	* gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a
	gdk_x11_get_server_time() function.

	* gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
	gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
	Add some tricky filtering on serial numbers for
	selection clear events to fix up long-standard
	race condition FIXME's in gtkselection.c.

	* gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
	routines to convert from utf8 to compound text or
	STRING and from a text property to UTF-8.

	* gtk/gtkmain.[ch] (gtk_get_current_event_time): Add
	a convenience function gdk_get_current_event_time().

	* gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
	and free selection_data->data properly
2000-09-14 16:41:20 +00:00
Owen Taylor
42e44b9fa5 Updates for new functions
Thu Sep 14 12:38:33 2000  Owen Taylor  <otaylor@redhat.com>

        * docs/reference/gdk/: Updates for new functions

	* docs/reference/gdk/tmpl/gtkclipboard.sgml
	docs/reference/gdk/tmpl/gtkselection.sgml: Updates
	and new information.
2000-09-14 16:39:16 +00:00
Seán Ó Ceallaigh/Irish translations
03db6a411b Update to translations. 2000-09-09 03:07:24 +00:00
Jonathan Blandford
8ff6644c76 gtk/gtktextdisplay.c gtk/gtktextlayout.c gtk/gtktexttag.c gtk/gtktexttag.h
2000-09-08  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktextdisplay.c
	* gtk/gtktextlayout.c
	* gtk/gtktexttag.c
	* gtk/gtktexttag.h
	* gtk/testtext.c: Change the overstrike property to strikethrough,
	to closer match pango.
2000-09-08 23:29:46 +00:00
Owen Taylor
2e2272aac1 Fix up visibility so that focus, cursor_visible and blink interact
Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c: Fix up visibility so that focus,
	cursor_visible and blink interact properly.  Reenable cursor blink
	which had been roughly disabled. Make blink and focus
	properly per-view.

	* gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
	Add a flag for whether to display insertion cursor and
	a function to set the flag.

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
	get_line_y() to get_line_yrange(), to be a bit more generally
	useful.
2000-09-08 18:33:03 +00:00
George Lebl
38a656ab18 in gtk_menu_set_submenu_navigation_region do stop_navigating_submenu, to
Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>

	* gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
	  do stop_navigating_submenu, to clear last timeout properly.
	  Also in gtk_menu_motion_notify move ignore_enter above
	  the conditional to make it always happen as suggested by Owen
2000-09-08 01:53:46 +00:00
Tor Lillqvist
7e928a4b2d Oops, cut&paste error. 2000-09-07 19:55:36 +00:00
Tor Lillqvist
6ffe1dcf10 Use -Wall. Add gdkpango-win32.o
2000-09-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o

	* gdk/win32/gdkwin32.h: Add more definitions missing from the free
	w32api headers.

	* gdk/win32/gdkprivate-win32.h: Add a couple of missing
	declarations.

	* gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
	(gdk_win32_get_colormap): A line had been deleted by mistake.

	* gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
	(gdk_event_translate): Handle more virtual keycodes to be able to
	generate GDK events for Control-comma, Control-period, etc.

	* gtk/gtk.def: Add some missing entry points.

2000-09-07  Tor Lillqvist  <tml@iki.fi>

	* makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
	like on Unix.
2000-09-07 19:51:32 +00:00
Owen Taylor
2bcef62f0b add some new files for new sections of docs 2000-09-07 18:18:04 +00:00
Owen Taylor
71337db92e Move gtk-reference files into GTK+ tree proper.
Thu Sep  7 14:15:03 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/* gtk/*: Move gtk-reference files into GTK+ tree proper.

	* Update sections.txt files to correspond to current code,
	tweak .sgml files and Makefiles to correspond.

	* gtk/tmpl/gtkradiomenuitem.sgml (this): Remove extra <para>
2000-09-07 18:17:06 +00:00
Owen Taylor
21b538970e Doc comment fixing. (Mostly non-matching parameter names.)
Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
	Doc comment fixing. (Mostly non-matching parameter names.)

	* gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
	comments a little to avoid looking like a doc comment.

	* gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
	GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
	conversions be changed to GError?)

	* gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT):
	Move private #defines into .c file.

	* gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
	order of argument addition, remove duplicates.

	* gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
	parent class is FrameClass, not BinClass.

	* gtk/gtk.h: Add gtkinvisible, which was missing.
	(It's occasionalyl useful for client apps, if seldom.)

	* gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
	#define.
2000-09-07 18:07:59 +00:00
Sebastian Wilhelmi
8c4980ed54 Remove conftest* after use along the lines of AC_TRY_COMPILE.
2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in (use_mmx_asm): Remove conftest* after use along the
	lines of AC_TRY_COMPILE.

        * .cvsignore updates
2000-09-05 14:07:55 +00:00
Sebastian Wilhelmi
f4fc70e3c7 Use g_path_get_dirname instead of g_dirname, which is deprecated.
2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
	of g_dirname, which is deprecated.
	(gtk_rc_parse_any): Removed calls to
	g_scanner_{freeze,thaw}_symbol_table, which are deprecated.

	* gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
	Removed calls to g_hash_table_{freeze,thaw}, as they are
	deprecated now.

	* gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
	instead of g_basename.
2000-09-05 12:13:24 +00:00
Elliot Lee
2c8fc56d21 Put text after #endif inside a comment to avoid ANSI warning.
* gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid ANSI warning.
2000-09-04 20:54:39 +00:00
George Lebl
49a6b8335d Add some documenting comments about GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and
Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>

	* gtk/gtkwidget.h:  Add some documenting comments about
	  GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
	  just as owen said on irc.

	* gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
	  set HAS_DEFAULT.  Only set it if there isn't another window
	  holding it (a focus window which RECEIVES_DEFAULT) and only unset
	  it if the widget is not the focused window with RECEIVES_DEFAULT.
	  This fixes weird double default bugs in dialogs which has things
	  call gtk_window_set_default at times.
2000-09-03 05:49:34 +00:00
Owen Taylor
e4229e9c4b Apply patch from Nils Barth and David Santiago to improve submenu
Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.[ch] TODO.xml: Apply patch from
	Nils Barth and David Santiago to improve submenu
	navigation. The patch does this by creating a triangular
	region from the point where the pointer leaves the
	menu to the submenu.  While the pointer is in
	that region and a timeout has not expired, events
	that would cause the active submenu to change are
	ignored.
2000-09-02 02:43:50 +00:00
Owen Taylor
6e3a2369b3 Fix bug where moving a toplevel window immediately after sizing it would
Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
	moving a toplevel window immediately after sizing it would
	result in it being sized back to the old size since
	impl->width, impl->height aren't updated until we hear
	back from the server. There is still a (longstanding) bug
	here that gdk_window_get_size() will give the wrong size
	until we do hear back.
2000-09-01 20:10:58 +00:00
Havoc Pennington
78500e9045 Rename GtkTextStyleValues to GtkTextAttributes
2000-08-31  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h,
	gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c,
	gtk/gtktexttagprivate.h, gtk/gtktextview.c:
	Rename GtkTextStyleValues to GtkTextAttributes
2000-08-31 17:08:45 +00:00
Havoc Pennington
41b5d5d26d cache end line, for rapid testing whether an iterator is the end iterator
2000-08-31  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextbtree.c (GtkTextBTree): cache end line,
for rapid testing whether an iterator is the end iterator
(gtk_text_btree_new): init end line cache
(gtk_text_line_is_last): use fast cached line to
see if we're the last line.
(get_last_line): use cached line here too, should
speed up some random unrelated code.
2000-08-31 04:20:59 +00:00
Havoc Pennington
a9de95392e Add marshallers for changed GtkTextBuffer signals.
2000-08-30  Havoc Pennington  <hp@pobox.com>

* gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
signals.

* gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
delete_text signals. This allows the signals to be used for
implementing undo.

* gtk/gtktextbuffer.c: Change signal handler signatures;
provide "interactive" argument when emitting insert_text or
delete_text signal.
2000-08-31 03:48:50 +00:00
Havoc Pennington
b968041627 Docs
2000-08-30  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextbuffer.c: Docs
2000-08-31 03:23:14 +00:00
Owen Taylor
d717bbe4df remove GDK_IMAGE_SHARED_PIXMAP from switch statements, since Tor removed
Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
	from switch statements, since Tor removed the enumeration
	value.

	* gdk/x11/gdkimage-x11.c (gdk_image_get):
	s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
2000-08-31 02:04:54 +00:00
Elliot Lee
0176b387c8 Use G_GNUC_CONST.
Use G_GNUC_CONST.
2000-08-30 00:33:38 +00:00
Havoc Pennington
a10a7350f3 wrote lots of API docs, minor indentation fixes, inserted some FIXME about
2000-08-27  Havoc Pennington  <hp@pobox.com>

* gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
minor indentation fixes, inserted some FIXME about stuff I
realized was broken while documenting it.
(gtk_text_iter_get_pixmap): allow out params to be NULL, following
GTK convention
2000-08-28 03:44:06 +00:00
Seán Ó Ceallaigh/Irish translations
ea1210765d Update Irish trans. 2000-08-27 00:17:24 +00:00
Elliot Lee
3c8161925e Try to fix a bug where a window move, with a non-rectangular region
Try to fix a bug where a window move, with a non-rectangular region unobstructed, would cause
pieces of the window to be moved twice. Effectively, sort of implement a
gdk_draw_drawable_region(drawable, gc, drawable, region, dx, dy);

Am going blind trying to find the off-by-one thing, especially since it doesn't happen except for
the preview tests. Still not fixed, have at it.
2000-08-23 00:50:32 +00:00
Owen Taylor
3f14b4598f Fix double free of font desc.
Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (create_styles): Fix double free of
	font desc.
2000-08-22 16:34:43 +00:00
Owen Taylor
c6dfddd233 Updated percentages 2000-08-22 03:30:17 +00:00
Owen Taylor
92b2246581 Add gtk_widget_modify_{fg,bg,text,base,font}.
Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.

	* gtk/testgtk.c (create_styles): Add a test for modifying
	the style through gtk_widget_modify_*.

	* gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
	a function to get the current modifier style.

	* gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
	of the passed in GtkRcStyle instead of ref'ing it.

	* gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
2000-08-22 03:05:14 +00:00
Andraz Tori
cae2af57d5 Updated Slovenian translation 2000-08-20 10:16:05 +00:00
Tor Lillqvist
617e17da3f gdk/gdkimage.h No need any longer on Win32 for the shared memory
2000-08-20  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkimage.h
	* gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
	shared memory image+pixmap GdkImage type, or
	gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
	I am dropping that.

	* gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
	actually call gtk_init_abi_check(), passing also
	sizeof(GtkWindow). Ditto for gtk_init_check().

	* gtk/gtk.def
	* gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
	New functions, used to check that the GTK+-using code has been
	compiled using the correct compiler and switches. In particular,
	with gcc one has to use the -fnative-struct switch as GTK+ is
	compiled with that.
2000-08-19 21:46:05 +00:00
Owen Taylor
41885abc7c Don't leave dangling ->prev fields when merging lists. (Found
Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
	->prev fields when merging lists. (Found simultaneously
	by Pawel Salek and Jakub Jelinek)
2000-08-18 21:32:48 +00:00
Christopher R. Gabriel
843b1789a3 updated italian translation 2000-08-17 16:36:36 +00:00
Yuri Syrota
8b6e32e690 Updated Ukrainian translation 2000-08-14 14:43:56 +00:00
Tor Lillqvist
e0833cd52a gdk/gdk.def Add missing entries.
2000-08-12  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def
	* gtk/gtk.def: Add missing entries.

	* gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
	OUT_TT_ONLY_PRECIS, try to get a TrueType font.

	* gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
	function. Dummy implementation at this point.

	* gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
	rules. Undefine GTK_COMPILATION when compiling the test programs.

	* gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.

	* gdk_pixbuf.def: Add missing entry point.
2000-08-12 19:51:05 +00:00
Anders Carlsson
247fd85f7c Make it compile 2000-08-12 15:02:17 +00:00
Tor Lillqvist
8421d02a4c A few more variables renamed, relating to the "system" charset vs UTF-8
pathname issue. Plug a memory leak.
2000-08-12 07:45:56 +00:00
Tor Lillqvist
33f56c79b0 Improve previous commit a bit, use better variable names. 2000-08-12 07:37:27 +00:00
Tor Lillqvist
b4d6a19524 Add more calls to g_filename_{to,from}_utf8() to convert back and forth
2000-08-11  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
	to convert back and forth from UTF-8 and the "system" (or "current
	locale") charset when necessary. Indentation/spacing cleanup.
2000-08-12 07:25:55 +00:00
Havoc Pennington
fcc951506d Change the format of the snapshot version to match glib
2000-08-10  Havoc Pennington  <hp@redhat.com>

* Makefile.am (snapshot): Change the format of the snapshot
version to match glib

* gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
from EXTRA_DIST since it doesn't seem to exist

2000-08-10  Havoc Pennington  <hp@redhat.com>

* Makefile.am (EXTRA_DIST): The *.def files had the wrong names
(s/pixbuf_/pixbufloader_)
2000-08-11 02:58:59 +00:00
Havoc Pennington
5d048f3365 some sort of line number changes to .po files that make performed, dunno 2000-08-11 02:56:24 +00:00
Elliot Lee
cbfcca98b0 Ref window before returning.
Ref window before returning.
2000-08-09 21:53:50 +00:00
Tor Lillqvist
3e4c24c96e Use the "system codepage" version of the directory name (not the UTF-8
2000-08-10  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
	version of the directory name (not the UTF-8 one) when building
	the path name to stat().
2000-08-09 20:54:58 +00:00
Elliot Lee
a6895b64fd Make numeric keypad work.
Make numeric keypad work.
2000-08-09 19:58:10 +00:00
Elliot Lee
98bacfb792 Bugfixorama
Bugfixorama
2000-08-09 17:26:29 +00:00
Elliot Lee
d72659968c Some hacks to stop screen blanking.
Some hacks to stop screen blanking.
2000-08-09 17:24:47 +00:00
Elliot Lee
06fd9e335d Implement gdk_beep() (woohoo!)
Implement gdk_beep() (woohoo!)
2000-08-09 16:12:06 +00:00
Elliot Lee
9ecfc48c12 Fix compiler warnings 2000-08-09 02:56:13 +00:00
Elliot Lee
d1da582ab8 Fix GDK_Left position in table.
Fix GDK_Left position in table.
2000-08-09 01:36:37 +00:00
Elliot Lee
f14eca7043 At init time, read data from the PS/2 mouse until there's nothing left to
At init time, read data from the PS/2 mouse until there's nothing left to read, in an attempt to
synchronize up with the event stream.
2000-08-08 16:44:25 +00:00
Elliot Lee
b9ac96e591 Handle GDK_INCLUDE_INFERIORS subwindow_mode.
Handle GDK_INCLUDE_INFERIORS subwindow_mode.

Call gobject finalize routine in gdk_gc_finalize.

Unrememberable etcs.
2000-08-07 23:00:38 +00:00
Elliot Lee
bc3f1cfc43 Store mouse coords as doubles not ints...
Store mouse coords as doubles not ints...
2000-08-07 18:21:18 +00:00
Elliot Lee
73f441ccbb Works. 2000-08-07 18:19:43 +00:00
Elliot Lee
10ce43ece5 fidmour support, mouse genericization (the file is now quite misnamed, I'm
fidmour support, mouse genericization (the file is now quite misnamed, I'm afraid).
2000-08-07 03:31:12 +00:00
Elliot Lee
c6bf7f0c5f Warning fixes. 2000-08-07 03:26:05 +00:00
Elliot Lee
08b87727f0 Implement gdkcc (visually broken, but can be fixed by someone with a clue
Implement gdkcc (visually broken, but can be fixed by someone with a clue w/o problems).
2000-08-04 01:30:54 +00:00
Elliot Lee
5ad55596f9 sync to ps2-less anode
sync to ps2-less anode
2000-08-03 21:19:04 +00:00
Elliot Lee
b3dd84048d Fix the second bug, draw underlines.
Fix the second bug, draw underlines.
2000-08-03 20:43:47 +00:00
Elliot Lee
aa88a217a5 Bugfix.
Bugfix.
2000-08-03 20:33:38 +00:00
Alastair McKinstry
157b6fd7ec minor update 2000-08-03 20:29:50 +00:00
Elliot Lee
98f8f4d229 Don't draw runs with a PANGO_ATTR_SHAPE set.
* gdk/gdkpango.c (gdk_draw_layout_line): Don't draw runs with a PANGO_ATTR_SHAPE set.
2000-08-03 20:15:37 +00:00
Owen Taylor
96e4699c30 Add missing file 2000-08-03 15:55:27 +00:00
Owen Taylor
c4384ce24f Applied patch from Peter Osterlund to simplify the code while keeping the
Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
        Peter Osterlund to simplify the code while keeping the
        functionality the same.
2000-08-03 13:18:01 +00:00
Elliot Lee
b427cec028 Set serif font to something sane.
Set serif font to something sane.

Add cursors so it will compile anywhere (hopefully).
2000-08-03 02:33:46 +00:00
Owen Taylor
1b6dbf0ea2 Move is_viewable() test further inside the function, since removing the
Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
	is_viewable() test further inside the function, since removing the
	window from the redraw list without clearing ->update_area
	was also very broken.
2000-08-02 19:07:00 +00:00
Tor Lillqvist
7bc2cb6e6e Check for <unistd.h>.
2000-08-02  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Check for <unistd.h>.

2000-08-02  Tor Lillqvist  <tml@iki.fi>

	* io-bmp.c
	* io-ico.c
	* io-ras.c
	* io-tiff.c
	* io-wbmp.c: Conditionalise inclusion of <unistd.h>.

	* makefile.mingw.in: List loaders alphabetically. Add the wbmp
	one. Fix names of DLLs to have '-' instead of '_'.
2000-08-01 21:43:56 +00:00
Martin Baulig
d0893cc5dd Use g_message() and not g_warning() to display the message that this is a
2000-08-01  Martin Baulig  <baulig@suse.de>

	* gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
	to display the message that this is a development version of GTK+.
2000-08-01 10:06:53 +00:00
Elliot Lee
4d72175087 Some bug fixes - now tested to work.
* io-wbmp.c: Some bug fixes - now tested to work.
2000-08-01 00:33:49 +00:00
Elliot Lee
75225b9f21 Add a 'w' in the right spot.
Add a 'w' in the right spot.
2000-08-01 00:15:02 +00:00
Owen Taylor
e9a03443c7 Fix problem where computation was depending on widget->allocation instead
Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
	was depending on widget->allocation instead of the width of text_area,
	which was incorrect for subclasses like GtkSpinButton.

	* gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
	with width == 1 tests that should be width == -1.
2000-07-31 22:59:29 +00:00
Owen Taylor
44afc537b3 Replace broken, (broken, Elliot, every single window blank on X) custom
Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken,
	(broken, Elliot, every single window blank on X) custom code with call
	to gdk_window_is_viewable() which a) prevents code duplicate and
	b) works.
2000-07-31 20:48:38 +00:00
Elliot Lee
d9e05d7009 We really do need to include gdkfb.h in order to get the GDK_PARENT_ROOT()
* gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order to get the GDK_PARENT_ROOT()
macro to work.
* gtk/gtkmarshal.list: Add NONE:STRING,POINTER
* gdk/gdkwindow.c: Don't send expose events, or invalidate pieces of, windows that aren't shown.
* gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of pointer grab stuff.
2000-07-31 17:18:36 +00:00
BST 2000 Tony Gale
621639b754 s/gtk_main_iteration/g_main_iteration/
Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml docs/gtk-faq.sgml:
          s/gtk_main_iteration/g_main_iteration/

          Did this already in change:
                Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
          don't know how it got reverted.
2000-07-31 13:00:21 +00:00
Stanislav Brabec
e4d140d5aa #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and gdk_arg_no_debug_cb to
2000-07-31  Stanislav Brabec  <utx@penguin.cz>

        * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
        gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.

        * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
        not gdk_pixbuf.
2000-07-31 10:16:45 +00:00
Pablo Saratxaga
3d8f790e2d updated Serbian files 2000-07-30 13:15:52 +00:00
Tor Lillqvist
471396fdd4 Add makefile.mingw.in to EXTRA_DIST.
2000-07-30  Tor Lillqvist  <tml@iki.fi>

	* gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.

	* gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
	Remove the g_pipe_readable_msg stuff. Not needed with new GLib
	GIOChannel implementation.

	* gdk/win32/gdkinput.c
	* gdk/win32/gdkpango-win32.c: Update license name here, too.

	* gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
	definition to match prototype.

	* gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
2000-07-30 08:11:28 +00:00
Kenneth Christiansen
9ff07fdad9 minor fix 2000-07-28 12:06:28 +00:00
Elliot Lee
9d72f811ee Part 2 of previous commit (aka "it compiles now, ma")
Part 2 of previous commit (aka "it compiles now, ma")
2000-07-28 00:16:17 +00:00
Elliot Lee
3ddaa73578 Add gdk_pixbuf_loader_new_with_type function, to allow handling image
2000-07-27  Elliot Lee  <sopwith@redhat.com>

	* gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
	function, to allow handling image formats that cannot be detected
	by looking at content alone.

gdk-pixbuf/
2000-07-27  Elliot Lee  <sopwith@redhat.com>
	* gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add gdk_pixbuf_get_named_module() function to facilitate above change
	* io-bmp.c: Don't malloc a temporary buffer - use stack instead.
	* io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile: Implement loader for WBMP format.

**NOTE: I haven't tested this yet, I need to sync it to another machine, but it if it is broken
I'm already working on fixing it
2000-07-28 00:09:36 +00:00
BST 2000 Tony Gale
de9e8979fd docs/tutorial/*.gif *.jpg *.eps Update these to the same look-n-feel. Why
Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/*.gif *.jpg *.eps
          Update these to the same look-n-feel.
          Why does including images in DocBook suck so badly?
2000-07-27 12:17:17 +00:00
Kenneth Christiansen
f9576e58ee i18n stuff 2000-07-27 12:05:21 +00:00
Tim Janik
bd91876973 applied patch from Phil Thompson <phil@river-bank.demon.co.uk> that
Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtktable.c: applied patch from Phil Thompson
        <phil@river-bank.demon.co.uk> that enables space settings for
        the last row/columns as well.
2000-07-27 03:13:07 +00:00
Tim Janik
afee2c67c5 applied patch from Andreas Persenius <ndap@swipnet.se> that updates the
Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>

        * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
        updates the license headers to the GNU Lesser General Public License,
        as well as updating the copyright year to 2000.
2000-07-26 11:33:08 +00:00
Robert Brady
cbc86c2b90 remove <<<<. oops. 2000-07-26 00:58:46 +00:00
Robert Brady
6c4f3568d5 Cause GETTEXT_PACKAGE to be consistent in config.h and po/Makefile, was
2000-07-26  Robert Brady  <rwb197@zepler.org>

        * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
          and po/Makefile, was installing and looking for them under gtk20
          and gtk2 respectively.
2000-07-26 00:55:42 +00:00
Havoc Pennington
e8138cd803 Comment out some stuff that depends on the rest of my patches.
2000-07-25  Havoc Pennington  <hp@redhat.com>

* gtk/testtext.c: Comment out some stuff that depends on the rest
of my patches.
2000-07-26 00:32:39 +00:00
Havoc Pennington
bbaeb8aa28 Add NONE:POINTER,POINTER,INT for the text buffer
2000-07-25  Havoc Pennington  <hp@redhat.com>

* gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
buffer
2000-07-26 00:02:31 +00:00
Havoc Pennington
a4762fbff4 update to reflect text widget changes.
2000-07-25  Havoc Pennington  <hp@redhat.com>

* gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
widget changes.

* gtk/gtktextview.h: To be consistent with usage of "line"
throughout the API to mean "newline-terminated thingy", change
MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
to MOVEMENT_LINE.

(GtkTextView): Add flags for default editability, and whether to
show the cursor. Add functions to get/set that. Add

(gtk_text_view_get_iter_location): new function

* gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
gtktextlayout.h
(g_convert): Add g_convert temporarily, will go in glib in a bit

* gtk/gtktexttagtable.h: include gtktexttag.h, and define
GtkTextTagTableForeach instead of brokenly using GHFunc.
Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.

* gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
moved to public header.

* gtk/gtktexttag.h: Rename the "elide" attribute of tags to
"invisible", since "elide" was a bad name.
(gtk_text_tag_get_priority): Added

(GtkTextStyleValues): put this in public header, along with
functions to use it.

* gtk/gtktextmarkprivate.h: Include more headers, since we no
longer include gtktextbtree.h.

* gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
gtk_text_mark_deleted

* gtk/gtktextlayout.h: Don't include the "really private" headers,
only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
to make this possible. Now we only need to install
gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
(However the Makefile.am isn't changed yet because of the
logistics of merging gtk-hp-patches piecemeal)

* gtk/gtktextiterprivate.h: include btree header, so it compiles;
rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
gtk_text_iter_get_line is now used in the public API for a
different purpose.

* gtk/gtktextiter.h: Clean up function names to be more
consistent. Always call char offset "offset" and byte index
"index". A "line" is always a line number.

(gtk_text_iter_is_last): new function, more efficient than
the existing way to check
(gtk_text_iter_is_first): new function, also more efficient

(gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these

(gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from
gtk_text_iter_forward_char, etc.

(gtk_text_iter_forward_to_tag_toggle): Renamed from
forward_find_tag_toggle, since this isn't a linear search

(GtkTextCharPredicate): rename from GtkTextViewCharPredicate

(gtk_text_iter_forward_search, gtk_text_iter_backward_search):
New functions, search for a buffer substring.

* gtk/gtktextbuffer.h: Add fields to store whether a paste is
interactive and default editable (since we need to store that info
until we receive the selection data).

Remove all the _at_char and at_line etc. versions of functions;
only have iterator versions.

Add _interactive() versions of functions, that consider the
editability of text. (FIXME add interactive flag to the
insert/delete signals per Darin's suggestion)

(gtk_text_buffer_get_tag_table): new function, demand-creates the
tag table if necessary

Remove declaration of gtk_text_buffer_get_iter_from_string

(_gtk_text_buffer_get_btree): private/internal function, added.


* gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
(gtk_text_line_is_last): new function
2000-07-25 23:59:38 +00:00
Havoc Pennington
f56297c534 Implement new sane, 5-function API for using GtkProgressBar. See
2000-07-25  Havoc Pennington  <hp@redhat.com>

* gtk/gtkprogressbar.h: Implement new sane, 5-function API for
using GtkProgressBar. See Changes-2.0.txt for details.

* gtk/gtkprogressbar.c: Add object arguments "fraction" and
"pulse_step" which are the equivalent of
gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
Implement new API.

* gtk/gtkprogress.h (struct _GtkProgress): Add a field
(use_text_format) to mark whether text set on the progress bar is
a format string. Deprecate entire GtkProgress interface.

* gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
(gtk_progress_build_string): make this a no-op if use_text_format
is FALSE

* docs/Changes-2.0.txt: Describe progress bar changes.
2000-07-25 22:58:17 +00:00
Tor Lillqvist
d1a4a1ea28 Generate gdk/, gdk/win32/, and gtk/makefile.mingw.
* configure.in: Generate gdk/, gdk/win32/, and gtk/makefile.mingw.
2000-07-25 20:43:17 +00:00
Tor Lillqvist
20e675e1a3 Generate gtk/makefile.mingw.
2000-07-25  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Generate gtk/makefile.mingw.

	* config.h.win32: Add GETTEXT_PACKAGE.

	* gdk/gdk.def
	* gtk/gtk.def: Updates.

	* gdk/gdkfont.h
	* gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
	need them any longer.

	* gdk/gdkinput.h: Mark gdk_core_pointer for export/import.

	* gdk/win32/*.c: More work.

	* gdk/win32/gdkpango-win32.c: New file.

	* gtk/makefile.mingw.in: New file

	* gtk/makefile.cygwin: Removed

	* gtk/Makefile.am: Update accordingly.

	* gtk/gtkmain.c: Use gtk_win32_get_installation_directory().

	* gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
	is enough.

	* gtk/gtktypeutils.c: Mark glib_debug_objects for import.
2000-07-25 20:38:35 +00:00
Tor Lillqvist
5ac61d3eee Include the build directory.
2000-07-25  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am: Include the build directory.

	* configure.in: Generate build/Makefile and build/win32/Makefile.

	* config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.

	* gdk/gdk.def
	* gtk/gtk.def: Updates.

	* gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
	PANGOWIN32_LIBS and gdk_pixbuf.

	* gdk/win32: Compiles, but no doubt doesn't work at all.

	* gdk/win32/makefile.mingw.in: Define GDK_COMPILATION.

	* gdk/win32/gdkinput.c: New file, temporarily.

	* gdk/win32/gdkinput-win32.h: New file

	* gdk/win32/gdkinputprivate.h: Remove.

	* gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
	made externally visible.
2000-07-25 17:31:05 +00:00
Tor Lillqvist
37e809867e *** empty log message *** 2000-07-25 17:14:16 +00:00
Tor Lillqvist
1623b0fcfe makefile.cygwin Renamed. Use iconv, not native2ascii.
2000-07-25  Tor Lillqvist  <tml@iki.fi>

	* makefile.cygwin
	* makefile.mingw: Renamed. Use iconv, not native2ascii.
2000-07-25 17:12:23 +00:00
Elliot Lee
838e2f341b revert
revert
2000-07-24 18:50:22 +00:00
Elliot Lee
6d7a643f7c (Part 2) Remove gdk_*_lookup() defines, since they are defined by the
(Part 2)
	* gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
	individual backends already.
	* gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
	again. Yes, there really is a good reason for this, if you are using the gdkregion
	internals, and if you're not, why do you care?
	* gdk/gdkwindow.c: Fix inverted condition
	* gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
	* gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
	* gtk/gtkrange.c: Redraw trough when moving.
	* gtk/gtktypeutils.c: Fix warning by adding const cast.
	* modules/linux-fb/basic.c: Fix unknown glyph retrieval.
2000-07-24 16:19:00 +00:00
Elliot Lee
72aa0d6611 Part 1 of a multipart commit
Part 1 of a multipart commit
2000-07-24 16:10:43 +00:00
Szabolcs BAN
824bc30f68 Updated Hungarian translations.
2000-07-24  Szabolcs BAN <shooby@gnome.hu>

	* hu.po: Updated Hungarian translations.
2000-07-24 07:36:02 +00:00
Tor Lillqvist
4658795817 More work on the Win32 backend. More files compile now. 2000-07-23 21:43:23 +00:00
Tor Lillqvist
20b5d8ec2f More work on GDK for Win32. Still in an intermediate state.
2000-07-23  Tor Lillqvist  <tml@iki.fi>

	More work on GDK for Win32. Still in an intermediate state.

	* gdk/makefile.cygwin
	* gdk/win32/makefile.cygwin: Removed.

	* gdk/makefile.mingw.in
	* gdk/win32/makefile.mingw.in: New files.

	* gdk/Makefile.am
	* gdk/win32/Makefile.am: Generate and distribute them.

	* gdk/win32/gdkwindow-win32.h
	* gdk/win32/gdkdrawable-win32.h
	* gdk/win32/gdkpixmap-win32.h: New files.

	* gdk/win32/gdkcolor-win32.c
	* gdk/win32/gdkcursor-win32.c
	* gdk/win32/gdkgc-win32.c
	* gdk/win32/gdkimage-win32.c
	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
	don't use fields and variables called xcursor, xid, etc (leftovers
	from the X11 backend).
2000-07-23 01:18:34 +00:00
Tor Lillqvist
a52f7c348e Check for mkstemp and sigsetjmp. Output gdk-pixbuf/makefile.mingw and
2000-07-23  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Check for mkstemp and sigsetjmp. Output
	gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
2000-07-22 23:56:56 +00:00
Tor Lillqvist
85cca4f33f Typos. 2000-07-22 23:53:45 +00:00
Tor Lillqvist
773aacf9b6 Win32 build setup:
2000-07-23  Tor Lillqvist  <tml@iki.fi>

	Win32 build setup:

	* makefile.mingw.in
	* pixops/makefile.mingw.in
	* pixbuf_*.def: New files.

	* Makefile.am
	* pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.

	* gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
	New function, to get the GTK+ installation directory from
	the Windows Registry, where the installation program
	for whatever software includes GTK+ has stored it.

	Used to avoid having hardcoding the directory where to look for
	loaders. This function is needed by gtk, too, so it should
	really be just in one place. Maybe a small static library
	one level up from here?

	* gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
	Open file in binary mode. This *is* standard C. (No-op on Unix,
	of course.)

	* io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().

	* io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
	mktemp() and open().
	(gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.

	* pixops/*.S: The Gas from mingw32 doesn't like the .type
	pseudo-op. Conditionalise on __MINGW32__, but probably
	should conditionalise on Gas version instead? Or could we
	do without .type on all systems?

	* pixops/timescale.c: Use g_get_current_time()
	instead of gettimeofday().
2000-07-22 23:50:19 +00:00
Owen Taylor
a338544d1a Fix some problems with vertical alignment.
Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.[ch]: Fix some problems with vertical
	alignment.

	* gtk/gtkentry.c (gtk_entry_find_position): Fix
	char/byte confusion.
2000-07-22 21:45:15 +00:00
Owen Taylor
6a2c2edf05 Fix bug where redraw wasn't being done properly when height of dirty
Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c (changed_handler): Fix bug where
	redraw wasn't being done properly when height of
	dirty region changed.

	* demos/Makefile.am: Remove various references to
	-lgmodule

	* Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
2000-07-22 15:21:31 +00:00
Owen Taylor
e6be8f3f6a Use new PangoAttrShape to reserve space for pixmaps, add GSList *pixmaps
Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
	PangoAttrShape to reserve space for pixmaps, add
	GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
	in the display functions.

	* gtk/testgtk.c (create_layout): Set some more exotic
	scrolled window options

	* gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
	Add function to set the shadow type of a window, to allow
	putting a shadow around widgets such as GtkLayout or GnomeCanvas
	which don't draw their own frame.
2000-07-21 19:30:22 +00:00
BST 2000 Tony Gale
fa5d7c7709 New file for packaging DocBook format tutorial
Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/package-db-tutorial.sh: New file for
          packaging DocBook format tutorial
2000-07-21 15:38:08 +00:00
BST 2000 Tony Gale
a7ac5157d0 Minor updates
Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml: Minor updates

        * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
2000-07-21 13:26:25 +00:00
Tor Lillqvist
631205ddc7 Fix C++ comment.
2000-07-19  Tor Lillqvist  <tml@iki.fi>

* gtk/gtksignal.c: Fix C++ comment.

* gtk/gtkimmulticontext.c
* gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
don't return value from void functions.

* gtk/gtk.def: Add gtk_rc_style_unref.
2000-07-20 05:40:49 +00:00
Sebastian Wilhelmi
1e166c0693 Include files outside of the extern "C" block. Makes some C++ compiler
2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
	gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
	gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
	gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
	gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
	gtk/gtktypeutils.h: Include files outside of the extern "C"
	block. Makes some C++ compiler happy. Reported by Denis Vakatov
	<vakatov@peony.nlm.nih.gov>.

	I really hope not to have caused a merging nightmare for all
	the branches out there. Otherwise I'll be available for crucifixion.
2000-07-19 16:11:40 +00:00
BST 2000 Tony Gale
8ac34068ba Yet more clean ups. Completes first pass. Hurrah!
Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
          Completes first pass. Hurrah!
2000-07-19 13:10:41 +00:00
Owen Taylor
2aa67df2e1 Updates to work with GTK+-2.0 theme engine architecture. It won't even
Tue Jul 18 12:13:19 2000  Owen Taylor  <otaylor@redhat.com>

        Updates to work with GTK+-2.0 theme engine architecture.
	It won't even sort of work with GTK+-1.2 any more.

	* configure.in src/Makefile.am: Look for GTK+-2.0,
	install engine into GTK+-2.0 location.

	* src/pixbuf-style.h src/pixbuf-rc-style.[ch]: New
	files for GtkRcStyle and GtkStyle subclasses. Parsing,
	etc, moves to pixbuf-rc-style.[ch]

	* src/pixbuf-draw.c: Chain up to parent implementation
	when images aren't found for a certain element.
2000-07-18 16:21:33 +00:00
BST 2000 Tony Gale
18e2da3360 More clean ups.
Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml: More clean ups.
2000-07-18 16:19:49 +00:00
Owen Taylor
b8dcd76c99 Restore code to paint the background of the text area which was
Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
	paint the background of the text area which was accidentally
	removed at some point.

	* gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]:

	 - Move	most of the functionality from the theme vtable
	   into GtkRcStyleClass and GtkStyleClass. The moved
	   vtable functions were changed a bit in the move to
	   work better in their new home.

	 - Get rid of the engine and engine_data fields from
	   GtkRcStyle and GtkStyle; instead the theme
	   engine derives theme-specific subclasses of GtkRcStyle
	   and GtkStyle

	 - Add extra dlsym() found entry point to themes,
	   theme_create_rc_style().

	* gtk/gtkstyle.c: Copy xthickness, ythickness fields
	in gtk_style_real_copy.

 	* gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
	to register a type associated with an engine. (The engine
	won't be unloaded as there is an instance of the type.)
2000-07-17 23:18:29 +00:00
BST 2000 Tony Gale
2465ad85f9 Clean ups.
Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>

        * docs/tutorial/gtk-tut.sgml: Clean ups.
2000-07-17 17:21:13 +00:00
BST 2000 Tony Gale
6c9b8cab3b Initial DocBook version. Lots of cleaning up to do.
Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@dera.gov.uk>

        * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
          of cleaning up to do.
2000-07-17 13:02:05 +00:00
Tor Lillqvist
2f8d209e5d New file, quick hack to test backends for pixel-by-pixel correctness of
2000-07-15  Tor Lillqvist  <tml@iki.fi>

* gdk/testgdk.c: New file, quick hack to test backends for
pixel-by-pixel correctness of the most simple graphic operations.
2000-07-15 02:15:44 +00:00
Owen Taylor
cc87344c1f Really release 1.3.1
Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>

        * Really release 1.3.1

	* gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
	include structure.
2000-07-15 01:07:42 +00:00
Owen Taylor
72fe20c132 Released 1.3.1
Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>

	* Released 1.3.1
2000-07-14 22:41:09 +00:00
Owen Taylor
32784edafa include <string.h>.
Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
	include <string.h>.
2000-07-14 20:25:22 +00:00
Owen Taylor
0bcf86c032 use FALSE for size_only most of the time when calling
Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c: use FALSE for size_only most
	of the time when calling gtk_text_layout_get_line_display()
	to avoid causing double reshapes when a redraw follows
	immediately after.

Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
	appropriate region and gdk_window_process_updates() so trough
	updating doesn't lag behind the window being scrolled.

        * gdk/gdkgc.c: Make parent_class pointer static.

Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
	include <string.h>.

	* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
	cut-and-paste error in computing memory offset for 4 channels.
2000-07-14 20:24:14 +00:00
Owen Taylor
ed7408e1ff Remove gtk_rc_append_default_pixmap_path(), since it wasn't adding an
Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
	gtk_rc_append_default_pixmap_path(), since it wasn't
	adding an interesting path and we don't have a meaningful
	default for this value.
2000-07-14 20:20:03 +00:00
Owen Taylor
bb26890024 Move gtk-config to gtk-config-2.0 move gtk_.m4 to gtk-2.0.m4
Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in Makefile.am gtk-config.m4 gtk.m4: Move
	gtk-config to gtk-config-2.0 move gtk_.m4 to
	gtk-2.0.m4

	* Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
	gdk/Makefile.am demos/Makefile.am: Change
	library names to libgtk-1.3.la, etc, so that we
	can distinguish gtk-1.2 and gtk-2.0 on the linkline.

	* Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
	gdk/Makefile.am gdk/x11/Makfile.am
	Move include files into /usr/include/gtk-2.0,
	/usr/lib/gtk-2.0/include/

	* autogen.sh acconfig.h configure.in gtk/gtkmain.c
	gtk/gtkintl.h: Change package for gettext from
	gtk+ to gtk20. Put hack in autogen.sh to modify
	po/Makefile.in.in after gettextize to make this
	possible.

	* gtk+.spec: Some updates, not tested.

	* gdk-pixbuf/Makefile.am: Move loaders into
	$(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.

	* gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
	$(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
	to THEMENAME/gtk-2.0/. Move engine directory  to
	$(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
2000-07-14 20:08:10 +00:00
Valek Frob
9332748007 Updated russian translation. 2000-07-14 07:48:58 +00:00
Kjartan Maraas
e8afc471f9 Added gtkcolorseldialog.c Updated Norwegian translation.
2000-07-12  Kjartan Maraas  <kmaraas@gnome.org>

	* POTFILES.in: Added gtkcolorseldialog.c
	* no.po: Updated Norwegian translation.
2000-07-13 11:43:56 +00:00
Benedikt Roth
4b7246d9e9 de.po: Updated German translation
nl.po: Updated Dutch translation from Dennis Smit <synap@area101.penguin.nl>
2000-07-12 21:25:03 +00:00
Jorge Godoy
4e514e817e updated pt_BR translations 2000-07-12 16:36:48 +00:00
Tor Lillqvist
1f581a961e gdk/win32/gdkcolor-win32.c gdk/win32/gdkprivate-win32.h Changes to make
2000-07-12  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkcc-win32.c:
* gdk/win32/gdkcolor-win32.c
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkwin32.h: Changes to make compilable, with new
GDK object structure.
2000-07-11 22:39:34 +00:00
Tor Lillqvist
2823963703 Win32 changes, still doesn't build though.
2000-07-12  Tor Lillqvist  <tml@iki.fi>

Win32 changes, still doesn't build though.

* gdk/makefile.cygwin
* gdk/win32/makefile.cygwin
* gtk/makefile.cygwin: Updates.

* gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
default values for fg and bg pixel as X11 does (0 and 1), not
black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
Use 0 for pen width by default (treated as 1 anyway later, but for
apps that might check the value in the GdkGC).
(gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
interface to gdk_gc_predraw and _postdraw.

* gdk/win32/gdkwin32.h
* gdk/gdk.def: Add gdk_win32_hdc_{get,release}.

* gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
extraneous semicolon.

* gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.

* gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
not the Win32 bitspixel value.
2000-07-11 21:42:15 +00:00
Tim Janik
5fc106081f scratched notion of completely outdated email adress:
Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>

        * docs/tutorial/gtk_tut_12.es.sgml (name):
        * docs/tutorial/gtk_tut_it.sgml (name):
        * docs/tutorial/gtk_tut_fr.sgml (name):
        * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
        outdated email adress: s/timj@psynet.net/timj@gtk.org/.
2000-07-11 19:34:44 +00:00
BST 2000 Tony Gale
30973dd7a2 Cleanup indenting and various small changes.
Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Cleanup indenting and various
          small changes.
2000-07-11 12:13:53 +00:00
Tim Janik
fc5ee9256d eek, i've never seen a bug here, never been here and never fixed anything
Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
        a bug here, never been here and never fixed anything ;(
        (don't segfault if tree->root_tree is NULL, which happens prior
        to widget realization, but puke instead).
2000-07-11 06:08:24 +00:00
Tim Janik
64911ddc44 add xthickness and ythickness to GtkRcStyle and add the necessary tokens.
Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
        add the necessary tokens.

        * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
        (gtk_rc_style_to_style): copy thicknesses.
        (gtk_rc_init_style): apply thicknesses.
        (gtk_rc_parse_style): parse xthickness and ythickness.

        * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.

        * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new):
        (gdk_window_new):
        (_gdk_windowing_window_init):
        * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new):
        (gdk_pixmap_create_from_data):
        (gdk_bitmap_create_from_data):
        (gdk_pixmap_new):
        * gdk/x11/gdkimage-x11.c (gdk_image_get):
        (gdk_image_new):
        * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new):
        * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new):
        * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
        (gdk_colormap_get_system):
        (gdk_colormap_new):
        * gdk/gdkwindow.c (gdk_window_init):
        * gtk/gtkstyle.c (gtk_style_new):
        * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
        * gdk/gdkpixmap.c (gdk_pixmap_init):
        * gtk/gtkrc.c (gtk_rc_style_new):
        use g_object_new() instead of g_type_create_instance() which
        is a private function for fundamental type implementations.

Tue Jul 11 06:20:14 2000  Tim Janik  <timj@gtk.org>

        * io-gif.c (gdk_pixbuf__gif_image_load_animation):
        * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
        * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
        use g_object_new() instead of g_type_create_instance() which
        is a private function for fundamental type implementations.
2000-07-11 04:46:11 +00:00
Jesus Bravo Alvarez
1e72328181 Updated Galician translation 2000-07-10 21:22:37 +00:00
Owen Taylor
06df244dd5 Add -Wall for gcc.
Sun Jul  9 18:15:58 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in (ACLOCAL): Add -Wall for gcc.

	* src/pixbuf-render.c (pixbuf_render): Fix problem
	using gdk_rectangle_intersect() from GTK+-1.2.

	* src/pixbuf-render.c src/pixbuf-draw.c: Remove
	direct access to pixbuf internals.
2000-07-09 22:18:21 +00:00
George Lebl
c70fd21648 s/Liebl/Lebl/ :) 2000-07-07 18:54:12 +00:00
Owen Taylor
359307231a Add check for db2html
Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Add check for db2html

Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktypeutils.c (gtk_type_init): Add a temporary
	hack to set glib_debug_objects based on gtk_debug_flags.

Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>

	* INSTALL.in: Update the Prerequisites section.

	* Makefile.am demos/Makefile.am docs/Makefile.am
	docs/tutorial/Makefile.am gdk/x11/Makefile.am
	gdk/linux-fb/Makefile.am: Dist fixes
2000-07-06 21:09:25 +00:00
Owen Taylor
d375c92f6c 10,000 foot view of 1.3.1 changes.
Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>

	* NEWS: 10,000 foot view of 1.3.1 changes.
2000-07-06 16:26:39 +00:00
Owen Taylor
0611f06b5a Patch from George Liebl to add a GdkGrabStatus enumeration to use as a
Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
	gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
	gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
	gdk/x11/gdkmain-x11.c:

	Patch from George Liebl to add a GdkGrabStatus enumeration to use
	as a return value of gdk_*_grab(). Previously, we just
	returned the X11 values directly.
2000-07-06 16:20:45 +00:00
Owen Taylor
f60e216527 Patch from George Liebl to install all the headers in the right place.
Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/Makefile.am: Patch from George Liebl to
	install all the headers in the right place.
2000-07-06 15:51:10 +00:00
Owen Taylor
166ba89af8 Use GTK+ version soname scheme for gdk-pixbuf.
Thu Jul  6 11:49:47 2000  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
	soname scheme for gdk-pixbuf.
2000-07-06 15:50:54 +00:00
BST 2000 Tony Gale
f3d8cf9252 Add remaining sections. Completes initial conversion to DocBook.
Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>

	* docs/faq/gtk-faq.sgml: Add remaining sections. Completes
	  initial conversion to DocBook.
2000-07-04 12:14:41 +00:00
Valek Frob
f3f6fa88a5 Updated russian translation. 2000-07-04 10:04:18 +00:00
Tor Lillqvist
186cc0624b Improve a bit.
2000-07-04  Tor Lillqvist  <tml@iki.fi>

* README.win32: Improve a bit.
2000-07-04 06:19:29 +00:00
Tor Lillqvist
a1260f864d Handle also WM_SYSCHAR, and other changes to get handling of Alt+nnn or
2000-07-04  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
WM_SYSCHAR, and other changes to get handling of Alt+nnn or
Alt+0nnn on the numpad (used to enter characters by numeric code
from current DOS or ANSI codepage) working correctly, as in other
Windows apps.

* gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
same argument validity tests as in X11 version.
(_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.

* gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
definitions in case missing from headers.

* gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): ALso
destroy the window-specific cursor.
(RegisterGdkClass): Use the global gdk_ProgInstance instead of
calling GetModuleHandle(NULL).
(gdk_window_set_cursor): Reworked to always copy the passed cursor
with CopyCursor before setting it. It is OK for the caller to
destroy the GdkCursor (and thus also the Windows cursor) after
calling this function. Also, destroy any previous cursor for this
window.

2000-05-29  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
variable should be of type GdkEventPrivate.
2000-07-04 06:12:54 +00:00
Owen Taylor
ceac1c16fd font charset is iso8859-1, not iso-8859-1.
Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
	font charset is iso8859-1, not iso-8859-1.
2000-07-03 21:56:27 +00:00
Owen Taylor
50b1a5a9dc Use g_get_charset() instead of g_get_codeset().
Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
	Use g_get_charset() instead of g_get_codeset().

	* gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h:
	Comment out some strdup'ing functions to keep timj
	happy until we finish fighting this out.
2000-07-03 21:21:25 +00:00
Owen Taylor
01212ce170 Ignore calls with <= width or height.
Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
	<= width or height.

	* gtk/gtktable.c (gtk_table_attach): Fix missed merge
	from 1.2 for parent/child states.

	* gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
	of typos.

	* gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
	event structures, replace with a generic axes field. Replace
	deviceid/source with GdkDevice *device.

	* gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
	to extract particular axis use value from event. (Also
	can be used for normal X/Y.)

	* gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
	allow for arbitrary number of axes, namespace everything
	as gdk_device_*. Replace guint32 deviceid with GdkDevice *
	everywhere.

	* gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}:
	Get rid of the gdk_input_vtable setup if favor of simply
	defining the functions in gdkinput-none/gxi/xfree.c in
	a similar fashion to the way that the port structure is
	done.

	* gtk/gtkdnd.c: Fix fields of synthesized button press event
	for new event structures.

	* gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
	new device interfaces.
2000-07-03 19:00:23 +00:00
Owen Taylor
0c2240ba37 Add a 'text' argument to set the initial text.
Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
	set the initial text.

	* gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
	gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
	gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
	gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().

	* gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
	pango_layout_set_font_description to simplify.
2000-07-02 22:30:54 +00:00
Owen Taylor
4e09f86e48 *** empty log message *** 2000-07-02 22:09:13 +00:00
Owen Taylor
bf87b7c628 Use pango_layout_get_pixel_extents() to remove a large number of '/
Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
	gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
	pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.

	* gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
	PANGO_PIXELS() macro.
2000-07-02 21:32:56 +00:00
Owen Taylor
b02ebc65e4 Call gtk_widget_size_request() on reparented child, if one. Otherwise,
Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call
	gtk_widget_size_request() on reparented child, if one. Otherwise,
	queue_resize() on the child never results in it getting size-requested
	at all.

	* gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
	in option menus, so that (with luck) people won't copy it into
	their apps in the future.

	* gtk/gtkoptionmenu.c: Connect ::size_request on the menu
	to gtk_option_menu_calc_size. This isn't perfect, but should fix
	a lot of problems with changing the size of the menu's menu
	items after adding it to the option menu.

	* gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().

	* gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
	the text direction for a widget changes.

	* gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
	::direction_changed to get rid of various hacks.
2000-07-02 18:41:29 +00:00
Owen Taylor
d2058c2875 Move Changes-1.4.txt to the appropriate name.
Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
	name.
2000-07-02 17:19:45 +00:00
Owen Taylor
fe7fb8c62f Add a is_foreign flag to the structure. Do not call XFreePixmap on pixmaps
Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
	flag to the structure. Do not call XFreePixmap on pixmaps created
	by gdk_pixmap_foreign_new().
2000-07-02 17:16:54 +00:00
Owen Taylor
4f1ccca594 Add gdk_rgb_find_color() to get a pixel value using GdkRGB functionality
Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
	value using GdkRGB functionality given GdkColormap and GdkColor.
	(name not final, waiting for inspiration.)

	* gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
	set the foreground/background of a GC using the GC's colormap
	and GdkRGB. (name not final, waiting for inspiration.)

	* gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from
	gdk_rgb_get_cmap(), put #define in gdkcompat.h.

	* gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
	gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
	purely a function of the corresponding colormap. Make
	gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.

	* gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
	gdk_pixbuf_*create_from_xpm_* in terms of
	gdk_pixbuf_new_from_xpm_data(), move into platform independent
	code.

	* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
	advantage of the new draw_rgb_32_image_dithalign.

	* gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.

	* gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
	on each created GC.

	* gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.

	* gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
	which we initialize from the drawable when the GC is created,
	if the drawable has a colormap.

	* gdk/x11/gdkgc-x11.c: include string.h for memset.

	* gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.

	* gtk/gtklayout.[ch]: Remove unsed configure serial member.
2000-07-02 17:03:21 +00:00
Owen Taylor
7164c0acb1 When actually returning expose events, make sure to set the count field
Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): When
	actually returning expose events, make sure to set
	the count field properly.

	* gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
	accidentally reintroced bug which always cleared
	the graphics_exposures value.
2000-07-01 21:15:05 +00:00
BST 2000 Tony Gale
a893dba084 Change DocBook layout slightly
Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
2000-06-28 17:06:30 +00:00
BST 2000 Tony Gale
09e06dffde Finish Section 6. Add Section 7.
Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
2000-06-28 16:52:06 +00:00
BST 2000 Tony Gale
edacfcb766 Start of Section 6.
Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>

	* docs/faq/gtk-faq.sgml: Start of Section 6.
2000-06-28 12:34:56 +00:00
Owen Taylor
c5c75ece06 Put 1.3.1 in warning message, not 1.3.0.
Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Put 1.3.1 in warning message, not 1.3.0.

        (Fixes problem with drawing childless frames. Pointed out
	by and a first patch from Anders)

	* gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
	compute a child_allocation, even if we don't have a child.

	* gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
	Always chain to the parent's impl, even if we don't have a child.
2000-06-26 23:44:19 +00:00
Owen Taylor
2bb4bcff5d If possible, create only a single shm segment and use multiple parts of it
Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c: If possible, create only a single shm segment and
	use multiple parts of it instead of creating a bunch of separate
	segments, since the maximum number of segments per system is not
	large. (This might be worth backporting to GTK+-1.2.x if we make a
	new release )

	* gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
	structure in preparation for per-colormap GdkRGB.

	* gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
	to False when we get EINVAL from shmget so that the caller of
	gdk_image_new can retry with a smaller segment size.
2000-06-26 22:55:42 +00:00
Havoc Pennington
d872631bae file dialog_default.png was initially added on branch gtk-hp-patches. 2000-06-26 20:28:05 +00:00
BST 2000 Tony Gale
68810d1794 Add Sections 4 & 5.
Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
2000-06-26 12:05:53 +00:00
Tim Janik
af35c6542c remove gtkfeatures. 2000-06-24 22:32:17 +00:00
Tim Janik
100c9594d6 make the current version number 1.3.1 (binary age 0, interface age 0).
Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>

        * configure.in: make the current version number 1.3.1 (binary age 0,
        interface age 0).

        * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
        gtkcompat.h is all we want.

        * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
        GLib primitive types. fixed g_type_register_fundamental() argument
        ordering.

        * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
        compiles.

        * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
        object code cleanup, comment trigraph fixes, etc...
2000-06-24 22:32:05 +00:00
Andraz Tori
3ef478ecd7 Updated Slovenian translations 2000-06-24 08:03:39 +00:00
Havoc Pennington
797642a563 Use anonymous mark instead of making up a bogus name for first_para_mark
2000-06-23  Havoc Pennington  <hp@redhat.com>

* gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark
instead of making up a bogus name for first_para_mark

* gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow
0 as a context ID
2000-06-23 19:41:56 +00:00
Havoc Pennington
a626ad31e8 - A number of types in GDK have become subclasses of GObject. For the
most part, this should not break anyone's code. However, it's now
    possible/encouraged to use g_object_ref()/g_object_unref() and other
      GObject features with these GDK types. The converted types are:
        GdkWindow, GdkDrawable, GdkPixmap, GdkImage, GdkGC, GdkDragContext,
	  GdkColormap

	  - All drawables including pixmaps used to have a type tag, the
	    GdkWindowType enumeration, which included GDK_WINDOW_PIXMAP.
	      GdkWindowType is now a property of GdkWindow _only_, and there is
	        no GDK_WINDOW_PIXMAP. You can use the GDK_IS_PIXMAP() macro
to see
  if you have a pixmap, if you need to know that.

  - GtkStyle and GtkRcStyle are now subclasses of GObject as well.
    This breaks theme engines quite badly, but shouldn't affect most
      other code.

      - xthickness/ythickness have moved from GtkStyleClass to GtkStyle
        (from class to instance). This gives themes a bit more flexibility
	  and is generally more of the Right Thing. You can trivially fix
	    your code with s/style->klass->xthickness/style->xthickness/g and
	      same for ythickness.
2000-06-23 18:41:16 +00:00
Christopher R. Gabriel
eef2692ad6 updated italian translation
2000-06-23  Christopher R. Gabriel  <cgabriel@mixadlive.com>

        * it.po: updated italian translation
2000-06-23 03:03:50 +00:00
BST 2000 Tony Gale
8aeed4867c Change filename. Add Section 3.
Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
2000-06-22 16:46:25 +00:00
Havoc Pennington
3a422541e3 Convert GdkPixbuf to GObject, leaving it opaque (i.e. derivation is not
2000-06-21  Havoc Pennington  <hp@pobox.com>

* gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
(i.e. derivation is not allowed, and there are no virtual methods
anyway).
(gdk_pixbuf_preinit): Call g_type_init() here.
(gdk_pixbuf_init): Add a user-friendly init function, for users
of standalone gdk-pixbuf

* gdk-pixbuf-animation.c: Convert to GObject, in the same
way GdkPixbufAnimation was done.

* gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
gdk_pixbuf_finalize() from API, since these are broken and don't
make sense with new GObject stuff.

2000-06-21  Havoc Pennington  <hp@pobox.com>

* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
we didn't check window->bg_pixmap != GDK_NO_BG.

* gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
gdk-pixbuf
2000-06-22 15:36:12 +00:00
BST 2000 Tony Gale
7b6c38f544 Move file to here. TODO: Update Makfile.am
Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgm: Move file to here.
          TODO: Update Makfile.am
2000-06-22 13:05:24 +00:00
BST 2000 Tony Gale
c4018b0221 Add Section 2
Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>

        * docs/gtk-faq.sgm: Add Section 2
2000-06-22 12:43:24 +00:00
BST 2000 Tony Gale
527b872757 New file. Start of DocBook version of the FAQ.
Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>

        * docs/gtk-faq.sgm: New file. Start of DocBook
          version of the FAQ.
2000-06-22 07:46:38 +00:00
Owen Taylor
cef3331e64 Define version numbers for GDK_PIXBUF_*, as they get substituted into a
Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in (GDK_PIXBUF_MAJOR): Define version
	numbers for GDK_PIXBUF_*, as they get substituted
	into a header file. Need to consider versioning
	for gdk-pixbuf more carefully later.
2000-06-22 03:06:30 +00:00
Raja R Harinath
30bd71e2ae Work with srcdir != builddir.
* demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
<gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
* demos/testpixbuf.c: Likewise.
* demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
* demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
<gdk/x11/gdkx.h>.
* demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
"gdk-pixbuf.h".
* demos/Makefile.am (INCLUDES): Remove unneeded directories.
2000-06-22 00:05:44 +00:00
Owen Taylor
8a7664a1ae Change 1.4 version numbers to 2.0.
Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>

	* TODO.xml: Change 1.4 version numbers to 2.0.
2000-06-21 23:45:41 +00:00
Owen Taylor
ba55612d48 Indentation fixups to GTK+ standard.
Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
	fixups to GTK+ standard.
2000-06-21 23:29:51 +00:00
Owen Taylor
11056f564b Welcome aboard, gdk-pixbuf.
Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
	gdk-pixbuf.

	* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
	fixups for GObject.

	* gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of
	gdk-pixbuf with GDK dependencies moved into GDK.

	* gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
	move gdk-pixbuf-loader here until GObject has signals.

	* demos/: New directory of demos. Move demos from
	gdk-pixbuf here.

	* demos/pixbuf-init.c: Small bit of code to check for
	loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
	set GDK_PIXBUF_MODULEDIR appropriately.

	* gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
	define which no longer makes sense.
2000-06-21 20:47:22 +00:00
Havoc Pennington
443e8c395e Use gtk_get_default_language
2000-06-21  Havoc Pennington  <hp@redhat.com>

* gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
gtk_get_default_language

* gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language):
new function to get the default language

* gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c:
s/gtk_text_view_style_values/gtk_text_style_values/

* gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
Add a "language" field to tags.

(gtk_text_tag_set_arg): Fix bug in setting
"bg_full_height_set" tag.
2000-06-21 20:41:15 +00:00
Owen Taylor
f534125777 Revert accidental changes from Federico's last commit.
2000-06-21  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixbuf/testpixbuf-scale.c: Revert accidental changes
	from Federico's last commit.
2000-06-21 19:48:47 +00:00
Havoc Pennington
ee0895169d Use gunichar instead of gint when appropriate in the interfaces
2000-06-21  Havoc Pennington  <hp@redhat.com>

* gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
in the interfaces

* gtk/gtktexttypes.c: Remove UTF functions, use glib
stuff instead when possible.

* gtk/gtktexttypes.h: Delete some unused constants

* gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
testtextbuffer.c: use glib instead of custom unicode routines
2000-06-21 18:51:36 +00:00
Owen Taylor
39440b43cd Removed mistakenly added generated sgml
Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>

	* docs/es/: Removed mistakenly added generated sgml

	* docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
	Remove outdated info files.

	* docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
	Moved tutorial files into subdir

	* docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
	subdir.

	* docs/man/gtk_button.pod: Remove. (contents will be
	integrated into gtk-reference button page.)

	* configure.in docs/Makefile.am docs/tutorial/Makefile.am
	docs/faq/Makefile.am: Adjust for new organization
2000-06-21 18:18:00 +00:00
Christopher Blizzard
e01a43253a use $(mkinstalldirs) not $(MKINSTALLDIRS)
2000-06-21 Christopher Blizzard  <blizzard@redhat.com>

        * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
        not $(MKINSTALLDIRS)
2000-06-21 16:44:40 +00:00
Owen Taylor
c319839d8e Finish the job Elliot started of removing font setting test for text
Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (create_text): Finish the job Elliot started
	of removing font setting test for text widget. (Since text widget
	and GdkFont are not deprecated, and cause portability problems.)
2000-06-21 16:26:50 +00:00
Owen Taylor
dd46dfaae3 .cvsignore additions 2000-06-21 16:21:15 +00:00
Owen Taylor
2a98bc6a31 Remove use of libunicode in favor of new GLib functions.
Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
	gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
	Remove use of libunicode in favor of new GLib functions.

	* gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
	nano-x, framebuffer. The X11 include is just a hack until we get
	the necessary functions in gdkcolor.h, so there is no reason to
	add other includes of platforms.

	* gtk/gtkwindow.c (gtk_window_compute_default_size): Revert
	window bigger than the screen change.

        * gtk/testgtk.c: Revert some random changes from Elliot
	that had no particular point and were causing testgtkrc
	not to function correctly.

	* gdk/gdkregion-generic.h: Revert change from Elliot. Just
	because GdkSegment and GdkRegionBox have the same fields,
	it doesn't mean that 'typedef GdkSegment GdkRegionBox'
	results in clearer code.

	* gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
	gdk_input_translate_coordinates): Fix missed GdkObjectification
2000-06-21 16:19:59 +00:00
Jing-Jong Shyue
8a01e98fdf Triditional Chinese PO File 2000/06/21 2000-06-21 07:06:01 +00:00
Elliot Lee
2a1b3edd18 Fix conditionality to work the "right" way. Missed commits from previous.
2000-06-18  Elliot Lee  <sopwith@redhat.com>

* gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
* gtk/gtk{plug,socket}.h: Missed commits from previous.
2000-06-20 22:24:49 +00:00
Havoc Pennington
df4fc36721 Make this compile without framebuffer enabled
2000-06-20  Havoc Pennington  <hp@redhat.com>

* modules/linux-fb/Makefile.am: Make this compile
without framebuffer enabled

* gdk/linux-fb/Makefile.am: Add conditional to not build
framebuffer unless specified in configure

* gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
the size of the target instead of source if -1 was passed for
width/height

* gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
width/height confusion.

2000-06-19  Havoc Pennington  <hp@redhat.com>

* gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
GDK_DRAWABLE_XID. In the future, we probably want to make it
faster with G_DISABLE_CHECKS turned on.

2000-06-14  Havoc Pennington  <hp@redhat.com>

        * gdk/Makefile.am: add gdkpixmap.c

	* gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
	s/gdk_image_init/_gdk_windowing_image_init

	* gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
	ref/unref

	* gdk/gdkcolor.h: make GdkColormap a GObject subclass

	* gdk/gdkcompat.h: remove GdkWindowType compat, since
	GdkWindowType is now non-deprecated;
	change gdk_window_get_type() compat to be
	gdk_window_get_window_type().

	* gdk/gdkdnd.h: make GdkDragContext a GObject.

	* gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
	virtual GObject. Make all functions call into the vtable.
	Move gdk_image_put() guts in here. Remove GdkDrawableType
	and gdk_drawable_get_type(), these are now GdkWindow-specific.
	draw_image, get_depth, get_size, set_colormap, get_colormap,
	get_visual added to the vtable.

	* gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
	GObject. Virtualize everything.
	(gdk_gc_new_with_values): remove check for destroyed window,
	because now GdkWindow::create_gc will check this.
	(gdk_gc_set_values): New function to set GC values, this
	was already implemented but wasn't in the header

	* gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.

	* gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
	_gdk_window_draw_image(), remove _gdk_windowing_window_class,
	remove _gdk_window_class; add _gdk_window_impl_get_type() and
	_gdk_pixmap_impl_get_type(). Rename gdk_window_init to
	_gdk_windowing_window_init, rename gdk_image_init to
	_gdk_windowing_image_init.

	* gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
	(gdk_draw_layout): Remove check for destroyed window,
	because all the drawable methods already check it.

	* gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
	Add gdkpixmap.c which contains implementation of GdkDrawable
	virtual table (by chaining to a platform-specific implementation
	object).

	* gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
	GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
	GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
	GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
	GdkColormapPrivate.

	* gdk/gdktypes.h: #include <glib-object.h>

	* gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
	Move most functionality to platform-specific implementation
	object. GdkWindow itself now handles the backing store, then
	chains to the platform-specific implementation.
	(gdk_window_get_window_type): return GdkWindowType of the window.
	(gdk_window_peek_children): New routine, returns the children of
	a GdkWindow
	(gdk_window_get_children): Was in X11-specific code and did
	XQueryTree. Changed to simply return a copy of window->children;
	so it can go in cross-platform code.

	* gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path

	* gdk/x11/gdkcolor-x11.c: implement X-specific parts of
	GdkColormap; just changed to use the new private data instead
	of casting to GdkColormapPrivate.

	* gdk/x11/gdkcursor-x11.c: added a couple typechecks to
	gdk_cursor_new().

	* gdk/x11/gdkdnd-x11.c: Change the way we access private fields
	(private data member in the GObject).
	(xdnd_manager_source_filter): Function had broken
	error handling, fix it (use gdk_error_trap_push).

	* gdk/x11/gdkdrawable-x11.c: This file now implements
	a base class for GdkWindowImplX11/GdkPixmapImplX11. This
	base class is purely for the convenience of the X port,
	and not part of the interface to cross-platform GDK.

	* gdk/x11/gdkevents-x11.c: Reflect various renamings.

	* gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
	specific to X, and returned by the create_gc virtual method
	of GdkDrawableImplX11.
	(gdk_x11_gc_set_dashes): Change this to take an array of gint8
	rather than gchar, this was also changed in the GdkGC vtable.
	(gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
	mask is 0, return immediately, instead of checking every flag.
	This is faster, and keeps us from segfaulting if values is NULL
	and the mask contains some nonzero flags.

	* gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
	GdkWindow.

	* gdk/x11/gdkglobals-x11.c: change type of grab window, since
	GdkWindowPrivate is gone.

	* gdk/x11/gdkim-x11.c: rename things that got renamed.

	* gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
	remove the image_put stuff that got transferred to GdkDrawable.

	* gdk/x11/gdkinput.c: renamings

	* gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>

	* gdk/x11/gdkpixmap-x11.c: GObject conversion

	* gdk/x11/gdkprivate-x11.h: indentation fixes

	* gdk/x11/gdkproperty-x11.c: renamings

	* gdk/x11/gdkselection-x11.c: renamings

	* gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
	implements the platform-specific "impl" object.
	Moved gdk_window_get_children to gdk/gdkwindow.c

	* gdk/x11/gdkx.h: Remove all the private structs and private datas
	that no longer exist. Add declaration of GdkGCX11 object here.
	Fix all the macros to still work.

	* gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
	GdkDragContext from the boxed types since they are now GObjects.

	* gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
	moved xthickness/ythickness into the instance. GtkStyleClass
	functions are now in the standard vtable for GtkStyle, so you have
	to create a GObject subclass to write a theme engine.
	(gtk_style_copy): fixed a leaked PangoFontDescription
	(gtk_style_init): renamed gtk_style_realize, so gtk_style_init
	can be the standard GObject function.

	* Throughout GTK:
	s/style->klass->[xy]thickness/style->[xy]thickness
	s/pango_layout_unref/g_object_unref/

	* gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.

	* gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
	accessing GDK internals.

	* gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
	accessing GDK internals.
2000-06-20 21:04:44 +00:00
Elliot Lee
2ad30e9fc1 Oops.
Oops.
2000-06-20 20:51:29 +00:00
Elliot Lee
8f4f35b392 (follow-on from previous commit)
(follow-on from previous commit)
2000-06-18  Elliot Lee  <sopwith@redhat.com>

* gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.

* gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
problem by calculating event position relative to the trough
rather than the slider.
* gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.

* gdk/gdkgc.h: Add GDK_NOR.
* configure.in, Makefile.am: Add modules top level dir
* configure.in: Only use pangox library if building x11 target.
* gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
2000-06-20 20:22:05 +00:00
Elliot Lee
dd7510dccb *** empty log message *** 2000-06-20 20:20:38 +00:00
Pablo Saratxaga
2eb7985b0b removed the trailing space after a '\' 2000-06-19 21:43:05 +00:00
Christopher Blizzard
f327889ac4 Change private class member to be named private_data throughout the file.
Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>

        * gtk/gtkcolorsel.c: Change private class member to be named
        private_data throughout the file.

        * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
        private_data to avoid clashing with keyword.

Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>

        * gdk/gdkdnd.h: Add comment to remove warning.
2000-06-19 03:00:56 +00:00
Pablo Saratxaga
4060ae7bd1 moved gtkrc.bg to more generic gtkrc.cp1251 2000-06-18 13:40:50 +00:00
Owen Taylor
bae5667ca3 Call gdk_window_withdraw rather than gdk_window_hide; this makes things
Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
	rather than gdk_window_hide; this makes things work
	correctly if the window is programmatically hidden while
	iconified.
2000-06-12 21:08:07 +00:00
Christopher Blizzard
8b72011482 forgot to commit my ChangeLog changes when I checked in a couple of days ago 2000-06-12 21:08:05 +00:00
Owen Taylor
cbe220de09 Call gdk_window_withdraw rather than gdk_window_hide; this makes things
Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
	rather than gdk_window_hide; this makes things work
	correctly if the window is programmatically hidden while
	iconified.
2000-06-12 21:08:05 +00:00
Federico Mena Quintero
9df3e65391 It was cold and rainy this Saturday morning, so I needed something to warm
2000-06-10  Federico Mena Quintero  <federico@helixcode.com>

	* demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
	so I needed something to warm my thighs.  Running plain infinite
	loops on your laptop to make it hot is not very much fun.  A demo
	of the gdk-pixbuf scaling functions is way better, and looks
	prettier, too.

	* configure.in (AC_OUTPUT): Added the demo Makefile.

	* Makefile.am (SUBDIRS): Added the demo directory.
2000-06-11 18:18:28 +00:00
Owen Taylor
62e5119872 Fix cut and paste typo where wrong pixmap was being unref'ed. (Pointed out
Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
	cut and paste typo where wrong pixmap was being
	unref'ed. (Pointed out by a friend of KUSANO Takayuki.)

Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c (gtk_selection_bytes_per_item):
	Add helper function to compute format / bytes
	relationship. Use in a couple places to fix up
	errors which assume 8 * format.

	* gtk/gtkselection.c (gtk_selection_request): Use 32
	rather than 8 * sizeof (GdkAtom), to work correctly
	on Alpha.
2000-06-11 18:06:04 +00:00
Larry Ewing
b166924b0c setjmp for the png error handler. It seems setting the error handling
2000-06-09  Larry Ewing  <lewing@helixcode.com>

	* gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
	setjmp for the png error handler.  It seems setting the error
	handling functions does not avoid the jump, and so not calling
	setjmp was causing the incremental loader to jump into lala land.
	(gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
	not sure this one is actually required but the docs say it must be
	set for every call to a png_* function.
	Also changed the comment to reflect the fact that setting the
	error handlers does _not_ avoid the longjmp.
2000-06-09 19:41:29 +00:00
Christopher Blizzard
40298ef908 deps include libgtk-x11.la, not libgtk.la (LDADDS): include libgtk-x11.la
Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>

	* gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
	libgtk.la
	(LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
	versions

	* gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
	checking macros return NULL since the function has a return value.
2000-06-09 02:05:17 +00:00
Elliot Lee
ba0567786b Save cflags for all backends, not just X11.
Save cflags for all backends, not just X11.
2000-06-08 22:52:21 +00:00
Elliot Lee
d23c74dd44 Use $PANGO_CONFIG instead of pango-config
* configure.in: Use $PANGO_CONFIG instead of pango-config
2000-06-07 21:39:09 +00:00
Owen Taylor
60d3ad3e0b Add missing backslash that was keeping GTK+ from building at all.
Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
	GTK+ from building at all.

	* gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
2000-06-07 19:45:21 +00:00
CEST 2000 Paolo Molaro
4bacc3ecd0 make it possible to configure gtk for different targets on the same
Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>

	* configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
	gtk/Makefile.am: make it possible to configure gtk for different
	targets on the same platform. The library name is now
	libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
	flag. Only the x11 target compiles right now.
	* gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
	gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
	* gdk/nanox/gdk*generic*: delete generic region code.
	* gdk/linux-fb/gdk*generic*: delete generic region code.
	* README.nanox: update information.
2000-06-07 16:44:29 +00:00
Havoc Pennington
544b6cb26e file gdkpixmap.c was initially added on branch gdk-object-with-pango. 2000-06-07 16:31:41 +00:00
Larry Ewing
315c3511be slight changelog fixups.
--Larry
2000-06-06 20:41:23 +00:00
Larry Ewing
93d6686ce9 take frame offest into account when trying to calculate the animation
2000-06-06  Larry Ewing  <lewing@helixcode.com>

	* gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
	take frame offest into account when trying to calculate the
	animation bbox.  Also set the width to the width not the height.
	(gdk_pixbuf_loader_frame_done): cycle over the frames to calculate
	bbox since only now do we have all the offset information for each
	frame.
2000-06-06 20:37:28 +00:00
Mathieu Lacage
65c1ef36ad one more patch for strange prefixes around... getting tiring... 2000-06-06 16:41:09 +00:00
Owen Taylor
caf18947ca Fix to prepend not append. (Pointed out by Brett Hall.)
Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
	prepend not append. (Pointed out by Brett Hall.)
2000-06-06 14:55:26 +00:00
Owen Taylor
a03f62c641 Unref the entry's layout.
Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
2000-06-06 02:02:04 +00:00
Owen Taylor
3a917e9da7 Add call to g_type_init() - we'll need this later, and this makes sure
Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
	need this later, and this makes sure that the atexit for
	glib gets called after that for GDK, so atexits are
	properly ordered for object leak checking.

	* gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().

	* gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call
	pango_x_shutdown_display()

	* gtk/simple.c (main): Close window on destroy.
2000-06-06 00:56:00 +00:00
Owen Taylor
eaa77a4754 We need to treat initial creation different from setting with regards to
Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
	to treat initial creation different from setting with
	regards to the graphics-exposures parameter, so add a parameter
	indicating whether this is initial or not.
2000-06-05 15:54:32 +00:00
Owen Taylor
eb34d19399 Hack gdk_event_get_graphics_expose() to sort of work by adding an extra
Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
	to sort of work by adding an extra return_exposes arg
	to gdk_event_translate() - it might be better to simply
	deprecate the function altogether and force people to rewrite
	without it. gdk_window_scroll() handles most of it, and where
	gdk_window_scroll() doesn't work, simply redrawing more does.

	* gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
	assertion.

	* gtk-config.in: Include PANGO_CFLAGS/LIBS.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a
	bunch of pretty much useless /* Print debugging info */ comments
	which had drifted away from the code they were commenting.
2000-06-05 15:24:59 +00:00
Owen Taylor
f6b5d39189 Fix gdk_pointer_grab description
Mon Jun  5 11:17:25 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/tmpl/general.sgml: Fix gdk_pointer_grab description
2000-06-05 15:18:20 +00:00
Damon Chaplin
e79504746a added a note about no-window widgets.
2000-06-14  Damon Chaplin  <damon@helixcode.com>

	* gtk/tmpl/gtktooltips.sgml: added a note about no-window widgets.
2000-06-05 15:18:19 +00:00
Owen Taylor
c76e9c5e75 Fix gdk_pointer_grab description
Mon Jun  5 11:17:25 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/tmpl/general.sgml: Fix gdk_pointer_grab description
2000-06-05 15:18:19 +00:00
Valek Frob
7d7ecf515a Updated russian translation. 2000-06-03 14:49:32 +00:00
Havoc Pennington
e86329d5d4 Test program to make sure GtkTextBuffer is in working order.
2000-06-02  Havoc Pennington  <hp@pobox.com>

        * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
	is in working order.

	* gtk/testtext.c: Change to reflect anonymous mark API

	* gtk/gtktextview.c: Convert from mark names to GtkTextMark*.

	* gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
	field, which was unused.

	* gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
	saves some typing.

	* gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*

	* gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
	flag on the insertion point and selection bound

	Throughout, use GtkTextMark instead of GtkTextLineSegment, and
	make mark-manipulation functions take a GtkTextMark* instead of a
	mark name.

	* gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to
	GtkTextMarkBody; will be used to detect attempts to delete
	the permanent marks (insert and selection bound)
2000-06-02 17:27:21 +00:00
Owen Taylor
bb77f4e6b9 Initialize DOUBLE_BUFFERED flag to on.
Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
	flag to on.

	* gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event):
	Honor DOUBLE_BUFFRED_FLAG

	* gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
	function to set the DOUBLE_BUFFERED flag.

	* gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
	or not exposes done on the widget should be double-buffered.

	* gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
	to be what would be expected. (Fixes problem with a
	g_return_if_fail() validating a TextDirection enumeration)
2000-06-02 17:02:16 +00:00
Havoc Pennington
9ae724bf4d Remove all references to offscreen flag which was no longer used.
Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c: Remove all references to
	offscreen flag which was no longer used.

	* gtk/gtkprivate.h (enum): Remove unused flags and compress.

	* gtk/gtkframe.c (gtk_frame_set_label_widget): Check
	for non-null label_widget->parent.

	* gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
	which no longer was used.

	* gdk/gdkpango.c (gdk_pango_context_get_info): make static.

	* gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
	for null arguments.

	* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
	check for destroyed windows.

Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmulticontext.c: Add a finalize method and unref
	the slave context there.

	* gtk/gtkinvisible.[ch]: Make reference counting behavior
	identical to GtkWindow.

Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am gdk/gdkpango.c: Copy the layout render function from
	pangox to here, so we can write them independent of rendering
	system, using GDK primitives.

	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
	gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
	since we have a rendering-system independent implementation in
	terms of draw_glyphs().

	* gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
	function to render a single line.

	* gdk/x11/gdkpango.c: Move the guts of this file mostly
	into ../gdkpango.c, which simplifies things, since we
	don't have to deal with raw X gc's.

Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
	get the logical attributes for a given GtkTextLine.

Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
	g_locale_get_codeset() to g_get_codeset() change.

Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/testcalendar.c (calendar_font_selection_ok): Use font
	descriptions.

	* gtk/gtkentry.c (gtk_entry_draw_text): Center text within
	the entry.

	* gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
	redoing (vastly simplifying) for Pango. Still needs quite
	a bit of work. (Size selection is currently poor. List of
	predefined sizes is not a good idea, since all of these
	sizes won't necessarily be distinct.)

Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
	CODESET results for LANG=C.

Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
	which takes a stringized pango font description;
	ignore the older 'font' and 'fontset' declarations.

	* gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
	field with a GdkFont derived via gdk_font_from_description(),
	for compatibility. (Should we just remove it entirely?
	Probably too much compatibility breakage, but people
	should be migrating to the new Pango stuff as quickly
	as possible.)

Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.

Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcalender.c: Roughly pango-ized. Really needs
	redoing; there are some bugs in size allocation right
	now, the semi-existant distinction between header / day
	fonts was removed, but, with Pango, could actually
	be made functional in a nice way.

	* gtk/testcalender: Move calender from examples into this
	directory as a test program. (We really need to restrcture
	testgtk into a whole directory full of tests for every
	widget or functionality group, separated into multiple .c
	files.)

Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (file_exists): Fix stupid typo that
	was keeping RC file from being loaded.

	* gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
	RC file font code.

Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
	Add function to load a GdkFont from a PangoFontDescription.

Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
	to have any widget for the label, use a GtkLabel widget
	to display the text. (Based partially on a patch from
	Anders Carlson.)

	(Quite a bit of code reorganization - strip 90% of the
	guts out of gtkaspectframe and add a single virtual
	func to GtkFrameClass - compute_child_allocation.)

Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
	(Removed clist->row_center_offset field because caching
	it wasn't saving time or code, added private function
	_gtk_clist_create_cell_layout()).

Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccellabel.c: Pangoized.

	* gtk/[hv]ruler.c: Pangoized

Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_init):
	Use gtk_clist_set_column_auto_resize() to remove need
	need for manual column width computations.

Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
	ensuring Pango correctness, and considerably simplifying the
	code.

	* gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.

	* gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
	getting of numbers of lines.

	* gtk/gtklabel.c (gtk_label_size_request): Set the requisition
	to the actual requested width of the lable, not to the wrap
	width we set.

	* gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.

	* gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
	  gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.

	* gtk/gtktextview.c: Fix structure inheritance.

	* gtk/gtkprogressbar.c: Pangoize.

Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
	in a function.

	* gtk/gtktextlayout.c (find_display_line_above): Fixed
	bug with computing line tops.

	* gtk/gtktextview.c (changed_handler): Fix < , <= confusion.

Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
	and y_offset coordinates to do what we need now. (The offset between
	buffer and layout coordinates has been reintroduced, but is a
	bit different than before.)

	* gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
	handle the adjustments ourselves, and scroll as necessary using
	the new gdk_window_scroll().

	The advantage of this is that when we are incrementally revalidating,
	we are essentially rearranging things around the visible portion
	of the screen. With the old setup, the visible portion of the
	screen was moved around in the layout, so scrolling and redrawing
	to track that caused jumping of the display. Since we now
	control the scrolling ourselves, we can suppress this and
	only redraw when things actually change.

Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
	the region not just redisplay it after-all, since we store the
	cursors in the LineDisplay. (Ugly interactions here between
	GtkLayout and GtkTextBTree here.)

	* gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.

Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
	Added function to scroll contents of a window while keeping the
	window constant. Works by XCopyArea or guffaw-scrolling depending
	on the details of how the window is set up. (guffaw-scrolling
	still needs to be filled in.)

Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
	move the debugging that was tied to a global variable
	to that.

	* gtk/gtkmarshal.list: Add NONE:INT,INT,INT

	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
	validated flag, in line data instead of setting height/width to
	-1. This allows us to perform operations with partially invalid
	buffer (using the old size for invalid lines) and thus to do
	incremental vaidation. Keep height/width aggregates up to date
	when deleting text and rebalancing the tree.

	* gtk/gtktextbtree.[ch]: Add functions validate a line
	(gtk_text_btree_validate_line), and to validate up
	to a number of pixels (gtk_text_btree_validate).

	* gtk/gtktextlayout.[ch]: Add an ::invalidated signal
	that indicates that something is changed and a revalidation
	pass is needed. Change ::need_repaint to ::changed, and
	make it take old and new yranges instead of a rectangle.

	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
	the line_data_destroy() function from
	gtk_text_btree_add_view() to a virtual function in
	GtkTextLayout

	* gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
	since we are handling partial repaints in a different fashion
	now.

	* gtk/gtktextbtree.[ch]: Only repaint the changed portion
	of the selection instead of queueing a repaint on the
	entire widget.

	* gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
	get_selection_bounds() down to btree, make the function
	in buffer a wrapper around the btree function.

	* gtk/gtktextlayout.[ch]: Add functions to check if the
	layout is valid and to recompute either a range of pixels
	aroudn a line or a certain total number of pixels.

	* gtk/gtktextlayout.[ch]: Cache a single line display;
	now that we only redraw the needed portions, the hit rate
	for this cache is quite high.

	* gtk/gtktextview.[ch]: Keep track of the first paragraph
	on the screen so that when re-laying-out the buffer, we can
	keep the same place. This requires connecting to ::value_changed
	on the adjustments

	* gtk/gtktextview.[ch]: Add idle functions to revalidate
	the buffer after we receive an ::invalidated signal.

Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
	to max of allocation and layout size, not just to the
	layout size.

	* gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
	Invalidate window so it gets redrawn properly.

	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
	to mean the entire window.

	* gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
	into public header.

Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
	to get the name of a mark.

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
	to find the paragraph from a y position.

Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
	nodes have width/height >= 0, not > 0.

Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
	Add a size_only flag, so when we only need the size, we don't create
	useless appearance attributes.

	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
	duplicate setting of font description.

	* gtk/gtkscale.c: Use PANGO_SCALE instead of 1000

Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
	EXTRA_DIST. It does not work well when the file that
	everything depends on is not in the tarball.

Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c: Some hacks and fixes so that it basically
	works when not sitting in the GTK+ build tree.

2000-05-03  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
	Properly determine the ordering of the tag root and the current
	line within the tree. Previous algorithm only worked if the tag
	root's immediate parent was the common root of both the current
	line and the tag root.

Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (set_para_values): Fix some bugs in
	alignment.

	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
	the widget text directional dynamically.

	* gtk/gtktextview.[ch]: Added functions to get and set default
	wrap mode.

Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
	in cursor location computation.

Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
	vadjusment values properly when layout gets smaller.

	* gtk/gtktextview.c (need_repaint_handler): Areas being
	passed in are far completely inaccurate, and sometimes
	too small, so, for now, just queue a redraw on the
	whole visible region.

2000-04-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (summary_destroy): new function to
	destroy tag summary nodes
	(gtk_text_line_next_could_contain_tag): this function was
	totally broken if the line passed in wasn't below the tag
	root. Fix it.
	(gtk_text_btree_first_could_contain_tag): In the tag == NULL
	"wildcard" case, we have to do a linear scan. Blah.
	(gtk_text_btree_last_could_contain_tag): In tag == NULL case,
	we have to do the linear scan
	(tag_removed_cb): When a tag is removed from the tag table,
	remove the GtkTextTagInfo node from the btree.
	(gtk_text_btree_spew): Implement the spew function, for
	our debugging pleasure.

Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
	a problem with referring to the wrong buffer.

	* gtk/gtkentry.c: Fix focus-in/focus-out confusion.

	* gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
	font description to gtk_style_new() - otherwise things
	don't work without a .gtkrc file.

	* gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
	tags table if we create it ourself, too.

	* gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
	it was conflicting with XKB modifiers.

	* gtk/gtktextview.[ch]: Add simple support for
	GtkIMContext.

Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
	with deletion from last commit.

Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
	in the context from the current locale.

	* gtk/gtkentry.c (gtk_entry_size_request): Use language from the
	context, not hardcoded value.

	* gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
	not logical.

Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
	attributes - that doesn't handle partial-glyph selection
	properly. Instead use new pango_layout_line_get_x_ranges()
	functionality to draw the selection.

	* gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
	now properly handles out-of-range coordinates.

	* gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.

	* gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
	public.

	* gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
	for paragraphs opposite to the base direction of the widget.

	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.

	* gtk/gtktextlayout.c: Don't split segments on marks, since that
	causes Arabic words to reshape as you cursor through.

	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
	cursor position when moving vertically with the arrow keys and
	scrolling with page-up/page-down. (Arrow keys save only the X,
	scrolling saves both X and Y.)

	This means you can line-up / line-down or page-up / page-down
	without losing your place, and also that moving vertically
	with the cursor keys keeps the same X position, not the same
	character count:

	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
	arrow keys move by display lines, not paragraphs.

Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.c: Make sure that the bin window is at least
	as big as the allocation. (Should we also make sure that the
	bin window is big enough to completely cover widget->window?)

	* gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
	function to get the onscreen rectangle.

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
	for offsets in window coordinates.

Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
	confusion.

	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
	from the widget direction.

	* gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
	Add a "direction" attribute.

	* gtk/gtktextview.c: global s/tkxt/text_view/.

	* gtk/testtext.c: Added long block of text in Arabic, to test out
	the direction attributes. (Some problems with the shaping system
	for arabic become obvious - like the fact the cursor splits words
	into unjoined pieces.)

Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextdisplay.c (render_layout): Add overstrike handling.

	* gtk/gtktextlayout.c: Fix up alignment.

	* gtk/testtext.c: Add some tests for centering, wrapping.

Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
	Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
	If we wrote GTK+-specific layout-render function this could just replace
	the draw_layout() operation in the vtable.

	* gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
	pango_layout_get_cursor_pos() and use that function.

	* gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
	is a non-static symbol.

	* gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
	with gtk_text_btree_find_line_by_y()

	* gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
	renderer that handles GtkTextAppearance attributes.

	* gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:

	  - Move the values in the style that don't affect geometry into a
	    GtkTextAppearance structure.
	  - Change underline to take a PangoUnderline and "font" a string
	    representation of a font description
	  - Add a "font_desc" attribute which takes a FontDescription structure.

	* gtk/gtktextlayout.[ch]:

	  - Get rid of the display-line list per each line. Instead, we
	    generate, on demand, a GtkTextLineDisplay structure which]
	    contains a PangoLayout * and other necesary information
	    (offsets, cursor locations) for displaying a paragraph.
	  - Get rid of the code to wrap lines, create display chunks,
	    etc. Instead, we just go through a paragraph and convert
	    it into the necessary inputs to a PangoLayout.
	  - Implement a new attribute type, GtkTextAttrAppearance. This
	    holds a GtkTextAppearance, and is used to pass colors,
	    stipple, etc, through from the layout to the display without
	    having to use lots and lots of individual attributes.
	  - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
	    in terms of PangoLayout functions.

	* gtk/gtktextview.c:

	  - Handle passing the necessary PangoContext to the layout
	  - Some fixups in painting to deal with the automatic backing store
	    and offsetting of GTK+-1.4
	  - Add a style_set handler so that the default style reacts
	    properly to theme changes.

	* gtk/gtktext?*.[ch]: Random code-style fixes.

	* gtk/testtext.c: Substitute in languages that Pango handles now for Thai

Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
	in original form preparatory to Pango-ization and gdkimcontext-ization.

Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
	so that we can derive from gtkimcontext in language bindings properly.

Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
	Add a compose table including (almost) all the compose combinations
	from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
	data in the XIM implementation.

	* gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
	Moved functions to convert keyvalues from and to unicode here from
	the win32 port and made them public.

Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.

Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontext.[ch]: Base class for new input context system

	* gtk/gtkimmulticontext.[ch]: Proxy input context that allows
	the real input context implementation to be loaded from modules
	and switched on the fly.

	* gtk/gtkcontextsimple.[ch]: Simple implementation of an input
	context that just does direct keysymbol => unicode translation.

	* gtk/gtkentry.[ch]: Start switching editing over to using
	GtkInputContext. (No handling of preedit yet.)

Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
	many substitutions. (klass should not be subsituted.)

Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Add checks for Pango

	* configure.in docs/Makefile.am: Add test for sgml2html
	and allow 'make dist' without building html, but print out
	warnings in that case. (For making snapshots)

	* gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
	Add Pango libraries and C flags

	* gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
	Add function (gdk_draw_layout) to draw a pango layout.

	* gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
	for getting Pango contexts for GDK.

	* gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()

	* gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
	editing.

	* gtk/gtkentry.c: Hack in simple Hebrew input with direct
	keysym => unicode translations. More languages can be added
	here, but real input-method support is needed.

	* docs/Changes-1.4.txt: Added note about entry behavior.

	* gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
	to set the reading direction for a widget and the global direction.
	Add test which allows toggling the global direction. Two private
	flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)

	* gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
	  gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c

	* gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango

	* gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
	underlining now handled by Pango.

	* gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
	to RCStyle and Style. (Having both this and the old font name and GdkFont
	is temporary.)

	* gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
	convenience functions for creating contexts and layouts for widgets.

	* gtk/testgtk.c: Enhance label tests with multilingual labels.
2000-06-02 03:14:07 +00:00
Elliot Lee
3f0092c4e6 Remove deadwood code.
Remove deadwood code.
2000-06-01 21:59:31 +00:00
Elliot Lee
c496211676 Put it into CVS.
Put it into CVS.
2000-05-31 21:50:38 +00:00
Not Zed
85e7a89b13 Initialise the error handler exit routine to our own. Note this means that
2000-05-30  Not Zed  <NotZed@HelixCode.com>

	* gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
	Initialise the error handler exit routine to our own.  Note this
	means that every function that accesses the jpeg lib on this
	object MUST do a setjmp.
	(gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
	lib for handling fatal error.
	(gdk_pixbuf__jpeg_image_load_increment): And here too.  So now
	your applications dont quit if there's a jpeg error!
2000-05-31 02:07:07 +00:00
Federico Mena Quintero
379da28de8 Include all the loader libraries. Patch from Frank de Lange
2000-05-30  Federico Mena Quintero  <federico@helixcode.com>

	* gdk-pixbuf.spec.in: Include all the loader libraries.  Patch
	from Frank de Lange <frank@unternet.org>.
2000-05-30 14:52:32 +00:00
Yuri Syrota
b07bab344a Updated Ukrainian translation 2000-05-30 06:12:04 +00:00
Jonathan Blandford
4ceed6bf51 let you set the titles to be active, even if they aren't visible.
2000-05-29  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
	titles to be active, even if they aren't visible.
	(gtk_clist_column_titles_passive):  Ditto.
2000-05-29 21:29:38 +00:00
Jonathan Blandford
bace0659d2 let you set the titles to be active, even if they aren't visible.
2000-05-29  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
	titles to be active, even if they aren't visible.
2000-05-29 21:26:54 +00:00
Owen Taylor
15434db63e Fix typo
Sun May 28 12:16:01 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/tmpl/gtkaspectframe.sgml: Fix typo
2000-05-28 16:17:07 +00:00
Damon Chaplin
8cd73f2fde typo.
2000-05-28  Damon Chaplin  <damon@helixcode.com>

        * gdk/tmpl/event_structs.sgml: typo.
2000-05-28 11:36:14 +00:00
Darin Adler
288b44b2d2 Oops. 2000-05-28 03:19:28 +00:00
Darin Adler
e5206ce903 Fixed includes to get rid of accidental GNOME dependency. 2000-05-28 03:17:16 +00:00
Cody Russell
9a08b87fee Makefile.am - Added gdk-pixbuf.spec to EXTRA_DIST 2000-05-27 02:58:04 +00:00
Tim Janik
8dde9abbaf newline 2000-05-26 11:25:14 +00:00
Nils Barth
63af6ead1f added entry for gtkmenu.c gtkmenu.h gtktypeutils.h spelling/grammar fixes
2000-05-23  Nils Barth  <nils_barth@post.harvard.edu>

	* ChangeLog: added entry for gtkmenu.c gtkmenu.h gtktypeutils.h
	  spelling/grammar fixes
2000-05-24 00:17:27 +00:00
Valek Frob
978f327f7f Updated russian translation and update.sh. 2000-05-23 17:18:04 +00:00
CEST 2000 lupus
a357ab820a add missing header files.
Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>

	* gdk/nanox/*.h: add missing header files.
2000-05-23 10:26:25 +00:00
Federico Mena Quintero
1839240c72 0.8 - Federico 2000-05-22 19:09:27 +00:00
Pablo Saratxaga
1b51476458 Added rule for Latvian language gtkrc file 2000-05-22 15:11:21 +00:00
Nils Barth
c4b632e781 Spelling/grammar fixes in comments.
2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>

	* Spelling/grammar fixes in comments.
2000-05-21 06:13:34 +00:00
Tim Janik
48d8ec36d5 set send_event to TRUE. (gtk_drawing_area_size): queue a resize.
Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
        send_event to TRUE.
        (gtk_drawing_area_size): queue a resize.
2000-05-19 10:00:46 +00:00
Tim Janik
9ce7ba8df8 when unref-ing the handlers, also invalidate them. bug nailed down by Karl
Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
        the handlers, also invalidate them. bug nailed down by Karl Nelson
        <kenelson@ece.ucdavis.edu>.
2000-05-19 08:22:39 +00:00
Tim Janik
719f258bc6 handle "(nil)" foundries, patch from Grigorios Magklis.
Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
        "(nil)" foundries, patch from Grigorios Magklis.

        * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
        on non-available fonts, based on a patch by Grigorios Magklis
        <maglis@cs.rochester.edu>.
2000-05-19 05:50:46 +00:00
Elliot Lee
31fa339113 If a region does not have any rectangles, or if the specified rectangle is
If a region does not have any rectangles, or if the specified rectangle is
not in the region, then return GDK_OVERLAP_RECTANGLE_OUT instead of
GDK_OVERLAP_RECTANGLE_IN.
2000-05-18 22:44:19 +00:00
Ville Hautamaki
26b2cbe5ae Minor finnish update
Ville
2000-05-18 10:57:40 +00:00
Jonathan Blandford
fccaf53bfb Remember to save the file before committing. 2000-05-17 16:11:29 +00:00
Jonathan Blandford
f43ab0c41d Remove references to OFFSCREEN, as it is no longer necessary.
2000-05-17  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtklayout.c (gtk_layout_map): Remove references to
	OFFSCREEN, as it is no longer necessary.
2000-05-17 16:10:43 +00:00
Owen Taylor
b9d4205044 Patch from David Santiago <mrcooger@cyberverse.com> to change things so
Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c: Patch from David Santiago
	<mrcooger@cyberverse.com> to change things so that the
	indicator of the active palette entry is done independently,
	not via the focus, since it should always be visible.
2000-05-17 14:56:11 +00:00
Tor Lillqvist
8596f7edc5 Plug same refcount leaks as in the X11 backend.
2000-05-17  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
refcount leaks as in the X11 backend.

* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
cosmetics.

* gdk/win32/gdkwindow-win32.c: Similar changes as in X11
backend. Add _gdk_windowing_window_destroy().

* gtk/gtkcolorsel.c: Include correct backend-specific header.
Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
either, but these probably do exist on nanox?)

* gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
which isn't necessarily defined by <math.h>.

* gtk/gtkobject.c (gtk_object_init): Don't go up the class
ancestry past GtkObject.

* gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
from DLL on Win32.

* gtk/gtk.def: Update corresponding to recent changes.

* gtk/makefile.{cygwin,msc}: Updates.
2000-05-16 21:27:10 +00:00
Owen Taylor
386ae20970 A bit of editing.
Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-1.4.txt: A bit of editing.

	* gdk/gdkwindow.c (_gdk_window_clear_update_area)
	* gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
	to clear the update area for the window, and clear it
	when hiding a window.

	* gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
	if window destroyed.

	* gdk/gdkwindow.c (gdk_window_end_paint): Likewise.

	* gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move
	gdk_window_destroy() to the generic code, since there was a lot of
	window-system-independent logic it in. Add a function:

	 _gdk_window_destroy()

	to the internal API to destroy a window without unreferencing it.
	Add a function:

	 _gdk_windowing_window_destroy()

	That does the windowing-system-dependent part of destroying
	the window.

Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c: Fix various memory leaks of pixmaps.

Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask):
	Make gtk_widget_shape_combine_mask() keep a reference count on
	the pixmap since it keeps it around.

Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
	leak.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
	leak with event filters.

Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
	signal handlers with the right data arguments. (Fixes
	some warnings when a widget was repeatedly set as a drag
	destination.)

	* gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
	window so we can avoid avoid setting the DND properties on the
	toplevel window repeatedly.
2000-05-15 16:09:53 +00:00
Tor Lillqvist
014e275b3a Typo. 2000-05-12 23:01:42 +00:00
Tor Lillqvist
cab7ca49d5 Define more message types missing from mingw headers.
2000-05-13  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkwin32.h: Define more message types missing from
mingw headers.

* gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
call gdk_window_destroy_notify(). It was never called. This
probably meant that the GdkWindow was never freed. Thanks Owen for
noticing (!).

* gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
window as destroyed before calling DestroyWindow(). DestroyWindow()
causes a call to the window procedure (gdk_WindowProc), which
calls gdk_event_translate(), which calls
gdk_window_destroy_notify(), which gets confused unless the window
is set as destroyed.

* gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
this function to indicate it's win32 only. Put inside #ifdef
G_ENABLE_DEBUG.

* gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
debugging function. (gdk_event_translate:) Add a default branch
that uses the above function to print debug messages with all
Windows messages symbolically.

* gdk/win32/gdkprivate-win32.h: Declare it, and
gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
2000-05-12 22:29:31 +00:00
Tim Janik
438e6357b7 don't include gtk/gtkintl.h in a public header file.
Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
        public header file.
2000-05-12 18:13:38 +00:00
Tim Janik
9595c55184 documented necessary changes for 1.4 transition.
Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>

	* docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.

	* gtk/gtktext.c: made the adjustments no-construct args, simply
	provide default adjustments.
	(gtk_text_destroy): release adjustments.

	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
	adjustment argument non-construct.

	* gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
	instead of in finalize.
	(gtk_progress_get_text_from_value):
	(gtk_progress_get_current_text):
	(gtk_progress_set_value):
	(gtk_progress_get_percentage_from_value):
	(gtk_progress_get_current_percentage):
	(gtk_progress_set_percentage):
	(gtk_progress_configure): ensure an adjustment is present.

Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkcolorsel.[hc]:
	* gtk/gtkcolorseldialog.[hc]:
	* gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
	their parent implementation, use bit fields for boolean values, don't
	create unused widgets, usage of glib types, braces go on their own
	lines, function argument alignment, #include directives etc. etc. etc..

	* gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.

Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.

	* gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
	of NULL.

	* gtk/gtkcombo.c (gtk_combo_item_destroy): don#t keep references
	to freed data.
	(gtk_combo_destroy): don't keep a pointer to a destroyed window.

	* gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
	to NULL when the toplevel is getting destroyed.
	(gtk_menu_set_tearoff_state): same here for the tearoff_window.
	(gtk_menu_destroy):
	(gtk_menu_init): store the information of whether we have to
	readd the initial child ref_count during destruction in a new
	GtkMenu field needs_destruction_ref_count.

	* gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
	here, those reading: learn from my mistake! ;)
	in order for set_?adjustment to support a default adjustemnt if
	invoked with an adjustment pointer of NULL, the code read (pseudo):
	if (v->adjustment) unref (v->adjustment);
	if (!adjustment) adjustment = adjustment_new ();
	if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
	now imagine the first unref to actually free the old adjustment and
	adjustment_new() creating a new adjustment from the very same memory
	portion. here, the latter comparision will unintendedly fail, and
	all hell breaks loose.
	(gtk_viewport_set_hadjustment):
	(gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
	after unreferencing it.

	* gtk/gtkcontainer.[hc]: removed toplevel registration
	functions: gtk_container_register_toplevel(),
	gtk_container_unregister_toplevel() and
	gtk_container_get_toplevels() which had wrong semantics
	anyways: it didn't reference and copy the list.

	* gtk/gtkwindow.c: we take over the container toplevel registration
	bussiness now. windows are registered across multiple destructions,
	untill they are finalized. the initial implicit reference count
	users are holding on windows is removed with the first destruction
	though.
	(gtk_window_init): ref & sink and set has_user_ref_count, got
	rid of gtk_container_register_toplevel() call. add window to
	toplevel_list.
	(gtk_window_destroy): unref the window if has_user_ref_count
	is still set, got rid of call to
	gtk_container_unregister_toplevel().
	(gtk_window_finalize): remove window from toplevel list.
	(gtk_window_list_toplevels): new function to return a newly
	created list with referenced toplevels.
	(gtk_window_read_rcfiles): use gtk_window_list_toplevels().

	* gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
	adjustment a non-construct arg.
	* gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
	* gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
	* gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.

	* gtk/gtkrange.c: added some realized checks.
	(gtk_range_destroy): get rid of the h/v adjustments in the
	destroy handler instead of finalize. remove timer.
	(gtk_range_get_adjustment): demand create adjustment.

	* gtk/gtkviewport.c: made h/v adjustment non-construct args.
	we simply create them on demand now and get rid of them in
	the destroy handler.
	(gtk_viewport_destroy): get rid of the h/v adjustments in the
	destroy handler instead of finalize.
	(gtk_viewport_get_hadjustment):
	(gtk_viewport_get_vadjustment):
	(gtk_viewport_size_allocate): demand create h/v adjustment
	if required.

	* gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
	gtk_widget_real_destroy () functionality.
	(gtk_widget_real_destroy): reinitialize with a new style, instead
	of setting widget->style to NULL.

Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkcalendar.c:
	* gtk/gtkbutton.c: ported _get_type() implementation over to
	GType, either to preserve memchunks allocation facilities,
	or because Gtk+ 1.0 GtkTypeInfo was still being used.

	* gtk/gtkobject.[hc]: derive from GObject. ported various functions
	over. prepare for ::destroy to be emitted multiple times.
	removed reference tracer magic. chain into GObjectClass.shutdown()
	to emit ::destroy signal.

	* gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
	fundamental.

	* gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
	cludge.

	* gtk/gtksocket.c:
	* gtk/gtkplug.c:
	* gtk/gtklayout.c:
	* gtk/gtklabel.c:
	* gtk/gtkargcollector.c:
	* gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
	not being a fundamental anymore, and to work with the new
	type system (nuked fundamental type varargs clutter).

	* gtk/*.c: install finalize handlers in the GObjectClass
	part of the class structure.
	changed direct GTK_OBJECT()->klass accesses to
	GTK_*_GET_CLASS().
	changed direct object_class->type accesses to GTK_CLASS_TYPE().

	* gtktypeutils.[hc]: use the reserved fundamental ids provided by
	GType. made most of the GTK_*() type macros and Gtk* typedefs
	simple wrappers around macros and types provided by GType.
	most notably, a significant portion of the old API vanished:
	GTK_TYPE_MAKE(),
	GTK_TYPE_SEQNO(),
	GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
	GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
	GTK_TYPE_ARGS,
	GTK_TYPE_CALLBACK,
	GTK_TYPE_C_CALLBACK,
	GTK_TYPE_FOREIGN,
	GtkTypeQuery,
	gtk_type_query(),
	gtk_type_set_varargs_type(),
	gtk_type_get_varargs_type(),
	gtk_type_check_object_cast(),
	gtk_type_check_class_cast(),
	gtk_type_describe_tree(),
	gtk_type_describe_heritage(),
	gtk_type_free(),
	gtk_type_children_types(),
	gtk_type_set_chunk_alloc(),
	gtk_type_register_enum(),
	gtk_type_register_flags(),
	gtk_type_parent_class().
	replacements, where available are described in ../docs/Changes-1.4.txt.
	implemented compatibility functions for the remaining API.

	* configure.in: depend on glib 1.3.1, use gobject module.
2000-05-12 15:25:50 +00:00
Owen Taylor
5ef1e2e970 Various updates to current status.
Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>

	* TODO.xml: Various updates to current status.
2000-05-11 16:40:30 +00:00
Owen Taylor
29b11b554d Print out version when test succeeds.
Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk.m4: Print out version when test succeeds.
2000-05-11 00:25:20 +00:00
Owen Taylor
88286d32af Color selection dialog rewrite.
Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
	gtk/gtkhsv.[ch]: Color selection dialog rewrite.

	(Original triangle color selector from Simon Budig
	<Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
	from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
	Santiago <mrcooger@cyberverse.com>)

	* gtk/gtkcolorseldialog.[ch]: Split color selection dialog
	out into a separate widget.

	* gtk/testgtk.c: Add some checkbuttons for toggling palette
	and opacity controls.

Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in (GTK_LIBS_EXTRA): Remove references to gobject that
	snuck in prematurely.
2000-05-10 21:39:03 +00:00
Owen Taylor
ac9090ed10 Remove gobject that snuck in prematurely.
Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>

        * configure.in (GTK_LIBS_EXTRA): Remove gobject that snuck
        in prematurely.
2000-05-10 20:08:50 +00:00
Szabolcs Ban
2e71702a7a Szabolcs BAN <shooby@gnome.hu>
* Corrected header
2000-05-10 11:52:18 +00:00
Darin Adler
0e164d5fca Change all conversion from 16-bit formats to 32-bit formats to re-use
the high bits of the color values so that white maps to full white.
2000-05-09 18:23:29 +00:00
Pablo Saratxaga
2aff269cbd file gtkrc.cp1255 was initially added on branch gtk-1-2. 2000-05-08 18:49:18 +00:00
Szabolcs Ban
8e8917d7b8 Szabolcs BAN <shooby@gnome.hu>
* Updated Hungarian translations.
2000-05-08 13:56:00 +00:00
Tor Lillqvist
acc8e78c2d Fix typo. I had deleted a ! operator by mistake, which caused
2000-05-07  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
had deleted a ! operator by mistake, which caused
GDK_SELECTION_CLEAR events never to be generated, which caused
only the first copy to the clipboard from an gtkeditable to
actually cause a copy to the Windows clipboard.

2000-05-06  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
compilation, too. Current mingw gcc distributions include the
necessary headers. Also the necessary IIDs are now in mingw
headers/libraries, and own definitions unnecessary.

More hacking on OLE2 DND, still doesn't work though, and thus
ifdeffed out.

* gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
here, too.
2000-05-07 19:45:27 +00:00
Paolo Molaro
8a836c07cf Sat, 6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>

	* gdk/nanox/*: nano-X port work in progress.
	* gdk/simple.c: simple test for Gdk.
	* README.nanox: notes about the port: read this first!
	* gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
	with nano-X.
2000-05-06 11:57:31 +00:00
Owen Taylor
ea71f02aca Move gdk_window_clear() into common code, implement in terms of
Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
	gdk_window_clear() into common code, implement in terms of
	gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
	not redirected to the backing rectangle.

Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
	EXTRA_DIST. It does not work well when the file that
	everything depends on is not in the tarball.

Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
	with recursion where process_updates() is called from
	an expose handler. (GtkTextView is highly broken in
	doing this, but it should work, so it is a nice test
	case.)

Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
	handle the case where updates are queued during processing of
	updates.

Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
	window is on gdk_display - use that instead of segfaulting.
2000-05-05 15:57:48 +00:00
Owen Taylor
e6abb4709f Add beginnings of file with detailed information about the structure and
Fri May  5 12:16:32 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
	detailed information about the structure and algorithms
	of pixops so people can fix it instead of breaking it.

CvS: Added Files:
2000-05-05 11:44:15 +00:00
Darin Adler
0f038c9e32 Now that Owen explained the algorithm, I think I implemented it right for
* gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
	(composite_pixel), (composite_line):
	* gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
	Now that Owen explained the algorithm, I think I implemented it
	right for the cases where the destination pixbuf is not opaque.
	The test does seem to confirm it.
2000-05-05 02:50:24 +00:00
Darin Adler
24fa8a64bc Added some tests of composite to highlight problems in the old
* gdk-pixbuf/.cvsignore:
	* gdk-pixbuf/Makefile.am:
	* gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
	(load_pixel), (simple_composite_test_one),
	(simple_composite_test_one_type), (simple_composite_test), (main):
	Added some tests of composite to highlight problems in the old
	implementation. These tests run without any user interaction.
	Just do "make check".

	* gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
	(composite_pixel), (composite_line): Fix composite to do a textbook
	"A over B" composite. This was clearly the intent, and it was easy
	to fix the code to do it. (Note to those that read my earlier tries
	at a patch; this version fixes typos that were present in all
	my patch attempts. I checked the final version by adding more tests.)
2000-05-04 14:53:48 +00:00
Pablo Saratxaga
fec650eb38 Updated ca.po (changed mantainer) 2000-05-04 13:06:54 +00:00
Tim Janik
375ed31443 some Make 3.79 $(strip ) versions are broken and require an empty arg,
Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>

        * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
        broken and require an empty arg, give it to them.

Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtklabel.h: indentation fixes.
2000-05-04 00:29:46 +00:00
Havoc Pennington
e097e863d6 Mention Jonathan's stack widget and the GtkNotebook implementation issues,
and s/gtk-devel-list@redhat.com/gtk-devel-list@gnome.org/g
2000-05-03 20:09:14 +00:00
Tor Lillqvist
57dd3ef80f Don't try to draw too narrow or too low arcs, they seem to fail, at least
2000-05-02  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
draw too narrow or too low arcs, they seem to fail, at least with
some display drivers.

* gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
2000-05-02 21:36:08 +00:00
Tor Lillqvist
4481ff0cef New file, just a quick hack of the X11 version.
2000-05-02  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
the X11 version.
2000-05-01 22:49:16 +00:00
Tor Lillqvist
1f149b3a8d Large changes to the Win32 backend, partially made necessary by the
2000-05-02  Tor Lillqvist  <tml@iki.fi>

Large changes to the Win32 backend, partially made necessary by
the changes to the backend-independent internal
structures. Attempts to implement similar backing store stuff as
on X11. The current (CVS) version of the Win32 backend is *not* as
stable as it was before the no-flicker branch was merged. A
zipfile with that version is available from
http://www.gimp.org/win32/. That should be use by "production"
code until this CVS version is usable. (But note, the Win32
backend has never been claimed to be "production quality".)

* README.win32: Add the above comment about versions.

* gdk/gdkwindow.c: Don't use backing store for now on Win32.

* gdk/gdk.def: Update.

* gdk/gdkfont.h: Declare temporary Win32-only functions. Will
presumably be replaced by some more better mechanism as 1.4 gets
closer to release shape.

* gdk/makefile.{cygwin,msc}: Update.

* gdk/win32/*.c: Correct inclusions of the backend-specific and
internal headers. Change code according to changes in these. Use
gdk_drawable_*, not gdk_window_* where necessary.

* gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
our old DND.

* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
to interpret single characters as UTF-8. Thanks to Hans Breuer.
Use correct function name in warning messages.

* gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
GSourceFuncs gdk_event_prepare and gdk_event_check.
(gdk_event_get_graphics_expose): Do implement, use
PeekMessage. Thanks to Hans Breuer.
(event_mask_string): Debugging function to print an GdkEventMask.
(gdk_pointer_grab): Use it.

* gdk/win32/gdkfont-win32.c: The Unicode subrange that the
(old) book I used claimed was Hangul actually is CJK Unified
Ideographs Extension A. Also, Hangul Syllables were missing.
Improve logging.

* gdk/win32/gdkgc-win32.c: Largish changes.

* gdk/win32/gdkim-win32.c (gdk_set_locale): Use
g_win32_getlocale() from GLib, and not setlocale() to get current
locale name.

* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
gdkwin32.h, similarily as in the X11 backend.

* gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
assignment was used instead of equals in if test. Thanks to Hans
Breuer.

* gdk/win32/makefile.{cygwin,msc}
* gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
path to the Win32 headers that works also with the mingw compiler.

* gtk/gtkstyle.c: Include <string.h>.
2000-05-01 22:06:49 +00:00
Pablo Saratxaga
33dc3d6d4c Updated wa.po 2000-04-30 00:28:19 +00:00
Havoc Pennington
ec60eb1baf Add this function, replacing the broken gtk_label_get ()
2000-04-26  Havoc Pennington  <hp@redhat.com>

* gtk/gtklabel.c (gtk_label_get_text): Add this function,
replacing the broken gtk_label_get ()
2000-04-26 22:53:01 +00:00
Arjan Scherpenisse
6b4e76ede6 update from Dennis Smit <synap@area101.penguin.nl>
2000-04-25  Arjan Scherpenisse  <acscherp@wins.uva.nl>

	* nl.po: update from Dennis Smit <synap@area101.penguin.nl>
2000-04-25 08:42:52 +00:00
05:27:43 2000 Owen Taylor
a77a3d135d Properly offset y coordinate accordining to render_y0.
2000-04-22 05:27:43 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
	offset y coordinate accordining to render_y0.

	* gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
	dest_x, dest_y.
2000-04-24 05:28:02 +00:00
Manuel de Vega Barreiro
16814166ba Spanish Faq translation update 2000-04-23 09:19:58 +00:00
Manuel de Vega Barreiro
aee1e50166 Spanish translation update 2000-04-23 09:17:36 +00:00
Damon Chaplin
ff8a24c85a update from Lee Mallabone <lee0@callnetuk.com>
2000-04-22  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtkenums.sgml: update from Lee Mallabone
        <lee0@callnetuk.com>
2000-04-22 11:29:32 +00:00
James Henstridge
3d9b6e2435 moved %{prefix}/bin/* from the main package to the devel package. The only
2000-04-22  James Henstridge  <james@daa.com.au>

	* gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
	package to the devel package.  The only file installed in bin is
	gdk-pixbuf-config, which belongs in -devel.  This should allow having
	multiple versions of the main gdk-pixbuf package installed.
2000-04-22 05:38:53 +00:00
Valek Frob
157dc8922f Updated russian translation. 2000-04-18 15:29:29 +00:00
Karl Eichwalder
9f4c947028 Add .
* gdk-pixbuf/Makefile.am (INCLUDES): Add .
2000-04-17 11:43:25 +00:00
Havoc Pennington
4fe58c01f9 clean up enum format, remove extra comma, this keeps scanner scripts from
2000-04-15  Havoc Pennington  <hp@pobox.com>

* gdk/gdkdnd.h: clean up enum format, remove extra comma,
this keeps scanner scripts from getting confused.

* gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
data, rather than void
2000-04-15 16:22:52 +00:00
Tor Lillqvist
affbc828b3 gtk/gtkclist.c (gtk_clist_motion) If we get a motion event with is_hint
2000-04-15  Tor Lillqvist  <tml@iki.fi>

* gtk/gtkclist.c (gtk_clist_motion)
* gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
with is_hint FALSE, get x and y from the event. They used to be
used uninitialised. The Win32 backend never sends motion events
marked as hints. This for instance fixes the annoying file and
font selector behaviour in the Win32 version.
2000-04-15 04:34:03 +00:00
Tomasz Kopczko
c1592ab52b $(LIBART_CFLAGS) replaced by $(GTK_CFLAGS) - now gdk-pixbuf compiles
2000-04-14 Tomasz Kopczko <kloczek@pld.org.pl>

	* gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
	$(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
2000-04-14 07:04:29 +00:00
Tor Lillqvist
a61a5ffe80 Export the gtk_private_signals and gtk_private_n_signals variables, they
2000-04-14  Tor Lillqvist  <tml@iki.fi>

* gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
gtk_private_n_signals variables, they are used by some software,
sigh.

* gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
installation directory from the Registry, where the installer
should have put it.
2000-04-13 21:29:11 +00:00
James Henstridge
cf1a251f35 when performing the configure check to see if gmodule works, set CFLAGS to
2000-04-13  James Henstridge  <james@daa.com.au>

	* configure.in: when performing the configure check to see if
	gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
	rather than the other way round.  Also, call AC_MSG_RESULT in the
	even that dynamic modules were not supported.
2000-04-13 08:33:36 +00:00
Federico Mena Quintero
37ac7d593e Your eyes are bloodshot.
Your eyes are bloodshot.

Your mouth starts to foam.

Your hands are shaking.

You know your need your fix.

NEED MORE ABSTRACTION!

2000-04-12  Federico Mena Quintero  <federico@helixcode.com>

	This comes from an excellent idea by Tim Janik (timj@gtk.org) to
	hook to the last unref operation.

	* gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
	function to set the last unref handler for a pixbuf.
	(gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
	It calls the pixbuf's destroy notification function and frees the
	GdkPixbuf structure itself.
	(gdk_pixbuf_unref): Use the last unref function of the pixbuf if
	available.

	* gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
	for the last unref handler and its user data.

	* gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
	g_new0() to allocate the pixbuf.

	* gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
	Fixed the call to gtk_signal_new() for the "frame_done" signal; it
	was not specifying the `frame' argument.

	* gdk-pixbuf/gdk-pixbuf-animation.c
	(gdk_pixbuf_animation_get_width): Fixed docstring.
	(gdk_pixbuf_animation_get_height): Likewise.
	(gdk_pixbuf_animation_get_num_frames): Likewise.
	(gdk_pixbuf_animation_get_frames): Likewise.

	* doc/gdk-pixbuf-sections.txt: Updated with the new functions and
	types.

	* doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.

	* doc/tmpl/scaling.sgml: Added the description for GdkInterpType.

	* doc/tmpl/refcounting.sgml: Updated with the information about
	the last unref handler.

	* doc/tmpl/*.sgml: Markup tweaks.

	* gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
	update the libtool version number for libgnomecanvaspixbuf as
	well.
	(libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
	as well, or the old ones won't work with the new stuff.  Also,
	renamed the modules as follows.

	* gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
	modules are called "libpixbufloader-<format>.so" instead of
	"libpixbuf-<format>.so".  They needed renaming so that the new
	loaders won't overwrite the old ones; even with the versioning
	stuff, the new .so symlink to the .so.1.0.0 would overwrite the
	old real .so file.
2000-04-13 01:18:41 +00:00
Paolo Molaro
a106984b7f shut up cvs.
2000-04-12  Paolo Molaro <lupus@debian.org>

	* .cvsignore, src/.cvsignore: shut up cvs.
2000-04-12 07:13:20 +00:00
Ville Hautamaki
33e7c9bce3 Pauli Virtanen updated fi.po. 2000-04-11 09:08:13 +00:00
Federico Mena Quintero
829ed02435 Most of this patch is based on a patch by Havoc Pennington (hp@redhat.com)
2000-04-11  Federico Mena Quintero  <federico@helixcode.com>

	Most of this patch is based on a patch by Havoc Pennington
	(hp@redhat.com) to make GdkPixbuf's structures opaque and to
	remove the libart dependency.

	* gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
	(GdkColorspace): New enum that for now only contains
	GDK_COLORSPACE_RGB.
	(GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
	notification function.
	(GdkInterpType): New num with interpolation types.

	* *.[ch]: Replace the libart stuff with our own stuff.

	* pixops/*.[ch]: Likewise.

	* gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
	declarations of the GdkPixbuf structures.

	* gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
	Removed function.
	(gdk_pixbuf_get_format): Constify.
	(gdk_pixbuf_get_n_channels): Constify.
	(gdk_pixbuf_get_has_alpha): Constify.
	(gdk_pixbuf_get_bits_per_sample): Constify.
	(gdk_pixbuf_get_pixels): Constify.
	(gdk_pixbuf_get_width): Constify.
	(gdk_pixbuf_get_height): Constify.
	(gdk_pixbuf_get_rowstride): Constify.

	* gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
	a pixbuf.

	* gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
	bits_per_sample argument; currently only 8 bits per sample are
	supported.

	* gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
	New accessor.
	(gdk_pixbuf_frame_get_x_offset): New accessor.
	(gdk_pixbuf_frame_get_y_offset): New accessor.
	(gdk_pixbuf_frame_get_delay_time): New accessor.
	(gdk_pixbuf_frame_get_action): New accessor.

	* gdk-pixbuf/gdk-pixbuf-render.c
	(gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
	mask rectangle for pixbufs without an alpha channel, set the
	*mask_return to NULL.

	* gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.

	* gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.

	* gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
	preconditions.  Maybe we should also check for the colorspace,
	bits per pixel, and such.
	(gdk_pixbuf_composite): Likewise.
	(gdk_pixbuf_composite_color): Likewise.
	(gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
	cannot allocate the new pixbuf.
	(gdk_pixbuf_composite_color_simple): Likewise.

	* gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
	Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
	have an ArtPixBuf.

	* gdk-pixbuf/io-bmp.c: Fix includes.

	* gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
	an lvalue.

	* TODO: Populated.

	* configure.in: Removed checks for libart.

	* gdk-pixbuf/Makefile.am: Removed references to libart.
	(noinst_HEADERS): Added gdk-pixbuf-private.h.

	* gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
	the version number of the libtool library to indicate that this
	definitely is not compatible with the old usage.  I know you love
	me.  I know you do.

	* configure.in: Bumped version number to 0.7.0.

	* README: Updated.

	* gdk-pixbuf-config.in (--libs): We no longer require libart.

	* DEPENDS.libgdk_pixbuf: We no longer depend on libart.

	* gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
2000-04-11 07:03:25 +00:00
Fatih Demir
daaae930ad Updated the Turkish translation 2000-04-10 15:05:37 +00:00
Damon Chaplin
6efaa8c725 update from Torsten Landschoff <t.landschoff@gmx.net>
2000-04-09  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtkmain.sgml: update from Torsten Landschoff
        <t.landschoff@gmx.net>

        * gdk/tmpl/input_methods.sgml:
        * gdk/tmpl/general.sgml: fixed typos.
2000-04-09 20:23:49 +00:00
Owen Taylor
848cff384e Fix problem with installation directory for gdkx.h
Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/Makefile.am: Fix problem with installation directory for
	gdkx.h

	* gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
	<mrcooger@cyberverse.com> so that when selecting menus with the
	mouse, the first item will not be selected, but when selecting
	with an accelerator, or navigating left-right on a menubar with
	the menus popped up, the first item will be selected.
2000-04-07 21:36:13 +00:00
Jonathan Blandford
d96d7ada5a add more info to the testanimation frames.
2000-04-06  Jonathan Blandford  <jrb@redhat.com>

	* gdk-pixbuf/testanimation.c (main): add more info to the
	testanimation frames.
2000-04-06 20:28:20 +00:00
Dan Damian
ddd6248ae3 Added Romanian translation. 2000-04-05 16:45:09 +00:00
Owen Taylor
58df98f92a Fix screwy indentation.
Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
	indentation.

	* Makefile.am (EXTRA_DIST): Fix typo.

	* gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
	to catch gdkconfig.h

	* gtk/gtkitemfactory.c: Added FIXME.
2000-04-05 04:11:10 +00:00
Ettore Perazzoli
74fbc5d9ea Ooops, forgot header file. 2000-04-04 05:17:49 +00:00
Ettore Perazzoli
e9c20fac4c Added GdkPixbufAnimation accessor functions, so that we don't have to
access the struct members directly.
2000-04-04 04:50:39 +00:00
Radek Doulik
133ab96180 same as below
2000-03-29  Radek Doulik  <rodo@helixcode.com>

	* gdk-pixbuf/gdk-pixbuf-animation.c
	(gdk_pixbuf_animation_new_from_file): same as below

	* gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
	height in GdkPixbufAnimation

2000-03-28  Radek Doulik  <rodo@helixcode.com>

	* gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
	context->frame_done_func and context->anim_done_func to make
	progressive animation loading work

	* gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
	added priv->pixbuf = NULL as pixbuf is now in frame (and to make
	gdk_pixbuf_loader_prepare happy)
	(gdk_pixbuf_loader_frame_done): update animation bbox

	* gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
	_GdkPixbufAnimation

2000-03-27  Radek Doulik  <rodo@helixcode.com>

	* gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
	instead of width and height
2000-04-03 08:59:43 +00:00
Federico Mena Quintero
8a680eb75c Reverted Mark's change. The refcount is private information, and the
2000-04-01  Federico Mena Quintero  <federico@helixcode.com>

	* gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change.  The refcount
	is private information, and the art_pixbuf will go away soon.
2000-04-02 18:54:17 +00:00
Mark Crichton
f77b679fe4 Added 2 more convience functions.
Added 2 more convience functions.

gdk_pixbuf_get_refcount for the current refcount of the pixbuf (per someone
at Eazel's request)

gdk_pixbuf_get_artpixbuf: returns the artpixbuf of the pixbuf.  Is this
a good idea?  I'm using it to help make->panel->do->the->right->thing.
2000-04-01 03:28:31 +00:00
Jonathan Blandford
2907d515b2 oops. s/return_if_fail/return_val_if_fail/g and add a return value.
2000-03-30  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_get_position): oops.
	s/return_if_fail/return_val_if_fail/g and add a return value.
2000-03-30 16:52:29 +00:00
Havoc Pennington
57c0bee7b3 update to reflect stuff I already did 2000-03-30 01:52:50 +00:00
Havoc Pennington
31828be9c4 file gtkiconset.c was initially added on branch havoc-patches. 2000-03-29 20:49:52 +00:00
Havoc Pennington
c502b23fc7 file gtkiconset.h was initially added on branch havoc-patches. 2000-03-29 20:49:52 +00:00
Federico Mena Quintero
e7550f1c9c Return gboolean instead of int.
2000-03-29  Federico Mena Quintero  <federico@helixcode.com>

	* gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
	gboolean instead of int.
2000-03-29 19:54:29 +00:00
Havoc Pennington
0152e0d6e2 Add font selector, color selector 2000-03-28 19:51:08 +00:00
Havoc Pennington
cf9537d74d Add stuff from Ettore 2000-03-28 17:18:15 +00:00
Owen Taylor
06aed52437 Fix problem with precendence of >> and & which was keeping composite_color
2000-03-27  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixbuf/pixops/pixops.c: Fix problem with
	precendence of >> and & which was keeping composite_color
	from working with non-gray images.
2000-03-28 04:49:42 +00:00
Owen Taylor
a6e85956d2 Fix up merge slipup.
Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up
	merge slipup.

	* gdk/gdkinput.h: Fix missing line from merge.
2000-03-28 01:58:05 +00:00
Owen Taylor
b14b577d59 Include gdkinternals.h instead of gdkprivate.h.
Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
	instead of gdkprivate.h.
2000-03-28 01:40:57 +00:00
Owen Taylor
8822298930 *** empty log message *** 2000-03-28 01:31:13 +00:00
Owen Taylor
8098546227 Merge no-flicker branch into HEAD 2000-03-28 01:24:44 +00:00
Havoc Pennington
4238d406e9 Add making GdkRGB render to any visual 2000-03-27 23:49:23 +00:00
Havoc Pennington
43c05caef2 Add MDI thing and icon list 2000-03-27 23:40:04 +00:00
Havoc Pennington
c773e6e0bc fix sections 2000-03-27 23:24:17 +00:00
Havoc Pennington
a4fa9b8aa9 Update TODO file with a bunch of stuff (filtered via Owen) 2000-03-27 23:20:40 +00:00
Jonathan Blandford
07b1e46225 add getter.
2000-03-23  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_get_position): add getter.
2000-03-23 22:33:38 +00:00
Havoc Pennington
d71b916716 Add defs file format document (this document isn't 100% finalized, but
putting it here as a sort of "official" location)
2000-03-23 20:20:19 +00:00
Pablo Saratxaga
8b0589f009 Updated Lithuanian file 2000-03-20 17:47:01 +00:00
Tor Lillqvist
0cc2a00dc9 Remove the #ifndef USE_DISPATCHMESSAGE sections, we do want to use
2000-03-17  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkevents-win32.c: Remove the #ifndef
USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.

* gdk/win32/gdkfont-win32.c
* gdk/win32/gdkproperty-win32.c
* gdk/win32/gdkselection-win32.c
* gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
now declared such.
2000-03-16 21:58:35 +00:00
Manish Singh
2cc21d52cd removed stray gutter_size reference, a 1.2 relic
* gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic

-Yosh
2000-03-15 11:03:57 +00:00
Raph Levien
146313a3d2 Better description of gdk_rgb_set_min_colors. Stric pointed out that
the previous documentation suggested using 256 to request a private
colormap, which is currently broken. This was making Mozilla crash.
2000-03-14 22:20:20 +00:00
Owen Taylor
10ba4fd066 Merges from gtk-1-2 2000-03-14 19:57:25 +00:00
Tor Lillqvist
3f98a849c7 Fix typo: Italian uses ISO-8859-1, not -2. Add en_GB.
2000-03-14  Tor Lillqvist  <tml@iki.fi>

* makefile.cygwin: Fix typo: Italian uses ISO-8859-1, not -2. Add
en_GB.
2000-03-14 18:10:15 +00:00
Havoc Pennington
6301e32f2a document gtk_window_set_policy() (cleared with Owen) 2000-03-14 17:21:06 +00:00
Pablo Saratxaga
6c5b4c65c2 Updated lt.po 2000-03-13 20:57:47 +00:00
GMT 2000 Tony Gale
e99b78cdea FAQ Update: - Minor cleanups (Emmanuel, me) - New questions: I need to add
Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: FAQ Update:
          - Minor cleanups (Emmanuel, me)
          - New questions:
                I need to add a new signal to a GTK+ widget. Any idea? (timj)
                How can I retrieve the text from a GtkMenuItem? (timj)
                How do I validate/limit/filter the input to a GtkEntry? (me)
                Memory does not seem to be released when I free the list
                        nodes I've allocated (timj)
2000-03-09 22:17:20 +00:00
Jonathan Blandford
407a379189 free the context. (gdk_pixbuf__gif_image_load_animation): free the
2000-03-08  Jonathan Blandford  <jrb@redhat.com>

	* gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
	(gdk_pixbuf__gif_image_load_animation): free the context.
2000-03-09 00:11:30 +00:00
Tor Lillqvist
ec1e8f1f5d Internal GDK error reporting changes: (gdk_win32_gdi_failed) New function
2000-03-07  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
(gdk_win32_gdi_failed) New function for reporting errors from GDI,
for which it is no use to call GetLastError on Win9x.
(gdk_other_api_failed) New function, for
general error reporting without calling GetLastError.
(gdk_win32_api_failed) OTOH, this function always calls
GetLastError. (gdk_win32_last_error_string) Remove this function,
GLib has the equivalent now.

* gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
call them with function name, file name and line number in the
arguments.

* gdk/win32/*.c: Use the new macros for reporting errors from GDI
functions.

* gtk/gtk.def: Add some missing entry points.

* gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
gtk_paned_set_gutter_size, which don't exist any longer, as void.

Fixes by Hans Breuer:

* gdk/makefile.msc: Update for debugging.

* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
in the dash_list.

* gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
the x11 backend.

* gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.

* gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
2000-03-08 06:18:41 +00:00
Damon Chaplin
960906e1e2 fix to gtk_clist_set_reorderable(). It reorders rows, not columns. From
2000-03-07  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtkclist.sgml: fix to gtk_clist_set_reorderable(). It
        reorders rows, not columns. From Guy Harris <gharris@flashcom.net>.
2000-03-07 18:03:35 +00:00
Owen Taylor
35226a7be5 Moved into docs/ subdir
Mon Mar  6 11:44:58 2000  Owen Taylor  <otaylor@redhat.com>

        * docs/gap-geometry.fig: Moved into docs/ subdir

        * Makefile.am configure.in autogen.sh src/Makefile.am:
	automakify

	* src/pixbuf.h src/pixbuf-render.c src/pixbuf-draw.c
	src/pixbuf-main.c: Move sources into subdir and
	rename.
2000-03-06 18:47:32 +00:00
Owen Taylor
7ed05e22e5 Start automake-ifying 2000-03-06 16:39:14 +00:00
Owen Taylor
b8c691e6b2 Handle drawing transparency without a mask correctly.
Mon Mar  6 11:02:07 2000  Owen Taylor  <otaylor@redhat.com>

	* pixmap_theme_pixbuf.c: Handle drawing transparency without a
	mask correctly.

	* pixmap_theme_main.c pixmap_theme_draw.c: Remove duplicate
	includes.
2000-03-06 16:12:22 +00:00
Arjan van de Ven
ac67157049 Arjan van de Ven <arjan@fenrus.demon.nl>
Fixed to pointer-bugs and a
mis-interpretation of the Microsoft documentation. Now
it can load .BMP files that are not generated by The Gimp
as well.
a=federico
2000-03-06 08:53:57 +00:00
Tor Lillqvist
5a4e1abbfc Store just pixel value of background colour.
2000-03-04  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
just pixel value of background colour.

* gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
containing code snippet previously duplicated in a couple of
places.

* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
gdk_colormap_color.

* gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
events for autorepeated Shift, Control and Alt keys. Use
gdk_colormap_color.

* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
pointer is inside the window the cursor of which we are setting,
call SetCursor immediately.

* gdk/win32/makefile.cygwin
* gtk/makefile.cygwin: If we don't have the build number stamp
file, use zero.

* gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
gtk_paned_set_gutter_size as empty.

* gtk/gtk.def: Remove gtk_paned_set_gutter_size.
2000-03-03 23:21:51 +00:00
Mark Crichton
2468916bcc Merged in changes.
Merged in changes.

If this doesn't work, I blame the NWO conspiracy.

I need to go put my tin foil hat back on now, and keep a lookout for the
black helicopters.
2000-03-03 03:57:15 +00:00
Damon Chaplin
25472c7578 minor fix from Nicolas GEORGE <nicolas.george@ens.fr>.
2000-02-29  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtkmenuitem.sgml: minor fix from Nicolas GEORGE
        <nicolas.george@ens.fr>.
2000-02-29 18:43:54 +00:00
Matt Wilson
06884f05ff s/unsigned long/guint32/g, s/unsigned short/guint16/g, s/unsigned
2000-02-28  Matt Wilson  <msw@redhat.com>

	* gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
	s/unsigned short/guint16/g, s/unsigned char/guint8/g
2000-02-29 18:27:44 +00:00
GMT 2000 Tony Gale
de9fb93157 missed a couple of corrections
Tue Feb 29 13:29:17 GMT 2000  Tony Gale <gale@gtk.org>

missed a couple of corrections
2000-02-29 13:29:59 +00:00
GMT 2000 Tony Gale
6ab2659931 Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>

        * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
          gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
          docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
          docs/gtk_tut.sgml docs/gtk.texi TODO:
          Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
2000-02-29 13:15:10 +00:00
Damon Chaplin
160e3574ac new menu item sections and minor update to notebook section from Nicolas
2000-02-28  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtkradiomenuitem.sgml:
        * gtk/tmpl/gtkmenuitem.sgml:
        * gtk/tmpl/gtknotebook.sgml: new menu item sections and minor update to
        notebook section from Nicolas GEORGE <nicolas.george@ens.fr>.

2000-02-18  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtktooltips.sgml: patch from
        David Benson <daveb@idealab.com> to note that gtk_tooltips_set_colors()
        does not work.

2000-02-09  Damon Chaplin  <damon@helixcode.com>

        * gdk/tmpl/input_methods.sgml: minor fix.
2000-02-28 21:39:41 +00:00
Damon Chaplin
e809560d6a added a note about no-window widgets.
2000-06-14  Damon Chaplin  <damon@helixcode.com>

	* gtk/tmpl/gtktooltips.sgml: added a note about no-window widgets.
2000-02-28 21:39:41 +00:00
Damon Chaplin
a629fd7f84 new menu item sections and minor update to notebook section from Nicolas
2000-02-28  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtkradiomenuitem.sgml:
        * gtk/tmpl/gtkmenuitem.sgml:
        * gtk/tmpl/gtknotebook.sgml: new menu item sections and minor update to
        notebook section from Nicolas GEORGE <nicolas.george@ens.fr>.

2000-02-18  Damon Chaplin  <damon@helixcode.com>

        * gtk/tmpl/gtktooltips.sgml: patch from
        David Benson <daveb@idealab.com> to note that gtk_tooltips_set_colors()
        does not work.

2000-02-09  Damon Chaplin  <damon@helixcode.com>

        * gdk/tmpl/input_methods.sgml: minor fix.
2000-02-28 21:39:41 +00:00
Federico Mena Quintero
117b2eca5c We don't require libgif/ungif nor libXpm.
2000-02-26  Federico Mena Quintero  <federico@helixcode.com>

	* README: We don't require libgif/ungif nor libXpm.

	* NEWS: This was outdated, so updated it.
2000-02-27 01:25:27 +00:00
GMT 2000 Tony Gale
e8fa46be45 Implement num_marked_dates, and don't emit mutiple day_selected signals on
Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>

        * gtk/gtkcalendar.c: Implement num_marked_dates,
          and don't emit mutiple day_selected signals on
          month_prev.
2000-02-26 11:39:07 +00:00
Tim Janik
f9d3bbdaaf don't omit TODO.xml 2000-02-26 03:47:25 +00:00
Christopher R. Gabriel
160809ca7b Updated italian translation 2000-02-26 01:41:58 +00:00
Jonathan Blandford
1af201e9bb let title and logo be configurable so that GNOME can use this script too.
2000-02-25  Jonathan Blandford  <jrb@redhat.com>

	* docs/make-todo (lineno): let title and logo be configurable so
	that GNOME can use this script too.

	* TODO.xml: added logourl and a title
2000-02-25 22:56:58 +00:00
Federico Mena Quintero
e97e6e632e Use the correct name for gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman
2000-02-25  Federico Mena Quintero  <federico@helixcode.com>

	* gdk-pixbuf.m4: Use the correct name for
	gdk-pixbuf/gdk-pixbuf.h.  Thanks to Jacob Berkman for pointing
	this out.
2000-02-25 21:41:51 +00:00
Owen Taylor
713b36cedb Added some UI items, and an explanatory comment at the top of the file.
Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>

	* TODO.xml: Added some UI items, and an explanatory
	comment at the top of the file.
2000-02-25 16:17:10 +00:00
Tim Janik
b128983b58 some updates, added abunch of new entries. a note for those fiddeling with
Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>

        * TODO.xml: some updates, added abunch of new entries.
        a note for those fiddeling with this file, when done
        with it, invoke:
        $ ./docs/make-todo TODO.xml >/dev/null
        and correct output errors before comitting changes.
2000-02-24 08:12:12 +00:00
Owen Taylor
61c009c800 twiddled some more 2000-02-24 05:11:56 +00:00
Owen Taylor
8891244084 twiddled 2000-02-24 04:47:57 +00:00
Owen Taylor
bcc0607e69 small changes 2000-02-24 04:35:05 +00:00
Owen Taylor
dd60f7b998 spelling fixes 2000-02-24 04:20:41 +00:00
Owen Taylor
d9c46655cc Added XML-structured TODO file. python script to turn TODO.xml into pretty
Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>

	* TODO.xml: Added XML-structured TODO file.
        * docs/make-todo: python script to turn TODO.xml into
          pretty XML output.
2000-02-24 04:03:49 +00:00
Jonathan Blandford
6654a22891 add a 'paned' mode to the function to let it draw the seven dots, instead
2000-02-23  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
	the function to let it draw the seven dots, instead of the old,
	much maligned, method.
	(draw_dot): New function to draw a dot.

	* gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
	to draw the handle inside the border width as opposed to outside.
	Use paint function instead of gdk_draw_point.

	* gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
	to draw the handle inside the border width as opposed to outside.
	Use paint function instead of gdk_draw_point.

	* gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
	Change indenting to be more GTK like.
2000-02-23 22:55:27 +00:00
GMT 2000 Tony Gale
2444c80ff7 New section on GtkCalendar Update example code
Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/gtk_tut.sgml: New section on GtkCalendar
        * examples/calendar: Update example code
2000-02-23 10:59:21 +00:00
GMT 2000 Tony Gale
811cd0c124 Get the date on the FAQ right. Grr.
Tue Feb 22 14:02:48 GMT 2000 Tony Gale <gale@gtk.org>

        * Get the date on the FAQ right. Grr.
2000-02-22 13:59:09 +00:00
GMT 2000 Tony Gale
92b4a139ba FAQ Update
Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: FAQ Update
2000-02-22 13:49:53 +00:00
Federico Mena Quintero
79d6346057 0.6.0 - Federico 2000-02-22 00:29:00 +00:00
Jonathan Blandford
7ef740e03d fix case where initial colormap entry is Transparent.
2000-02-19  Jonathan Blandford  <jrb@redhat.com>

	* gdk-pixbuf/io-gif.c (new_context): fix case where initial
	colormap entry is Transparent.
2000-02-20 03:08:00 +00:00
Anders Carlsson
1dcb67c8f3 Return TRUE to prevent the scroll event to be propagated upwards.
2000-02-19  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
	to prevent the scroll event to be propagated upwards.
2000-02-19 22:19:55 +00:00
Owen Taylor
bddd4ca943 Fix error in scale factors for non-alpha case.
2000-02-19  Owen Taylor  <otaylor@redhat.com>

	* gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
	scale factors for non-alpha case.
2000-02-19 22:05:48 +00:00
Anders Carlsson
797d345446 Fix my e-mail address 2000-02-18 21:44:29 +00:00
Owen Taylor
c8a2382b65 Remove OwnerGrabButtonMask from button entries for GDK_BUTTON_PRESS /
Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
	OwnerGrabButtonMask from button entries for
	GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.

	* gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
	to the event mask (which will result in button/press release
	being added to the event mask on Unix) so scrolling works
	for layouts in scroll windows.

	* gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.

	Patch from Anders Carlsson  <andersca@picard.andersnet> to add
	a scroll event.

 	* gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
 	scrolling to the "Test Scrolling" part of testgtk.

 	* gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.

 	* gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
 	it against GDK_SCROLL.

 	* gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
 	way of mouse wheel scrolling.

 	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.

 	* gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.

 	* gtk/gtkmain.c: Removed previous mouse wheel hack.

 	* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
 	gdk_event_mask_table.

 	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
 	GdkEventScroll handler.

 	* gdk/gdkevents.h: Added GdkEventScroll structure.
2000-02-18 20:02:24 +00:00
Owen Taylor
ab1deac87f Add patch from Jonathan Blandford and Anders Carlsson to change the Paned
Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
	and Anders Carlsson to change the Paned widgets so that they
	can be dragged from anywhere along the length. Also change
	the way that this is drawn to make this apparent.

	* gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
	from George Lebl to check that option_menu->menu is present
	before getting history.
2000-02-17 22:12:25 +00:00
Mark Crichton
d0f73034cf Iain sent me a xpm that didn't load. It used "g" instead of "c" in it's
Iain sent me a xpm that didn't load.  It used "g" instead of "c" in it's
color table.

I thought that was borked until I saw Imlib, xv, and Gimp load it up w/o
problem...

So, fixed that (less than one line fix).  HOWEVER, if this is correct,
then the gdk XPM loader in gtk+ also has the same problem.

Owen, got an opinion on this?

Mark
2000-02-14 23:26:01 +00:00
Darin Adler
97f2c2b7bb Remove now-unnecessary cast. 2000-02-14 20:51:51 +00:00
Elliot Lee
9bf3a0be0c Make passed-in argument 'const'.
* gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
2000-02-14 20:06:23 +00:00
Tor Lillqvist
37cfb7d74b Move the test for no segments before the assertion for non-NULL segment
2000-02-14  Tor Lillqvist  <tml@iki.fi>

* gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
before the assertion for non-NULL segment list.

* gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
Seems that pattern brushes *must* be 8x8 pixels! At least on my
machine, but it might be display driver dependent. Sigh, so make
sure the stipple is that size. Does Windows suck or what?

* gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
places.
2000-02-13 23:19:23 +00:00
Havoc Pennington
95a9052d56 init refcount to 1 (gdk_cursor_new): init refcount to 1
2000-02-13  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
		refcount to 1
			(gdk_cursor_new): init refcount to 1

				* gdk/win32/gdkcursor-win32.c
(gdk_cursor_new): init refcount to 1
2000-02-13 20:22:20 +00:00
Tor Lillqvist
ff99eb7cc1 Add an extra parameter so that we don't have to do unnecessary settings to
2000-02-13  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
so that we don't have to do unnecessary settings to the HDC.

* gdk/win32/gdkdrawable-win32.c
* gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
gdk_gc_predraw.

* gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
GDI paths, call WidenPath to get the outline of the stroken path,
and then fill the outline (with the brush that was built from the
stipple).

* gdk/win32/gdkgc-win32.c: Factor out common code from
_gdk_win32_gc_new and gdk_win32_gc_set_values into
gdk_win32_gc_values_to_win32values.

* gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
gdk_win32_api_failed): New functions for error logging.

* gdk/win32/gdkprivate-win32.h: Declare them, and a macro
WIN32_API_FAILED to call them, passing function or file name and
line number.

* gdk/win32/*.c: Use the WIN32_API_FAILED macro.

* gdk/win32/gdkprivate-win32.h: Store just the pixel values from
GdkColor for foreground and background in GdkGCWin32Data.

* gdk/makefile.cygwin: Link in the resource object separately.

* gdk/win32/rc/gdk.rc
* gtk/gtk.rc (New file)
* gdk/win32/makefile.cygwin
* gtk/makefile.cygwin: Update build number in DLLs automatically,
as in GLib.
2000-02-13 14:52:47 +00:00
Tim Janik
ef03cb5287 s/refcount/ref_count/.
Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>

        * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
        * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
        * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
        * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
        parameters given and cursor->ref_count. coding style fixups.

        * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
        not GtkWidget.

        * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
        fix up widget macros and add _GET_CLASS() variant.

        * gtk/*.c: some GtkType fixups.
2000-02-13 08:16:48 +00:00
Tor Lillqvist
196d48435e gdk/win32/gdkproperty-win32.c The assertions for GDK_IS_WINDOW were
2000-02-09  Tor Lillqvist  <tml@iki.fi>

* gdk/win32/gdkproperty-win32.c
* gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
were reversed.
2000-02-09 22:31:34 +00:00
1599 changed files with 622082 additions and 219666 deletions

View File

@@ -5,16 +5,33 @@ config.h.in
libtool
config.status
stamp-h
stamp-h1
Makefile
Makefile.in
aclocal.m4
configure
gtk-config
config.h.win32
gtk-config-2.0
config.cache
ABOUT-NLS
intl
stamp-h.in
gtk+.spec
gtk+-2.0.pc
gtk+-2.0-uninstalled.pc
gtk+-linux-fb-2.0.pc
gtk+-nanox-2.0.pc
gtk+-x11-2.0.pc
gdk-2.0.pc
gdk-2.0-uninstalled.pc
gdk-linux-fb-2.0.pc
gdk-nanox-2.0.pc
gdk-x11-2.0.pc
gdk-pixbuf-2.0.pc
gdk-pixbuf-2.0-uninstalled.pc
gtk-zip.sh
missing
install-sh
mkinstalldirs
sgml
autom4te.cache

4333
ChangeLog

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

35
HACKING
View File

@@ -1,20 +1,18 @@
If you want to hack on the Gtk+ project, it will make you life easier
to have the following packages installed:
If you want to hack on the GTK+ project, you'll need to have
the following packages installed:
- GNU autoconf 2.13
- GNU autoconf 2.52
- GNU automake 1.4
(Beta releases are at ftp://ftp.cygnus.com/pub/tromey)
- GNU libtool 1.2d
- GNU libtool 1.4
- indent (GNU indent 1.9.1 is known good)
- GNU gettext 10.35
Available in ftp://alpha.gnu.org/gnu
- GNU gettext 10.40
These should be available by ftp from ftp.gnu.org or any of the
fine GNU mirrors. Beta software can be found at alpha.gnu.org.
In order to get CVS gtk+ installed on your system, you need to have
the most recent CVS version of glib installed as well.
The installation process of glib is similar to that of gtk+, but
the most recent CVS version of glib, pango, and atk installed as well.
The installation process of these libraries is similar to that of gtk+, but
needs to be fulfilled prior to installation of gtk+.
To compile a CVS version of gtk+ on your system, you will need to take
@@ -41,16 +39,17 @@ to autogen.sh and they will be passed on to configure.
If at all possible, please use CVS to get the latest development version of
gtk+ and glib. You can do the following to get glib and gtk+ from cvs:
$ export CVSROOT=':pserver:anonymous@cvs.gimp.org:/debian/home/gnomecvs'
$ export CVSROOT=':pserver:anonymous@cvs.gnome.org:/cvs/gnome'
$ cvs login
(there is no password, just hit return)
$ cvs -z9 checkout glib
$ cvs -z9 checkout gtk+
$ cvs -z3 checkout glib
$ cvs -z3 checkout pango
$ cvs -z3 checkout atk
$ cvs -z3 checkout gtk+
For information about submitting patches and commiting changes
to CVS, see the README and README.cvs-commits files. In particular,
don't, under any circumstances, commit anything to CVS before
reading and understanding README.cvs-commmits.
Please submit patches to the gtk-list@redhat.com mailing list (you must
subscribe before you post, e-mail gtk-list-request@redhat.com with a
subject of "subscribe"). All kinds of contributions are accepted.
Patches that you wish to go into the distribution should also be uploaded
to ftp://ftp.gimp.org/incoming. Follow the rules there for naming your
patches.

194
INSTALL
View File

@@ -1,187 +1,41 @@
Prerequisites
=============
GTK+ requires the GLIB library, available at the same location as
you got this package.
GTK+ requires the following packages:
- The GLib, Pango, and Atk libraries, available at the same location as GTK+
- The TIFF, PNG, and JPEG image loading libraries. You most
likely have these installed on your system already. If not
these libraries are available from:
http://www.libtiff.org/
ftp://swrinde.nde.swri.edu/pub/png/src/
ftp://ftp.uu.net/graphics/jpeg/
If these libraries are not available, the corresponding
image loaders will simply not be built. However, this
may cause applications using GTK+ not to function properly.
Simple install procedure
========================
% gzip -cd gtk+-1.2.5.tar.gz | tar xvf - # unpack the sources
% cd gtk+-1.2.5 # change to the toplevel directory
% gzip -cd gtk+-2.0.3.tar.gz | tar xvf - # unpack the sources
% cd gtk+-2.0.3 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
[ Become root if necessary ]
% make install # install GTK
The Nitty-Gritty
================
The Details
===========
The 'configure' script can be given a number of options to enable
and disable various features. For a complete list, type:
Complete information about installing GTK+ and related libraries can be found
in the file:
./configure --help
docs/reference/gtk/docs/reference/gtk/html/gtk-building.html
A few of the more important ones:
* --prefix=PREFIX install architecture-independent files in PREFIX
[ Defaults to /usr/local ]
* --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[ Defaults to the value given to --prefix ]
* --with-xinput=[no/gxi/xfree] support XInput [default=no]
The --with-xinput flag specifies whether to compile with support
for the XInput extension (mainly used for graphics tablets), and
which form of support to use:
no : no support
gxi : Use generic XInput support
xfree : Use special features in the Wacom drivers in XFree86 3.3.1
and later.
For more information, follow the link from http://www.gtk.org
* --disable-nls do not use Native Language Support
If this flag is not specified, GTK+ will try to find
and use the gettext() set of functions to provide translations
of the strings in the standard dialogs into the
user's native language.
* --enable-xim support XIM [default=yes]
Specifying --disable-xim will disable support for entering
internationalized text using X Input Methods. This will give some
slight savings in speed and memory use and might be necessary
with older versions of X.
* --with-locale=LOCALE locale name you want to use
The --with-locale options is used to determine if your operating
system has support for the locale you will be using. If not, X's
built in locale support will be used.
Because of bugs in autoconf, it is necessary to specify this
option even if your LANG environment variable is correctly set.
This option does not determine which locale GTK will use at
runtime. That will be determined from the usual environment
variables. If you will be using multiple locales with GTK,
specify the one for which your operating system has the worst
support for the --with-locale option.
Options can be given to the compiler and linker by setting
environment variables before running configure. A few of the more
important ones:
CC : The C compiler to use
CPPFLAGS : Flags for the C preprocesser such as -I and -D
CFLAGS : C compiler flags
The most important use of this is to set the
optimization/debugging flags. For instance, to compile with no
debugging information at all, run configure as:
CFLAGS=-O2 ./configure # Bourne compatible shells (sh/bash/zsh)
or,
setenv CFLAGS -O2 ; ./configure # csh and variants
Native-Language Support and gettext()
=====================================
To provide native-language support (NLS) GTK+ uses the
gettext() set of functions. These functions are found
in the C library on many systems, such as the Solaris
C library and the GNU C Library, version 2.
If your C library does not provide the necessary functionality,
you may wish to install the GNU gettext package. You'll
need version 0.10.35 or better. Version 0.10.35 is
available from ftp://alpha.gnu.org/pub/gnu
Generally, GTK+ will properly detect what is installed
on your system and enable or disable NLS as appropriate.
However, in rare cases, it may be necessary to disable
NLS manually to get GTK+ to compile. You can do this
by specifying the --disable-nls flag when configuring
GTK+.
Using an uninstalled copy of GLIB [ Unsupported ]
=================================================
You can compile GTK+ against a copy of GLIB that you have not
yet installed. To do this, give the --with-glib=DIR options
to ./configure. For instance:
./configure --with-glib=../glib-1.2.5
This, however, will not work if you built GLIB with different
source and build directories.
It is recommended that you install GLIB before compiling
GTK+. The --with-glib option is not regularly tested
and may not function correctly. In addition,
inter-library dependencies won't be generated when
using --with-glib=.
Installation directories
========================
The location of the installed files is determined by the --prefix
and --exec-prefix options given to configure. There are also more
detailed flags to control individual directories. However, the
use of these flags is not tested.
One particular detail to note, is that the architecture-dependent
include file glibconfig.h is installed in:
$exec_pref/lib/glib/include/
if you have a version in $prefix/include, this is out of date
and should be deleted.
A shell script gtk-config is created during the configure
process, and installed in the bin/ directory
($exec_prefix/bin). This is used to determine the location of GTK
when building applications. If you move GTK after installation,
it will be necessary to edit this file.
For complete details, see the file docs/gtk-config.txt
Notes for using XIM support for Japanese input
==============================================
* There is a bug in older versions of kinput2 that will cause GTK+
to hang when destroying a text entry. The latest versions of
kinput is available from:
ftp://ftp.sra.co.jp/pub/x11/kinput2
* The locale information file for the ja_JP EUC locale
distributed with some recent versions of X11 specifies to use the
C library multibyte functions. Unless your C library has support
for Japanese locales, this is incorrect, and will cause problems
for GTK's internationalization.
(In particular, this occurs with GNU libc 2.0 and 2.1, in which
the multibyte functions always translate to and from UTF-8; but
the problem may occur for other C libraries, and other operating
systems as well.)
To fix this, change the line:
use_stdc_env True
to
use_stdc_env False
in the file /usr/X11R6/lib/X11/locale/ja_JP/XLC_LOCALE.
Or online at:
http://developer.gnome.org/doc/API/2.0/gtk/gtk-building.html

View File

@@ -1,8 +1,21 @@
Prerequisites
=============
GTK+ requires the GLIB library, available at the same location as
you got this package.
GTK+ requires the following packages:
- The GLib, Pango, and Atk libraries, available at the same location as GTK+
- The TIFF, PNG, and JPEG image loading libraries. You most
likely have these installed on your system already. If not
these libraries are available from:
http://www.libtiff.org/
ftp://swrinde.nde.swri.edu/pub/png/src/
ftp://ftp.uu.net/graphics/jpeg/
If these libraries are not available, the corresponding
image loaders will simply not be built. However, this
may cause applications using GTK+ not to function properly.
Simple install procedure
========================
@@ -14,174 +27,15 @@ Simple install procedure
[ Become root if necessary ]
% make install # install GTK
The Nitty-Gritty
================
The Details
===========
The 'configure' script can be given a number of options to enable
and disable various features. For a complete list, type:
Complete information about installing GTK+ and related libraries can be found
in the file:
./configure --help
docs/reference/gtk/docs/reference/gtk/html/gtk-building.html
A few of the more important ones:
* --prefix=PREFIX install architecture-independent files in PREFIX
[ Defaults to /usr/local ]
* --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[ Defaults to the value given to --prefix ]
* --with-xinput=[no/gxi/xfree] support XInput [default=no]
The --with-xinput flag specifies whether to compile with support
for the XInput extension (mainly used for graphics tablets), and
which form of support to use:
no : no support
gxi : Use generic XInput support
xfree : Use special features in the Wacom drivers in XFree86 3.3.1
and later.
For more information, follow the link from http://www.gtk.org
* --disable-nls do not use Native Language Support
If this flag is not specified, GTK+ will try to find
and use the gettext() set of functions to provide translations
of the strings in the standard dialogs into the
user's native language.
* --enable-xim support XIM [default=yes]
Specifying --disable-xim will disable support for entering
internationalized text using X Input Methods. This will give some
slight savings in speed and memory use and might be necessary
with older versions of X.
* --with-locale=LOCALE locale name you want to use
The --with-locale options is used to determine if your operating
system has support for the locale you will be using. If not, X's
built in locale support will be used.
Because of bugs in autoconf, it is necessary to specify this
option even if your LANG environment variable is correctly set.
This option does not determine which locale GTK will use at
runtime. That will be determined from the usual environment
variables. If you will be using multiple locales with GTK,
specify the one for which your operating system has the worst
support for the --with-locale option.
Options can be given to the compiler and linker by setting
environment variables before running configure. A few of the more
important ones:
CC : The C compiler to use
CPPFLAGS : Flags for the C preprocesser such as -I and -D
CFLAGS : C compiler flags
The most important use of this is to set the
optimization/debugging flags. For instance, to compile with no
debugging information at all, run configure as:
CFLAGS=-O2 ./configure # Bourne compatible shells (sh/bash/zsh)
or,
setenv CFLAGS -O2 ; ./configure # csh and variants
Native-Language Support and gettext()
=====================================
To provide native-language support (NLS) GTK+ uses the
gettext() set of functions. These functions are found
in the C library on many systems, such as the Solaris
C library and the GNU C Library, version 2.
If your C library does not provide the necessary functionality,
you may wish to install the GNU gettext package. You'll
need version 0.10.35 or better. Version 0.10.35 is
available from ftp://alpha.gnu.org/pub/gnu
Generally, GTK+ will properly detect what is installed
on your system and enable or disable NLS as appropriate.
However, in rare cases, it may be necessary to disable
NLS manually to get GTK+ to compile. You can do this
by specifying the --disable-nls flag when configuring
GTK+.
Using an uninstalled copy of GLIB [ Unsupported ]
=================================================
You can compile GTK+ against a copy of GLIB that you have not
yet installed. To do this, give the --with-glib=DIR options
to ./configure. For instance:
./configure --with-glib=../glib-@GTK_VERSION@
This, however, will not work if you built GLIB with different
source and build directories.
It is recommended that you install GLIB before compiling
GTK+. The --with-glib option is not regularly tested
and may not function correctly. In addition,
inter-library dependencies won't be generated when
using --with-glib=.
Installation directories
========================
The location of the installed files is determined by the --prefix
and --exec-prefix options given to configure. There are also more
detailed flags to control individual directories. However, the
use of these flags is not tested.
One particular detail to note, is that the architecture-dependent
include file glibconfig.h is installed in:
$exec_pref/lib/glib/include/
if you have a version in $prefix/include, this is out of date
and should be deleted.
A shell script gtk-config is created during the configure
process, and installed in the bin/ directory
($exec_prefix/bin). This is used to determine the location of GTK
when building applications. If you move GTK after installation,
it will be necessary to edit this file.
For complete details, see the file docs/gtk-config.txt
Notes for using XIM support for Japanese input
==============================================
* There is a bug in older versions of kinput2 that will cause GTK+
to hang when destroying a text entry. The latest versions of
kinput is available from:
ftp://ftp.sra.co.jp/pub/x11/kinput2
* The locale information file for the ja_JP EUC locale
distributed with some recent versions of X11 specifies to use the
C library multibyte functions. Unless your C library has support
for Japanese locales, this is incorrect, and will cause problems
for GTK's internationalization.
(In particular, this occurs with GNU libc 2.0 in which
the multibyte functions always translate to and from UTF-8; but
the problem may occur for other C libraries, and other operating
systems as well.)
To fix this, change the line:
use_stdc_env True
to
use_stdc_env False
in the file /usr/X11R6/lib/X11/locale/ja_JP/XLC_LOCALE.
Or online at:
http://developer.gnome.org/doc/API/2.0/gtk/gtk-building.html

View File

@@ -1,38 +1,48 @@
## Makefile.am for GTK+
SRC_SUBDIRS = gdk gtk
SUBDIRS = po $(SRC_SUBDIRS) docs
bin_SCRIPTS = gtk-config
SRC_SUBDIRS = gdk-pixbuf gdk gtk modules demos tests contrib
SUBDIRS = po $(SRC_SUBDIRS) docs build m4macros
# require automake 1.4
AUTOMAKE_OPTIONS = 1.4
EXTRA_DIST = \
HACKING \
gtk+.spec.in \
gtk.m4 \
makecopyright \
TODO \
NEWS.pre-1-0 \
EXTRA_DIST = \
HACKING \
gtk+.spec.in \
makecopyright \
NEWS.pre-1-0 \
ChangeLog.pre-1-0 \
ChangeLog.pre-1-2 \
ChangeLog.pre-2-0 \
README.cvs-commits \
README.win32 \
intl/libgettext.h \
intl/po2tbl.sed.in \
README.win32 \
README.nanox \
config.h.win32 \
gtk-zip.sh \
sanitize-la.sh \
po/README.tools \
po/README.translators \
po/desk.pl \
po/makefile.mingw \
po/update.pl \
po/po2tbl.sed.in \
examples/aspectframe/Makefile \
examples/aspectframe/aspectframe.c \
examples/Makefile \
examples/README.1ST \
examples/extract.awk \
examples/extract.sh \
examples/arrow/Makefile \
examples/arrow/arrow.c \
examples/base/Makefile \
examples/base/base.c \
examples/buttonbox/Makefile \
examples/buttonbox/buttonbox.c \
examples/buttons/Makefile \
examples/buttons/buttons.c \
examples/buttons/info.xpm \
examples/calendar/Makefile \
examples/calendar/gcalendar.c \
examples/calendar/calendar.c \
examples/clist/Makefile \
examples/clist/clist.c \
examples/entry/Makefile \
@@ -49,6 +59,8 @@ EXTRA_DIST = \
examples/helloworld/helloworld.c \
examples/helloworld2/Makefile \
examples/helloworld2/helloworld2.c \
examples/label/Makefile \
examples/label/label.c \
examples/list/Makefile \
examples/list/list.c \
examples/menu/Makefile \
@@ -58,8 +70,6 @@ EXTRA_DIST = \
examples/notebook/notebook.c \
examples/packbox/Makefile \
examples/packbox/packbox.c \
examples/packer/Makefile \
examples/packer/pack.c \
examples/paned/Makefile \
examples/paned/paned.c \
examples/pixmap/Makefile \
@@ -74,6 +84,8 @@ EXTRA_DIST = \
examples/rulers/rulers.c \
examples/scribble-simple/Makefile \
examples/scribble-simple/scribble-simple.c \
examples/scribble-xinput/Makefile \
examples/scribble-xinput/scribble-xinput.c \
examples/scrolledwin/Makefile \
examples/scrolledwin/scrolledwin.c \
examples/selection/Makefile \
@@ -101,8 +113,48 @@ EXTRA_DIST = \
examples/spinbutton/Makefile \
examples/find-examples.sh
GDKTARGET=@gdktarget@
## Copy .pc files to target-specific names
gtk+-$(GDKTARGET)-2.0.pc: gtk+-2.0.pc
rm -f gtk+-$(GDKTARGET)-2.0.pc && \
cp gtk+-2.0.pc gtk+-$(GDKTARGET)-2.0.pc
gdk-$(GDKTARGET)-2.0.pc: gdk-2.0.pc
rm -f gdk-$(GDKTARGET)-2.0.pc && \
cp gdk-2.0.pc gdk-$(GDKTARGET)-2.0.pc
gtk+-$(GDKTARGET)-2.0-uninstalled.pc: gtk+-2.0-uninstalled.pc
rm -f gtk+-$(GDKTARGET)-2.0-uninstalled.pc && \
cp gtk+-2.0-uninstalled.pc gtk+-$(GDKTARGET)-2.0-uninstalled.pc
gdk-$(GDKTARGET)-2.0-uninstalled.pc: gdk-2.0-uninstalled.pc
rm -f gdk-$(GDKTARGET)-2.0-uninstalled.pc && \
cp gdk-2.0-uninstalled.pc gdk-$(GDKTARGET)-2.0-uninstalled.pc
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA= gdk-pixbuf-2.0.pc gdk-$(GDKTARGET)-2.0.pc gtk+-$(GDKTARGET)-2.0.pc
DISTCLEANFILES = \
gtk+-$(GDKTARGET)-2.0.pc \
gdk-$(GDKTARGET)-2.0.pc \
gtk+-$(GDKTARGET)-2.0-uninstalled.pc \
gdk-$(GDKTARGET)-2.0-uninstalled.pc
## copy the default target for this platform to gdk-2.0.pc and gtk+-2.0.pc
DEFAULT_GDKTARGET=x11
install-data-hook:
(cd $(DESTDIR)$(pkgconfigdir) && \
test -f gdk-$(DEFAULT_GDKTARGET)-2.0.pc && \
test -f gtk+-$(DEFAULT_GDKTARGET)-2.0.pc && \
rm -f gdk-2.0.pc && cp -f gdk-$(DEFAULT_GDKTARGET)-2.0.pc gdk-2.0.pc && \
rm -f gtk+-2.0.pc && cp -f gtk+-$(DEFAULT_GDKTARGET)-2.0.pc gtk+-2.0.pc) || \
(cd $(DESTDIR)$(pkgconfigdir) && \
rm -f gdk-2.0.pc && cp -f gdk-$(GDKTARGET)-2.0.pc gdk-2.0.pc && \
rm -f gtk+-2.0.pc && cp -f gtk+-$(GDKTARGET)-2.0.pc gtk+-2.0.pc)
dist-hook: gtk+.spec
if test -e $(srcdir)/INSTALL.in && test -e $(srcdir)/README.in ; then \
if test -f $(srcdir)/INSTALL.in && test -f $(srcdir)/README.in ; then \
CONFIG_FILES="INSTALL:$(srcdir)/INSTALL.in README:$(srcdir)/README.in" \
CONFIG_HEADERS= \
$(SHELL) config.status \
@@ -110,9 +162,6 @@ dist-hook: gtk+.spec
fi \
&& cp gtk+.spec $(distdir)
m4datadir = $(datadir)/aclocal
m4data_DATA = gtk.m4
.PHONY: files release sanity snapshot
files:
@@ -135,4 +184,29 @@ sanity:
snapshot:
$(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`
$(MAKE) dist distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
# This is a version of the automake-1.4 distcheck rule modified
# to pass --enable-gtk-doc to ./configure
#
mydistcheck: dist
-rm -rf $(distdir)
GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
mkdir $(distdir)/=build
mkdir $(distdir)/=inst
dc_install_base=`cd $(distdir)/=inst && pwd`; \
cd $(distdir)/=build \
&& ../configure --srcdir=.. --prefix=$$dc_install_base --enable-gtk-doc \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) dist
-rm -rf $(distdir)
@banner="$(distdir).tar.gz is ready for distribution"; \
dashes=`echo "$$banner" | sed s/./=/g`; \
echo "$$dashes"; \
echo "$$banner"; \
echo "$$dashes"

555
NEWS
View File

@@ -1,3 +1,558 @@
Overview of Changes in GTK+ 2.0.3
=================================
* GtkTreeView fixes (Jonathan Blandford, Kristian Rietveld, Daniel Elstner)
* Improve GdkRGB support for low color depths (Tor Lillqvist).
* Tweak F10 behavior to focus GtkMenuBar. (Owen Taylor)
* Include internal children when focusing. (Jonathan)
* Win32 fixes (Tor Lillqvist, David Sterba)
* Allow use of a pixmap as the drawable in gdk_pixmap_new(). (Kristian)
* GdkPixbuf fixes (Matthias Clasen, Michael Natterer, Federico Mena Quintero)
* GtkMenu fixes. (Soeren Sandmann)
* Find gdk-pixbuf-csource when cross-compiling. (Michael Natterer)
* Misc input-method related fixes (Yao Zhang, Federico)
* Fix stuck grab during DND. (Dave Camp, Owen)
* Remove in-bevel from scrolled-offscreen menus. (Ettore Perazzoli)
* Various plug/socket fixes (Owen, Padraig O'Briain, Dave Camp,
Michael Meeks)
* Handle Xlib internal connections (HideToshi Tajima)
* Many miscellaneous bug fixes.
Other contributors: Jacob Berkman, Abigail Brady, Rich Burridge,
Anders Carlsson, Murray Cumming, Nalin Dahyabhai, James Henstridge,
David Highley, Ben Liblitt, Tim Janik, Bill Jannsen, Lauris Kaplinski,
Sergey Kuzminov, Alex Larsson, Sven Neumann, Havoc Pennington, Gareth Pearce,
Simon Floery, Thomas Leonard, Detlef Reichl, Martin Schulze, Christophe Saout,
Timo Sirainen, Graham Swallow.
Overview of Changes in GTK+ 2.0.2
=================================
* GtkTreeView cursor movement fixes [Kristian Rietveld]
* GtkTreeModelSort iterator stamp fixes [Kristian Rietveld]
Overview of Changes in GTK+ 2.0.1
=================================
* GtkTreeView fixes and performance improvements
[Kristian Rietveld, Jonathan Blandford, Mike Piepe, Dave Camp]
* GtkTextView fixes [Havoc Pennington]
* Fix problems with accelerators on Solaris [Padraig O'Briain]
* Some fixes for key bindings on keypad keys [Owen Taylor]
* Fix problem with RENDER use on big endian machines
[Owen Taylor, with help from Tuomas Kuosmanen]
* Win32 fixes, especially dashed line drawing
[Tor Lillqvist, Hans Breuer]
* Compile with -D_REENTRANT when appropriate [Sven Numann]
* Compiler warning cleanups [Erwann Chenede]
* Fix handling of font-name XSETTING [Richard Hestilow]
* Make linux-fb backend compile again [Carlo E. Prelz, Alex Larsson]
* Fix problems with inappropriate menu scroll arrows [Owen]
* Stock icon improvements [Jakub Steiner, Tuomas]
* Much work on pixbuf loader robustness [Matthias Clasen]
* Documentation improvements [Matthias, Vitaly Tiskkov]
* Fix some crashes in GtkWindow accelerator handling code
[Dave Camp, Matt Wilson]
* Misc bug fixes
Other contributors: Jacob Berkman, Dennis Björklund, Seth Burgess,
Murray Cumming, Johan Dahlin, John Ellis, Kang Jeong-He,
James Henstridge, Richard Hult, Thomas Leonard, LEE Sau Dan,
Alexey A. Malyshev, Mark McLoughlin, Michael Meeks, Sven Neumann,
Andras Salamon, Soeren Sandmann, Dan Winship, Yao Zhang
Overview of Changes in GTK+ 2.0.0
=================================
* GtkTreeView fixes [Jonathan Blandford, Kristian Rietveld, Darin Adler]
* Build fixes [Anders Carlsson, Tor Lillqvist, Manish Singh]
* Bug fixes. [Thomas Leonard, Owen Taylor]
Overview of Changes in GTK+ 2.0.0 rc1
=====================================
* GtkTreeView fixes [Kristian Rietveld, Jonathan Blandford, Richard Hult]
* Text widget fixes [Havoc Pennington]
* Efficiency fixes when using Xft [Owen Taylor]
* Key handling fixes and other fixes for Win32 [Hans Breuer, Tor Lillqvist]
* Try to fix key handling without XKEYBOARD extension [Owen]
* Documentation fixes and improvements
[Matthias Clasen, Alexey Malyshev, Akira Tagoh, Vitaly Tishkov]
* Widget drawing improvments [Soeren Sandmann]
* Allow cycling between multiple menu bars with <Control>Tab [Owen]
* Try to build libraries with only shared library dependencies on Xft to
deal with transition to Xft2 [Owen]
* Portability fixes [Owen, Miroslaw Dobrzanski-Neumann]
* Don't use red as the default cursor color [Owen]
* Bug fixes, bug fixes, bug fixes.
Other contributors: Darin Adler, Jacob Berkman, Kevin Breit, Hans Breuer,
Anders Carlsson, Damon Chaplin, Finlay Dobbie, Jody Goldberg,
Andreas J. Guelzow, Scott Guilbeaux, Vlad Harchev, James Henstridge,
Tim Janik, Satyajit Kanungo, Charles Kerr, Sergey Kuzminov, Miles Lane,
Alexander Larsson, Paolo Maggi, Skip Montaro, Jan Mynarik, Sven Neumann,
Padraig O'Briain, Narayani Pattipati, Mark Patton, Havoc Pennington,
Ettore Perazzoli, Guillermo S. Romero, Manish Singh, Morten Welinder
Overview of Changes in GTK+ 1.3.15
==================================
* New stock and improved icon images
[Tuomas Kuosmanen, Jakub Steiner, Anders Carlsson]
* Widget drawing improvements for check and radio buttons,
spinbuttons [Soeren Sandmann]
* Clean up module search path algorithm, use GTK_PATH [Owen Taylor]
* Add GtkSetting for font name. [Richard Hestilow]
* Much improved key matching code, accelerators work independent
of group [Owen]
* Make mnemonics work for embedded GtkPlug widgets [Owen]
* Keynav improvements for GtkTreeView [Kristian Rietveld]
* Fix gtk_tree_view_scroll_to_cell() [Jonathan Blandford]
* Rename gtk_tree_view_get_iter_root() and gtk_tree_path_new_root()
to gtk_tree_view_get_iter_first() and gtk_tree_path_new_first(),
add compatibility macros.
* GtkTreeView bug fixes [Kristian, Anders, Damon Chaplin]
* GtkTextView bug fixes [Havoc Pennington]
* Pad class structures for future binary compatibility [Owen]
* Tutorial improvements [Sven Neumann, Matthias Clasen]
* Fixes for MULTIPLE selection target [Gregory Merchan, Owen]
* Fix problems with initial widget size [Owen]
* AIX compilation fixes [Miroslaw Dobrzanski-Neumann]
* Win32 fixes [Hans Breuer, Tor Lillqvist]
* Miscellaneous bug fixes
Other contributors: David L. Cooper, Eric Fischer, Jody Goldberg,
Satajyit Kanungo, Thomas Leonard, Mark Patton, Manish Singh,
Nicolas Setton
Overview of Changes in GTK+ 1.3.14
==================================
* Keyboard focus improvements [Owen Taylor]
* Code cleanup [Matthias Clasen, Manish Singh, Darin Adler]
* Fix accidentally exported variables [Mark McLoughlin]
* GtkTreeView fixes [Jonathan Blandford, Kristian Rietveld, John Harper, Darin]
* Default to yellow tooltips [Owen]
* RC file fixes for reloading, priorities [Owen, Matthias]
* GtkMenu behavior improvements and bug fixes [Owen, Arnaud Charlet]
* GtkTextView fixes [Havoc Pennington, Daniel Elstner, Dennis Bjorklund]
* Improve keynav for paned widgets, tooltips, spin buttons, notebooks,
scrolled windows [Soeren Sandmann, Padraig, Owen]
* Add Emacs/Default key themes [Owen]
* Win32 fixes [Hans Breuer, Tor Lillqvist]
* Ethiopic input methods [Daniel Yacob]
* Opaque paned window resizing [Soeren]
* Tweak table expansion behavior [Tim Janik]
* Fix GtkCalendar focus drawing [Bill Haneman]
* Allow themeable cursor thickness [Bill]
* Start of fixing of tutorial for GTK+-2.0 [Matthias]
* Add a ::adjust-bounds signal to GtkRange to allow spreadsheat style
scrollbars. [Jody Goldberg]
* Add the ability to turn on multiple selection for GtkFileSel [Manish]
* Bug fixes
Other contributors: Jacob Berkman, Padraig O'Briain, Anders Carlsson,
Johan Dahlin, Richard Hult, Stefan Kost, Alex Larsson, Thomas Leonard,
Paolo Maggi, Alexey Malyshev, Federico Mena Quintero, Skip Montaro,
Sven Neumann, Havoc Pennington, Laszlo Peter, Christian Rose, Joe Shaw,
Kevin Vandersloot, Morten Welinder, Peter Williams
Overview of Changes in GTK+ 1.3.13
==================================
* Tree view fixes. [Kristian Rietveld, Jonathan Blandford, Anders Carlsson]
* Tree view support for low-vision themes [Bill Haneman]
* Text view bug fixes. [Havoc Pennington]
* Win32 fixes and improvements. [Tor Lillqvist, Hans Breuer,
Archaeopteryx Software]
* Documentation improvements [Matthias Clasen, Havoc Pennington]
* Accelerate alpha compositing using RENDER extension if present,
and optimize the non-RENDER case a lot. [Owen Taylor]
* Add support for "optional keybindings" (action signal returns FALSE) [Owen]
* Fixed the infamous changing directory deletes filename bug
[Owen and a cast of thousands]
* Add mouse cursor hiding for text widgets [Anders Carlsson]
* Simple Hangul input module [Yusuke Tabata]
* Removed the scary startup warning.
* GdkPixbuf pixel handling fixes [Owen, Michael Hore, Jim Cape]
* Converted GtkFileSelection and GtkFontSelection to use GtKTreeView widgets
instead of the deprecated GtkCList [Owen]
* gtkhsv.h was installed by mistake, fixed that. [reported by Ross Burton]
* gdk_pixbuf_render_to_drawable() now also handles alpha pixbufs.
* Made Gtkimage draw GtkPixmap, GtkImage, GdkPixbuf insensitive, prelighted,
etc. [Havoc, Owen]
* Marked gtk_item_factory_path_from_widget() G_CONST_RETURN. [Matt Wilson]
* gtk_image_menu_item_new_from_stock() now falls back to
new_with_mnemonic, for consistency with gtk_button_new_from_stock()
[Havoc Pennington]
* GdkModifierType is now consistently used for modifier mask parameters
[Mark Patton]
* gtk_widget_set_accel_path() is now publically exported.
Other contributors: Darin Adler, Jeffrey Baker, Damon Chaplin, Brian Cameron,
Murray Cumming, James Henstridge, Jacob Berkman, Arnaud Charlet, Jeff Franks,
Jeff Garzik, Jody Goldberg, Diego Gonzalez, Melvin Hadasht, Raja Harinath,
Tim Janik, Mike Kestner, Mathieu Lacage, Alex Larsson, Ryan Lovett,
Mark McLoughlin, Sven Neumann, Padraig O'Briain, Xavier Ordoquy, Chris Phelps,
Detlef Reichl, Guillermo S. Romero, Federico Mena Quintero, Manish Singh,
HideToshi Tajima, Vitaly Tishkov, Jon Trowbridge, Sergey Vlasov.
Overview of Changes in GTK+ 1.3.12
==================================
* Fix problems with PNG saving [Michael Natterer]
* Cleanups of deprecated usages [Sebastian Wilhelmi]
* Win32 fixes [Tor Lillqvist]
* Documentation improvements [Matthias Clasen, Havoc Pennington,
Vitaly Tishkov]
* Frame buffer port fixes [Manish Singh]
* GtkTextView bug fixes [Havoc Pennington, Chris Phelps]
* Menu behavior improvements [Kristian Rietveld]
* Make focus line width configurable, focus color work on
dark themes. [Bill Haneman, Owen Taylor]
* Add state argument to gtk_paint_focus() [Bill]
* Added incremental revalidation to tree view, for better apparent speed
[Jonathan Blandford]
* Remove useless gtk_tree_view_column_cell_event() [Jonathan]
* Display XIM status in a separate window [HideToshi Tajima]
* Add GDK_DEBUG=nograbs to disable pointer, keyboard grabs [Jacob Berkman]
* Add menu of Unicode control characters to GtkEntry, GtkTextView
[Dov Grobgeld, Havoc]
* Pass key releases along to input methods [Owen]
* Many bug fixes
Other contributors: Darin Adler, Fabrice Bellet, Chris Blizzard,
Hans Breuer, Anders Carlsson, Damon Chaplin, Murray Cumming, Jeff Franks,
James Henstridge, Tim Janik, Alex Larsson, George Lebl, Kjartan, Maraas,
Sven Neumann, Seth Nickell, Padraig O'Briain, Soeren Sandmann, Manish Singh,
Matt Wilson
Overview of Changes in GTK+ 1.3.11
==================================
* Massive rework of accelerator API and implementation (Tim Janik)
* Major fixes to resizing and redrawing to eliminate hysteresis
and optimize. (Owen Taylor, Soeren Sandmann)
* Make many widgets NO_WINDOW to improve appearance and reduce
drawing overhead (Owen)
* Text view fixes (Havoc Pennington)
* Make child widgets in GtkTextView work (Havoc)
* GtkTreeModelSort fixage (Jonathan Blandford, Kristian Rietveld)
* Clean up GtkTreeView drag and drop support (Owen)
* Misc tree view fixes and improvements (Jonathan, Kristian, Anders, Matt Wilson)
* Add gtk_window_get/set_focus(), gtk_window_set_default() as public
functions (Owen, Damian Ivereigh)
* Fixes to GtkPlug/GtkSocket (Michael Meeks, Owen)
* Change button ordering in standard dialogs to correspond to
GNOME useability project proposal (Gregory Merchan)
* Add support for context sensitivity in input methods (Owen)
* Hook up gtk_im_context_set_use_preedit() (Hidetoshi Tajima)
* Fix gdk_window_scroll() and other aspects of big windows (Owen)
* Remove need for X connection for class initialization (Jacob Berkman)
* Propagate key events to parents of focused widget (Owen)
* Don't export normal GTK+ marshalers, export deprecated compat marshalers (Owen)
* Many Win32 Fixes and improvements (Hans Breuer, Tor Lillqvist)
* Bug and documentation fixing (Matthias Clasen, Anders Carlsson,
Jacob Berkman, others.)
Other Contributors:
Darin Adler, Marius Andreiana, Erwann Chenede, Murray Cumming, Janet Davis,
Daniel Egger, Daniel Elstner, Jeff Franks, Alex Larsson, George Lebl,
Sergey Kuzminov, Eric Lemings, Arkadiusz Miskiewicz, Padraig O'Briain, Sven Neumann,
Kristian Rietveld, Nicolas Setton, Manish Singh, Vitaly Tishkov, Sebastian Wilhelmi,
Michael Natterer
Overview of Changes in GTK+ 1.3.10
==================================
* GtkTextView fixes [Havoc Pennington]
* GtkTreeView fixes and improvements [Jonathan Blandford, Kristian,
Manish Singh, Joshua Pritikin, Oleg Maiboroda, James Henstridge]
* gtkdemo improvements [Kristian Rietveld]
* Drag and drop fixes to generic code and widgets
[Owen Taylor, Damian Ivereigh]
* Documentation improvement [Havoc Pennington, Matthias Clasen]
* Spelling fixes [Jacob Berkman]
* Move signals to the GtkEditable interface [Kristian]
* Further stock image improvements [Jakub Steiner]
* Support text chunks for the PGN loader, add gdk_pixbuf_get_option()
[Sven Neumann]
* Rename gdk_pixbuf_new_from_stream back to new_from_inline [Owen]
* Automatically call setlocale(), unless explictely disabled [Owen]
* Property addition to various widgets [Michael Meeks, Owen]
* Support building with automake-1.4 [James]
* Make GtkRadioButton groups act as a single focus point [Owen]
* Move gdk_window_lookup etc. to be cross-platform [Matthias]
* Draw spinbuttons variably sized [Kristian]
* Separate GdkAtom out from X atoms for compatibility with future
multihead changes [Owen]
* Require gdk_threads_init() to be explicitly called instead
of piggybacking off of g_thread_init(). [Owen]
* Improvements to text-view/label/entry popup menus [Damian, Jacob, Owen]
* Bug fixes and cleanup [Matthias, others]
Other Contributors:
Mark McLoughin, Mikael Hermansson, Soeren Sandmann, Anders Carlsson,
Tim Janik, Murray Cumming, Hidetoshi Tajima, Padraig O'Briain,
Hans Breuer, Vitaly Tishkov, Dov Grobgeld
Overview of Changes in GTK+ 1.3.9
=================================
* Add editable text cells to GtkTreeView.
Keynav, drawing fixes in GtkTreeView [Jonathan Blandford]
* Text widget no longer always has a \n in it. [Havoc Pennington]
* Text widget bug fixes [Havoc, Dov Grobgeld, Hidetoshi Tajima]
* Allow -1 for width/height in gdk_pixbuf_render_*(). [Matthias Clasen]
* Minor fix for major resizing problems in recent releases [Owen Taylor]
* Restore ability to set _set properties to TRUE for
GtkCellRendererText, GtkTextTag [Owen]
* Cursor drawing improvements [Owen]
* Win32 fixes [Hans Breuer]
* Mark various functions as deprecated or private.
* Misc bug fixes, portability fixes, and cleanups.
Other Contributors:
Vitaly Tishkov, Christian Rose, Frank Belew, Jeff Franks, Sven Neumann,
Kristian Rietveld, Vitaly Tishkov, Joshua N. Pritikin, Matt Wilson,
James Henstridge, Detlef Reichl
Overview of Changes in GTK+ 1.3.8
=================================
* GtkTreeView and GtkTreeModel API cleanups/improvements [Jrb]
* GtkOptionMenu scrollwheel support [Alex]
* GtkModule search paths [Owen]
* Documenatation updates [Havoc,Jrb]
* Major Gdk cleanup [Owen]
* Miscellaneous other fixes/cleanups
Other Contributors:
Joshua N Pritikin, Padraig O'Briain, Jakub Steiner, Matthias Clasen,
Matt Wilson, James Henstridge
Overview of Changes in GTK+ 1.3.7
=================================
* Many Pixbuf (loader) improvements [Matthias Clasen, Soeren Sandmann]
* Added publically installed utility gdk-pixbuf-csource to generate
inlined pixbufs in C source code [Tim Janik]
* Optional movement of button children on press [Soeren, Owen Taylor]
* Interactive searching in GtkTreeView [Kristian Rietveld]
* Sorting/ordering improvements for GtkTreeView [Kris, Jonathan Blandford]
* Animation of expander motion for GtkTreeView [Anders Carlsson]
* Lots of misc GtkTreeView fixes and improvements [Jonathan]
* New/improved stock icons [Jakub Steiner]
* Code and API rework for window resizing [Havoc Pennington]
* Converted accel groups to GObject [James Henstridge]
* More property support improvements
* Add facility for "secondary" buttons in
GtkButtonBox/GtkDialog [Gregory Merchan]
* Disentangled child visability from MAPPED state [Owen]
* Plug/Socket improvements and port to the XEMBED protocol [Owen]
* Added priorities for styles in RC files,
support multiple parse contents [Owen]
* Made GdkVisual and GdkDevice GObjects [Alexander Larsson]
* Key binding improvements [Havoc]
* Added GtkWidget::event-after signal since normal event handling
is now aborted as soon as a handler returned TRUE [Tim]
* Dnd fixes and improved icon support [Owen]
* Removed GtkPacker widget
* Fixing missing paired getters/setters [Kris]
* Nuked remaining GtkArg cruft, implemented container/child properties [Tim]
* Added window grab groups [Owen]
* Many frame buffer improvements [Alex]
* Win32 fixes and improvements [Hans Breuer]
* Warning fixes [Darin Adler]
* Miscellaneous bug and API fixes [Matthias et. al]
Other Contributors:
Joshua N Pritikin, Hidetoshi Tajima, Manish Singh, ERDI Gergo, Jens Finke,
Chema Celorio, Lee Mallabone, Vitaly Tishkov, Sebastian Wilhelmi,
Nicola Girardi, Sven Neumann, Padraig O'Briain, Michael Natterer,
Suresh Chandrasekharan, Jonas Borgström, Jay Cox, Michael Meeks,
Mathias Hasselmann, Peter Williams, Thomas Broyer, Kjartan Maraas,
Joel Becker, Jeff Franks, Brian Cameron, Skip Montanaro
Overview of Changes in GTK+ 1.3.6
=================================
* Properly renders strikethrough text
* win32 fixes
* Added "scale" property to GtkTextTag and GtkCellRendererText to do
relative font scaling
* Added "format_value" signal to GtkScale to reformat value text
* framebuffer fixes
* Property support added to lots of widgets
* Many GtkTreeView new features and API/implementation fixes
* Lots of new_with_mnemonic() convenience functions
* Change GtkImageMenuItem API to be more consistent/useful
* Added lots of new stock items/icons
* Rewrote GtkRange/GtkScale/GtkScrollbar, includes support for
enabling/disabling extra scrollbar stepper arrows in gtkrc so NeXT
themes won't need broken hacks
* Convenience API for GtkRange similar to the one added to GtkSpinButton
a while back
* Make menubar/toolbar work properly with xthickness/ythickness of 1 or 0,
and move some attributes from program settings to user settings.
Allows nice 1-pixel-bevel themes.
* Moved ::focus virtual function from GtkContainer to GtkWidget
* Plenty of bug fixes
Overview of Changes in GTK+ 1.3.5
=================================
* New default theme based on Raleigh theme for 1.2.x.
* Dependency on the ATK library added as a step to
providing accessibility-enabling interfaces
* XEMBED-based GtkPlug/GtkSocket now basically works.
* Drag and drop of column headers in GtkTreeView
* GtkColorSelector work: hooks for saving and propagating palette, UI tweaks,
and API sanitization
* Key binding fixes
* Configurable padding/spacing in a lot of places
* Invisible text in GtkTextView fixed
* SHM segments now created with a mode of 0600
* Bug fixes
Overview of Changes in GTK+ 1.3.4
=================================
* Win32 fixes
* GtkTreeView improvements and fixes
* Fix glib-2.0.m4
* Miscellaneous bug fixes
Overview of Changes in GTK+ 1.3.3
=================================
[ 5600 lines of ChangeLog ]
* API cleanups
* Win32 work (Tor, Hans Breuer)
* Focus improvements (Owen)
* Frame buffer improvements (Alex)
* Work on GtkTextView (Havoc)
* Much work on GtkTreeView (Jonathan)
* Selectable labels (Havoc)
* Converted many arguments to properties (Lee Mallabone, John Margaglione)
* Add exact regions to GdkExposeEvent, propagate it. (Alex)
* Added ability to have resize grips in status bars (etc.) using
_NET_WM_MOVERESIZE protocol. (Havoc)
* Added mnemnonic mechanism to make setting underline accelerators
much easier. (Alex)
* Add per-style property mechanism to allow themes to change
geometry parameters. (Tim)
* Added global settings mechanisms for settings such as double-click
time. (Tim, Owen)
* Various support functions for new and old WM properties (Havoc, Alex)
* Add TRUE-stops-returns for boolean-returning signals (Ron Steinke)
Overview of Changes in GTK+ 1.3.2
=================================
GTK Core:
* New stock-icon and stock-item system. Use themeable pixbufs in
dialogs, buttons, etc. [Havoc]
* Theme engines reworked to use derivation and new object system. [Owen]
* Added GtkClipboard object for simple selection handling. [Owen]
* Make GtkEditable an interface, move implementation to GtkOldEditable for
compat. [Owen]
* Better handling of default directionality. [Robert]
* Use GSignal as backend for GtkSignal and other GObject stuff. [Tim]
* Move theme engines to GTypePlugin. [Owen]
GDK:
* Beginning of implementation of client parts of new window manager spec. [Owen]
* Make gdk_drawable_get_image() work with backing store. [Havoc]
Widgets:
* New text widget [Havoc]
- Adjustable tab handling.
- Ability to have scrolling side areas in new text widget for tabs/line numbers.
- Many cleanups and small improvements.
* Improvements to submenu navigation [Nils Barth/David Santiago] and
scrolling menus. [Alex]
* Simplification of progress bar API. [Havoc]
* Make GtkImage a generic image-display widget. [Havoc]
* New GtkTreeView tree widget. Model/view architecture, flexible renderering,
large datasets, etc. [Jonathan]
* New GtkMessageBox widget for message display. [Havoc]
* Allow labels to have contents set from XML-like markup language. [Havoc]
* Make dialogs derive from GtkDialog and use stock buttons. [Havoc]
Internationalization:
* Proper character set conversion for clipboard/selection. [Owen]
* New input method system via loadable modules; support on-the-spot
preedit in GtkEntry and new text widget; allow switchin input methods
on the fly; include modules for XIM and demo Cyrillic-tranliteration
module. [Owen]
* VIQR, Thai, and Inuktitut input methods. [Robert]
* Convert po files to UTF-8. [Robert]
gdk-pixbuf:
* Full-alpha compositing for gdk-pixbuf on drawable. [Havoc]
* Add simple saving to gdk-pixbuf. [David Welton/Havoc]
* Add improved error handling with GError to gdk-pixbuf. [Havoc]
Ports:
* Much work on Win32 Port. [Tor/Hans]
* Much work on Linux-FB Port. [Elliot/Alex]
Misc:
* Start of new gtk-demo demo program. [Owen/Jonathan]
* Bug fixes and more bug fixes.
Overview of Changes in GTK+ 1.3.1:
* GTK+ now uses the Pango library for text manipulation. All
strings in GTK+ now are in Unicode, languages written
from right-to-left, and complex-text languages are now supported.
* The gdk-pixbuf library for image loading and manipulation is
has been integrated with GTK+.
* The GTK+ object system has mostly been moved to GLib, separating
it from the GUI code. Many significant enhancements have been
made as part of this.
* A new text widget is now included. This started as a port
of the Tk text widget, and includes such features of the Tk
text widget as tags, marks, and unicode text support. It
has been enhanced to support model-view operation and the
full power of Pango.
* The GDK library has been extensively revised to support multiple
windowing systems. The only fully functional backend in 1.3.1
is the X11 backend, however, ports to Win32, Linux-framebuffer,
Nano-X, BeOS, and MacOS exist in various states of completion,
and at least some of these will be finished and integrated in
before the final GTK+-2.0 release.
* 32-bit coordinates are now supported throughout GDK and GTK+
(they are emulated where not supported by the windowing system.)
* Many minor bug fixes and enhancements. Incompatible changes
are documented in docs/Changes-2.0.txt
Overview of Changes in GTK+ 1.2.8:
* GNU Make 3.79 bug workaround
* FAQ and tutorial updates and improvements
* Miscellaneous bug fixes: CList, Calendar, rc-files, FontSelection
Overview of Changes in GTK+ 1.2.7:
* More header cleanups.
* Fixed activation bug for insensitive widgets.
* Locale fixes to RC file parsing code.
* Miscellaneous bugfixes for Item Factory, CList, CTree, X Selections,
HScale, VScale, Pixmap, Viewport, OptionMenu, Entry and Notebook.
* Upgrade to libtool 1.3.4.
Overview of Changes in GTK+ 1.2.6:
* container queue_resize fixes

192
README
View File

@@ -1,10 +1,15 @@
General Information
===================
This is GTK+ version 1.2.0. GTK+, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces for the X Window
System. It is designed to be small, efficient, and flexible. GTK+ is
written in C with a very object-oriented approach.
This is GTK+ version 2.0.3. GTK+ is a multi-platform toolkit for
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.
GTK+ is free software and part of the GNU Project. However, the
licensing terms for GTK+, the GNU LGPL, allow it to be used by all
developers, including those developing proprietary software, without any
license fees or royalties.
The official ftp site is:
ftp://ftp.gtk.org/pub/gtk
@@ -12,38 +17,111 @@ The official ftp site is:
The official web site is:
http://www.gtk.org/
A mailing list is located at:
gtk-list@redhat.com
To subscribe: mail -s subscribe gtk-list-request@redhat.com < /dev/null
(Send mail to gtk-list-request@redhat.com with the subject "subscribe")
Information about mailing lists can be found at
http://www.gtk.org/mailinglists.html
Installation
============
See the file 'INSTALL'
GTK+-2.0.0 Specific Notes
=========================
* The default configuration of GTK+ has been stream-lined to reduce
confusion on the part of new users or users coming from other
environments. Users used to older versions of GTK+ may want to make
some adjustments to the default configuration.
- Emacs keybindings such as Control-A and Control-E to move to the
ends of lines are not enabled by default in the editing widgets. To
turn on Emacs keybindings, add the line:
gtk-key-theme-name = "Emacs"
To your ~/.gtkrc-2.0
- Editing of menu accelerators by pressing an accelerator over the
menu item is disabled by default. To enable, it, add:
gtk-can-change-accels = 1
to your ~/.gtkrc-2.0
- To improve useability for keyboard operation, GTK+ now selects the
contents of an entry when tabbing into it or when it is focused on
initial window map. To disable this behavior, add:
gtk-entry-select-on-focus = 0
to your ~/.gtkrc-2.0
* The GTK+ libraries use an '_' prefix to indicate private symbols that
must not be used by applications. The intention was not to export
symbols beginning with prefixes such as _gtk, _gdk, and _pango from
the libraries at all, but due to a bug in libtool, they are actually
exported at the moment on some platforms (including Linux).
Applications that use these private symbols _will_ break when
this bug is fixed.
* The Xft library that GTK+ uses to display anti-aliased fonts will
undergo a major version revision in the next few months. To deal with
this, by default, GTK+ and Pango are built so that applications will
not have explicit dependencies on version 1 on Xft. To make sure that
your application will be binary compatible with future versions of
GTK+:
- Do not configure Pango or GTK+ with the --enable-static or
--enable-explicit otions, since they will cause dependencies on
Xft version 1.
- Do not use Xft directly in your applicatons.
* There is a bug in the Xft library in XFree86-4.1 and possibly previous
versions that causes random crashes when using the Pango Xft
backend. If you want to use Xft fonts, you should upgrade to
XFree86-4.2.
* Xft support is not on by default. To turn it on set the environment
variable GDK_USE_XFT to '1'
GDK_USE_XFT=1
export GDK_USE_XFT
* The gdk_pixbuf_xlib library included in the contrib/ directory of GTK+
is provided on a as-is basis and has not been tested at all. No
guarantees about the degree of workingness or about future
compatibility are provided.
* There are known problems with some of the image loaders in the
gdk-pixbuf library included in GTK+ where corrupted images can cause
crashes and conceivably worse problems. Until these problems are fixed
(we hope to have this done for 2.0.1), gdk-pixbuf should not be used
to load untrusted data.
* The assumption of GLib and GTK+ by default is that filenames on the
filesystem are encoded in UTF-8 rather than the encoding of the locale;
The GTK+ developers consider that having filenames whose interpretation
depends on the current locale is fundamentally a bad idea.
If you have filenames encoded in the encoding of your locale, then
you may want to set the G_BROKEN_FILENAMES environment variable:
G_BROKEN_FILENAMES=1
export G_BROKEN_FILENAMES
Best integration of GTK+-2.0 with the environment is achieved by
using a UTF-8 locale.
How to report bugs
==================
Bugs should be reported to the GNOME bug tracking
system. (http://bugs.gnome.org). To report a problem
about GTK+, send mail to submit@bugs.gnome.org.
The subject of the mail should describe your problem.
In the body of the mail, you should first include
a "pseudo-header" that gives the package and
version number. This should be separated by a blank
line from the actual headers.
Package: gtk+
Version: 1.2.0
[ Please substitute 1.2.0 with the version of GTK+ that
you have installed ]
Then describe the bug. Include:
Bugs should be reported to the GNOME bug tracking system.
(http://bugzilla.gnome.org, product gtk+.) You will need to create an
account for yourself.
In the bug report please include:
* Information about your system. For instance:
- What operating system and version
@@ -54,48 +132,32 @@ Then describe the bug. Include:
* How to reproduce the bug.
If you can reproduce it with the testgtk program that is built
in the gtk/ subdirectory, that will be most convenient. Otherwise,
please include a short test program that exhibits the behavior.
As a last resort, you can also provide a pointer to a larger piece
of software that can be downloaded.
If you can reproduce it with the testgtk program that is built in the
gtk/ subdirectory, that will be most convenient. Otherwise, please
include a short test program that exhibits the behavior. As a last
resort, you can also provide a pointer to a larger piece of software
that can be downloaded.
(Bugs that can be reproduced within the GIMP are almost as good
as bugs that can be reproduced in testgtk. If you are reporting a
bug found with the GIMP, please include the version number of the GIMP
you are using)
* If the bug was a crash, the exact text that was printed out when the
crash occured.
* If the bug was a crash, the exact text that was printed out
when the crash occured.
* Further information such as stack traces may be useful, but
is not necessary. If you do send a stack trace, and the error
is an X error, it will be more useful if the stacktrace
is produced running the test program with the --sync command
line option.
An example of a bug report:
====
To: submit@bugs.gnome.org
From: yourname@your.address.org
Subject: handlebox test in testgtk is misnamed.
Package: gtk+
Version: 1.2.0
When I run gtk/testgtk, the button "handle box"
is misnamed. There are multiple handle boxes in
the demo, so it should be "handle boxes", to
be like "buttons" or "check buttons".
===
* Further information such as stack traces may be useful, but is not
necessary. If you do send a stack trace, and the error is an X error,
it will be more useful if the stacktrace is produced running the test
program with the --sync command line option.
Patches
=======
Patches can be uploaded to the incoming/ directory on
ftp.gtk.org. Please follow the instructions there, and include
your name and email address in the README file.
Patches should also be submitted to bugzilla.gnome.org. If the patch
fixes an existing bug, add the patch as an attachment to that bug
report.
If the patch fixes a bug, it is usually a good idea to include
all the information described in "How to Report Bugs".
Otherwise, enter a new bug report that describes the patch, and attach
the patch to that bug report.
Bug reports containing patches should include the PATCH keyword in their
keyword fields. If the patch adds to or changes the GTK programming
interface, the API keyword should also be included.
Patches should be in unified diff form. (The -u option to GNU diff.)

View File

@@ -4,7 +4,7 @@ GTK+. This is a good thing, in that it encourages many people to work
on GTK+, and progress can be made quickly. However, GTK+ is a fairly
large and complicated package that many other things depend on, so to
avoid unnecessary breakage, and to take advantage of the knowledge
about GTK+ that has been built up over the last 18 months, we'd like
about GTK+ that has been built up over the last 4 years, we'd like
to ask people commiting to GTK+ to follow a few rules:
0) Ask first. If your changes are major, or could possibly break existing
@@ -14,15 +14,10 @@ to ask people commiting to GTK+ to follow a few rules:
somebody may know a better way to do things.
If you are making changes to GTK+, you should be subscribed
to gtk-devel-list@redhat.com. (Subscription address:
gtk-devel-list-request@redhat.com.) This is a good place to ask
to gtk-devel-list@gnome.org. (Subscription address:
gtk-devel-list-request@gnome.org.) This is a good place to ask
about intended changes.
If you just want to make a trivial change, and don't want to subscribe,
you can also mail gtk-bugs@gtk.org. Or, alternatively, you can look in
the ChangeLog for somebody who has been making changes to the file
you want to change and email them.
#gimp on byxnet (irc.gimp.org, irc2.gimp.org, irc3.gimp.org,
irc.germany.gimp.org...)s also a good place to find GTK+ developers to
discuss changes with, however, email to gtk-devel-list is the most
@@ -56,8 +51,4 @@ Notes:
Owen Taylor
13 Aug 1998
17 Apr 2001

192
README.in
View File

@@ -1,10 +1,15 @@
General Information
===================
This is GTK+ version @GTK_VERSION@. GTK+, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces for the X Window
System. It is designed to be small, efficient, and flexible. GTK+ is
written in C with a very object-oriented approach.
This is GTK+ version @GTK_VERSION@. GTK+ is a multi-platform toolkit for
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.
GTK+ is free software and part of the GNU Project. However, the
licensing terms for GTK+, the GNU LGPL, allow it to be used by all
developers, including those developing proprietary software, without any
license fees or royalties.
The official ftp site is:
ftp://ftp.gtk.org/pub/gtk
@@ -12,38 +17,111 @@ The official ftp site is:
The official web site is:
http://www.gtk.org/
A mailing list is located at:
gtk-list@redhat.com
To subscribe: mail -s subscribe gtk-list-request@redhat.com < /dev/null
(Send mail to gtk-list-request@redhat.com with the subject "subscribe")
Information about mailing lists can be found at
http://www.gtk.org/mailinglists.html
Installation
============
See the file 'INSTALL'
GTK+-2.0.0 Specific Notes
=========================
* The default configuration of GTK+ has been stream-lined to reduce
confusion on the part of new users or users coming from other
environments. Users used to older versions of GTK+ may want to make
some adjustments to the default configuration.
- Emacs keybindings such as Control-A and Control-E to move to the
ends of lines are not enabled by default in the editing widgets. To
turn on Emacs keybindings, add the line:
gtk-key-theme-name = "Emacs"
To your ~/.gtkrc-2.0
- Editing of menu accelerators by pressing an accelerator over the
menu item is disabled by default. To enable, it, add:
gtk-can-change-accels = 1
to your ~/.gtkrc-2.0
- To improve useability for keyboard operation, GTK+ now selects the
contents of an entry when tabbing into it or when it is focused on
initial window map. To disable this behavior, add:
gtk-entry-select-on-focus = 0
to your ~/.gtkrc-2.0
* The GTK+ libraries use an '_' prefix to indicate private symbols that
must not be used by applications. The intention was not to export
symbols beginning with prefixes such as _gtk, _gdk, and _pango from
the libraries at all, but due to a bug in libtool, they are actually
exported at the moment on some platforms (including Linux).
Applications that use these private symbols _will_ break when
this bug is fixed.
* The Xft library that GTK+ uses to display anti-aliased fonts will
undergo a major version revision in the next few months. To deal with
this, by default, GTK+ and Pango are built so that applications will
not have explicit dependencies on version 1 on Xft. To make sure that
your application will be binary compatible with future versions of
GTK+:
- Do not configure Pango or GTK+ with the --enable-static or
--enable-explicit otions, since they will cause dependencies on
Xft version 1.
- Do not use Xft directly in your applicatons.
* There is a bug in the Xft library in XFree86-4.1 and possibly previous
versions that causes random crashes when using the Pango Xft
backend. If you want to use Xft fonts, you should upgrade to
XFree86-4.2.
* Xft support is not on by default. To turn it on set the environment
variable GDK_USE_XFT to '1'
GDK_USE_XFT=1
export GDK_USE_XFT
* The gdk_pixbuf_xlib library included in the contrib/ directory of GTK+
is provided on a as-is basis and has not been tested at all. No
guarantees about the degree of workingness or about future
compatibility are provided.
* There are known problems with some of the image loaders in the
gdk-pixbuf library included in GTK+ where corrupted images can cause
crashes and conceivably worse problems. Until these problems are fixed
(we hope to have this done for 2.0.1), gdk-pixbuf should not be used
to load untrusted data.
* The assumption of GLib and GTK+ by default is that filenames on the
filesystem are encoded in UTF-8 rather than the encoding of the locale;
The GTK+ developers consider that having filenames whose interpretation
depends on the current locale is fundamentally a bad idea.
If you have filenames encoded in the encoding of your locale, then
you may want to set the G_BROKEN_FILENAMES environment variable:
G_BROKEN_FILENAMES=1
export G_BROKEN_FILENAMES
Best integration of GTK+-2.0 with the environment is achieved by
using a UTF-8 locale.
How to report bugs
==================
Bugs should be reported to the GNOME bug tracking
system. (http://bugs.gnome.org). To report a problem
about GTK+, send mail to submit@bugs.gnome.org.
The subject of the mail should describe your problem.
In the body of the mail, you should first include
a "pseudo-header" that gives the package and
version number. This should be separated by a blank
line from the actual headers.
Package: gtk+
Version: @GTK_VERSION@
[ Please substitute @GTK_VERSION@ with the version of GTK+ that
you have installed ]
Then describe the bug. Include:
Bugs should be reported to the GNOME bug tracking system.
(http://bugzilla.gnome.org, product gtk+.) You will need to create an
account for yourself.
In the bug report please include:
* Information about your system. For instance:
- What operating system and version
@@ -54,48 +132,32 @@ Then describe the bug. Include:
* How to reproduce the bug.
If you can reproduce it with the testgtk program that is built
in the gtk/ subdirectory, that will be most convenient. Otherwise,
please include a short test program that exhibits the behavior.
As a last resort, you can also provide a pointer to a larger piece
of software that can be downloaded.
If you can reproduce it with the testgtk program that is built in the
gtk/ subdirectory, that will be most convenient. Otherwise, please
include a short test program that exhibits the behavior. As a last
resort, you can also provide a pointer to a larger piece of software
that can be downloaded.
(Bugs that can be reproduced within the GIMP are almost as good
as bugs that can be reproduced in testgtk. If you are reporting a
bug found with the GIMP, please include the version number of the GIMP
you are using)
* If the bug was a crash, the exact text that was printed out when the
crash occured.
* If the bug was a crash, the exact text that was printed out
when the crash occured.
* Further information such as stack traces may be useful, but
is not necessary. If you do send a stack trace, and the error
is an X error, it will be more useful if the stacktrace
is produced running the test program with the --sync command
line option.
An example of a bug report:
====
To: submit@bugs.gnome.org
From: yourname@your.address.org
Subject: handlebox test in testgtk is misnamed.
Package: gtk+
Version: @GTK_VERSION@
When I run gtk/testgtk, the button "handle box"
is misnamed. There are multiple handle boxes in
the demo, so it should be "handle boxes", to
be like "buttons" or "check buttons".
===
* Further information such as stack traces may be useful, but is not
necessary. If you do send a stack trace, and the error is an X error,
it will be more useful if the stacktrace is produced running the test
program with the --sync command line option.
Patches
=======
Patches can be uploaded to the incoming/ directory on
ftp.gtk.org. Please follow the instructions there, and include
your name and email address in the README file.
Patches should also be submitted to bugzilla.gnome.org. If the patch
fixes an existing bug, add the patch as an attachment to that bug
report.
If the patch fixes a bug, it is usually a good idea to include
all the information described in "How to Report Bugs".
Otherwise, enter a new bug report that describes the patch, and attach
the patch to that bug report.
Bug reports containing patches should include the PATCH keyword in their
keyword fields. If the patch adds to or changes the GTK programming
interface, the API keyword should also be included.
Patches should be in unified diff form. (The -u option to GNU diff.)

32
README.nanox Normal file
View File

@@ -0,0 +1,32 @@
Gtk port to nano-X
STATUS
Once upon a time I got a few apps working, then started merging
the new features added by Owen (32 bit sizes for windows and buffering).
Since then I haven't found the time to work on it:-/
TODO
Finish internal window manager abstraction or add proper support in nano-X.
Fix event polling.
Implement GdkImage, GdkRgb stuff.
Put generic region code in generic gdk and/or use the region code from nano-X.
Fix ugly automake stuff for make dist.
TODO in nano-X
We need to be able to clip and change the background of windows at runtime
for apps to not look so ugly!
Fonts: wait for better nano-X font implementation.
Properties on windows.
Provide a pango module.
If you want to work on this port or get additional informnation, get in
touch with me.
Configure gtk with the --with-gdktarget=nanox to compile with nano-X support.
Paolo Molaro
lupus@linuxcare.com

View File

@@ -1,39 +1,95 @@
The Win32 port of GTk+ is a work in progress, and not as stable or
The Win32 port of GTK+ is a work in progress, and not as stable or
correct as the Unix/X11 version. For more information about the Win32
port, see http://www.gimp.org/tml/gimp/win32/ or
http://www.iki.fi/tml/gimp/win32/ .
port, and prebuilt runtime and developer packages see
http://www.gimp.org/win32/ .
To build GTk+ on Win32, you need either the Microsoft compiler and
tools, or gcc-2.95 or later running under cygwin-b20.1 or
later. Compile in gdk\win32 and gtk with `nmake -f makefile.msc` or
`make -f makefile.cygwin`. Before doing a install, check the BIN
definition in gdk\win32\makefile.msc (or makefile.cygwin) and
gtk\makefile.msc (or makefile.cygwin).
There is a gtk-1-3-win32-production branch of GTK+ that was branched
off from before the addition of the no-flicker and other recent
functionality. That is what should be used by "production" code until
this CVS HEAD (2.0) version is useable. (But note, the Win32 backend
has never been claimed to be "production quality", although it works
surprisingly well for the GIMP.)
See the README.win32 file in the GLib distribution for instructions
how to build with gcc.
Building GTK+ on Win32
======================
To use GTk+ on Win32, you also need either of the above mentioned
compilers. Other compilers might work, but don't count on it. The
same instructions on how to set up a correct version of gcc should
also be followed if you want to build applications that use GTk+ with
gcc.
There are two ways to build GTK+ for win32:
1) Use the autoconf-generated configure script, and the resulting
Makefiles (which use libtool and gcc to do the compilation). I use
this myself, but it might be hell to setup correctly.
Personally I run configure with:
CC='gcc -mpentium -fnative-struct' CPPFLAGS='-I/target/include' CFLAGS=-O2 LDFLAGS='-L/target/lib' ./configure --disable-static --prefix=/target --with-gdktarget=win32 --with-wintab=/src/wtkit126 --with-ie55=/src/workshop/ie55_lib --host=i386-pc-mingw32 --enable-maintainer-mode
It might well be that in order for this to work, you will have to get
a bleeding-edge version of libtool for Win32, run libtoolize yourself,
and then run autoconf to generate the configure script.
2) Use the Microsoft compiler, cl and Make, nmake. Say nmake -f
makefile.msc in gdk and gtk.
Alternative 1 also generates Microsoft import libraries (.lib), if you
have lib.exe available. It might also work for cross-compilation from
Unix.
There are hand-written makefiles for mingw (look for makefile.mingw in
various directories), but those haven't been kept up-to-date, and
probably won't work without editing. Sorry. If you make them work
again, by all means do submit patches.
Note that I use method 1 myself. Hans Breuer has been taking care of
the MSVC makefiles. At times, we disagree a bit about various issues,
and the makefile.msc files might not produce identically named DLLs
and import libraries as the "autoconfiscated" makefiles and libtool
do.
Using GTK+ on Win32
===================
To use GTK+ on Win32, you also need either one of the above mentioned
compilers. Other compilers might work, but don't count on it. Look for
prebuilt developer packages (DLLs, import libraries, headers) on the
above website.
Multi-threaded use of GTK+ on Win32
===================================
Multi-threaded GTK+ programs might work in special simple cases, but
not in general. Sorry. If you have all GTK+ and GDK calls in the same
thread, it might work. Otherwise, probably not at all. Possible ways
to fix this are being investigated.
Wintab
======
The tablet support uses the Wintab API. The Wintab development kit can
be downloaded from http://www.pointing.com. If you don't care for
that, undefine HAVE_WINTAB in config.h.win32 and remove references to
the wntab32x library from the makefile before building.
be downloaded from http://www.pointing.com. Pass the --with-wintab
flag to configure if you use that. If you use nmake and you don't care
for Wintab, undefine HAVE_WINTAB in config.h.win32 and remove
references to the wntab32x library from the makefile before building.
GTk+ wants to be built with the GNU "intl" library for
Libintl
=======
GTK wants to be built with the GNU "intl" library for
internationalisation (i18n). Get the version ported to Win32 (not a
very big deal) from tml's web site mentioned above. We build the
"intl" library as a DLL called gnu-intl.dll (the "gnu" prefix is used
to reduce name clash risks). If you don't want any i18n stuff,
undefine ENABLE_NLS, HAVE_GETTEXT and HAVE_LIBINTL in the
config.h.win32 file, and remove references to the gnu-intl library
from the makefiles.
very big deal) from the web site mentioned above. The "intl" library
as gets built as a DLL called libintl-1.dll. If you don't want any
i18n stuff, undefine ENABLE_NLS, HAVE_GETTEXT and HAVE_LIBINTL in the
config.h.win32 file, and remove references to the intl library from
the makefiles.
Note that while the GNU gettext package is under the GPL, the "intl"
part of it as distributed with GNU libc is under the LGPL (like GTk+
or GLib). We want the LGPL one, even if they are the same, more or
less.
ActiveIMM
=========
If you want to build a GTK+ that supports ActiveIMM (the Input Method
Manager for non-EastAsia locales that can be used on Win9x/NT4), you
need the dimm.h header file. That is somewhat difficult to find, but
http://msdn.microsoft.com/downloads/samples/internet/wizard/ seems to
be a good place to look nowadays. If you use "autoconfiscated" build,
pass the --with-ie55 flag to configure specifyin the location of the
ie55_lib directory created by downloading the IE5.5 headers and libs
from the above URL.
--Tor Lillqvist <tml@iki.fi>

2
TODO
View File

@@ -185,7 +185,7 @@ DND
- Use a cursor instead of an ICON when over Motif windows,
to get rid of the current junk that Motif leaves because
of it's XCopyArea stupidity for doing highlighting.
of its XCopyArea stupidity for doing highlighting.
- Add a GTK_DRAG_VERIFY target flag and a "drag_data_verify"
signal so that apps can easily check if a, say,

739
TODO.xml Normal file
View File

@@ -0,0 +1,739 @@
<!-- This is used to generate the online TODO list for GTK+ using
the script docs/make-todo. Whenever a change to this file is
committed to CVS,the file is run through make-todo and the online
version updated. If you modify this file, you should check for
parse errors by running:
$ docs/make-todo TODO.xml > /dev/null
before committing, or you may screw up the online version -->
<todo logourl="gtk-logo-rgb.gif">
<title>GTK+ TODO list</title>
<section>
<title>GDK</title>
<entry size="medium" status="90%" target="2.0">
<title>Add backing store support</title>
<description>
<p>
GTK+'s drawing model involves clearing to a background, and
then drawing widgets on top of this. Without having
backing-store support, this results in flickering in various
situations. Backing store cannot be added widget-by-widget,
because the drawing in a particular window is not confined
to a single widget. Instead it needs to be added per GDK
window.
</p>
<p>
The way this is done is by having
<tt>gdk_window_begin_paint()</tt>
and <tt>gdk_window_end_paint()</tt> functions that
redirect all drawing to a particular window to an offscreen
pixmap, and then copy that offscreen pixmap back onto the
screen when the paint operation is done. The implementation
of this is mostly complete in the <tt>gtk-no-flicker</tt> branch of
GTK+.
</p>
</description>
<url>http://www.gtk.org/~otaylor/gtk/1.4/gdk-drawing.html</url>
<contact>Owen Taylor &lt;otaylor@redhat.com&gt;</contact>
</entry>
<entry size="medium" status="90%" target="2.0">
<title>32 Bit Coordinates</title>
<description>
<p>
GTK+-1.2 and earlier share X's limitation on the
size of coordinates and restrict all dimensions
to 16 bit quantities. By clever use of X it is
possible to lift this restriction and present a
full 32-bit space to the user.
</p>
<p>
There are some difficulties with performance in this
approach - mostly because scrolling can involve mapping and
unmapping lots of widgets, but in general, current
trials in this area seem to work pretty well.
</p>
</description>
<url>http://www.gtk.org/~otaylor/gtk/1.4/gdk-drawing.html</url>
<contact>Owen Taylor &lt;otaylor@redhat.com&gt;</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Customizable double-click timeout</title>
<description>
<p>
The current fixed double-click timeout in GTK+
is too small for some users. This needs to be
customizable
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
<bugs>#3958</bugs>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Make color handling more convenient</title>
<description>
<p>
Add some color convenience functions; such as a way to get an
allocated GdkColor from GdkRGB, and export functions from gtkstyle.c
that lighten/darken a given color, and set a color from HSV in
addition to RGB. Also, consider having static variables that contain
preallocated common colors (gdk_blue, gdk_red, etc.), the problem
being colormap issues.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Cursors</title>
<description>
<p>
Two tasks: 1) move the cursors in the cursor font that people actually
care about to the top of the gdkcursor.h header file, and put a nice
list of the 15 cursors people actually care about in the docs 2) if
the cursor font lacks some commonly-useful cursors (like magnifying
glass), add these cursors to gdkcursor.h and then emulate them in
gdk_cursor_new by transparently creating the cursor from a bitmap.
The list of Qt cursors is worth http://doc.trolltech.com/qcursor.html
looking at for this task.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="100%" target="2.0">
<title>Make GdkRGB work on any visual</title>
<description>
<p>
GdkRGB should be able to render to an arbitrary visual
(i.e. the visual shouldn't be fixed at gdk_rgb_init()
time). This will break gdk_rgb_gc_set_foreground() and
friends, though.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
</section> <!-- GDK -->
<section>
<title>Internationalization</title>
<entry size="big" status="90%" target="2.0">
<title>Integrate Pango</title>
<description>
<p>
The purpose of the Pango project is to provide a system for
layout and rendering of internationalized text. It handles
most of the issues necessary to
</p>
</description>
<url>http://www.pango.org</url>
<contact>gtk-i18n-list@redhat.com</contact>
</entry>
<entry size="medium" status="90%" target="2.0">
<title>Switch to using UTF-8</title>
<description>
<p>
This is closely related to Pango integration. Pango deals
with all strings in terms of UTF-8; by switching GTK+ over
to UTF-8 we make it considerably simpler for developers to
support multiple languages properly while still retaining
a large degree of compatibility with existing programs.
</p>
<p>
Some work has already been done on this as part of the Win32
port, since the Win32 port is currently using UTF-8 for all
strings. In general, this should be an easy job; the hardest
parts are places like GtkFileSelection, cut and paste, and
input method support where there is interaction between GTK+
and the operating system.
</p>
</description>
<contact>gtk-i18n-list@redhat.com</contact>
</entry>
<entry size="big" status="60%" target="2.0">
<title>Rewrite Input Method Support</title>
<description>
<p>
Support for Input Methods is GTK+-1.2 is done via XIM, with
supported styles being over-the-spot and the root-window
styles. However, the over-the-spot style is not going to
work well with the Pango integration, since it relies on the
text rendering in the program being done in the standard
Xlib style, so it will be necessary to also support
on-the-spot input. On-the-spot input is done by supplying a
set of callbacks that are invoked by the input methods.
</p>
<p>
GTK+-2.0 will have a new system with loadable input method
modules. These modules can either be implemented using XIM,
or written from scratch.
</p>
</description>
<contact>gtk-i18n-list@redhat.com</contact>
</entry>
</section> <!-- i18n -->
<section>
<title>GTK+ Core</title>
<entry size="big" status="60%" target="2.0">
<title>GLib based object and type system</title>
<description>
<p>
The GTK+ object system is already in use in quite a few different
non-GUI applications; it would be desirable for these uses
to have the object and type systems separated from the GUI portions
of GTK+ and be generalized for non-GUI usage.
</p>
</description>
<contact>Tim Janik &lt;timj@gtk.org&gt;</contact>
</entry>
<entry size="big" status="1%" target="2.0">
<title>Overall callback improvements</title>
<description>
<p>
The GTK+ type and signal systems need significant improvements to
allow signal creation with default handlers from language bindings
and to aid language bindings in deriving new objects.
One aspect of this is the Closure support, recently suggested by
Karl Nelson &lt;kenelson@ece.ucdavis.edu&gt;, but this also
requires a GLib based type and parameter system (ties in with
"GLib based object and type system").
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="big" status="0%" target="2.0">
<title>State change notification</title>
<description>
<p>
GTK+ objects emit various types of signals, some to perform
arbitrary actions, some to allow customization from user code,
and some signals are emitted to notify of certain changes
of an object. For the latter, what really is required is a
gneneric signal that can be used to monitor *any* kind of object
changes. For that, all object changes need to be routed through
a central point (otherwise the signal emissions are spread all
over the object implementation), i.e. an object argument setter.
The state change notification signal doesn't need to be emitted
syncronously, in fact, it's probably most effective to always
emit this asynchronously, so subsequent changes are accumulated.
</p>
</description>
<contact>Tim Janik &lt;timj@gtk.org&gt;</contact>
</entry>
<entry size="big" status="5%" target="2.0">
<title>Widget as sensitivity/grab state machine</title>
<description>
<p>
Maintenance of pointer and keybnoard grabs is currently very
tedious and error-prone, most widget's cook up their own stuff
in this regard.
By moving the general concept of "Grabs" to the GTK+ level as
a widget state, and providing a new signal for alterations of
a widget's state ("visible", "visible+insensitive",
"visible+grab", "hidden", "hidden+insensitive", etc.), things
can be unified and more stabelize. A couple of bugs, such as
insensitive widgets still holding a grab, or buttons that
still think they are depressed when hidden, will be squeezed
automatically with that.
</p>
</description>
<contact>Tim Janik &lt;timj@gtk.org&gt;</contact>
</entry>
<entry size="big" status="0%" target="2.0">
<title>Allow argument customization</title>
<description>
<p>
Many types of object arguments (expander style in the CList,
default padding in button boxes, etc), conceptually go with
the theme, or as user preferences; they should not be set by
a particular program.
</p>
<p>
There needs to be a mechanism for themes to be able to
control these arguments from the RC file.
</p>
</description>
</entry>
<entry size="medium" status="0%" target="2.0">
<title>Allow global customization</title>
<description>
<p>
There are a number of global parameters in GTK+ and GDK that should be
customizable by the user, such as the double-click timeout,
or whether widgets should be backing-stored by default.
</p>
<p>
If we had argument customization from an RC file, it might
be possible to do this simply with a global object with
arguments for the various global parameters that was
customized in the same fashion as object arguments.
</p>
</description>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Gtk+ Modules installation directory</title>
<description>
<p>
Gtk+ needs to support an extra lib/ directory, to search
for dynamically loadable modules, it also needs to support
an environment variable to specify module search paths.
This has quite some cross-platform issues with the GModule
code (especially on AIX).
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="20%" target="2.0">
<title>Convenient widget setup</title>
<description>
<p>
Make it simpler to set all the basic attributes of a widget. Might
want set_tooltip(), set_accel(), set_color(FOREGROUND, color),
set_min_size() (usize does this, but needs a rename), set_whatsthis(),
etc. set_accel() may not work for all widgets, may need a convenience
API for button and label accelerators specifically.
</p>
<p>
The idea is that it should be easy, out of the box, to set up a widget
with all the nice touches and features the widget really should
have. Users shouldn't need to do their own convenience functions for
this.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="0%" target="> 2.0">
<title>Make selections/clipboard more convenient</title>
<description>
<p>
Make GtkSelectionData more like the MIME blobs in Swing and Qt.
Consider a GtkClipboard object to simplify cut-and-paste handling.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="80%" target="2.0">
<title>Stock label/icon system</title>
<description>
<p>
A system like GnomeStock for getting a standard labels/icons
for menus and toolbars. Should be extensible by themes, and
by libgnomeui. Some work already done on this.
</p>
</description>
<contact>hp@redhat.com</contact>
</entry>
<entry size="big" status="0%" target="> 2.0">
<title>Session Management</title>
<description>
<p>
Look in to session management. Consider whether to use
X11R6 SM, or some custom spec shared with KDE. Create
GTK+ API for this.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="big" status="0%" target="> 2.0">
<title>Online help enhancements</title>
<description>
<p>
Look at a small "What's This" popup widget,
and a What's This system in general (this part
could maybe be done for 2.0). A more difficult, probably
a post-2.0 task, is to integrate a very simple little
help browser gizmo into GTK.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="0%" target="2.0">
<title>GUI-editable means of user configuration</title>
<description>
<p>
Need to be able to set double click time, whether cursors
blink, etc., from a control panel type of deal.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
</section> <!-- Core -->
<section>
<title>GTK+ Widgets</title>
<entry size="small" status="100%" target="2.0">
<title>Make GtkFrame use a label</title>
<description>
<p>
The title of a frame should simply be another child widget
which, by default, holds a label widget. This will important
with Pango where proper text behavior will be more complex to
implement, but is also useful for certain user-interface
designs. (It can be useful, for example, to put a checkbutton
in that slot.)
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="big" status="90%" target="2.0">
<title>Replace GtkText Widget</title>
<description>
<p>
The GtkText widget is badly in need of replacement, since it
is buggy and insufficiently feature rich. This is being done
using Havoc Pennington's port of the Tk Text widget.
</p>
<p>
As part of this job <a href="http://www.pango.org">Pango</a>
support is being added to the replacement. The structure of
the Tk text widget port is suited to this as it works
paragraph-by-paragraph, and Pango works at a sub-paragraph
scale. The main remaining tasks here are to implement
incremental reflow to make performance acceptable and to
implement embedded pixmaps and widgets.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="20%" target="2.0">
<title>Improve Radio/Checkbutton Look</title>
<description>
<p>
The default look for the radio and checkbuttons is both
unattractive and not friendly to the user . Motif did not
get this one right, and we should not keep on following the
Motif look. The right thing here is probably to copy the
Windows appearance for these controls fairly closely. This
will fit in with well with the rest of the GTK+ look.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="99%" target="2.0">
<title>Improve Submenu Navigation</title>
<description>
<p>
Navigating through a deep menu tree in GTK+ is currently
quite tricky, because as soon as one leaves a menu item,
the submenu disappears. The way that the Macintosh is
reputed to handle this is that to pop down the current
submenu, you have to leave the triangle defined by the
upper left hand corner of the menu item and right
side of the submenu.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="0%" target="2.0 ?">
<title>Improve Spinbutton Look</title>
<description>
<p>
Spinbuttons currently appear to have lumpy boundaries,
because sides of the arrows aren't at an angle that
meshes well with the pixel grid. However, fixing this
would require making the spinbuttons narrower and
harder to hit. This points out a general problem with
the spinbutton (and the arrows on the scrollbars) - the
target area for clicks actually the bounding box of the
arrows, but the user thinks that they must click on the
arrows themselves. It would probably be more friendly
to use a square button with an arrow drawn on top instead
of a arrow-shaped button, the approach taken by most other
windowing systems.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="big" status="90%" target="2.0">
<title>Supply horizontable/vertical wrapping boxes</title>
<description>
<p>
An often requested feature are wrapping containers, at this
point, gimp's development version already uses such widgets:
horizontable/vertical wrap boxes, that need to go into 2.0
proper at some point.
</p>
</description>
<contact>Tim Janik &lt;timj@gtk.org&gt;</contact>
</entry>
<entry size="medium" status="90%" target="2.0">
<title>Improved generic combo support</title>
<description>
<p>
Gtk+'s combo box has several drawbacks in design and
implementation. An new attempt at providing the combo box
functionality with improved flexibility has been made with
the GtkClueHunter widget, sitting in the CVS module "gle".
</p>
</description>
<contact>Tim Janik &lt;timj@gtk.org&gt;</contact>
</entry>
<entry size="big" status="40%" target="2.0?">
<title>Add unified set of List/Tree/Grid widgets</title>
<description>
<p>
Currently, GTK+ has a large number of list and tree widgets
(GtkList, GtkTree, GtkCList, GtkCTree), none of which are
ideal. The GtkList and GtkTree widgets perform badly on large
number of items. (GtkTree widget is also quite buggy.) GtkCList
and GtkCTree mostly solve the size problem, but are quite
complex and, despite that, not very flexible. They are limited to
displaying pixmaps and text, and can neither support arbitrary
widgets nor custom drawing functions.
</p>
<p>
In addition to list and tree widgets, a closely related need
is a sheet widget that displays a (possibly editable) 2-D grid.
It would be desirable to have a complete set of widgets that
could be presented as the one-true-solution for these needs.
Model/View techniques could be used effectively to increase
both the simplicity and power of the interfaces.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>GtkImage</title>
<description>
<p>
gdk-pixbuf is moving to become a GTK+ dependency, a new image-display
widget is thus needed.
</p>
</description>
<contact>hp@redhat.com</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Attempt to fix GtkStatusbar</title>
<description>
<p>
GtkStatusbar is too inconvenient to use.
The only non-breakage-inducing fix we could
come up with is to permit 0 as a context ID, so you
don't have to use gtk_statusbar_get_context_id().
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="95%" target="2.0">
<title>Decruft GtkProgress, GtkProgressbar</title>
<description>
<p>UPDATE: this is done, just need to apply the patch.
</p>
<p>
This interface is just a disaster of overcomplexity;
it should pretty much just be set_percentage(),
pulse() (to move during activity mode), and set_text().
There's no reason that there are two objects, should
just be one interface. Almost all the functions
that currently exist should be deprecated.
</p>
</description>
<contact>hp@redhat.com</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Entry validation hooks</title>
<description>
<p>
Simple hooks for validation in a GtkEntry. Pretty much just a
"validate" callback which takes a string (current entry contents) and
returns either VALID, INVALID, or COULDBEVALID. Then the
GtkEntry calls this function if it's set, and does the appropriate
UI things. GTK should come with validators for int and float,
see GtkSpinButton where these are already implemented.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="big" status="0%" target="> 2.0">
<title>pseudo-MDI Widget</title>
<description>
<p>
Add a widget that lets you rearrange various views (similar to many
IDEs, like Visual SlickEdit or JBuilder). Basically there should be a
central slot and 4 slots around the sides; each slot holds one or more
views. If two views are dropped in the same slot, then a notebook is
created displaying both views. If a view is dropped outside the
application window, it becomes a standalone window. It should be
possible to restrict whether a view can be dropped on the sides,
horizontal/vertical sides only, in the central content area, or in
any of those places.
</p>
<p>
(Havoc has a proposed interface for this, mail hp@redhat.com)
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="0%" target="> 2.0">
<title>Icon List Widget</title>
<description>
<p>
A simple icon list widget, suitable for creating a file selector or
the like.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="0%" target="> 2.0">
<title>Dock widget</title>
<description>
<p>
Add a widget like GnomeDock (perhaps based on GnomeDock)
that allows people to put rearrangeable toolbars, menubars, etc.
around a central content area. The widget should have hooks for
saving the current positions of the various docked bars.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="big" status="0%" target="> 2.0">
<title>Canvas widget</title>
<description>
<p>
Figure out how to get GnomeCanvas or a derived work into GTK+ itself.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="57%" target="2.0">
<title>Menu scroll</title>
<description>
<p>
When menus are bigger than the screen, allow scrolling
as on the Mac.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="20%" target="2.0">
<title>Toolbar/menubar wrap</title>
<description>
<p>
When toolbars and menubars are too wide, do some sort of
wrapping or drop-down deal. (See Windows/Mac apps for examples.)
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Blink cursor in GtkEntry</title>
<description>
<p>
Make the cursor optionally blink in GtkEntry. Beware, the entry code
is somewhat in flux; mail Owen and ask.
</p>
</description>
<contact>otaylor@redhat.com</contact>
</entry>
<entry size="small" status="100%" target="2.0">
<title>Don't highlight first menu item when menus come up</title>
<description>
<p>
Keep GtkMenu from prelighting the first menu item.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="100%" target="2.0">
<title>Integrate new color selector</title>
<description>
<p>
There's a new color selector in CVS (module gnome-colorsel),
it needs to be folded in to GTK and any remaining issues resolved.
(This new selector is API-compatible with the old one, and
still called GtkColorSelector).
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="medium" status="70%" target="2.0">
<title>Write new font selector</title>
<description>
<p>
Pango introduces a new font handling system,
replacing the XLFD system. Need a font selector for this.
The XLFD selector should probably remain, for apps where
it makes sense (like gnome-terminal probably).
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Stack Widget</title>
<description>
<p>
Jonathan has a widget like a tabless/frameless notebook, used for
something like the GNOME control center where you want to toggle which
widget is visible to the user. Needs to be cleaned up and considered
for GTK.
</p>
</description>
<contact>gtk-devel-list@gnome.org, jrb@redhat.com</contact>
</entry>
<entry size="small" status="0%" target="2.0">
<title>Clean up GtkNotebook</title>
<description>
<p>
GtkNotebook currently breaks GTK invariants about
mapping/visibility/etc., needs fixing.
</p>
</description>
<contact>gtk-devel-list@gnome.org</contact>
</entry>
</section> <!-- GTK+ -->
</todo>

View File

@@ -19,10 +19,11 @@
#undef GTK_COMPILED_WITH_DEBUGGING
#undef HAVE_CATGETS
#undef HAVE_DIRENT_H
#undef HAVE_DIMM_H
#undef HAVE_GETTEXT
#undef HAVE_IPC_H
#undef HAVE_LC_MESSAGES
#undef HAVE_PROGRESSIVE_JPEG
#undef HAVE_PWD_H
#undef HAVE_SHM_H
#undef HAVE_STPCPY
@@ -30,15 +31,32 @@
#undef HAVE_SHAPE_EXT
#undef HAVE_SYS_SELECT_H
#undef HAVE_SYS_TIME_H
#undef HAVE_WINSOCK_H
#undef HAVE_WINTAB
#undef HAVE_XCONVERTCASE
#undef HAVE_XFT
#undef HAVE_SIGSETJMP
#undef NO_FD_SET
#undef RESOURCE_BASE
#undef USE_GMODULE
#undef USE_MMX
/* Define to use X11R6 additions to XIM */
#undef USE_X11R6_XIM
/* Define to use XKB extension */
#undef HAVE_XKB
/* Define to use shadowfb in the linux-fb port */
#undef ENABLE_SHADOW_FB
/* Define to use a fb manager in the linux-fb port */
#undef ENABLE_FB_MANAGER
#undef XINPUT_NONE
#undef XINPUT_GXI
#undef XINPUT_XFREE
@@ -49,6 +67,8 @@
/* Most machines will be happy with int or void. IRIX requires '...' */
#undef SIGNAL_ARG_TYPE
#undef GETTEXT_PACKAGE
/* #undef PACKAGE */
/* #undef VERSION */

View File

@@ -1,430 +1,16 @@
## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
## Copyright (C) 1996-1999 Free Software Foundation, Inc.
## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 2 of the License, or
## (at your option) any later version.
##
## This program is distributed in the hope that it will be useful, but
## WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
## General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
##
## As a special exception to the GNU General Public License, if you
## distribute this file as part of a program that contains a
## configuration script generated by Autoconf, you may include it under
## the same distribution terms that you use for the rest of that program.
# autoconf 2.13 / 2.50 compatibility macro
# serial 40 AC_PROG_LIBTOOL
AC_DEFUN(AC_PROG_LIBTOOL,
[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
# GLIB_AC_DIVERT_BEFORE_HELP(STUFF)
# ---------------------------------
# Put STUFF early enough so that they are available for $ac_help expansion.
# Handle both classic (<= v2.13) and modern autoconf
AC_DEFUN([GLIB_AC_DIVERT_BEFORE_HELP],
[ifdef([m4_divert_text], [m4_divert_text([NOTICE],[$1])],
[ifdef([AC_DIVERT], [AC_DIVERT([NOTICE],[$1])],
[AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
$1
AC_DIVERT_POP()])])])
# Save cache, so that ltconfig can load it
AC_CACHE_SAVE
# Actually configure libtool. ac_aux_dir is where install-sh is found.
CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \
|| AC_MSG_ERROR([libtool configure failed])
# Reload cache, that may have been modified by ltconfig
AC_CACHE_LOAD
# This can be used to rebuild libtool when needed
LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
AC_SUBST(LIBTOOL)dnl
# Redirect the config.log output again, so that the ltconfig log is not
# clobbered by the next message.
exec 5>>./config.log
])
AC_DEFUN(AC_LIBTOOL_SETUP,
[AC_PREREQ(2.13)dnl
AC_REQUIRE([AC_ENABLE_SHARED])dnl
AC_REQUIRE([AC_ENABLE_STATIC])dnl
AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
AC_REQUIRE([AC_PROG_RANLIB])dnl
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_LD])dnl
AC_REQUIRE([AC_PROG_NM])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
dnl
# Check for any special flags to pass to ltconfig.
libtool_flags="--cache-file=$cache_file"
test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
[libtool_flags="$libtool_flags --enable-dlopen"])
ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
[libtool_flags="$libtool_flags --enable-win32-dll"])
AC_ARG_ENABLE(libtool-lock,
[ --disable-libtool-lock avoid locking (might break parallel builds)])
test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
# Some flags need to be propagated to the compiler or linker for good
# libtool support.
case "$host" in
*-*-irix6*)
# Find out which ABI we are using.
echo '[#]line __oline__ "configure"' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
case "`/usr/bin/file conftest.o`" in
*32-bit*)
LD="${LD-ld} -32"
;;
*N32*)
LD="${LD-ld} -n32"
;;
*64-bit*)
LD="${LD-ld} -64"
;;
esac
fi
rm -rf conftest*
;;
*-*-sco3.2v5*)
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
[AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
if test x"$lt_cv_cc_needs_belf" != x"yes"; then
# this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
CFLAGS="$SAVE_CFLAGS"
fi
;;
ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
[*-*-cygwin* | *-*-mingw*)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false)
;;
])
esac
])
# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
# AC_ENABLE_SHARED - implement the --enable-shared flag
# Usage: AC_ENABLE_SHARED[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AC_ENABLE_SHARED, [dnl
define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(shared,
changequote(<<, >>)dnl
<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_shared=yes ;;
no) enable_shared=no ;;
*)
enable_shared=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_shared=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
])
# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_SHARED(no)])
# AC_ENABLE_STATIC - implement the --enable-static flag
# Usage: AC_ENABLE_STATIC[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AC_ENABLE_STATIC, [dnl
define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(static,
changequote(<<, >>)dnl
<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_static=yes ;;
no) enable_static=no ;;
*)
enable_static=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_static=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
])
# AC_DISABLE_STATIC - set the default static flag to --disable-static
AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_STATIC(no)])
# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(fast-install,
changequote(<<, >>)dnl
<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_fast_install=yes ;;
no) enable_fast_install=no ;;
*)
enable_fast_install=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_fast_install=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
])
# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_FAST_INSTALL(no)])
# AC_PROG_LD - find the path to the GNU or non-GNU linker
AC_DEFUN(AC_PROG_LD,
[AC_ARG_WITH(gnu-ld,
[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
ac_prog=ld
if test "$ac_cv_prog_gcc" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
AC_MSG_CHECKING([for ld used by GCC])
ac_prog=`($CC -print-prog-name=ld) 2>&5`
case "$ac_prog" in
# Accept absolute paths.
changequote(,)dnl
[\\/]* | [A-Za-z]:[\\/]*)
re_direlt='/[^/][^/]*/\.\./'
changequote([,])dnl
# Canonicalize the path of ld
ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
done
test -z "$LD" && LD="$ac_prog"
;;
"")
# If it fails, then pretend we aren't using GCC.
ac_prog=ld
;;
*)
# If it is relative, then search for the first ld in PATH.
with_gnu_ld=unknown
;;
esac
elif test "$with_gnu_ld" = yes; then
AC_MSG_CHECKING([for GNU ld])
else
AC_MSG_CHECKING([for non-GNU ld])
fi
AC_CACHE_VAL(ac_cv_path_LD,
[if test -z "$LD"; then
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
ac_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
# but apparently some GNU ld's only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
test "$with_gnu_ld" != no && break
else
test "$with_gnu_ld" != yes && break
fi
fi
done
IFS="$ac_save_ifs"
else
ac_cv_path_LD="$LD" # Let the user override the test with a path.
fi])
LD="$ac_cv_path_LD"
if test -n "$LD"; then
AC_MSG_RESULT($LD)
else
AC_MSG_RESULT(no)
fi
test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
AC_SUBST(LD)
AC_PROG_LD_GNU
])
AC_DEFUN(AC_PROG_LD_GNU,
[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
ac_cv_prog_gnu_ld=yes
else
ac_cv_prog_gnu_ld=no
fi])
])
# AC_PROG_NM - find the path to a BSD-compatible name lister
AC_DEFUN(AC_PROG_NM,
[AC_MSG_CHECKING([for BSD-compatible nm])
AC_CACHE_VAL(ac_cv_path_NM,
[if test -n "$NM"; then
# Let the user override the test.
ac_cv_path_NM="$NM"
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
# Check to see if the nm accepts a BSD-compat flag.
# Adding the `sed 1q' prevents false positives on HP-UX, which says:
# nm: unknown option "B" ignored
if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
ac_cv_path_NM="$ac_dir/nm -B"
break
elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
ac_cv_path_NM="$ac_dir/nm -p"
break
else
ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
continue # so that we can try to find one that supports BSD flags
fi
fi
done
IFS="$ac_save_ifs"
test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
fi])
NM="$ac_cv_path_NM"
AC_MSG_RESULT([$NM])
AC_SUBST(NM)
])
# AC_CHECK_LIBM - check for math library
AC_DEFUN(AC_CHECK_LIBM,
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
LIBM=
case "$host" in
*-*-beos* | *-*-cygwin*)
# These system don't have libm
;;
*-ncr-sysv4.3*)
AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
;;
*)
AC_CHECK_LIB(m, main, LIBM="-lm")
;;
esac
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl convenience library, adds --enable-ltdl-convenience to
# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
# to be `${top_builddir}/libltdl'. Make sure you start DIR with
# '${top_builddir}/' (note the single quotes!) if your package is not
# flat, and, if you're not using automake, define top_builddir as
# appropriate in the Makefiles.
AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
case "$enable_ltdl_convenience" in
no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
"") enable_ltdl_convenience=yes
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl installable library, and adds --enable-ltdl-install to
# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
# to be `${top_builddir}/libltdl'. Make sure you start DIR with
# '${top_builddir}/' (note the single quotes!) if your package is not
# flat, and, if you're not using automake, define top_builddir as
# appropriate in the Makefiles.
# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_CHECK_LIB(ltdl, main,
[test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
[if test x"$enable_ltdl_install" = xno; then
AC_MSG_WARN([libltdl not installed, but installation disabled])
else
enable_ltdl_install=yes
fi
])
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
INCLTDL=
fi
])
dnl old names
AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
dnl This is just to silence aclocal about the macro not being used
ifelse([AC_DISABLE_FAST_INSTALL])dnl
# Macro to add for using GNU gettext.
# Ulrich Drepper <drepper@cygnus.com>, 1995.
@@ -487,6 +73,10 @@ AC_DEFUN(AM_GTK_WITH_NLS,
gt_cv_func_dgettext_libintl=no)])
fi
if test "$gt_cv_func_dgettext_libintl" = "yes"; then
LIBS="$LIBS -lintl";
fi
if test "$gt_cv_func_dgettext_libc" = "yes" \
|| test "$gt_cv_func_dgettext_libintl" = "yes"; then
AC_DEFINE(HAVE_GETTEXT)

View File

@@ -12,21 +12,49 @@ FILE=gdk
DIE=0
have_libtool=false
if libtool --version < /dev/null > /dev/null 2>&1 ; then
libtool_version=`libtoolize --version | libtoolize --version | sed 's/^[^0-9]*\([0-9.][0-9.]*\).*/\1/'`
case $libtool_version in
1.4*)
have_libtool=true
;;
esac
fi
if $have_libtool ; then : ; else
echo
echo "You must have libtool 1.4 installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
DIE=1
fi
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have autoconf installed to compile $PROJECT."
echo "Download the appropriate package for your distribution,"
echo "libtool the appropriate package for your distribution,"
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
DIE=1
}
(automake --version) < /dev/null > /dev/null 2>&1 || {
have_automake=false
if automake --version < /dev/null > /dev/null 2>&1 ; then
automake_version=`automake --version | grep 'automake (GNU automake)' | sed 's/^[^0-9]*\(.*\)/\1/'`
case $automake_version in
1.2*|1.3*|1.4)
;;
*)
have_automake=true
;;
esac
fi
if $have_automake ; then : ; else
echo
echo "You must have automake installed to compile $PROJECT."
echo "Get ftp://ftp.cygnus.com/pub/home/tromey/automake-1.2d.tar.gz"
echo "You must have automake 1.4-p1 installed to compile $PROJECT."
echo "Get ftp://ftp.gnu.org/pub/gnu/automake/automake-1.4-p1.tar.gz"
echo "(or a newer version if it is available)"
DIE=1
}
fi
if test "$DIE" -eq 1; then
exit 1
@@ -37,9 +65,11 @@ test $TEST_TYPE $FILE || {
exit 1
}
if test -z "$*"; then
echo "I am going to run ./configure with no arguments - if you wish "
echo "to pass any to it, please specify them on the $0 command line."
if test -z "$AUTOGEN_SUBDIR_MODE"; then
if test -z "$*"; then
echo "I am going to run ./configure with no arguments - if you wish "
echo "to pass any to it, please specify them on the $0 command line."
fi
fi
case $CC in
@@ -49,7 +79,7 @@ esac
if test -z "$ACLOCAL_FLAGS"; then
acdir=`aclocal --print-ac-dir`
m4list="glib.m4 gettext.m4"
m4list="glib-2.0.m4 glib-gettext.m4"
for file in $m4list
do
@@ -65,12 +95,6 @@ if test -z "$ACLOCAL_FLAGS"; then
done
fi
echo "Running gettextize... Ignore non-fatal messages."
# Hmm, we specify --force here, since otherwise things dont'
# get added reliably, but we don't want to overwrite intl
# while making dist.
echo "no" | gettextize --copy --force
aclocal $ACLOCAL_FLAGS
# optionally feature autoheader
@@ -80,7 +104,9 @@ automake -a $am_opt
autoconf
cd $ORIGDIR
$srcdir/configure --enable-maintainer-mode "$@"
if test -z "$AUTOGEN_SUBDIR_MODE"; then
$srcdir/configure --enable-maintainer-mode --enable-gtk-doc "$@"
echo
echo "Now type 'make' to compile $PROJECT."
echo
echo "Now type 'make' to compile $PROJECT."
fi

1087
config.guess vendored

File diff suppressed because it is too large Load Diff

View File

@@ -1,192 +0,0 @@
/* config.h.win32. Handcrafted for Microsoft C and gcc -mno-cygwin */
#if ! (defined(_MSC_VER) || defined(__GNUC__))
#error Unrecognized Win32 compiler, edit config.h.win32 by hand
#endif
/* Define if using alloca.c. */
/* #undef C_ALLOCA */
/* Define to empty if the keyword does not work. */
/* #undef const */
/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
This function is required for alloca.c support on those systems. */
/* #undef CRAY_STACKSEG_END */
/* Define if you have alloca, as a function or macro. */
#define HAVE_ALLOCA 1
#ifdef _MSC_VER
#define alloca _alloca
#elif defined (__GNUC__)
#define alloca __builtin_alloca
#endif
/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
/* #undef HAVE_ALLOCA_H */
/* Define if you have a working `mmap' system call. */
/* #undef HAVE_MMAP */
/* Define to empty, or __inline if that's what your compiler wants. */
#define inline __inline
/* Define to `long' if <sys/types.h> doesn't define. */
/* #undef off_t */
/* Define if you need to in order for stat and other things to work. */
/* #undef _POSIX_SOURCE*/
/* Define as the return type of signal handlers (int or void). */
#define RETSIGTYPE void
/* Define to `unsigned' if <sys/types.h> doesn't define. */
/* #undef size_t */
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown
*/
/* #undef STACK_DIRECTION */
/* Define if you have the ANSI C header files. */
#define STDC_HEADERS 1
/* Other stuff */
#define ENABLE_NLS 1
#define GTK_COMPILED_WITH_DEBUGGING "minimum"
/* #undef HAVE_CATGETS */
/* #undef HAVE_DIRENT_H */
#define HAVE_GETTEXT 1
/* #undef HAVE_IPC_H */
/* #undef HAVE_LC_MESSAGES */
/* #undef HAVE_PWD_H */
/* #undef HAVE_SHM_H */
/* #undef HAVE_STPCPY */
/* #undef HAVE_XSHM_H */
#define HAVE_SHAPE_EXT 1
/* #undef HAVE_SYS_SELECT_H */
/* #undef HAVE_SYS_TIME_H */
/* #undef HAVE_XCONVERTCASE */
/* #undef NO_FD_SET */
/* #undef XINPUT_NONE */
/* #undef XINPUT_GXI */
/* #undef XINPUT_XFREE */
#define XINPUT_WIN32 1
/* Define as the return type of signal handlers (int or void). */
#define RETSIGTYPE void
/* Define if you have the __argz_count function. */
/* #undef HAVE___ARGZ_COUNT */
/* Define if you have the __argz_next function. */
/* #undef HAVE___ARGZ_NEXT */
/* Define if you have the __argz_stringify function. */
/* #undef HAVE___ARGZ_STRINGIFY */
/* Define if you have the broken_wctype function. */
/* #undef HAVE_BROKEN_WCTYPE */
/* Define if you have the dcgettext function. */
/* #undef HAVE_DCGETTEXT */
/* Define if you have the getcwd function. */
#define HAVE_GETCWD 1
/* Define if you have the getpagesize function. */
#define HAVE_GETPAGESIZE 1
/* Define if you have the lstat function. */
/* #undef HAVE_LSTAT */
/* Define if you have the munmap function. */
/* #undef HAVE_MUNMAP */
/* Define if you have the putenv function. */
#define HAVE_PUTENV 1
#define putenv _putenv
/* Define if you have the setenv function. */
/* #undef HAVE_SETENV */
/* Define if you have the setlocale function. */
#define HAVE_SETLOCALE 1
/* Define if you have the stpcpy function. */
/* #undef HAVE_STPCPY */
/* Define if you have the strcasecmp function. */
#define HAVE_STRCASECMP 1
#define strcasecmp _stricmp
/* Define if you have the strchr function. */
#define HAVE_STRCHR 1
/* Define if you have the strdup function. */
#define HAVE_STRDUP 1
/* Define if you have the <argz.h> header file. */
/* #undef HAVE_ARGZ_H */
/* Define if you have the <dirent.h> header file. */
/* #undef HAVE_DIRENT_H */
/* Define if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1
/* Define if you have the <locale.h> header file. */
#define HAVE_LOCALE_H 1
/* Define if you have the <malloc.h> header file. */
#define HAVE_MALLOC_H 1
/* Define if you have the <nl_types.h> header file. */
/* #undef HAVE_NL_TYPES_H */
/* Define if you have the <pwd.h> header file. */
/* #undef HAVE_PWD_H */
/* Define if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define if you have the <sys/param.h> header file. */
/* #undef HAVE_SYS_PARAM_H */
/* Define if you have the <sys/time.h> header file. */
/* #undef HAVE_SYS_TIME_H */
/* Define if you have the <unistd.h> header file. */
/* #undef HAVE_UNISTD_H */
/* Define if you have the <wchar.h> header file. */
#define HAVE_WCHAR_H 1
/* Define if you have the <wctype.h> header file. */
#ifdef _MSC_VER
#define HAVE_WCTYPE_H 1
#endif /* _MSC_VER */
/* Define if you have the i library (-li). */
/* #undef HAVE_LIBI */
/* Define if you have the intl library (-lintl). */
#define HAVE_LIBINTL 1
/* define if compiled symbols have a leading underscore */
/* #undef WITH_SYMBOL_UNDERSCORE */
/* Define if you have the Wintab programmer's kit */
#define HAVE_WINTAB 1
/* Define if you have the <dimm.h> header file
* (available in the Platform SDK)
*/
/* #define HAVE_DIMM_H 1 */

289
config.h.win32.in Normal file
View File

@@ -0,0 +1,289 @@
/* config.h.win32.in. Merged from two versions generated by configure for gcc and MSVC. */
/* config.h.in. Generated from configure.in by autoheader. */
/* acconfig.h
This file is in the public domain.
Descriptive text for the C preprocessor macros that
the distributed Autoconf macros can define.
No software package will use all of them; autoheader copies the ones
your configure.in uses into your configuration header file templates.
The entries are in sort -df order: alphabetical, case insensitive,
ignoring punctuation (such as underscores). Although this order
can split up related entries, it makes it easier to check whether
a given entry is in the file.
Leave the following blank line there!! Autoheader needs it. */
/* Other stuff */
#define ENABLE_NLS 1
#define GTK_COMPILED_WITH_DEBUGGING "yes"
/* #undef HAVE_CATGETS */
/* #undef HAVE_DIMM_H */
#define HAVE_GETTEXT 1
/* #undef HAVE_IPC_H */
/* #undef HAVE_LC_MESSAGES */
#define HAVE_PROGRESSIVE_JPEG 1
/* #undef HAVE_PWD_H */
/* #undef HAVE_SHM_H */
/* #undef HAVE_STPCPY */
/* #undef HAVE_XSHM_H */
/* #undef HAVE_SHAPE_EXT */
/* #undef HAVE_SYS_SELECT_H */
#ifndef _MSC_VER
#define HAVE_SYS_TIME_H 1
#else /* _MSC_VER */
/* #undef HAVE_SYS_TIME_H */
#endif /* _MSC_VER */
#define HAVE_WINSOCK_H 1
#define HAVE_WINTAB 1
/* #undef HAVE_XCONVERTCASE */
/* #undef HAVE_XFT */
/* #undef HAVE_SIGSETJMP */
#define NO_FD_SET 1
/* #undef RESOURCE_BASE */
#ifndef _MSC_VER
#define USE_GMODULE 1
#define USE_MMX 1
#endif
/* Define to use X11R6 additions to XIM */
/* #undef USE_X11R6_XIM */
/* Define to use XKB extension */
/* #undef HAVE_XKB */
/* Define to use shadowfb in the linux-fb port */
/* #undef ENABLE_SHADOW_FB */
/* Define to use a fb manager in the linux-fb port */
/* #undef ENABLE_FB_MANAGER */
/* #undef XINPUT_NONE */
/* #undef XINPUT_GXI */
/* #undef XINPUT_XFREE */
/* Define as the return type of signal handlers (int or void). */
#define RETSIGTYPE void
/* Most machines will be happy with int or void. IRIX requires '...' */
/* #undef SIGNAL_ARG_TYPE */
#define GETTEXT_PACKAGE "@GETTEXT_PACKAGE@"
/* #undef PACKAGE */
/* #undef VERSION */
/* Leave that blank line there!! Autoheader needs it.
If you're adding to this file, keep in mind:
The entries are in sort -df order: alphabetical, case insensitive,
ignoring punctuation (such as underscores). */
/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
systems. This function is required for `alloca.c' support on those systems.
*/
/* #undef CRAY_STACKSEG_END */
/* Define if using `alloca.c'. */
/* #undef C_ALLOCA */
/* always defined to indicate that i18n is enabled */
#define ENABLE_NLS 1
/* Define if you have `alloca', as a function or macro. */
#define HAVE_ALLOCA 1
/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
/* #undef HAVE_ALLOCA_H */
/* Define if you have the <argz.h> header file. */
/* #undef HAVE_ARGZ_H */
/* Define if you have the `bind_textdomain_codeset' function. */
/* #undef HAVE_BIND_TEXTDOMAIN_CODESET */
/* Is the wctype implementation broken */
/* #undef HAVE_BROKEN_WCTYPE */
/* Define if you have the `dcgettext' function. */
#define HAVE_DCGETTEXT 1
/* Define if you have the <dlfcn.h> header file. */
/* #undef HAVE_DLFCN_H */
/* Define if you have the `getcwd' function. */
#define HAVE_GETCWD 1
/* Define if you have the `getpagesize' function. */
#ifndef _MSC_VER
#define HAVE_GETPAGESIZE 1
#else /* _MSC_VER */
/* #undef HAVE_GETPAGESIZE */
#endif /* _MSC_VER */
/* Define if you have the `getresuid' function. */
/* #undef HAVE_GETRESUID */
/* Define if the GNU gettext() function is already present or preinstalled. */
#define HAVE_GETTEXT 1
/* Define if you have the <inttypes.h> header file. */
/* #undef HAVE_INTTYPES_H */
/* Define if your <locale.h> file defines LC_MESSAGES. */
/* #undef HAVE_LC_MESSAGES */
/* Define if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1
/* Define if you have the <locale.h> header file. */
#define HAVE_LOCALE_H 1
/* Define if you have the `lstat' function. */
/* #undef HAVE_LSTAT */
/* Define if you have the <malloc.h> header file. */
#define HAVE_MALLOC_H 1
/* Define if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1
/* Define if you have the `mkstemp' function. */
/* #undef HAVE_MKSTEMP */
/* Define if you have a working `mmap' system call. */
/* #undef HAVE_MMAP */
/* Define if you have the `munmap' function. */
/* #undef HAVE_MUNMAP */
/* Define if you have the <nl_types.h> header file. */
/* #undef HAVE_NL_TYPES_H */
/* Define if you have the `putenv' function. */
#define HAVE_PUTENV 1
/* Define if you have the <pwd.h> header file. */
/* #undef HAVE_PWD_H */
/* Define if you have the `setenv' function. */
/* #undef HAVE_SETENV */
/* Define if you have the `setlocale' function. */
#define HAVE_SETLOCALE 1
/* Define if you have the <stdint.h> header file. */
#ifndef _MSC_VER
#define HAVE_STDINT_H 1
#else /* _MSC_VER */
/* #undef HAVE_STDINT_H */
#endif /* _MSC_VER */
/* Define if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define if you have the `strcasecmp' function. */
#ifndef _MSC_VER
#define HAVE_STRCASECMP 1
#else /* _MSC_VER */
/* #undef HAVE_STRCASECMP */
#endif /* _MSC_VER */
/* Define if you have the `strchr' function. */
#define HAVE_STRCHR 1
/* Define if you have the `strdup' function. */
#define HAVE_STRDUP 1
/* Define if you have the <strings.h> header file. */
/* #undef HAVE_STRINGS_H */
/* Define if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define if you have the <sys/param.h> header file. */
/* #undef HAVE_SYS_PARAM_H */
/* Define if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1
/* Define if you have the <sys/time.h> header file. */
#ifndef _MSC_VER
#define HAVE_SYS_TIME_H 1
#else /* _MSC_VER */
/* #undef HAVE_SYS_TIME_H */
#endif /* _MSC_VER */
/* Define if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1
/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
/* #undef HAVE_SYS_WAIT_H */
/* Define if you have the <unistd.h> header file. */
#ifndef _MSC_VER
#define HAVE_UNISTD_H 1
#else /* _MSC_VER */
/* #undef HAVE_UNISTD_H */
#endif /* _MSC_VER */
/* Have wchar.h include file */
#define HAVE_WCHAR_H 1
/* Have wctype.h include file */
#define HAVE_WCTYPE_H 1
/* Define if you have the <winsock.h> header file. */
#define HAVE_WINSOCK_H 1
/* Define if you have the `__argz_count' function. */
/* #undef HAVE___ARGZ_COUNT */
/* Define if you have the `__argz_next' function. */
/* #undef HAVE___ARGZ_NEXT */
/* Define if you have the `__argz_stringify' function. */
/* #undef HAVE___ARGZ_STRINGIFY */
/* Define as the return type of signal handlers (`int' or `void'). */
#define RETSIGTYPE void
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
/* #undef STACK_DIRECTION */
/* Define if you have the ANSI C header files. */
#define STDC_HEADERS 1
/* Define if the X Window System is missing or not being used. */
/* #undef X_DISPLAY_MISSING */
/* Define to empty if `const' does not conform to ANSI C. */
/* #undef const */
/* Define to `int' if <sys/types.h> doesn't define. */
#define gid_t int
/* Define as `__inline' if that's what the C compiler calls it, or to nothing
if it is not supported. */
/* #undef inline */
/* Define to `long' if <sys/types.h> does not define. */
/* #undef off_t */
/* Define to `unsigned' if <sys/types.h> does not define. */
/* #undef size_t */
/* Define to `int' if <sys/types.h> doesn't define. */
#define uid_t int

1215
config.sub vendored

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

2
contrib/.cvsignore Normal file
View File

@@ -0,0 +1,2 @@
Makefile
Makefile.in

8
contrib/Makefile.am Normal file
View File

@@ -0,0 +1,8 @@
if USE_X11
XDIRS=gdk-pixbuf-xlib
else
XDIRS=
endif
SUBDIRS=$(XDIRS)

View File

@@ -0,0 +1,7 @@
Makefile
Makefile.in
*.la
*.lo
.libs
.deps
gdk-pixbuf-xlib-2.0.pc

View File

@@ -0,0 +1,86 @@
2002-01-25 Federico Mena Quintero <federico@ximian.com>
Merge from gdk-pixbuf stable.
* gdk-pixbuf-xlib-drawable.c (rgb565msb): Fixed the endianness
conversion --- swap the individual 16 bit values instead of taking
everying as a 32 bit value.
(rgb565lsb): Likewise.
(rgb555lsb): Likewise.
(rgb555msb): Likewise.
2001-11-26 Akira TAGOH <tagoh@redhat.com>
* Makefile.am (libgdk_pixbuf_xlib_1_3_la_LDFLAGS):
Added -version-info.
2001-05-19 Havoc Pennington <hp@pobox.com>
* gdk-pixbuf-xlibrgb.c: docs
2001-06-04 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-xlibrgb.c (xlib_rgb_init): remove C++ comment,
reported by Dan McNichol
Mon Jan 8 11:41:41 2001 Owen Taylor <otaylor@redhat.com>
* Makefile.am (INCLUDES): Add @x_cflags@ (#36310)
2001-01-02 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-xlib-2.0.pc.in (Description): fix up description a bit.
2000-10-06 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-xlib.c: Put display/screen here, instead of in
the main gdk-pixbuf library as it was in 1.0; since the io-xpm
loader doesn't use these variables anymore it should be OK
2000-09-26 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/gdk-pixbuf-xlib-drawable.c
(gdk_pixbuf_xlib_get_from_drawable): Do not use
gdk_screen_{width,height}(). Thanks to John Harper for pointing
this out.
2000-08-26 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/gdk-pixbuf-xlibrgb.c: Added API reference docs.
2000-08-25 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/gdk-pixbuf-xlib-drawable.c (handle_x_error): Return
0.
(xlib_window_is_viewable): Return FALSE in the last case.
* gdk-pixbuf/gdk-pixbuf-xlib-render.c: Updated the inline docs.
* gdk-pixbuf/gdk-pixbuf-xlib.c: Added API docs.
2000-08-25 John Harper <john@dcs.warwick.ac.uk>
Work to create an Xlib version of gdk-pixbuf (with the Xlib
port of GdkRGB for rendering):
* configure.in: check for X libraries, set and substitute
GDK_PIXBUF_XLIB_{LIBDIR,INCLUDEDIR,LIBS} variables
* gdk_pixbuf_xlibConf.sh.in: new file -- gnome-config details
for the gdk-pixbuf-xlib library
* Makefile.am: build and install gdk_pixbuf_xlibConf.sh
* gdk-pixbuf/gdk-pixbuf-xlib-render.c,
gdk-pixbuf/gdk-pixbuf-xlib.c, gdk-pixbuf/gdk-pixbuf-xlib.h,
gdk-pixbuf/gdk-pixbuf-xlib-private.h,
gdk-pixbuf/gdk-pixbuf-xlib-drawable.c: new files, ported the
GDK dependent parts of gdk-pixbuf to use Xlib. Functions that
were called gdk_pixbuf_FOO are now gdk_pixbuf_xlib_FOO
* gdk-pixbuf/gdk-pixbuf-xlibrgb.c,
gdk-pixbuf/gdk-pixbuf-xlibrgb.h: added Chris Blizzard's Xlib
port of GdkRGB (from Mozilla CVS)
* gdk-pixbuf/Makefile.am: build a library libgdk_pixbuf_xlib.la
including the non-GDK dependent objects from libgdk_pixbuf.la
plus the Xlib ports and xlibrgb

View File

@@ -0,0 +1,34 @@
lib_LTLIBRARIES=libgdk_pixbuf_xlib-2.0.la
INCLUDES = @STRIP_BEGIN@ \
-I$(top_srcdir) -I$(top_builddir) \
-I$(top_srcdir)/gdk-pixbuf \
-I$(top_srcdir)/contrib \
@GDK_PIXBUF_XLIB_DEP_CFLAGS@ \
@STRIP_END@
LDADDS = @STRIP_BEGIN@ \
@GDK_PIXBUF_XLIB_DEP_LIBS@ \
@STRIP_END@
libgdk_pixbuf_xlib_2_0_la_LDFLAGS = \
-export-dynamic \
-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
libgdk_pixbuf_xlib_2_0_la_SOURCES = \
gdk-pixbuf-xlib-private.h \
gdk-pixbuf-xlib.c \
gdk-pixbuf-xlib-render.c \
gdk-pixbuf-xlib-drawable.c \
gdk-pixbuf-xlibrgb.c
libgdk_pixbuf_xlibincludedir=$(includedir)/gtk-2.0/gdk-pixbuf-xlib
libgdk_pixbuf_xlibinclude_HEADERS = \
gdk-pixbuf-xlib.h \
gdk-pixbuf-xlibrgb.h
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gdk-pixbuf-xlib-2.0.pc
EXTRA_DIST = gdk-pixbuf-xlib-2.0.pc.in

View File

@@ -0,0 +1,11 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: GdkPixbuf Xlib
Description: GdkPixbuf rendering for Xlib
Version: @VERSION@
Requires: gobject-2.0,gmodule-2.0,gdk-pixbuf-2.0
Libs: -L${libdir} -lgdk_pixbuf_xlib-@GTK_API_VERSION@
Cflags: -I${includedir}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,30 @@
/* GdkPixbuf library - Xlib header file
*
* Authors: John Harper <john@dcs.warwick.ac.uk>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#ifndef GDK_PIXBUF_XLIB_PRIVATE_H
#define GDK_PIXBUF_XLIB_PRIVATE_H
#include "gdk-pixbuf-xlib.h"
#include <X11/Xlib.h>
extern Display *gdk_pixbuf_dpy;
extern int gdk_pixbuf_screen;
#endif

View File

@@ -0,0 +1,398 @@
/* GdkPixbuf library - Rendering functions
*
* Copyright (C) 1999 The Free Software Foundation
*
* Author: Federico Mena-Quintero <federico@gimp.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
/* Trivially ported to Xlib(RGB) by John Harper. */
#include <config.h>
#include "gdk-pixbuf-private.h"
#include "gdk-pixbuf-xlib-private.h"
/**
* gdk_pixbuf_xlib_render_threshold_alpha:
* @pixbuf: A pixbuf.
* @bitmap: Bitmap where the bilevel mask will be painted to.
* @src_x: Source X coordinate.
* @src_y: source Y coordinate.
* @dest_x: Destination X coordinate.
* @dest_y: Destination Y coordinate.
* @width: Width of region to threshold.
* @height: Height of region to threshold.
* @alpha_threshold: Opacity values below this will be painted as zero; all
* other values will be painted as one.
*
* Takes the opacity values in a rectangular portion of a pixbuf and thresholds
* them to produce a bi-level alpha mask that can be used as a clipping mask for
* a drawable.
*
**/
void
gdk_pixbuf_xlib_render_threshold_alpha (GdkPixbuf *pixbuf, Pixmap bitmap,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
int alpha_threshold)
{
GC gc;
XColor color;
int x, y;
guchar *p;
int start, start_status;
int status;
XGCValues gcv;
g_return_if_fail (pixbuf != NULL);
g_return_if_fail (pixbuf->colorspace == GDK_COLORSPACE_RGB);
g_return_if_fail (pixbuf->n_channels == 3 || pixbuf->n_channels == 4);
g_return_if_fail (pixbuf->bits_per_sample == 8);
g_return_if_fail (bitmap != 0);
g_return_if_fail (width >= 0 && height >= 0);
g_return_if_fail (src_x >= 0 && src_x + width <= pixbuf->width);
g_return_if_fail (src_y >= 0 && src_y + height <= pixbuf->height);
g_return_if_fail (alpha_threshold >= 0 && alpha_threshold <= 255);
if (width == 0 || height == 0)
return;
gc = XCreateGC (gdk_pixbuf_dpy, bitmap, 0, &gcv);
if (!pixbuf->has_alpha) {
color.pixel = (alpha_threshold == 255) ? 0 : 1;
XSetForeground (gdk_pixbuf_dpy, gc, color.pixel);
XFillRectangle (gdk_pixbuf_dpy, bitmap, gc,
dest_x, dest_y, width, height);
XFreeGC (gdk_pixbuf_dpy, gc);
return;
}
color.pixel = 0;
XSetForeground (gdk_pixbuf_dpy, gc, color.pixel);
XFillRectangle (gdk_pixbuf_dpy, bitmap, gc,
dest_x, dest_y, width, height);
color.pixel = 1;
XSetForeground (gdk_pixbuf_dpy, gc, color.pixel);
for (y = 0; y < height; y++) {
p = (pixbuf->pixels + (y + src_y) * pixbuf->rowstride + src_x * pixbuf->n_channels
+ pixbuf->n_channels - 1);
start = 0;
start_status = *p < alpha_threshold;
for (x = 0; x < width; x++) {
status = *p < alpha_threshold;
if (status != start_status) {
if (!start_status)
XDrawLine (gdk_pixbuf_dpy, bitmap, gc,
start + dest_x, y + dest_y,
x - 1 + dest_x, y + dest_y);
start = x;
start_status = status;
}
p += pixbuf->n_channels;
}
if (!start_status)
XDrawLine (gdk_pixbuf_dpy, bitmap, gc,
start + dest_x, y + dest_y,
x - 1 + dest_x, y + dest_y);
}
XFreeGC (gdk_pixbuf_dpy, gc);
}
/* Creates a buffer by stripping the alpha channel of a pixbuf */
static guchar *
remove_alpha (GdkPixbuf *pixbuf, int x, int y, int width, int height, int *rowstride)
{
guchar *buf;
int xx, yy;
guchar *src, *dest;
g_assert (pixbuf->n_channels == 4);
g_assert (pixbuf->has_alpha);
g_assert (width > 0 && height > 0);
g_assert (x >= 0 && x + width <= pixbuf->width);
g_assert (y >= 0 && y + height <= pixbuf->height);
*rowstride = 4 * ((width * 3 + 3) / 4);
buf = g_new (guchar, *rowstride * height);
for (yy = 0; yy < height; yy++) {
src = pixbuf->pixels + pixbuf->rowstride * (yy + y) + x * pixbuf->n_channels;
dest = buf + *rowstride * yy;
for (xx = 0; xx < width; xx++) {
*dest++ = *src++;
*dest++ = *src++;
*dest++ = *src++;
src++;
}
}
return buf;
}
/**
* gdk_pixbuf_xlib_render_to_drawable:
* @pixbuf: A pixbuf.
* @drawable: Destination drawable.
* @gc: GC used for rendering.
* @src_x: Source X coordinate within pixbuf.
* @src_y: Source Y coordinate within pixbuf.
* @dest_x: Destination X coordinate within drawable.
* @dest_y: Destination Y coordinate within drawable.
* @width: Width of region to render, in pixels.
* @height: Height of region to render, in pixels.
* @dither: Dithering mode for XlibRGB.
* @x_dither: X offset for dither.
* @y_dither: Y offset for dither.
*
* Renders a rectangular portion of a pixbuf to a drawable while using the
* specified GC. This is done using XlibRGB, so the specified drawable must
* have the XlibRGB visual and colormap. Note that this function will ignore
* the opacity information for images with an alpha channel; the GC must already
* have the clipping mask set if you want transparent regions to show through.
*
* For an explanation of dither offsets, see the XlibRGB documentation. In
* brief, the dither offset is important when re-rendering partial regions of an
* image to a rendered version of the full image, or for when the offsets to a
* base position change, as in scrolling. The dither matrix has to be shifted
* for consistent visual results. If you do not have any of these cases, the
* dither offsets can be both zero.
**/
void
gdk_pixbuf_xlib_render_to_drawable (GdkPixbuf *pixbuf,
Drawable drawable, GC gc,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
XlibRgbDither dither,
int x_dither, int y_dither)
{
guchar *buf;
int rowstride;
g_return_if_fail (pixbuf != NULL);
g_return_if_fail (pixbuf->colorspace == GDK_COLORSPACE_RGB);
g_return_if_fail (pixbuf->n_channels == 3 || pixbuf->n_channels == 4);
g_return_if_fail (pixbuf->bits_per_sample == 8);
g_return_if_fail (drawable != 0);
g_return_if_fail (gc != 0);
g_return_if_fail (width >= 0 && height >= 0);
g_return_if_fail (src_x >= 0 && src_x + width <= pixbuf->width);
g_return_if_fail (src_y >= 0 && src_y + height <= pixbuf->height);
if (width == 0 || height == 0)
return;
/* This will have to be modified once we support other image types.
* Also, GdkRGB does not have gdk_draw_rgb_32_image_dithalign(), so we
* have to pack the buffer first. Sigh.
*/
if (pixbuf->has_alpha)
buf = remove_alpha (pixbuf, src_x, src_y, width, height, &rowstride);
else {
buf = pixbuf->pixels + src_y * pixbuf->rowstride + src_x * 3;
rowstride = pixbuf->rowstride;
}
xlib_draw_rgb_image_dithalign (drawable, gc,
dest_x, dest_y,
width, height,
dither,
buf, rowstride,
x_dither, y_dither);
if (pixbuf->has_alpha)
g_free (buf);
}
/**
* gdk_pixbuf_xlib_render_to_drawable_alpha:
* @pixbuf: A pixbuf.
* @drawable: Destination drawable.
* @src_x: Source X coordinate within pixbuf.
* @src_y: Source Y coordinates within pixbuf.
* @dest_x: Destination X coordinate within drawable.
* @dest_y: Destination Y coordinate within drawable.
* @width: Width of region to render, in pixels.
* @height: Height of region to render, in pixels.
* @alpha_mode: If the image does not have opacity information, this is ignored.
* Otherwise, specifies how to handle transparency when rendering.
* @alpha_threshold: If the image does have opacity information and @alpha_mode
* is GDK_PIXBUF_ALPHA_BILEVEL, specifies the threshold value for opacity
* values.
* @dither: Dithering mode for XlibRGB.
* @x_dither: X offset for dither.
* @y_dither: Y offset for dither.
*
* Renders a rectangular portion of a pixbuf to a drawable. This is done using
* XlibRGB, so the specified drawable must have the XlibRGB visual and colormap.
*
* When used with #GDK_PIXBUF_ALPHA_BILEVEL, this function has to create a bitmap
* out of the thresholded alpha channel of the image and, it has to set this
* bitmap as the clipping mask for the GC used for drawing. This can be a
* significant performance penalty depending on the size and the complexity of
* the alpha channel of the image. If performance is crucial, consider handling
* the alpha channel yourself (possibly by caching it in your application) and
* using gdk_pixbuf_xlib_render_to_drawable() or GdkRGB directly instead.
**/
void
gdk_pixbuf_xlib_render_to_drawable_alpha (GdkPixbuf *pixbuf, Drawable drawable,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
GdkPixbufAlphaMode alpha_mode,
int alpha_threshold,
XlibRgbDither dither,
int x_dither, int y_dither)
{
Pixmap bitmap = 0;
GC gc;
XGCValues gcv;
g_return_if_fail (pixbuf != NULL);
g_return_if_fail (pixbuf->colorspace == GDK_COLORSPACE_RGB);
g_return_if_fail (pixbuf->n_channels == 3 || pixbuf->n_channels == 4);
g_return_if_fail (pixbuf->bits_per_sample == 8);
g_return_if_fail (drawable != 0);
g_return_if_fail (width >= 0 && height >= 0);
g_return_if_fail (src_x >= 0 && src_x + width <= pixbuf->width);
g_return_if_fail (src_y >= 0 && src_y + height <= pixbuf->height);
if (width == 0 || height == 0)
return;
gc = XCreateGC (gdk_pixbuf_dpy, drawable, 0, &gcv);
if (pixbuf->has_alpha) {
/* Right now we only support GDK_PIXBUF_ALPHA_BILEVEL, so we
* unconditionally create the clipping mask.
*/
bitmap = XCreatePixmap (gdk_pixbuf_dpy,
RootWindow (gdk_pixbuf_dpy,
gdk_pixbuf_screen),
width, height, 1);
gdk_pixbuf_xlib_render_threshold_alpha (pixbuf, bitmap,
src_x, src_y,
0, 0,
width, height,
alpha_threshold);
XSetClipMask (gdk_pixbuf_dpy, gc, bitmap);
XSetClipOrigin (gdk_pixbuf_dpy, gc, dest_x, dest_y);
}
gdk_pixbuf_xlib_render_to_drawable (pixbuf, drawable, gc,
src_x, src_y,
dest_x, dest_y,
width, height,
dither,
x_dither, y_dither);
if (bitmap)
XFreePixmap (gdk_pixbuf_dpy, bitmap);
XFreeGC (gdk_pixbuf_dpy, gc);
}
/**
* gdk_pixbuf_xlib_render_pixmap_and_mask:
* @pixbuf: A pixbuf.
* @pixmap_return: Return value for the created pixmap.
* @mask_return: Return value for the created mask.
* @alpha_threshold: Threshold value for opacity values.
*
* Creates a pixmap and a mask bitmap which are returned in the @pixmap_return
* and @mask_return arguments, respectively, and renders a pixbuf and its
* corresponding tresholded alpha mask to them. This is merely a convenience
* function; applications that need to render pixbufs with dither offsets or to
* given drawables should use gdk_pixbuf_xlib_render_to_drawable_alpha() or
* gdk_pixbuf_xlib_render_to_drawable(), and
* gdk_pixbuf_xlib_render_threshold_alpha().
*
* If the pixbuf does not have an alpha channel, then *@mask_return will be set
* to None.
**/
void
gdk_pixbuf_xlib_render_pixmap_and_mask (GdkPixbuf *pixbuf,
Pixmap *pixmap_return,
Pixmap *mask_return,
int alpha_threshold)
{
g_return_if_fail (pixbuf != NULL);
if (pixmap_return) {
GC gc;
XGCValues gcv;
*pixmap_return = XCreatePixmap (gdk_pixbuf_dpy,
RootWindow (gdk_pixbuf_dpy,
gdk_pixbuf_screen),
pixbuf->width,
pixbuf->height,
xlib_rgb_get_depth ());
gc = XCreateGC (gdk_pixbuf_dpy, *pixmap_return, 0, &gcv);
gdk_pixbuf_xlib_render_to_drawable (pixbuf, *pixmap_return, gc,
0, 0, 0, 0,
pixbuf->width,
pixbuf->height,
XLIB_RGB_DITHER_NORMAL,
0, 0);
XFreeGC (gdk_pixbuf_dpy, gc);
}
if (mask_return) {
if (pixbuf->has_alpha) {
*mask_return = XCreatePixmap (gdk_pixbuf_dpy,
RootWindow (gdk_pixbuf_dpy,
gdk_pixbuf_screen),
pixbuf->width,
pixbuf->height, 1);
gdk_pixbuf_xlib_render_threshold_alpha (pixbuf,
*mask_return,
0, 0, 0, 0,
pixbuf->width,
pixbuf->height,
alpha_threshold);
} else
*mask_return = 0;
}
}

View File

@@ -0,0 +1,63 @@
/* GdkPixbuf library - Initialization functions
*
* Author: John Harper <john@dcs.warwick.ac.uk>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include <config.h>
#include <X11/Xlib.h>
#include <gdk-pixbuf/gdk-pixbuf-private.h>
#include "gdk-pixbuf-xlib-private.h"
Display *gdk_pixbuf_dpy = NULL;
int gdk_pixbuf_screen = -1;
/**
* gdk_pixbuf_xlib_init:
* @display: X display to use.
* @screen_num: Screen number.
*
* Initializes the gdk-pixbuf Xlib machinery by calling xlib_rgb_init(). This
* function should be called near the beginning of your program, or before using
* any of the gdk-pixbuf-xlib functions.
**/
void
gdk_pixbuf_xlib_init (Display *display, int screen_num)
{
xlib_rgb_init (display, ScreenOfDisplay (display, screen_num));
gdk_pixbuf_dpy = display;
gdk_pixbuf_screen = screen_num;
}
/**
* gdk_pixbuf_xlib_init_with_depth:
* @display: X display to use.
* @screen_num: Screen number.
* @prefDepth: Preferred depth for XlibRGB.
*
* Similar to gdk_pixbuf_xlib_init(), but also lets you specify the preferred
* depth for XlibRGB if you do not want it to use the default depth it picks.
**/
void
gdk_pixbuf_xlib_init_with_depth (Display *display,
int screen_num, int prefDepth)
{
xlib_rgb_init_with_depth (display, ScreenOfDisplay (display, screen_num),
prefDepth);
gdk_pixbuf_dpy = display;
gdk_pixbuf_screen = screen_num;
}

View File

@@ -0,0 +1,82 @@
/* GdkPixbuf library - Xlib header file
*
* Authors: John Harper <john@dcs.warwick.ac.uk>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#ifndef GDK_PIXBUF_XLIB_H
#define GDK_PIXBUF_XLIB_H
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk-pixbuf-xlib/gdk-pixbuf-xlibrgb.h>
#include <X11/Xlib.h>
/* init */
void gdk_pixbuf_xlib_init (Display *display, int screen_num);
void gdk_pixbuf_xlib_init_with_depth (Display *display, int screen_num,
int prefDepth);
/* render */
void gdk_pixbuf_xlib_render_threshold_alpha (GdkPixbuf *pixbuf, Pixmap bitmap,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
int alpha_threshold);
void gdk_pixbuf_xlib_render_to_drawable (GdkPixbuf *pixbuf,
Drawable drawable, GC gc,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
XlibRgbDither dither,
int x_dither, int y_dither);
void gdk_pixbuf_xlib_render_to_drawable_alpha (GdkPixbuf *pixbuf,
Drawable drawable,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
GdkPixbufAlphaMode alpha_mode,
int alpha_threshold,
XlibRgbDither dither,
int x_dither, int y_dither);
void gdk_pixbuf_xlib_render_pixmap_and_mask (GdkPixbuf *pixbuf,
Pixmap *pixmap_return,
Pixmap *mask_return,
int alpha_threshold);
/* drawable */
GdkPixbuf *gdk_pixbuf_xlib_get_from_drawable (GdkPixbuf *dest,
Drawable src,
Colormap cmap, Visual *visual,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height);
#endif /* GDK_PIXBUF_XLIB_H */

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,195 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Mozilla Public License
* Version 1.1 (the "MPL"); you may not use this file except in
* compliance with the MPL. You may obtain a copy of the MPL at
* http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the MPL
* for the specific language governing rights and limitations under the
* MPL.
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU Library General Public License (the "LGPL"), in
* which case the provisions of the LGPL are applicable instead of
* those above. If you wish to allow use of your version of this file
* only under the terms of the LGPL and not to allow others to use
* your version of this file under the MPL, indicate your decision by
* deleting the provisions above and replace them with the notice and
* other provisions required by the LGPL. If you do not delete the
* provisions above, a recipient may use your version of this file
* under either the MPL or the LGPL.
*/
/*
* This code is derived from GdkRgb.
* For more information on GdkRgb, see http://www.levien.com/gdkrgb/
* Raph Levien <raph@acm.org>
*/
/* Ported by Christopher Blizzard to Xlib. With permission from the
* original authors of this file, the contents of this file are also
* redistributable under the terms of the Mozilla Public license. For
* information about the Mozilla Public License, please see the
* license information at http://www.mozilla.org/MPL/
*/
/* This code is copyright the following authors:
* Raph Levien <raph@acm.org>
* Manish Singh <manish@gtk.org>
* Tim Janik <timj@gtk.org>
* Peter Mattis <petm@xcf.berkeley.edu>
* Spencer Kimball <spencer@xcf.berkeley.edu>
* Josh MacDonald <jmacd@xcf.berkeley.edu>
* Christopher Blizzard <blizzard@redhat.com>
* Owen Taylor <otaylor@redhat.com>
* Shawn T. Amundson <amundson@gtk.org>
*/
#ifndef __XLIB_RGB_H__
#define __XLIB_RGB_H__
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/Xos.h>
#include <X11/Intrinsic.h>
#include <glib.h>
typedef struct _XlibRgbCmap XlibRgbCmap;
struct _XlibRgbCmap {
unsigned int colors[256];
unsigned char lut[256]; /* for 8-bit modes */
};
void
xlib_rgb_init (Display *display, Screen *screen);
void
xlib_rgb_init_with_depth (Display *display, Screen *screen, int prefDepth);
unsigned long
xlib_rgb_xpixel_from_rgb (guint32 rgb);
void
xlib_rgb_gc_set_foreground (GC gc, guint32 rgb);
void
xlib_rgb_gc_set_background (GC gc, guint32 rgb);
typedef enum
{
XLIB_RGB_DITHER_NONE,
XLIB_RGB_DITHER_NORMAL,
XLIB_RGB_DITHER_MAX
} XlibRgbDither;
void
xlib_draw_rgb_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *rgb_buf,
int rowstride);
void
xlib_draw_rgb_image_dithalign (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *rgb_buf,
int rowstride,
int xdith,
int ydith);
void
xlib_draw_rgb_32_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *buf,
int rowstride);
void
xlib_draw_gray_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *buf,
int rowstride);
XlibRgbCmap *
xlib_rgb_cmap_new (guint32 *colors, int n_colors);
void
xlib_rgb_cmap_free (XlibRgbCmap *cmap);
void
xlib_draw_indexed_image (Drawable drawable,
GC gc,
int x,
int y,
int width,
int height,
XlibRgbDither dith,
unsigned char *buf,
int rowstride,
XlibRgbCmap *cmap);
/* Below are some functions which are primarily useful for debugging
and experimentation. */
Bool
xlib_rgb_ditherable (void);
void
xlib_rgb_set_verbose (Bool verbose);
/* experimental colormap stuff */
void
xlib_rgb_set_install (Bool install);
void
xlib_rgb_set_min_colors (int min_colors);
Colormap
xlib_rgb_get_cmap (void);
Visual *
xlib_rgb_get_visual (void);
XVisualInfo *
xlib_rgb_get_visual_info (void);
int
xlib_rgb_get_depth (void);
Display *
xlib_rgb_get_display (void);
Screen *
xlib_rgb_get_screen (void);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* __XLIB_RGB_H__ */

11
demos/.cvsignore Normal file
View File

@@ -0,0 +1,11 @@
Makefile
Makefile.in
.libs
.deps
testanimation
test-inline-pixbufs.h
testpixbuf-drawable
testpixbuf-scale
testpixbuf-save
testpixbuf
pixbuf-demo

73
demos/Makefile.am Normal file
View File

@@ -0,0 +1,73 @@
## Makefile.am for gtk+/demos
SUBDIRS = gtk-demo
INCLUDES = @STRIP_BEGIN@ \
-I$(top_srcdir) \
-I$(top_builddir)/gdk \
-DG_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGTK_DISABLE_DEPRECATED \
@GTK_DEBUG_FLAGS@ \
@GTK_DEP_CFLAGS@ \
@STRIP_END@
DEPS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@
LDADDS = @STRIP_BEGIN@ \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@ \
@STRIP_END@
noinst_PROGRAMS = \
testpixbuf \
testpixbuf-drawable \
testanimation \
testpixbuf-save \
testpixbuf-scale \
pixbuf-demo
test-inline-pixbufs.h: $(top_builddir)/gdk-pixbuf/gdk-pixbuf-csource$(EXEEXT) apple-red.png gnome-foot.png
(topdir=`cd $(top_builddir) && pwd` ; curdir=`pwd` ; \
cd $(srcdir) && \
GDK_PIXBUF_MODULEDIR=$$topdir/gdk-pixbuf/.libs \
$$topdir/gdk-pixbuf/gdk-pixbuf-csource --build-list \
apple_red apple-red.png gnome_foot gnome-foot.png >$$curdir/test-inline-pixbufs.h)
testpixbuf_DEPENDENCIES = $(DEPS)
testpixbuf_drawable_DEPENDENCIES = $(DEPS)
testpixbuf_save_DEPENDENCIES = $(DEPS)
testpixbuf_scale_DEPENDENCIES = $(DEPS)
testanimation_DEPENDENCIES = $(DEPS)
pixbuf_demo_DEPENDENCIES = $(DEPS)
testpixbuf_LDADD = $(LDADDS)
testpixbuf_drawable_LDADD = $(LDADDS)
testpixbuf_save_LDADD = $(LDADDS)
testpixbuf_scale_LDADD = $(LDADDS)
testanimation_LDADD = $(LDADDS)
pixbuf_demo_LDADD = $(LDADDS)
testpixbuf_SOURCES = testpixbuf.c pixbuf-init.c
$(testpixbuf_OBJECTS): test-inline-pixbufs.h
testpixbuf_drawable_SOURCES = testpixbuf-drawable.c pixbuf-init.c
testpixbuf_save_SOURCES = testpixbuf-save.c
testpixbuf_scale_SOURCES = testpixbuf-scale.c pixbuf-init.c
testanimation_SOURCES = testanimation.c pixbuf-init.c
pixbuf_demo_SOURCES = pixbuf-demo.c pixbuf-init.c
EXTRA_DIST = \
apple-red.png \
background.jpg \
gnome-applets.png \
gnome-calendar.png \
gnome-foot.png \
gnome-gimp.png \
gnome-gmush.png \
gnome-gsame.png \
gnu-keys.png

BIN
demos/apple-red.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
demos/background.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
demos/gnome-applets.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
demos/gnome-calendar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
demos/gnome-foot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
demos/gnome-gimp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
demos/gnome-gmush.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
demos/gnome-gsame.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
demos/gnu-keys.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -0,0 +1,7 @@
Makefile
Makefile.in
.libs
.deps
gtk-demo
demos.h

View File

@@ -0,0 +1,82 @@
## Makefile.am for gtk+/demos
democodedir=$(datadir)/gtk-2.0/demo
## These should be in the order you want them to appear in the
## demo app, which means alphabetized by demo title, not filename
demos = @STRIP_BEGIN@ \
appwindow.c \
button_box.c \
colorsel.c \
dialog.c \
drawingarea.c \
editable_cells.c \
images.c \
item_factory.c \
list_store.c \
menus.c \
panes.c \
pixbufs.c \
sizegroup.c \
stock_browser.c \
textview.c \
tree_store.c \
@STRIP_END@
INCLUDES = @STRIP_BEGIN@ \
-DDEMOCODEDIR="\"$(democodedir)\"" \
-I$(top_srcdir) \
-I$(top_builddir)/gdk \
-DG_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGTK_DISABLE_DEPRECATED \
@GTK_DEBUG_FLAGS@ \
@GTK_DEP_CFLAGS@ \
@STRIP_END@
DEPS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@
LDADDS = @STRIP_BEGIN@ \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@ \
@STRIP_END@
bin_PROGRAMS = gtk-demo
BUILT_SOURCES = demos.h
EXTRA_DIST = \
geninclude.pl \
$(IMAGEFILES)
demos.h: $(demos) geninclude.pl
(cd $(srcdir) && $(PERL) ./geninclude.pl $(demos) > demos.h)
gtk_demo_SOURCES = \
$(demos) \
demo-common.h \
main.c \
demos.h
gtk_demo_DEPENDENCIES = $(DEPS)
gtk_demo_LDADD = $(LDADDS)
IMAGEFILES= alphatest.png \
apple-red.png \
background.jpg \
floppybuddy.gif \
gnome-applets.png \
gnome-calendar.png \
gnome-foot.png \
gnome-gimp.png \
gnome-gmush.png \
gnome-gsame.png \
gnu-keys.png \
gtk-logo-rgb.gif
democode_DATA = $(demos) $(IMAGEFILES)

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

351
demos/gtk-demo/appwindow.c Normal file
View File

@@ -0,0 +1,351 @@
/* Application main window
*
* Demonstrates a typical application window, with menubar, toolbar, statusbar.
*/
#include <gtk/gtk.h>
#include "demo-common.h"
static GtkWidget *window = NULL;
static void
menuitem_cb (gpointer callback_data,
guint callback_action,
GtkWidget *widget)
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (callback_data),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_CLOSE,
"You selected or toggled the menu item: \"%s\"",
gtk_item_factory_path_from_widget (widget));
/* Close dialog on user response */
g_signal_connect (G_OBJECT (dialog),
"response",
G_CALLBACK (gtk_widget_destroy),
NULL);
gtk_widget_show (dialog);
}
static GtkItemFactoryEntry menu_items[] =
{
{ "/_File", NULL, 0, 0, "<Branch>" },
{ "/File/_New", "<control>N", menuitem_cb, 0, "<StockItem>", GTK_STOCK_NEW },
{ "/File/_Open", "<control>O", menuitem_cb, 0, "<StockItem>", GTK_STOCK_OPEN },
{ "/File/_Save", "<control>S", menuitem_cb, 0, "<StockItem>", GTK_STOCK_SAVE },
{ "/File/Save _As...", NULL, menuitem_cb, 0, "<StockItem>", GTK_STOCK_SAVE },
{ "/File/sep1", NULL, menuitem_cb, 0, "<Separator>" },
{ "/File/_Quit", "<control>Q", menuitem_cb, 0, "<StockItem>", GTK_STOCK_QUIT },
{ "/_Preferences", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/_Color", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Color/_Red", NULL, menuitem_cb, 0, "<RadioItem>" },
{ "/_Preferences/Color/_Green", NULL, menuitem_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/Color/_Blue", NULL, menuitem_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/_Shape", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Shape/_Square", NULL, menuitem_cb, 0, "<RadioItem>" },
{ "/_Preferences/Shape/_Rectangle", NULL, menuitem_cb, 0, "/Preferences/Shape/Square" },
{ "/_Preferences/Shape/_Oval", NULL, menuitem_cb, 0, "/Preferences/Shape/Rectangle" },
/* If you wanted this to be right justified you would use "<LastBranch>", not "<Branch>".
* Right justified help menu items are generally considered a bad idea now days.
*/
{ "/_Help", NULL, 0, 0, "<Branch>" },
{ "/Help/_About", NULL, menuitem_cb, 0 },
};
static void
toolbar_cb (GtkWidget *button,
gpointer data)
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (data),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_CLOSE,
"You selected a toolbar button");
/* Close dialog on user response */
g_signal_connect (G_OBJECT (dialog),
"response",
G_CALLBACK (gtk_widget_destroy),
NULL);
gtk_widget_show (dialog);
}
/* This function registers our custom toolbar icons, so they can be themed.
*
* It's totally optional to do this, you could just manually insert icons
* and have them not be themeable, especially if you never expect people
* to theme your app.
*/
static void
register_stock_icons (void)
{
static gboolean registered = FALSE;
if (!registered)
{
GdkPixbuf *pixbuf;
GtkIconFactory *factory;
char *filename;
static GtkStockItem items[] = {
{ "demo-gtk-logo",
"_GTK!",
0, 0, NULL }
};
registered = TRUE;
/* Register our stock items */
gtk_stock_add (items, G_N_ELEMENTS (items));
/* Add our custom icon factory to the list of defaults */
factory = gtk_icon_factory_new ();
gtk_icon_factory_add_default (factory);
/* demo_find_file() looks in the the current directory first,
* so you can run gtk-demo without installing GTK, then looks
* in the location where the file is installed.
*/
pixbuf = NULL;
filename = demo_find_file ("gtk-logo-rgb.gif", NULL);
if (filename)
{
pixbuf = gdk_pixbuf_new_from_file (filename, NULL);
g_free (filename);
}
/* Register icon to accompany stock item */
if (pixbuf != NULL)
{
GtkIconSet *icon_set;
GdkPixbuf *transparent;
/* The gtk-logo-rgb icon has a white background, make it transparent */
transparent = gdk_pixbuf_add_alpha (pixbuf, TRUE, 0xff, 0xff, 0xff);
icon_set = gtk_icon_set_new_from_pixbuf (transparent);
gtk_icon_factory_add (factory, "demo-gtk-logo", icon_set);
gtk_icon_set_unref (icon_set);
g_object_unref (G_OBJECT (pixbuf));
g_object_unref (G_OBJECT (transparent));
}
else
g_warning ("failed to load GTK logo for toolbar");
/* Drop our reference to the factory, GTK will hold a reference. */
g_object_unref (G_OBJECT (factory));
}
}
static void
update_statusbar (GtkTextBuffer *buffer,
GtkStatusbar *statusbar)
{
gchar *msg;
gint row, col;
gint count;
GtkTextIter iter;
gtk_statusbar_pop (statusbar, 0); /* clear any previous message, underflow is allowed */
count = gtk_text_buffer_get_char_count (buffer);
gtk_text_buffer_get_iter_at_mark (buffer,
&iter,
gtk_text_buffer_get_insert (buffer));
row = gtk_text_iter_get_line (&iter);
col = gtk_text_iter_get_line_offset (&iter);
msg = g_strdup_printf ("Cursor at row %d column %d - %d chars in document",
row, col, count);
gtk_statusbar_push (statusbar, 0, msg);
g_free (msg);
}
static void
mark_set_callback (GtkTextBuffer *buffer,
const GtkTextIter *new_location,
GtkTextMark *mark,
gpointer data)
{
update_statusbar (buffer, GTK_STATUSBAR (data));
}
GtkWidget *
do_appwindow (void)
{
if (!window)
{
GtkWidget *table;
GtkWidget *toolbar;
GtkWidget *statusbar;
GtkWidget *contents;
GtkWidget *sw;
GtkTextBuffer *buffer;
GtkAccelGroup *accel_group;
GtkItemFactory *item_factory;
register_stock_icons ();
/* Create the toplevel window
*/
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Application Window");
/* NULL window variable when window is closed */
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (gtk_widget_destroyed),
&window);
table = gtk_table_new (1, 4, FALSE);
gtk_container_add (GTK_CONTAINER (window), table);
/* Create the menubar
*/
accel_group = gtk_accel_group_new ();
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
g_object_unref (accel_group);
item_factory = gtk_item_factory_new (GTK_TYPE_MENU_BAR, "<main>", accel_group);
/* Set up item factory to go away with the window */
g_object_ref (item_factory);
gtk_object_sink (GTK_OBJECT (item_factory));
g_object_set_data_full (G_OBJECT (window),
"<main>",
item_factory,
(GDestroyNotify) g_object_unref);
/* create menu items */
gtk_item_factory_create_items (item_factory, G_N_ELEMENTS (menu_items),
menu_items, window);
gtk_table_attach (GTK_TABLE (table),
gtk_item_factory_get_widget (item_factory, "<main>"),
/* X direction */ /* Y direction */
0, 1, 0, 1,
GTK_EXPAND | GTK_FILL, 0,
0, 0);
/* Create the toolbar
*/
toolbar = gtk_toolbar_new ();
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar),
GTK_STOCK_OPEN,
"This is a demo button with an 'open' icon",
NULL,
G_CALLBACK (toolbar_cb),
window, /* user data for callback */
-1); /* -1 means "append" */
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar),
GTK_STOCK_QUIT,
"This is a demo button with a 'quit' icon",
NULL,
G_CALLBACK (toolbar_cb),
window, /* user data for callback */
-1); /* -1 means "append" */
gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar),
"demo-gtk-logo",
"This is a demo button with a 'gtk' icon",
NULL,
G_CALLBACK (toolbar_cb),
window, /* user data for callback */
-1); /* -1 means "append" */
gtk_table_attach (GTK_TABLE (table),
toolbar,
/* X direction */ /* Y direction */
0, 1, 1, 2,
GTK_EXPAND | GTK_FILL, 0,
0, 0);
/* Create document
*/
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),
GTK_SHADOW_IN);
gtk_table_attach (GTK_TABLE (table),
sw,
/* X direction */ /* Y direction */
0, 1, 2, 3,
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL,
0, 0);
gtk_window_set_default_size (GTK_WINDOW (window),
200, 200);
contents = gtk_text_view_new ();
gtk_container_add (GTK_CONTAINER (sw),
contents);
/* Create statusbar */
statusbar = gtk_statusbar_new ();
gtk_table_attach (GTK_TABLE (table),
statusbar,
/* X direction */ /* Y direction */
0, 1, 3, 4,
GTK_EXPAND | GTK_FILL, 0,
0, 0);
/* Show text widget info in the statusbar */
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (contents));
g_signal_connect_object (buffer,
"changed",
G_CALLBACK (update_statusbar),
statusbar,
0);
g_signal_connect_object (buffer,
"mark_set", /* cursor moved */
G_CALLBACK (mark_set_callback),
statusbar,
0);
update_statusbar (buffer, GTK_STATUSBAR (statusbar));
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

125
demos/gtk-demo/button_box.c Normal file
View File

@@ -0,0 +1,125 @@
/* Button Boxes
*
* The Button Box widgets are used to arrange buttons with padding.
*/
#include <gtk/gtk.h>
static GtkWidget *
create_bbox (gint horizontal,
char *title,
gint spacing,
gint layout)
{
GtkWidget *frame;
GtkWidget *bbox;
GtkWidget *button;
frame = gtk_frame_new (title);
if (horizontal)
bbox = gtk_hbutton_box_new ();
else
bbox = gtk_vbutton_box_new ();
gtk_container_set_border_width (GTK_CONTAINER (bbox), 5);
gtk_container_add (GTK_CONTAINER (frame), bbox);
gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), layout);
gtk_box_set_spacing (GTK_BOX (bbox), spacing);
button = gtk_button_new_from_stock (GTK_STOCK_OK);
gtk_container_add (GTK_CONTAINER (bbox), button);
button = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
gtk_container_add (GTK_CONTAINER (bbox), button);
button = gtk_button_new_from_stock (GTK_STOCK_HELP);
gtk_container_add (GTK_CONTAINER (bbox), button);
return frame;
}
GtkWidget *
do_button_box (void)
{
static GtkWidget *window = NULL;
GtkWidget *main_vbox;
GtkWidget *vbox;
GtkWidget *hbox;
GtkWidget *frame_horz;
GtkWidget *frame_vert;
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Button Boxes");
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed),
&window);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
main_vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), main_vbox);
frame_horz = gtk_frame_new ("Horizontal Button Boxes");
gtk_box_pack_start (GTK_BOX (main_vbox), frame_horz, TRUE, TRUE, 10);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 10);
gtk_container_add (GTK_CONTAINER (frame_horz), vbox);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "Spread", 40, GTK_BUTTONBOX_SPREAD),
TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "Edge", 40, GTK_BUTTONBOX_EDGE),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "Start", 40, GTK_BUTTONBOX_START),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "End", 40, GTK_BUTTONBOX_END),
TRUE, TRUE, 5);
frame_vert = gtk_frame_new ("Vertical Button Boxes");
gtk_box_pack_start (GTK_BOX (main_vbox), frame_vert, TRUE, TRUE, 10);
hbox = gtk_hbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
gtk_container_add (GTK_CONTAINER (frame_vert), hbox);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "Spread", 30, GTK_BUTTONBOX_SPREAD),
TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "Edge", 30, GTK_BUTTONBOX_EDGE),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "Start", 30, GTK_BUTTONBOX_START),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "End", 30, GTK_BUTTONBOX_END),
TRUE, TRUE, 5);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

110
demos/gtk-demo/colorsel.c Normal file
View File

@@ -0,0 +1,110 @@
/* Color Selector
*
* GtkColorSelection lets the user choose a color. GtkColorSelectionDialog is
* a prebuilt dialog containing a GtkColorSelection.
*
*/
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
static GtkWidget *da;
static GdkColor color;
static GtkWidget *frame;
static void
change_color_callback (GtkWidget *button,
gpointer data)
{
GtkWidget *dialog;
GtkColorSelection *colorsel;
gint response;
dialog = gtk_color_selection_dialog_new ("Changing color");
gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (window));
colorsel = GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (dialog)->colorsel);
gtk_color_selection_set_previous_color (colorsel, &color);
gtk_color_selection_set_current_color (colorsel, &color);
gtk_color_selection_set_has_palette (colorsel, TRUE);
response = gtk_dialog_run (GTK_DIALOG (dialog));
if (response == GTK_RESPONSE_OK)
{
gtk_color_selection_get_current_color (colorsel,
&color);
gtk_widget_modify_bg (da, GTK_STATE_NORMAL, &color);
}
gtk_widget_destroy (dialog);
}
GtkWidget *
do_colorsel (void)
{
GtkWidget *vbox;
GtkWidget *button;
GtkWidget *alignment;
if (!window)
{
color.red = 0;
color.blue = 65535;
color.green = 0;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Color Selection");
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
/*
* Create the color swatch area
*/
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0);
da = gtk_drawing_area_new ();
/* set a minimum size */
gtk_widget_set_size_request (da, 200, 200);
/* set the color */
gtk_widget_modify_bg (da, GTK_STATE_NORMAL, &color);
gtk_container_add (GTK_CONTAINER (frame), da);
alignment = gtk_alignment_new (1.0, 0.5, 0.0, 0.0);
button = gtk_button_new_with_mnemonic ("_Change the above color");
gtk_container_add (GTK_CONTAINER (alignment), button);
gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, FALSE, 0);
g_signal_connect (button, "clicked",
G_CALLBACK (change_color_callback), NULL);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

View File

@@ -0,0 +1,11 @@
#ifndef __DEMO_COMMON_H__
#define __DEMO_COMMON_H__
G_BEGIN_DECLS
gchar *demo_find_file (const gchar *base,
GError **err);
G_END_DECLS
#endif /* __DEMO_COMMON_H__ */

178
demos/gtk-demo/dialog.c Normal file
View File

@@ -0,0 +1,178 @@
/* Dialog and Message Boxes
*
* Dialog widgets are used to pop up a transient window for user feedback.
*/
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
static GtkWidget *entry1 = NULL;
static GtkWidget *entry2 = NULL;
static void
message_dialog_clicked (GtkButton *button,
gpointer user_data)
{
GtkWidget *dialog;
static gint i = 1;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_OK,
"This message box has been popped up the following\n"
"number of times:\n\n"
"%d", i);
gtk_dialog_run (GTK_DIALOG (dialog));
gtk_widget_destroy (dialog);
i++;
}
static void
interactive_dialog_clicked (GtkButton *button,
gpointer user_data)
{
GtkWidget *dialog;
GtkWidget *hbox;
GtkWidget *stock;
GtkWidget *table;
GtkWidget *local_entry1;
GtkWidget *local_entry2;
GtkWidget *label;
gint response;
dialog = gtk_dialog_new_with_buttons ("Interactive Dialog",
GTK_WINDOW (window),
GTK_DIALOG_MODAL| GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_STOCK_OK,
GTK_RESPONSE_OK,
"_Non-stock Button",
GTK_RESPONSE_CANCEL,
NULL);
hbox = gtk_hbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, FALSE, FALSE, 0);
stock = gtk_image_new_from_stock (GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
gtk_box_pack_start (GTK_BOX (hbox), stock, FALSE, FALSE, 0);
table = gtk_table_new (2, 2, FALSE);
gtk_table_set_row_spacings (GTK_TABLE (table), 4);
gtk_table_set_col_spacings (GTK_TABLE (table), 4);
gtk_box_pack_start (GTK_BOX (hbox), table, TRUE, TRUE, 0);
label = gtk_label_new_with_mnemonic ("_Entry 1");
gtk_table_attach_defaults (GTK_TABLE (table),
label,
0, 1, 0, 1);
local_entry1 = gtk_entry_new ();
gtk_entry_set_text (GTK_ENTRY (local_entry1), gtk_entry_get_text (GTK_ENTRY (entry1)));
gtk_table_attach_defaults (GTK_TABLE (table), local_entry1, 1, 2, 0, 1);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), local_entry1);
label = gtk_label_new_with_mnemonic ("E_ntry 2");
gtk_table_attach_defaults (GTK_TABLE (table),
label,
0, 1, 1, 2);
local_entry2 = gtk_entry_new ();
gtk_entry_set_text (GTK_ENTRY (local_entry2), gtk_entry_get_text (GTK_ENTRY (entry2)));
gtk_table_attach_defaults (GTK_TABLE (table), local_entry2, 1, 2, 1, 2);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), local_entry2);
gtk_widget_show_all (hbox);
response = gtk_dialog_run (GTK_DIALOG (dialog));
if (response == GTK_RESPONSE_OK)
{
gtk_entry_set_text (GTK_ENTRY (entry1), gtk_entry_get_text (GTK_ENTRY (local_entry1)));
gtk_entry_set_text (GTK_ENTRY (entry2), gtk_entry_get_text (GTK_ENTRY (local_entry2)));
}
gtk_widget_destroy (dialog);
}
GtkWidget *
do_dialog (void)
{
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *vbox2;
GtkWidget *hbox;
GtkWidget *button;
GtkWidget *table;
GtkWidget *label;
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Dialogs");
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
frame = gtk_frame_new ("Dialogs");
gtk_container_add (GTK_CONTAINER (window), frame);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (frame), vbox);
/* Standard message dialog */
hbox = gtk_hbox_new (FALSE, 8);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
button = gtk_button_new_with_mnemonic ("_Message Dialog");
g_signal_connect (button, "clicked",
G_CALLBACK (message_dialog_clicked), NULL);
gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), gtk_hseparator_new (), FALSE, FALSE, 0);
/* Interactive dialog*/
hbox = gtk_hbox_new (FALSE, 8);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
vbox2 = gtk_vbox_new (FALSE, 0);
button = gtk_button_new_with_mnemonic ("_Interactive Dialog");
g_signal_connect (button, "clicked",
G_CALLBACK (interactive_dialog_clicked), NULL);
gtk_box_pack_start (GTK_BOX (hbox), vbox2, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox2), button, FALSE, FALSE, 0);
table = gtk_table_new (2, 2, FALSE);
gtk_table_set_row_spacings (GTK_TABLE (table), 4);
gtk_table_set_col_spacings (GTK_TABLE (table), 4);
gtk_box_pack_start (GTK_BOX (hbox), table, FALSE, FALSE, 0);
label = gtk_label_new_with_mnemonic ("_Entry 1");
gtk_table_attach_defaults (GTK_TABLE (table),
label,
0, 1, 0, 1);
entry1 = gtk_entry_new ();
gtk_table_attach_defaults (GTK_TABLE (table), entry1, 1, 2, 0, 1);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry1);
label = gtk_label_new_with_mnemonic ("E_ntry 2");
gtk_table_attach_defaults (GTK_TABLE (table),
label,
0, 1, 1, 2);
entry2 = gtk_entry_new ();
gtk_table_attach_defaults (GTK_TABLE (table), entry2, 1, 2, 1, 2);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry2);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

View File

@@ -0,0 +1,320 @@
/* Drawing Area
*
* GtkDrawingArea is a blank area where you can draw custom displays
* of various kinds.
*
* This demo has two drawing areas. The checkerboard area shows
* how you can just draw something; all you have to do is write
* a signal handler for expose_event, as shown here.
*
* The "scribble" area is a bit more advanced, and shows how to handle
* events such as button presses and mouse motion. Click the mouse
* and drag in the scribble area to draw squiggles. Resize the window
* to clear the area.
*/
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
/* Pixmap for scribble area, to store current scribbles */
static GdkPixmap *pixmap = NULL;
/* Create a new pixmap of the appropriate size to store our scribbles */
static gboolean
scribble_configure_event (GtkWidget *widget,
GdkEventConfigure *event,
gpointer data)
{
if (pixmap)
g_object_unref (G_OBJECT (pixmap));
pixmap = gdk_pixmap_new (widget->window,
widget->allocation.width,
widget->allocation.height,
-1);
/* Initialize the pixmap to white */
gdk_draw_rectangle (pixmap,
widget->style->white_gc,
TRUE,
0, 0,
widget->allocation.width,
widget->allocation.height);
/* We've handled the configure event, no need for further processing. */
return TRUE;
}
/* Redraw the screen from the pixmap */
static gboolean
scribble_expose_event (GtkWidget *widget,
GdkEventExpose *event,
gpointer data)
{
/* We use the "foreground GC" for the widget since it already exists,
* but honestly any GC would work. The only thing to worry about
* is whether the GC has an inappropriate clip region set.
*/
gdk_draw_drawable (widget->window,
widget->style->fg_gc[GTK_WIDGET_STATE (widget)],
pixmap,
/* Only copy the area that was exposed. */
event->area.x, event->area.y,
event->area.x, event->area.y,
event->area.width, event->area.height);
return FALSE;
}
/* Draw a rectangle on the screen */
static void
draw_brush (GtkWidget *widget,
gdouble x,
gdouble y)
{
GdkRectangle update_rect;
update_rect.x = x - 3;
update_rect.y = y - 3;
update_rect.width = 6;
update_rect.height = 6;
/* Paint to the pixmap, where we store our state */
gdk_draw_rectangle (pixmap,
widget->style->black_gc,
TRUE,
update_rect.x, update_rect.y,
update_rect.width, update_rect.height);
/* Now invalidate the affected region of the drawing area. */
gdk_window_invalidate_rect (widget->window,
&update_rect,
FALSE);
}
static gboolean
scribble_button_press_event (GtkWidget *widget,
GdkEventButton *event,
gpointer data)
{
if (pixmap == NULL)
return FALSE; /* paranoia check, in case we haven't gotten a configure event */
if (event->button == 1)
draw_brush (widget, event->x, event->y);
/* We've handled the event, stop processing */
return TRUE;
}
static gboolean
scribble_motion_notify_event (GtkWidget *widget,
GdkEventMotion *event,
gpointer data)
{
int x, y;
GdkModifierType state;
if (pixmap == NULL)
return FALSE; /* paranoia check, in case we haven't gotten a configure event */
/* This call is very important; it requests the next motion event.
* If you don't call gdk_window_get_pointer() you'll only get
* a single motion event. The reason is that we specified
* GDK_POINTER_MOTION_HINT_MASK to gtk_widget_set_events().
* If we hadn't specified that, we could just use event->x, event->y
* as the pointer location. But we'd also get deluged in events.
* By requesting the next event as we handle the current one,
* we avoid getting a huge number of events faster than we
* can cope.
*/
gdk_window_get_pointer (event->window, &x, &y, &state);
if (state & GDK_BUTTON1_MASK)
draw_brush (widget, x, y);
/* We've handled it, stop processing */
return TRUE;
}
static gboolean
checkerboard_expose (GtkWidget *da,
GdkEventExpose *event,
gpointer data)
{
gint i, j, xcount, ycount;
GdkGC *gc1, *gc2;
GdkColor color;
#define CHECK_SIZE 10
#define SPACING 2
/* At the start of an expose handler, a clip region of event->area
* is set on the window, and event->area has been cleared to the
* widget's background color. The docs for
* gdk_window_begin_paint_region() give more details on how this
* works.
*/
/* It would be a bit more efficient to keep these
* GC's around instead of recreating on each expose, but
* this is the lazy/slow way.
*/
gc1 = gdk_gc_new (da->window);
color.red = 30000;
color.green = 0;
color.blue = 30000;
gdk_gc_set_rgb_fg_color (gc1, &color);
gc2 = gdk_gc_new (da->window);
color.red = 65535;
color.green = 65535;
color.blue = 65535;
gdk_gc_set_rgb_fg_color (gc2, &color);
xcount = 0;
i = SPACING;
while (i < da->allocation.width)
{
j = SPACING;
ycount = xcount % 2; /* start with even/odd depending on row */
while (j < da->allocation.height)
{
GdkGC *gc;
if (ycount % 2)
gc = gc1;
else
gc = gc2;
/* If we're outside event->area, this will do nothing.
* It might be mildly more efficient if we handled
* the clipping ourselves, but again we're feeling lazy.
*/
gdk_draw_rectangle (da->window,
gc,
TRUE,
i, j,
CHECK_SIZE,
CHECK_SIZE);
j += CHECK_SIZE + SPACING;
++ycount;
}
i += CHECK_SIZE + SPACING;
++xcount;
}
g_object_unref (G_OBJECT (gc1));
g_object_unref (G_OBJECT (gc2));
/* return TRUE because we've handled this event, so no
* further processing is required.
*/
return TRUE;
}
GtkWidget *
do_drawingarea (void)
{
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *da;
GtkWidget *label;
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Drawing Area");
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
/*
* Create the checkerboard area
*/
label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label),
"<u>Checkerboard pattern</u>");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0);
da = gtk_drawing_area_new ();
/* set a minimum size */
gtk_widget_set_size_request (da, 100, 100);
gtk_container_add (GTK_CONTAINER (frame), da);
g_signal_connect (da, "expose_event",
G_CALLBACK (checkerboard_expose), NULL);
/*
* Create the scribble area
*/
label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label),
"<u>Scribble area</u>");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0);
da = gtk_drawing_area_new ();
/* set a minimum size */
gtk_widget_set_size_request (da, 100, 100);
gtk_container_add (GTK_CONTAINER (frame), da);
/* Signals used to handle backing pixmap */
g_signal_connect (da, "expose_event",
G_CALLBACK (scribble_expose_event), NULL);
g_signal_connect (da,"configure_event",
G_CALLBACK (scribble_configure_event), NULL);
/* Event signals */
g_signal_connect (da, "motion_notify_event",
G_CALLBACK (scribble_motion_notify_event), NULL);
g_signal_connect (da, "button_press_event",
G_CALLBACK (scribble_button_press_event), NULL);
/* Ask to receive events the drawing area doesn't normally
* subscribe to
*/
gtk_widget_set_events (da, gtk_widget_get_events (da)
| GDK_LEAVE_NOTIFY_MASK
| GDK_BUTTON_PRESS_MASK
| GDK_POINTER_MOTION_MASK
| GDK_POINTER_MOTION_HINT_MASK);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

View File

@@ -0,0 +1,301 @@
/* Tree View/Editable Cells
*
* This demo demonstrates the use of editable cells in a GtkTreeView. If
* you're new to the GtkTreeView widgets and associates, look into
* the GtkListStore example first.
*
*/
#include <gtk/gtk.h>
#include <string.h>
#include <stdlib.h>
static GtkWidget *window = NULL;
typedef struct
{
gint number;
gchar *product;
gboolean editable;
}
Item;
enum
{
COLUMN_NUMBER,
COLUMN_PRODUCT,
COLUMN_EDITABLE,
NUM_COLUMNS
};
static GArray *articles = NULL;
static void
add_items (void)
{
Item foo;
g_return_if_fail (articles != NULL);
foo.number = 3;
foo.product = g_strdup ("bottles of coke");
foo.editable = TRUE;
g_array_append_vals (articles, &foo, 1);
foo.number = 5;
foo.product = g_strdup ("packages of noodles");
foo.editable = TRUE;
g_array_append_vals (articles, &foo, 1);
foo.number = 2;
foo.product = g_strdup ("packages of chocolate chip cookies");
foo.editable = TRUE;
g_array_append_vals (articles, &foo, 1);
foo.number = 1;
foo.product = g_strdup ("can vanilla ice cream");
foo.editable = TRUE;
g_array_append_vals (articles, &foo, 1);
foo.number = 6;
foo.product = g_strdup ("eggs");
foo.editable = TRUE;
g_array_append_vals (articles, &foo, 1);
}
static GtkTreeModel *
create_model (void)
{
gint i = 0;
GtkListStore *model;
GtkTreeIter iter;
/* create array */
articles = g_array_sized_new (FALSE, FALSE, sizeof (Item), 1);
add_items ();
/* create list store */
model = gtk_list_store_new (NUM_COLUMNS, G_TYPE_INT, G_TYPE_STRING,
G_TYPE_BOOLEAN);
/* add items */
for (i = 0; i < articles->len; i++)
{
gtk_list_store_append (model, &iter);
gtk_list_store_set (model, &iter,
COLUMN_NUMBER,
g_array_index (articles, Item, i).number,
COLUMN_PRODUCT,
g_array_index (articles, Item, i).product,
COLUMN_EDITABLE,
g_array_index (articles, Item, i).editable,
-1);
}
return GTK_TREE_MODEL (model);
}
static void
add_item (GtkWidget *button, gpointer data)
{
Item foo;
GtkTreeIter iter;
GtkTreeModel *model = (GtkTreeModel *)data;
g_return_if_fail (articles != NULL);
foo.number = 0;
foo.product = g_strdup ("Description here");
foo.editable = TRUE;
g_array_append_vals (articles, &foo, 1);
gtk_list_store_append (GTK_LIST_STORE (model), &iter);
gtk_list_store_set (GTK_LIST_STORE (model), &iter,
COLUMN_NUMBER, foo.number,
COLUMN_PRODUCT, foo.product,
COLUMN_EDITABLE, foo.editable,
-1);
}
static void
remove_item (GtkWidget *widget, gpointer data)
{
GtkTreeIter iter;
GtkTreeView *treeview = (GtkTreeView *)data;
GtkTreeModel *model = gtk_tree_view_get_model (treeview);
GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview);
if (gtk_tree_selection_get_selected (selection, NULL, &iter))
{
gint i;
GtkTreePath *path;
path = gtk_tree_model_get_path (model, &iter);
i = gtk_tree_path_get_indices (path)[0];
gtk_list_store_remove (GTK_LIST_STORE (model), &iter);
g_array_remove_index (articles, i);
gtk_tree_path_free (path);
}
}
static void
cell_edited (GtkCellRendererText *cell,
const gchar *path_string,
const gchar *new_text,
gpointer data)
{
GtkTreeModel *model = (GtkTreeModel *)data;
GtkTreePath *path = gtk_tree_path_new_from_string (path_string);
GtkTreeIter iter;
gint *column;
column = g_object_get_data (G_OBJECT (cell), "column");
gtk_tree_model_get_iter (model, &iter, path);
switch (GPOINTER_TO_INT (column))
{
case COLUMN_NUMBER:
{
gint i;
i = gtk_tree_path_get_indices (path)[0];
g_array_index (articles, Item, i).number = atoi (new_text);
gtk_list_store_set (GTK_LIST_STORE (model), &iter, column,
g_array_index (articles, Item, i).number, -1);
}
break;
case COLUMN_PRODUCT:
{
gint i;
gchar *old_text;
gtk_tree_model_get (model, &iter, column, &old_text, -1);
g_free (old_text);
i = gtk_tree_path_get_indices (path)[0];
g_free (g_array_index (articles, Item, i).product);
g_array_index (articles, Item, i).product = g_strdup (new_text);
gtk_list_store_set (GTK_LIST_STORE (model), &iter, column,
g_array_index (articles, Item, i).product, -1);
}
break;
}
gtk_tree_path_free (path);
}
static void
add_columns (GtkTreeView *treeview)
{
GtkCellRenderer *renderer;
GtkTreeModel *model = gtk_tree_view_get_model (treeview);
/* number column */
renderer = gtk_cell_renderer_text_new ();
g_signal_connect (G_OBJECT (renderer), "edited",
G_CALLBACK (cell_edited), model);
g_object_set_data (G_OBJECT (renderer), "column", (gint *)COLUMN_NUMBER);
gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Number", renderer,
"text", COLUMN_NUMBER,
"editable", COLUMN_EDITABLE,
NULL);
/* product column */
renderer = gtk_cell_renderer_text_new ();
g_signal_connect (G_OBJECT (renderer), "edited",
G_CALLBACK (cell_edited), model);
g_object_set_data (G_OBJECT (renderer), "column", (gint *)COLUMN_PRODUCT);
gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Product", renderer,
"text", COLUMN_PRODUCT,
"editable", COLUMN_EDITABLE,
NULL);
}
GtkWidget *
do_editable_cells (void)
{
if (!window)
{
GtkWidget *vbox;
GtkWidget *hbox;
GtkWidget *sw;
GtkWidget *treeview;
GtkWidget *button;
GtkTreeModel *model;
/* create window, etc */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Shopping list");
gtk_container_set_border_width (GTK_CONTAINER (window), 5);
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 5);
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_box_pack_start (GTK_BOX (vbox),
gtk_label_new ("Shopping list (you can edit the cells!)"),
FALSE, FALSE, 0);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),
GTK_SHADOW_ETCHED_IN);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_box_pack_start (GTK_BOX (vbox), sw, TRUE, TRUE, 0);
/* create model */
model = create_model ();
/* create tree view */
treeview = gtk_tree_view_new_with_model (model);
g_object_unref (G_OBJECT (model));
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE);
gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),
GTK_SELECTION_SINGLE);
add_columns (GTK_TREE_VIEW (treeview));
gtk_container_add (GTK_CONTAINER (sw), treeview);
/* some buttons */
hbox = gtk_hbox_new (TRUE, 4);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
button = gtk_button_new_with_label ("Add item");
g_signal_connect (G_OBJECT (button), "clicked",
G_CALLBACK (add_item), model);
gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 0);
button = gtk_button_new_with_label ("Remove item");
g_signal_connect (G_OBJECT (button), "clicked",
G_CALLBACK (remove_item), treeview);
gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 0);
gtk_window_set_default_size (GTK_WINDOW (window), 320, 200);
}
if (!GTK_WIDGET_VISIBLE (window))
gtk_widget_show_all (window);
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

163
demos/gtk-demo/geninclude.pl.in Executable file
View File

@@ -0,0 +1,163 @@
#!@PERL@ -w
print <<EOT;
typedef GtkWidget *(*GDoDemoFunc) (void);
typedef struct _Demo Demo;
struct _Demo
{
gchar *title;
gchar *filename;
GDoDemoFunc func;
Demo *children;
};
EOT
for $file (@ARGV) {
my %demo;
($basename = $file) =~ s/\.c$//;
open INFO_FILE, $file or die "Cannot open '$file'\n";
$title = <INFO_FILE>;
$title =~ s@^\s*/\*\s*@@;
$title =~ s@\s*$@@;
close INFO_FILE;
print "GtkWidget *do_$basename (void);\n";
push @demos, {"title" => $title, "file" => $file,
"func" => "do_$basename"};
}
# generate a list of 'parent names'
foreach $href (@demos) {
if ($href->{"title"} =~ m|^([\w\s]+)/[\w\s]+$|) {
my $parent_name = $1;
my $do_next = 0;
# parent detected
if (defined @parents) {
foreach $foo (@parents) {
if ($foo eq $parent_name) {
$do_next = 1;
}
}
if ($do_next) {
next;
}
}
push @parents, $parent_name;
$tmp = (defined @child_arrays)?($#child_arrays + 1):0;
push @child_arrays, "child$tmp";
push @demos, {"title" => $parent_name, "file" => "NULL",
"func" => "NULL"};
}
}
if (defined @parents) {
$i = 0;
for ($i = 0; $i <= $#parents; $i++) {
$first = 1;
print "\nDemo ", $child_arrays[$i], "[] = {\n";
$j = 0;
for ($j = 0; $j <= $#demos; $j++) {
$href = $demos[$j];
if (!defined $demos[$j]) {
next;
}
if ($demos[$j]{"title"} =~ m|^$parents[$i]/([\w\s]+)$|) {
if ($first) {
$first = 0;
} else {
print ",\n";
}
print qq ( { "$1", "$demos[$j]{file}", $demos[$j]{func}, NULL });
# hack ... ugly
$demos[$j]{"title"} = "foo";
}
}
print ",\n";
print qq ( { NULL } );
print "\n};\n";
}
}
# sort @demos
@demos_old = @demos;
@demos = sort {
$a->{"title"} cmp $b->{"title"};
} @demos_old;
# sort the child arrays
if (defined @child_arrays) {
for ($i = 0; $i <= $#child_arrays; $i++) {
@foo_old = @{$child_arrays[$i]};
@{$child_arrays[$i]} = sort {
$a->{"title"} cmp $b->{"title"};
} @foo_old;
}
}
# toplevel
print "\nDemo testgtk_demos[] = {\n";
$first = 1;
foreach $href (@demos) {
$handled = 0;
# ugly evil hack
if ($href->{title} eq "foo") {
next;
}
if ($first) {
$first = 0;
} else {
print ", \n";
}
if (defined @parents) {
for ($i = 0; $i <= $#parents; $i++) {
if ($parents[$i] eq $href->{title}) {
if ($href->{file} eq 'NULL') {
print qq ( { "$href->{title}", NULL, $href->{func}, $child_arrays[$i] });
} else {
print qq ( { "$href->{title}", "$href->{file}", $href->{func}, $child_arrays[$i] });
}
$handled = 1;
last;
}
}
}
if ($handled) {
next;
}
print qq ( { "$href->{title}", "$href->{file}", $href->{func}, NULL });
}
print ",\n";
print qq ( { NULL } );
print "\n};\n";
exit 0;

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
demos/gtk-demo/gnu-keys.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

461
demos/gtk-demo/images.c Normal file
View File

@@ -0,0 +1,461 @@
/* Images
*
* GtkImage is used to display an image; the image can be in a number of formats.
* Typically, you load an image into a GdkPixbuf, then display the pixbuf.
*
* This demo code shows some of the more obscure cases, in the simple
* case a call to gtk_image_new_from_file() is all you need.
*
* If you want to put image data in your program as a C variable,
* use the make-inline-pixbuf program that comes with GTK+.
* This way you won't need to depend on loading external files, your
* application binary can be self-contained.
*/
#include <gtk/gtk.h>
#include <stdio.h>
#include <errno.h>
#include "demo-common.h"
static GtkWidget *window = NULL;
static GdkPixbufLoader *pixbuf_loader = NULL;
static guint load_timeout = 0;
static FILE* image_stream = NULL;
static void
progressive_prepared_callback (GdkPixbufLoader *loader,
gpointer data)
{
GdkPixbuf *pixbuf;
GtkWidget *image;
image = GTK_WIDGET (data);
pixbuf = gdk_pixbuf_loader_get_pixbuf (loader);
/* Avoid displaying random memory contents, since the pixbuf
* isn't filled in yet.
*/
gdk_pixbuf_fill (pixbuf, 0xaaaaaaff);
gtk_image_set_from_pixbuf (GTK_IMAGE (image), pixbuf);
}
static void
progressive_updated_callback (GdkPixbufLoader *loader,
gint x,
gint y,
gint width,
gint height,
gpointer data)
{
GtkWidget *image;
image = GTK_WIDGET (data);
/* We know the pixbuf inside the GtkImage has changed, but the image
* itself doesn't know this; so queue a redraw. If we wanted to be
* really efficient, we could use a drawing area or something
* instead of a GtkImage, so we could control the exact position of
* the pixbuf on the display, then we could queue a draw for only
* the updated area of the image.
*/
gtk_widget_queue_draw (image);
}
static gint
progressive_timeout (gpointer data)
{
GtkWidget *image;
image = GTK_WIDGET (data);
/* This shows off fully-paranoid error handling, so looks scary.
* You could factor out the error handling code into a nice separate
* function to make things nicer.
*/
if (image_stream)
{
size_t bytes_read;
guchar buf[256];
GError *error = NULL;
bytes_read = fread (buf, 1, 256, image_stream);
if (ferror (image_stream))
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failure reading image file 'alphatest.png': %s",
g_strerror (errno));
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
fclose (image_stream);
image_stream = NULL;
gtk_widget_show (dialog);
load_timeout = 0;
return FALSE; /* uninstall the timeout */
}
if (!gdk_pixbuf_loader_write (pixbuf_loader,
buf, bytes_read,
&error))
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failed to load image: %s",
error->message);
g_error_free (error);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
fclose (image_stream);
image_stream = NULL;
gtk_widget_show (dialog);
load_timeout = 0;
return FALSE; /* uninstall the timeout */
}
if (feof (image_stream))
{
fclose (image_stream);
image_stream = NULL;
/* Errors can happen on close, e.g. if the image
* file was truncated we'll know on close that
* it was incomplete.
*/
error = NULL;
if (!gdk_pixbuf_loader_close (pixbuf_loader,
&error))
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failed to load image: %s",
error->message);
g_error_free (error);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
gtk_widget_show (dialog);
g_object_unref (G_OBJECT (pixbuf_loader));
pixbuf_loader = NULL;
load_timeout = 0;
return FALSE; /* uninstall the timeout */
}
g_object_unref (G_OBJECT (pixbuf_loader));
pixbuf_loader = NULL;
}
}
else
{
gchar *filename;
gchar *error_message = NULL;
GError *error = NULL;
/* demo_find_file() looks in the the current directory first,
* so you can run gtk-demo without installing GTK, then looks
* in the location where the file is installed.
*/
filename = demo_find_file ("alphatest.png", &error);
if (error)
{
error_message = g_strdup (error->message);
g_error_free (error);
}
else
{
image_stream = fopen (filename, "r");
g_free (filename);
if (!image_stream)
error_message = g_strdup_printf ("Unable to open image file 'alphatest.png': %s",
g_strerror (errno));
}
if (image_stream == NULL)
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"%s", error_message);
g_free (error_message);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
gtk_widget_show (dialog);
load_timeout = 0;
return FALSE; /* uninstall the timeout */
}
if (pixbuf_loader)
{
gdk_pixbuf_loader_close (pixbuf_loader, NULL);
g_object_unref (G_OBJECT (pixbuf_loader));
pixbuf_loader = NULL;
}
pixbuf_loader = gdk_pixbuf_loader_new ();
g_signal_connect (G_OBJECT (pixbuf_loader), "area_prepared",
G_CALLBACK (progressive_prepared_callback), image);
g_signal_connect (G_OBJECT (pixbuf_loader), "area_updated",
G_CALLBACK (progressive_updated_callback), image);
}
/* leave timeout installed */
return TRUE;
}
static void
start_progressive_loading (GtkWidget *image)
{
/* This is obviously totally contrived (we slow down loading
* on purpose to show how incremental loading works).
* The real purpose of incremental loading is the case where
* you are reading data from a slow source such as the network.
* The timeout simply simulates a slow data source by inserting
* pauses in the reading process.
*/
load_timeout = g_timeout_add (150,
progressive_timeout,
image);
}
static void
cleanup_callback (GtkObject *object,
gpointer data)
{
if (load_timeout)
{
g_source_remove (load_timeout);
load_timeout = 0;
}
if (pixbuf_loader)
{
gdk_pixbuf_loader_close (pixbuf_loader, NULL);
g_object_unref (G_OBJECT (pixbuf_loader));
pixbuf_loader = NULL;
}
if (image_stream)
fclose (image_stream);
image_stream = NULL;
}
static void
toggle_sensitivity_callback (GtkWidget *togglebutton,
gpointer user_data)
{
GtkContainer *container = user_data;
GList *list;
GList *tmp;
list = gtk_container_get_children (container);
tmp = list;
while (tmp != NULL)
{
/* don't disable our toggle */
if (GTK_WIDGET (tmp->data) != togglebutton)
gtk_widget_set_sensitive (GTK_WIDGET (tmp->data),
!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (togglebutton)));
tmp = tmp->next;
}
g_list_free (list);
}
GtkWidget *
do_images (void)
{
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *image;
GtkWidget *label;
GtkWidget *align;
GtkWidget *button;
GdkPixbuf *pixbuf;
GError *error = NULL;
char *filename;
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Images");
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
g_signal_connect (window, "destroy",
G_CALLBACK (cleanup_callback), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label),
"<u>Image loaded from a file</u>");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
/* The alignment keeps the frame from growing when users resize
* the window
*/
align = gtk_alignment_new (0.5, 0.5, 0, 0);
gtk_container_add (GTK_CONTAINER (align), frame);
gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);
/* demo_find_file() looks in the the current directory first,
* so you can run gtk-demo without installing GTK, then looks
* in the location where the file is installed.
*/
pixbuf = NULL;
filename = demo_find_file ("gtk-logo-rgb.gif", &error);
if (filename)
{
pixbuf = gdk_pixbuf_new_from_file (filename, &error);
g_free (filename);
}
if (error)
{
/* This code shows off error handling. You can just use
* gtk_image_new_from_file() instead if you don't want to report
* errors to the user. If the file doesn't load when using
* gtk_image_new_from_file(), a "missing image" icon will
* be displayed instead.
*/
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Unable to open image file 'gtk-logo-rgb.gif': %s",
error->message);
g_error_free (error);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
gtk_widget_show (dialog);
}
image = gtk_image_new_from_pixbuf (pixbuf);
gtk_container_add (GTK_CONTAINER (frame), image);
/* Animation */
label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label),
"<u>Animation loaded from a file</u>");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
/* The alignment keeps the frame from growing when users resize
* the window
*/
align = gtk_alignment_new (0.5, 0.5, 0, 0);
gtk_container_add (GTK_CONTAINER (align), frame);
gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);
filename = demo_find_file ("floppybuddy.gif", NULL);
image = gtk_image_new_from_file (filename);
g_free (filename);
gtk_container_add (GTK_CONTAINER (frame), image);
/* Progressive */
label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label),
"<u>Progressive image loading</u>");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
/* The alignment keeps the frame from growing when users resize
* the window
*/
align = gtk_alignment_new (0.5, 0.5, 0, 0);
gtk_container_add (GTK_CONTAINER (align), frame);
gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);
/* Create an empty image for now; the progressive loader
* will create the pixbuf and fill it in.
*/
image = gtk_image_new_from_pixbuf (NULL);
gtk_container_add (GTK_CONTAINER (frame), image);
start_progressive_loading (image);
/* Sensitivity control */
button = gtk_toggle_button_new_with_mnemonic ("_Insensitive");
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
g_signal_connect (G_OBJECT (button), "toggled",
G_CALLBACK (toggle_sensitivity_callback),
vbox);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

View File

@@ -0,0 +1,120 @@
/* Item Factory
*
* The GtkItemFactory object allows the easy creation of menus
* from an array of descriptions of menu items.
*/
#include <gtk/gtk.h>
static void
gtk_ifactory_cb (gpointer callback_data,
guint callback_action,
GtkWidget *widget)
{
g_message ("ItemFactory: activated \"%s\"",
gtk_item_factory_path_from_widget (widget));
}
static GtkItemFactoryEntry menu_items[] =
{
{ "/_File", NULL, 0, 0, "<Branch>" },
{ "/File/tearoff1", NULL, gtk_ifactory_cb, 0, "<Tearoff>" },
{ "/File/_New", "<control>N", gtk_ifactory_cb, 0 },
{ "/File/_Open", "<control>O", gtk_ifactory_cb, 0 },
{ "/File/_Save", "<control>S", gtk_ifactory_cb, 0 },
{ "/File/Save _As...", NULL, gtk_ifactory_cb, 0 },
{ "/File/sep1", NULL, gtk_ifactory_cb, 0, "<Separator>" },
{ "/File/_Quit", "<control>Q", gtk_ifactory_cb, 0 },
{ "/_Preferences", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/_Color", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Color/_Red", NULL, gtk_ifactory_cb, 0, "<RadioItem>" },
{ "/_Preferences/Color/_Green", NULL, gtk_ifactory_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/Color/_Blue", NULL, gtk_ifactory_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/_Shape", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Shape/_Square", NULL, gtk_ifactory_cb, 0, "<RadioItem>" },
{ "/_Preferences/Shape/_Rectangle", NULL, gtk_ifactory_cb, 0, "/Preferences/Shape/Square" },
{ "/_Preferences/Shape/_Oval", NULL, gtk_ifactory_cb, 0, "/Preferences/Shape/Rectangle" },
{ "/_Help", NULL, 0, 0, "<LastBranch>" },
{ "/Help/_About", NULL, gtk_ifactory_cb, 0 },
};
static int nmenu_items = sizeof (menu_items) / sizeof (menu_items[0]);
GtkWidget *
do_item_factory (void)
{
static GtkWidget *window = NULL;
if (!window)
{
GtkWidget *box1;
GtkWidget *box2;
GtkWidget *separator;
GtkWidget *label;
GtkWidget *button;
GtkAccelGroup *accel_group;
GtkItemFactory *item_factory;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
g_signal_connect (window, "delete-event",
G_CALLBACK (gtk_true), NULL);
accel_group = gtk_accel_group_new ();
item_factory = gtk_item_factory_new (GTK_TYPE_MENU_BAR, "<main>", accel_group);
g_object_set_data_full (G_OBJECT (window), "<main>",
item_factory, (GDestroyNotify) g_object_unref);
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
gtk_window_set_title (GTK_WINDOW (window), "Item Factory");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
gtk_item_factory_create_items (item_factory, nmenu_items, menu_items, NULL);
/* preselect /Preferences/Shape/Oval over the other radios
*/
gtk_check_menu_item_set_active
(GTK_CHECK_MENU_ITEM (gtk_item_factory_get_item (item_factory,
"/Preferences/Shape/Oval")),
TRUE);
box1 = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), box1);
gtk_box_pack_start (GTK_BOX (box1),
gtk_item_factory_get_widget (item_factory, "<main>"),
FALSE, FALSE, 0);
label = gtk_label_new ("Type\n<alt>\nto start");
gtk_widget_set_size_request (label, 200, 200);
gtk_misc_set_alignment (GTK_MISC (label), 0.5, 0.5);
gtk_box_pack_start (GTK_BOX (box1), label, TRUE, TRUE, 0);
separator = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
button = gtk_button_new_with_label ("close");
g_signal_connect_swapped (button, "clicked",
G_CALLBACK (gtk_widget_destroy), window);
gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (button);
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

219
demos/gtk-demo/list_store.c Normal file
View File

@@ -0,0 +1,219 @@
/* Tree View/List Store
*
* The GtkListStore is used to store data in list form, to be used
* later on by a GtkTreeView to display it. This demo builds a
* simple GtkListStore and displays it. See the Stock Browser
* demo for a more advanced example.
*
*/
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
typedef struct
{
const gboolean fixed;
const guint number;
const gchar *severity;
const gchar *description;
}
Bug;
enum
{
COLUMN_FIXED,
COLUMN_NUMBER,
COLUMN_SEVERITY,
COLUMN_DESCRIPTION,
NUM_COLUMNS
};
static Bug data[] =
{
{ FALSE, 60482, "Normal", "scrollable notebooks and hidden tabs" },
{ FALSE, 60620, "Critical", "gdk_window_clear_area (gdkwindow-win32.c) is not thread-safe" },
{ FALSE, 50214, "Major", "Xft support does not clean up correctly" },
{ TRUE, 52877, "Major", "GtkFileSelection needs a refresh method. " },
{ FALSE, 56070, "Normal", "Can't click button after setting in sensitive" },
{ TRUE, 56355, "Normal", "GtkLabel - Not all changes propagate correctly" },
{ FALSE, 50055, "Normal", "Rework width/height computations for TreeView" },
{ FALSE, 58278, "Normal", "gtk_dialog_set_response_sensitive () doesn't work" },
{ FALSE, 55767, "Normal", "Getters for all setters" },
{ FALSE, 56925, "Normal", "Gtkcalender size" },
{ FALSE, 56221, "Normal", "Selectable label needs right-click copy menu" },
{ TRUE, 50939, "Normal", "Add shift clicking to GtkTextView" },
{ FALSE, 6112, "Enhancement","netscape-like collapsable toolbars" },
{ FALSE, 1, "Normal", "First bug :=)" },
};
static GtkTreeModel *
create_model (void)
{
gint i = 0;
GtkListStore *store;
GtkTreeIter iter;
/* create list store */
store = gtk_list_store_new (NUM_COLUMNS,
G_TYPE_BOOLEAN,
G_TYPE_UINT,
G_TYPE_STRING,
G_TYPE_STRING);
/* add data to the list store */
for (i = 0; i < G_N_ELEMENTS (data); i++)
{
gtk_list_store_append (store, &iter);
gtk_list_store_set (store, &iter,
COLUMN_FIXED, data[i].fixed,
COLUMN_NUMBER, data[i].number,
COLUMN_SEVERITY, data[i].severity,
COLUMN_DESCRIPTION, data[i].description,
-1);
}
return GTK_TREE_MODEL (store);
}
static void
fixed_toggled (GtkCellRendererToggle *cell,
gchar *path_str,
gpointer data)
{
GtkTreeModel *model = (GtkTreeModel *)data;
GtkTreeIter iter;
GtkTreePath *path = gtk_tree_path_new_from_string (path_str);
gboolean fixed;
/* get toggled iter */
gtk_tree_model_get_iter (model, &iter, path);
gtk_tree_model_get (model, &iter, COLUMN_FIXED, &fixed, -1);
/* do something with the value */
fixed ^= 1;
/* set new value */
gtk_list_store_set (GTK_LIST_STORE (model), &iter, COLUMN_FIXED, fixed, -1);
/* clean up */
gtk_tree_path_free (path);
}
static void
add_columns (GtkTreeView *treeview)
{
GtkCellRenderer *renderer;
GtkTreeViewColumn *column;
GtkTreeModel *model = gtk_tree_view_get_model (treeview);
/* column for fixed toggles */
renderer = gtk_cell_renderer_toggle_new ();
g_signal_connect (G_OBJECT (renderer), "toggled",
G_CALLBACK (fixed_toggled), model);
column = gtk_tree_view_column_new_with_attributes ("Fixed?",
renderer,
"active", COLUMN_FIXED,
NULL);
/* set this column to a fixed sizing (of 50 pixels) */
gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column),
GTK_TREE_VIEW_COLUMN_FIXED);
gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 50);
gtk_tree_view_append_column (treeview, column);
/* column for bug numbers */
renderer = gtk_cell_renderer_text_new ();
column = gtk_tree_view_column_new_with_attributes ("Bug number",
renderer,
"text",
COLUMN_NUMBER,
NULL);
gtk_tree_view_column_set_sort_column_id (column, COLUMN_NUMBER);
gtk_tree_view_append_column (treeview, column);
/* column for severities */
renderer = gtk_cell_renderer_text_new ();
column = gtk_tree_view_column_new_with_attributes ("Severity",
renderer,
"text",
COLUMN_SEVERITY,
NULL);
gtk_tree_view_column_set_sort_column_id (column, COLUMN_SEVERITY);
gtk_tree_view_append_column (treeview, column);
/* column for description */
renderer = gtk_cell_renderer_text_new ();
column = gtk_tree_view_column_new_with_attributes ("Description",
renderer,
"text",
COLUMN_DESCRIPTION,
NULL);
gtk_tree_view_column_set_sort_column_id (column, COLUMN_DESCRIPTION);
gtk_tree_view_append_column (treeview, column);
}
GtkWidget *
do_list_store (void)
{
if (!window)
{
GtkWidget *vbox;
GtkWidget *label;
GtkWidget *sw;
GtkTreeModel *model;
GtkWidget *treeview;
/* create window, etc */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "GtkListStore demo");
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
label = gtk_label_new ("This is the bug list (note: not based on real data, it would be nice to have a nice ODBC interface to bugzilla or so, though).");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),
GTK_SHADOW_ETCHED_IN);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_NEVER,
GTK_POLICY_AUTOMATIC);
gtk_box_pack_start (GTK_BOX (vbox), sw, TRUE, TRUE, 0);
/* create tree model */
model = create_model ();
/* create tree view */
treeview = gtk_tree_view_new_with_model (model);
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE);
gtk_tree_view_set_search_column (GTK_TREE_VIEW (treeview),
COLUMN_DESCRIPTION);
g_object_unref (G_OBJECT (model));
gtk_container_add (GTK_CONTAINER (sw), treeview);
/* add columns to the tree view */
add_columns (GTK_TREE_VIEW (treeview));
/* finish & show */
gtk_window_set_default_size (GTK_WINDOW (window), 280, 250);
}
if (!GTK_WIDGET_VISIBLE (window))
gtk_widget_show_all (window);
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

880
demos/gtk-demo/main.c Normal file
View File

@@ -0,0 +1,880 @@
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <gtk/gtk.h>
#include <demos.h>
static GtkTextBuffer *info_buffer;
static GtkTextBuffer *source_buffer;
static gchar *current_file = NULL;
enum {
TITLE_COLUMN,
FILENAME_COLUMN,
FUNC_COLUMN,
ITALIC_COLUMN,
NUM_COLUMNS
};
typedef struct _CallbackData CallbackData;
struct _CallbackData
{
GtkTreeModel *model;
GtkTreePath *path;
};
/**
* demo_find_file:
* @base: base filename
* @err: location to store error, or %NULL.
*
* Looks for @base first in the current directory, then in the
* location GTK+ where it will be installed on make install,
* returns the first file found.
*
* Return value: the filename, if found or %NULL
**/
gchar *
demo_find_file (const char *base,
GError **err)
{
g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
if (g_file_test (base, G_FILE_TEST_EXISTS))
return g_strdup (base);
else
{
char *filename = g_build_filename (DEMOCODEDIR, base, NULL);
if (!g_file_test (filename, G_FILE_TEST_EXISTS))
{
g_set_error (err, G_FILE_ERROR, G_FILE_ERROR_NOENT,
"Cannot find demo data file \"%s\"", base);
g_free (filename);
return NULL;
}
return filename;
}
}
static void
window_closed_cb (GtkWidget *window, gpointer data)
{
CallbackData *cbdata = data;
GtkTreeIter iter;
gboolean italic;
gtk_tree_model_get_iter (cbdata->model, &iter, cbdata->path);
gtk_tree_model_get (GTK_TREE_MODEL (cbdata->model), &iter,
ITALIC_COLUMN, &italic,
-1);
if (italic)
gtk_tree_store_set (GTK_TREE_STORE (cbdata->model), &iter,
ITALIC_COLUMN, !italic,
-1);
gtk_tree_path_free (cbdata->path);
g_free (cbdata);
}
gboolean
read_line (FILE *stream, GString *str)
{
int n_read = 0;
#ifdef HAVE_FLOCKFILE
flockfile (stream);
#endif
g_string_truncate (str, 0);
while (1)
{
int c;
#ifndef G_OS_WIN32
c = getc_unlocked (stream);
#else
c = getc (stream);
#endif
if (c == EOF)
goto done;
else
n_read++;
switch (c)
{
case '\r':
case '\n':
{
#ifdef HAVE_FLOCKFILE
int next_c = getc_unlocked (stream);
#else
int next_c = getc (stream);
#endif
if (!(next_c == EOF ||
(c == '\r' && next_c == '\n') ||
(c == '\n' && next_c == '\r')))
ungetc (next_c, stream);
goto done;
}
default:
g_string_append_c (str, c);
}
}
done:
#ifdef HAVE_FLOCKFILE
funlockfile (stream);
#endif
return n_read > 0;
}
/* Stupid syntax highlighting.
*
* No regex was used in the making of this highlighting.
* It should only work for simple cases. This is good, as
* that's all we should have in the demos.
*/
/* This code should not be used elsewhere, except perhaps as an example of how
* to iterate through a text buffer.
*/
enum {
STATE_NORMAL,
STATE_IN_COMMENT
};
static gchar *tokens[] =
{
"/*",
"\"",
NULL
};
static gchar *types[] =
{
"static",
"const ",
"void",
"gint",
"int ",
"char ",
"gchar ",
"gfloat",
"float",
"gint8",
"gint16",
"gint32",
"guint",
"guint8",
"guint16",
"guint32",
"guchar",
"glong",
"gboolean" ,
"gshort",
"gushort",
"gulong",
"gdouble",
"gldouble",
"gpointer",
"NULL",
"GList",
"GSList",
"FALSE",
"TRUE",
"FILE ",
"GtkObject ",
"GtkColorSelection ",
"GtkWidget ",
"GtkButton ",
"GdkColor ",
"GdkRectangle ",
"GdkEventExpose ",
"GdkGC ",
"GdkPixbufLoader ",
"GdkPixbuf ",
"GError",
"size_t",
NULL
};
static gchar *control[] =
{
" if ",
" while ",
" else",
" do ",
" for ",
"?",
":",
"return ",
"goto ",
NULL
};
void
parse_chars (gchar *text,
gchar **end_ptr,
gint *state,
gchar **tag,
gboolean start)
{
gint i;
gchar *next_token;
/* Handle comments first */
if (*state == STATE_IN_COMMENT)
{
*end_ptr = strstr (text, "*/");
if (*end_ptr)
{
*end_ptr += 2;
*state = STATE_NORMAL;
*tag = "comment";
}
return;
}
*tag = NULL;
*end_ptr = NULL;
/* check for comment */
if (!strncmp (text, "/*", 2))
{
*end_ptr = strstr (text, "*/");
if (*end_ptr)
*end_ptr += 2;
else
*state = STATE_IN_COMMENT;
*tag = "comment";
return;
}
/* check for preprocessor defines */
if (*text == '#' && start)
{
*end_ptr = NULL;
*tag = "preprocessor";
return;
}
/* functions */
if (start && * text != '\t' && *text != ' ' && *text != '{' && *text != '}')
{
if (strstr (text, "("))
{
*end_ptr = strstr (text, "(");
*tag = "function";
return;
}
}
/* check for types */
for (i = 0; types[i] != NULL; i++)
if (!strncmp (text, types[i], strlen (types[i])))
{
*end_ptr = text + strlen (types[i]);
*tag = "type";
return;
}
/* check for control */
for (i = 0; control[i] != NULL; i++)
if (!strncmp (text, control[i], strlen (control[i])))
{
*end_ptr = text + strlen (control[i]);
*tag = "control";
return;
}
/* check for string */
if (text[0] == '"')
{
gint maybe_escape = FALSE;
*end_ptr = text + 1;
*tag = "string";
while (**end_ptr != '\000')
{
if (**end_ptr == '\"' && !maybe_escape)
{
*end_ptr += 1;
return;
}
if (**end_ptr == '\\')
maybe_escape = TRUE;
else
maybe_escape = FALSE;
*end_ptr += 1;
}
return;
}
/* not at the start of a tag. Find the next one. */
for (i = 0; tokens[i] != NULL; i++)
{
next_token = strstr (text, tokens[i]);
if (next_token)
{
if (*end_ptr)
*end_ptr = (*end_ptr<next_token)?*end_ptr:next_token;
else
*end_ptr = next_token;
}
}
for (i = 0; types[i] != NULL; i++)
{
next_token = strstr (text, types[i]);
if (next_token)
{
if (*end_ptr)
*end_ptr = (*end_ptr<next_token)?*end_ptr:next_token;
else
*end_ptr = next_token;
}
}
for (i = 0; control[i] != NULL; i++)
{
next_token = strstr (text, control[i]);
if (next_token)
{
if (*end_ptr)
*end_ptr = (*end_ptr<next_token)?*end_ptr:next_token;
else
*end_ptr = next_token;
}
}
}
/* While not as cool as c-mode, this will do as a quick attempt at highlighting */
static void
fontify ()
{
GtkTextIter start_iter, next_iter, tmp_iter;
gint state;
gchar *text;
gchar *start_ptr, *end_ptr;
gchar *tag;
state = STATE_NORMAL;
gtk_text_buffer_get_iter_at_offset (source_buffer, &start_iter, 0);
next_iter = start_iter;
while (gtk_text_iter_forward_line (&next_iter))
{
gboolean start = TRUE;
start_ptr = text = gtk_text_iter_get_text (&start_iter, &next_iter);
do
{
parse_chars (start_ptr, &end_ptr, &state, &tag, start);
start = FALSE;
if (end_ptr)
{
tmp_iter = start_iter;
gtk_text_iter_forward_chars (&tmp_iter, end_ptr - start_ptr);
}
else
{
tmp_iter = next_iter;
}
if (tag)
gtk_text_buffer_apply_tag_by_name (source_buffer, tag, &start_iter, &tmp_iter);
start_iter = tmp_iter;
start_ptr = end_ptr;
}
while (end_ptr);
g_free (text);
start_iter = next_iter;
}
}
void
load_file (const gchar *filename)
{
FILE *file;
GtkTextIter start, end;
char *full_filename;
GError *err = NULL;
GString *buffer = g_string_new (NULL);
int state = 0;
gboolean in_para = 0;
if (current_file && !strcmp (current_file, filename))
{
g_string_free (buffer, TRUE);
return;
}
g_free (current_file);
current_file = g_strdup (filename);
gtk_text_buffer_get_bounds (info_buffer, &start, &end);
gtk_text_buffer_delete (info_buffer, &start, &end);
gtk_text_buffer_get_bounds (source_buffer, &start, &end);
gtk_text_buffer_delete (source_buffer, &start, &end);
full_filename = demo_find_file (filename, &err);
if (!full_filename)
{
g_warning ("%s", err->message);
g_error_free (err);
return;
}
file = fopen (full_filename, "r");
if (!file)
g_warning ("Cannot open %s: %s\n", full_filename, g_strerror (errno));
g_free (full_filename);
if (!file)
return;
gtk_text_buffer_get_iter_at_offset (info_buffer, &start, 0);
while (read_line (file, buffer))
{
gchar *p = buffer->str;
gchar *q;
gchar *r;
switch (state)
{
case 0:
/* Reading title */
while (*p == '/' || *p == '*' || g_ascii_isspace (*p))
p++;
r = p;
while (*r != '/' && strlen (r))
r++;
if (strlen (r) > 0)
p = r + 1;
q = p + strlen (p);
while (q > p && g_ascii_isspace (*(q - 1)))
q--;
if (q > p)
{
int len_chars = g_utf8_pointer_to_offset (p, q);
end = start;
g_assert (strlen (p) >= q - p);
gtk_text_buffer_insert (info_buffer, &end, p, q - p);
start = end;
gtk_text_iter_backward_chars (&start, len_chars);
gtk_text_buffer_apply_tag_by_name (info_buffer, "title", &start, &end);
start = end;
state++;
}
break;
case 1:
/* Reading body of info section */
while (g_ascii_isspace (*p))
p++;
if (*p == '*' && *(p + 1) == '/')
{
gtk_text_buffer_get_iter_at_offset (source_buffer, &start, 0);
state++;
}
else
{
int len;
while (*p == '*' || g_ascii_isspace (*p))
p++;
len = strlen (p);
while (g_ascii_isspace (*(p + len - 1)))
len--;
if (len > 0)
{
if (in_para)
gtk_text_buffer_insert (info_buffer, &start, " ", 1);
g_assert (strlen (p) >= len);
gtk_text_buffer_insert (info_buffer, &start, p, len);
in_para = 1;
}
else
{
gtk_text_buffer_insert (info_buffer, &start, "\n", 1);
in_para = 0;
}
}
break;
case 2:
/* Skipping blank lines */
while (g_ascii_isspace (*p))
p++;
if (*p)
{
p = buffer->str;
state++;
/* Fall through */
}
else
break;
case 3:
/* Reading program body */
gtk_text_buffer_insert (source_buffer, &start, p, -1);
gtk_text_buffer_insert (source_buffer, &start, "\n", 1);
break;
}
}
fontify ();
g_string_free (buffer, TRUE);
}
void
row_activated_cb (GtkTreeView *tree_view,
GtkTreePath *path,
GtkTreeViewColumn *column)
{
GtkTreeIter iter;
gboolean italic;
GDoDemoFunc func;
GtkWidget *window;
GtkTreeModel *model;
model = gtk_tree_view_get_model (tree_view);
gtk_tree_model_get_iter (model, &iter, path);
gtk_tree_model_get (GTK_TREE_MODEL (model),
&iter,
FUNC_COLUMN, &func,
ITALIC_COLUMN, &italic,
-1);
if (func)
{
gtk_tree_store_set (GTK_TREE_STORE (model),
&iter,
ITALIC_COLUMN, !italic,
-1);
window = (func) ();
if (window != NULL)
{
CallbackData *cbdata;
cbdata = g_new (CallbackData, 1);
cbdata->model = model;
cbdata->path = gtk_tree_path_copy (path);
g_signal_connect (window, "destroy",
G_CALLBACK (window_closed_cb), cbdata);
}
}
}
static void
selection_cb (GtkTreeSelection *selection,
GtkTreeModel *model)
{
GtkTreeIter iter;
GValue value = {0, };
if (! gtk_tree_selection_get_selected (selection, NULL, &iter))
return;
gtk_tree_model_get_value (model, &iter,
FILENAME_COLUMN,
&value);
if (g_value_get_string (&value))
load_file (g_value_get_string (&value));
g_value_unset (&value);
}
static GtkWidget *
create_text (GtkTextBuffer **buffer,
gboolean is_source)
{
GtkWidget *scrolled_window;
GtkWidget *text_view;
PangoFontDescription *font_desc;
scrolled_window = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled_window),
GTK_SHADOW_IN);
text_view = gtk_text_view_new ();
*buffer = gtk_text_buffer_new (NULL);
gtk_text_view_set_buffer (GTK_TEXT_VIEW (text_view), *buffer);
gtk_text_view_set_editable (GTK_TEXT_VIEW (text_view), FALSE);
gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (text_view), FALSE);
gtk_container_add (GTK_CONTAINER (scrolled_window), text_view);
if (is_source)
{
font_desc = pango_font_description_from_string ("Courier 12");
gtk_widget_modify_font (text_view, font_desc);
pango_font_description_free (font_desc);
gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (text_view),
GTK_WRAP_NONE);
}
else
{
/* Make it a bit nicer for text. */
gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (text_view),
GTK_WRAP_WORD);
gtk_text_view_set_pixels_above_lines (GTK_TEXT_VIEW (text_view),
2);
gtk_text_view_set_pixels_below_lines (GTK_TEXT_VIEW (text_view),
2);
}
return scrolled_window;
}
static GtkWidget *
create_tree (void)
{
GtkTreeSelection *selection;
GtkCellRenderer *cell;
GtkWidget *tree_view;
GtkTreeViewColumn *column;
GtkTreeStore *model;
GtkTreeIter iter;
Demo *d = testgtk_demos;
model = gtk_tree_store_new (NUM_COLUMNS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER, G_TYPE_BOOLEAN);
tree_view = gtk_tree_view_new ();
gtk_tree_view_set_model (GTK_TREE_VIEW (tree_view), GTK_TREE_MODEL (model));
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view));
gtk_tree_selection_set_mode (GTK_TREE_SELECTION (selection),
GTK_SELECTION_BROWSE);
gtk_widget_set_size_request (tree_view, 200, -1);
/* this code only supports 1 level of children. If we
* want more we probably have to use a recursing function.
*/
while (d->title)
{
Demo *children = d->children;
gtk_tree_store_append (GTK_TREE_STORE (model), &iter, NULL);
gtk_tree_store_set (GTK_TREE_STORE (model),
&iter,
TITLE_COLUMN, d->title,
FILENAME_COLUMN, d->filename,
FUNC_COLUMN, d->func,
ITALIC_COLUMN, FALSE,
-1);
d++;
if (!children)
continue;
while (children->title)
{
GtkTreeIter child_iter;
gtk_tree_store_append (GTK_TREE_STORE (model), &child_iter, &iter);
gtk_tree_store_set (GTK_TREE_STORE (model),
&child_iter,
TITLE_COLUMN, children->title,
FILENAME_COLUMN, children->filename,
FUNC_COLUMN, children->func,
ITALIC_COLUMN, FALSE,
-1);
children++;
}
}
cell = gtk_cell_renderer_text_new ();
g_object_set (G_OBJECT (cell),
"style", PANGO_STYLE_ITALIC,
NULL);
column = gtk_tree_view_column_new_with_attributes ("Widget (double click for demo)",
cell,
"text", TITLE_COLUMN,
"style_set", ITALIC_COLUMN,
NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view),
GTK_TREE_VIEW_COLUMN (column));
g_signal_connect (selection, "changed", G_CALLBACK (selection_cb), model);
g_signal_connect (tree_view, "row_activated", G_CALLBACK (row_activated_cb), model);
gtk_tree_view_expand_all (GTK_TREE_VIEW (tree_view));
return tree_view;
}
static void
setup_default_icon (void)
{
GdkPixbuf *pixbuf;
char *filename;
GError *err;
err = NULL;
pixbuf = NULL;
filename = demo_find_file ("gtk-logo-rgb.gif", &err);
if (filename)
{
pixbuf = gdk_pixbuf_new_from_file (filename, &err);
g_free (filename);
}
/* Ignoring this error (passing NULL instead of &err above)
* would probably be reasonable for most apps. We're just
* showing off.
*/
if (err)
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (NULL, 0,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failed to read icon file: %s",
err->message);
g_error_free (err);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
}
if (pixbuf)
{
GList *list;
GdkPixbuf *transparent;
/* The gtk-logo-rgb icon has a white background, make it transparent */
transparent = gdk_pixbuf_add_alpha (pixbuf, TRUE, 0xff, 0xff, 0xff);
list = NULL;
list = g_list_append (list, transparent);
gtk_window_set_default_icon_list (list);
g_list_free (list);
g_object_unref (G_OBJECT (pixbuf));
g_object_unref (G_OBJECT (transparent));
}
}
int
main (int argc, char **argv)
{
GtkWidget *window;
GtkWidget *notebook;
GtkWidget *hbox;
GtkWidget *tree;
GtkTextTag *tag;
/* Most code in gtk-demo is intended to be exemplary, but not
* these few lines, which are just a hack so gtk-demo will work
* in the GTK tree without installing it.
*/
if (g_file_test ("../../gdk-pixbuf/libpixbufloader-pnm.la",
G_FILE_TEST_EXISTS))
{
putenv ("GDK_PIXBUF_MODULEDIR=../../gdk-pixbuf");
putenv ("GTK_IM_MODULE_FILE=../../modules/input/gtk.immodules");
}
/* -- End of hack -- */
gtk_init (&argc, &argv);
setup_default_icon ();
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "GTK+ Code Demos");
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_main_quit), NULL);
hbox = gtk_hbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), hbox);
tree = create_tree ();
gtk_box_pack_start (GTK_BOX (hbox), tree, FALSE, FALSE, 0);
notebook = gtk_notebook_new ();
gtk_box_pack_start (GTK_BOX (hbox), notebook, TRUE, TRUE, 0);
gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
create_text (&info_buffer, FALSE),
gtk_label_new_with_mnemonic ("_Info"));
gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
create_text (&source_buffer, TRUE),
gtk_label_new_with_mnemonic ("_Source"));
tag = gtk_text_buffer_create_tag (info_buffer, "title",
"font", "Sans 18",
NULL);
tag = gtk_text_buffer_create_tag (source_buffer, "comment",
"foreground", "red",
NULL);
tag = gtk_text_buffer_create_tag (source_buffer, "type",
"foreground", "ForestGreen",
NULL);
tag = gtk_text_buffer_create_tag (source_buffer, "string",
"foreground", "RosyBrown",
"weight", PANGO_WEIGHT_BOLD,
NULL);
tag = gtk_text_buffer_create_tag (source_buffer, "control",
"foreground", "purple",
NULL);
tag = gtk_text_buffer_create_tag (source_buffer, "preprocessor",
"style", PANGO_STYLE_OBLIQUE,
"foreground", "burlywood4",
NULL);
tag = gtk_text_buffer_create_tag (source_buffer, "function",
"weight", PANGO_WEIGHT_BOLD,
"foreground", "DarkGoldenrod4",
NULL);
gtk_window_set_default_size (GTK_WINDOW (window), 600, 400);
gtk_widget_show_all (window);
load_file (testgtk_demos[0].filename);
gtk_main ();
return 0;
}

View File

@@ -0,0 +1,80 @@
## Makefile for building the gtk test apps with Microsoft C
## Use: nmake -f makefile.msc
## There is no install target, you have to decide where and
## how to install for yourself.
TOP = ..\..\..
!INCLUDE $(TOP)/glib/build/win32/make.msc
!IFNDEF PERL
PERL = perl
!ENDIF
################################################################
# Possibly override versions from build/win32/module.defs
GTK_VER = @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@
GDK_PIXBUF_VER = @GDK_PIXBUF_MAJOR@.@GDK_PIXBUF_MINOR@
GDK_LIBS = ../../gdk/gdk-win32-$(GTK_VER).lib
GTK_LIBS = ../../gtk/gtk-win32-$(GTK_VER).lib
GDK_PIXBUF_LIBS = ../../gdk-pixbuf/gdk_pixbuf-$(GDK_PIXBUF_VER).lib
INCLUDES = -FImsvc_recommended_pragmas.h -I . -I ../.. -I ../../gdk -I ../../gdk-pixbuf -I ../../gtk
DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) $(INTL_CFLAGS) $(ATK_CFLAGS)
LDFLAGS = /link /machine:ix86 $(LINKDEBUG)
DEFINES = -DG_LOG_DOMAIN=\"GtkDemo\" -DGTK_VERSION=\"$(GTK_VER)\" \
-DDEMOCODEDIR=\".\"
TOUCH = copy makefile.msc+nul
all : \
demos.h \
gtk-demo.exe
## These should be in the order you want them to appear in the
## demo app, which means alphabetized by demo title, not filename
DEMOS = \
appwindow.c \
button_box.c \
colorsel.c \
dialog.c \
drawingarea.c \
editable_cells.c \
images.c \
item_factory.c \
list_store.c \
menus.c \
panes.c \
pixbufs.c \
sizegroup.c \
stock_browser.c \
textview.c \
tree_store.c \
demos.h: $(DEMOS) geninclude.pl
$(PERL) geninclude.pl $(DEMOS) > demos.h
OBJECTS = \
appwindow.obj \
button_box.obj \
colorsel.obj \
dialog.obj \
drawingarea.obj \
editable_cells.obj \
images.obj \
item_factory.obj \
list_store.obj \
menus.obj \
panes.obj \
pixbufs.obj \
sizegroup.obj \
stock_browser.obj \
textview.obj \
tree_store.obj \
main.obj \
gtk-demo.exe : demos.h $(OBJECTS)
$(CC) $(CFLAGS) -Fegtk-demo.exe $(OBJECTS) $(GTK_LIBS) $(GDK_LIBS) $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(GLIB_LIBS) $(LDFLAGS)

214
demos/gtk-demo/menus.c Normal file
View File

@@ -0,0 +1,214 @@
/* Menus
*
* There are several widgets involved in displaying menus. The
* GtkMenuBar widget is a horizontal menu bar, which normally appears
* at the top of an application. The GtkMenu widget is the actual menu
* that pops up. Both GtkMenuBar and GtkMenu are subclasses of
* GtkMenuShell; a GtkMenuShell contains menu items
* (GtkMenuItem). Each menu item contains text and/or images and can
* be selected by the user.
*
* There are several kinds of menu item, including plain GtkMenuItem,
* GtkCheckMenuItem which can be checked/unchecked, GtkRadioMenuItem
* which is a check menu item that's in a mutually exclusive group,
* GtkSeparatorMenuItem which is a separator bar, GtkTearoffMenuItem
* which allows a GtkMenu to be torn off, and GtkImageMenuItem which
* can place a GtkImage or other widget next to the menu text.
*
* A GtkMenuItem can have a submenu, which is simply a GtkMenu to pop
* up when the menu item is selected. Typically, all menu items in a menu bar
* have submenus.
*
* The GtkOptionMenu widget is a button that pops up a GtkMenu when clicked.
* It's used inside dialogs and such.
*
* GtkItemFactory provides a higher-level interface for creating menu bars
* and menus; while you can construct menus manually, most people don't
* do that. There's a separate demo for GtkItemFactory.
*
*/
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
#include <stdio.h>
static GtkWidget *
create_menu (gint depth,
gboolean tearoff)
{
GtkWidget *menu;
GtkWidget *menuitem;
GSList *group;
char buf[32];
int i, j;
if (depth < 1)
return NULL;
menu = gtk_menu_new ();
group = NULL;
if (tearoff)
{
menuitem = gtk_tearoff_menu_item_new ();
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
}
for (i = 0, j = 1; i < 5; i++, j++)
{
sprintf (buf, "item %2d - %d", depth, j);
menuitem = gtk_radio_menu_item_new_with_label (group, buf);
group = gtk_radio_menu_item_get_group (GTK_RADIO_MENU_ITEM (menuitem));
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
if (i == 3)
gtk_widget_set_sensitive (menuitem, FALSE);
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), create_menu (depth - 1, TRUE));
}
return menu;
}
GtkWidget *
do_menus (void)
{
static GtkWidget *window = NULL;
GtkWidget *box1;
GtkWidget *box2;
GtkWidget *button;
GtkWidget *optionmenu;
GtkWidget *separator;
if (!window)
{
GtkWidget *menubar;
GtkWidget *menu;
GtkWidget *menuitem;
GtkAccelGroup *accel_group;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy",
G_CALLBACK(gtk_widget_destroyed), &window);
g_signal_connect (window, "delete-event",
G_CALLBACK (gtk_true), NULL);
accel_group = gtk_accel_group_new ();
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
gtk_window_set_title (GTK_WINDOW (window), "menus");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
box1 = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), box1);
gtk_widget_show (box1);
menubar = gtk_menu_bar_new ();
gtk_box_pack_start (GTK_BOX (box1), menubar, FALSE, TRUE, 0);
gtk_widget_show (menubar);
menu = create_menu (2, TRUE);
menuitem = gtk_menu_item_new_with_label ("test\nline2");
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu);
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
menuitem = gtk_menu_item_new_with_label ("foo");
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), create_menu (3, TRUE));
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
menuitem = gtk_menu_item_new_with_label ("bar");
gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), create_menu (4, TRUE));
gtk_menu_item_set_right_justified (GTK_MENU_ITEM (menuitem), TRUE);
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, TRUE, TRUE, 0);
gtk_widget_show (box2);
menu = create_menu (1, FALSE);
gtk_menu_set_accel_group (GTK_MENU (menu), accel_group);
menuitem = gtk_separator_menu_item_new ();
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
menuitem = gtk_check_menu_item_new_with_label ("Accelerate Me");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F1,
0,
GTK_ACCEL_VISIBLE);
menuitem = gtk_check_menu_item_new_with_label ("Accelerator Locked");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F2,
0,
GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
menuitem = gtk_check_menu_item_new_with_label ("Accelerators Frozen");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F2,
0,
GTK_ACCEL_VISIBLE);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F3,
0,
GTK_ACCEL_VISIBLE);
optionmenu = gtk_option_menu_new ();
gtk_option_menu_set_menu (GTK_OPTION_MENU (optionmenu), menu);
gtk_option_menu_set_history (GTK_OPTION_MENU (optionmenu), 3);
gtk_box_pack_start (GTK_BOX (box2), optionmenu, TRUE, TRUE, 0);
gtk_widget_show (optionmenu);
separator = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
gtk_widget_show (separator);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
gtk_widget_show (box2);
button = gtk_button_new_with_label ("close");
g_signal_connect_swapped (button, "clicked",
G_CALLBACK(gtk_widget_destroy), window);
gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (button);
gtk_widget_show (button);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

192
demos/gtk-demo/panes.c Normal file
View File

@@ -0,0 +1,192 @@
/* Paned Widgets
*
* The GtkHPaned and GtkVPaned Widgets divide their content
* area into two panes with a divider in between that the
* user can adjust. A separate child is placed into each
* pane.
*
* There are a number of options that can be set for each pane.
* This test contains both a horizontal (HPaned) and a vertical
* (VPaned) widget, and allows you to adjust the options for
* each side of each widget.
*/
#include <gtk/gtk.h>
void
toggle_resize (GtkWidget *widget,
GtkWidget *child)
{
GtkPaned *paned = GTK_PANED (child->parent);
gboolean is_child1 = (child == paned->child1);
gboolean resize, shrink;
resize = is_child1 ? paned->child1_resize : paned->child2_resize;
shrink = is_child1 ? paned->child1_shrink : paned->child2_shrink;
gtk_widget_ref (child);
gtk_container_remove (GTK_CONTAINER (child->parent), child);
if (is_child1)
gtk_paned_pack1 (paned, child, !resize, shrink);
else
gtk_paned_pack2 (paned, child, !resize, shrink);
gtk_widget_unref (child);
}
void
toggle_shrink (GtkWidget *widget,
GtkWidget *child)
{
GtkPaned *paned = GTK_PANED (child->parent);
gboolean is_child1 = (child == paned->child1);
gboolean resize, shrink;
resize = is_child1 ? paned->child1_resize : paned->child2_resize;
shrink = is_child1 ? paned->child1_shrink : paned->child2_shrink;
gtk_widget_ref (child);
gtk_container_remove (GTK_CONTAINER (child->parent), child);
if (is_child1)
gtk_paned_pack1 (paned, child, resize, !shrink);
else
gtk_paned_pack2 (paned, child, resize, !shrink);
gtk_widget_unref (child);
}
GtkWidget *
create_pane_options (GtkPaned *paned,
const gchar *frame_label,
const gchar *label1,
const gchar *label2)
{
GtkWidget *frame;
GtkWidget *table;
GtkWidget *label;
GtkWidget *check_button;
frame = gtk_frame_new (frame_label);
gtk_container_set_border_width (GTK_CONTAINER (frame), 4);
table = gtk_table_new (3, 2, TRUE);
gtk_container_add (GTK_CONTAINER (frame), table);
label = gtk_label_new (label1);
gtk_table_attach_defaults (GTK_TABLE (table), label,
0, 1, 0, 1);
check_button = gtk_check_button_new_with_mnemonic ("_Resize");
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
0, 1, 1, 2);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_resize), paned->child1);
check_button = gtk_check_button_new_with_mnemonic ("_Shrink");
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
0, 1, 2, 3);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
TRUE);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_shrink), paned->child1);
label = gtk_label_new (label2);
gtk_table_attach_defaults (GTK_TABLE (table), label,
1, 2, 0, 1);
check_button = gtk_check_button_new_with_mnemonic ("_Resize");
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
1, 2, 1, 2);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
TRUE);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_resize), paned->child2);
check_button = gtk_check_button_new_with_mnemonic ("_Shrink");
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
1, 2, 2, 3);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
TRUE);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_shrink), paned->child2);
return frame;
}
GtkWidget *
do_panes (void)
{
static GtkWidget *window = NULL;
GtkWidget *frame;
GtkWidget *hpaned;
GtkWidget *vpaned;
GtkWidget *button;
GtkWidget *vbox;
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_window_set_title (GTK_WINDOW (window), "Panes");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
vpaned = gtk_vpaned_new ();
gtk_box_pack_start (GTK_BOX (vbox), vpaned, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER(vpaned), 5);
hpaned = gtk_hpaned_new ();
gtk_paned_add1 (GTK_PANED (vpaned), hpaned);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME(frame), GTK_SHADOW_IN);
gtk_widget_set_size_request (frame, 60, 60);
gtk_paned_add1 (GTK_PANED (hpaned), frame);
button = gtk_button_new_with_mnemonic ("_Hi there");
gtk_container_add (GTK_CONTAINER(frame), button);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME(frame), GTK_SHADOW_IN);
gtk_widget_set_size_request (frame, 80, 60);
gtk_paned_add2 (GTK_PANED (hpaned), frame);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME(frame), GTK_SHADOW_IN);
gtk_widget_set_size_request (frame, 60, 80);
gtk_paned_add2 (GTK_PANED (vpaned), frame);
/* Now create toggle buttons to control sizing */
gtk_box_pack_start (GTK_BOX (vbox),
create_pane_options (GTK_PANED (hpaned),
"Horizontal",
"Left",
"Right"),
FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox),
create_pane_options (GTK_PANED (vpaned),
"Vertical",
"Top",
"Bottom"),
FALSE, FALSE, 0);
gtk_widget_show_all (vbox);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

270
demos/gtk-demo/pixbufs.c Normal file
View File

@@ -0,0 +1,270 @@
/* Pixbufs
*
* A GdkPixbuf represents an image, normally in RGB or RGBA format.
* Pixbufs are normally used to load files from disk and perform
* image scaling.
*
* This demo is not all that educational, but looks cool. It was written
* by Extreme Pixbuf Hacker Federico Mena Quintero. It also shows
* off how to use GtkDrawingArea to do a simple animation.
*
* Look at the Image demo for additional pixbuf usage examples.
*
*/
#include <config.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include <math.h>
#include "demo-common.h"
#define FRAME_DELAY 50
#define BACKGROUND_NAME "background.jpg"
static const char *image_names[] = {
"apple-red.png",
"gnome-applets.png",
"gnome-calendar.png",
"gnome-foot.png",
"gnome-gmush.png",
"gnome-gimp.png",
"gnome-gsame.png",
"gnu-keys.png"
};
#define N_IMAGES G_N_ELEMENTS (image_names)
/* demo window */
static GtkWidget *window = NULL;
/* Current frame */
static GdkPixbuf *frame;
/* Background image */
static GdkPixbuf *background;
static gint back_width, back_height;
/* Images */
static GdkPixbuf *images[N_IMAGES];
/* Widgets */
static GtkWidget *da;
/* Loads the images for the demo and returns whether the operation succeeded */
static gboolean
load_pixbufs (GError **error)
{
gint i;
char *filename;
if (background)
return TRUE; /* already loaded earlier */
/* demo_find_file() looks in the the current directory first,
* so you can run gtk-demo without installing GTK, then looks
* in the location where the file is installed.
*/
filename = demo_find_file (BACKGROUND_NAME, error);
if (!filename)
return FALSE; /* note that "error" was filled in and returned */
background = gdk_pixbuf_new_from_file (filename, error);
g_free (filename);
if (!background)
return FALSE; /* Note that "error" was filled with a GError */
back_width = gdk_pixbuf_get_width (background);
back_height = gdk_pixbuf_get_height (background);
for (i = 0; i < N_IMAGES; i++)
{
filename = demo_find_file (image_names[i], error);
if (!filename)
return FALSE; /* Note that "error" was filled with a GError */
images[i] = gdk_pixbuf_new_from_file (filename, error);
g_free (filename);
if (!images[i])
return FALSE; /* Note that "error" was filled with a GError */
}
return TRUE;
}
/* Expose callback for the drawing area */
static gint
expose_cb (GtkWidget *widget,
GdkEventExpose *event,
gpointer data)
{
guchar *pixels;
int rowstride;
rowstride = gdk_pixbuf_get_rowstride (frame);
pixels = gdk_pixbuf_get_pixels (frame) + rowstride * event->area.y + event->area.x * 3;
gdk_draw_rgb_image_dithalign (widget->window,
widget->style->black_gc,
event->area.x, event->area.y,
event->area.width, event->area.height,
GDK_RGB_DITHER_NORMAL,
pixels, rowstride,
event->area.x, event->area.y);
return TRUE;
}
#define CYCLE_LEN 60
static int frame_num;
/* Timeout handler to regenerate the frame */
static gint
timeout (gpointer data)
{
double f;
int i;
double xmid, ymid;
double radius;
gdk_pixbuf_copy_area (background, 0, 0, back_width, back_height,
frame, 0, 0);
f = (double) (frame_num % CYCLE_LEN) / CYCLE_LEN;
xmid = back_width / 2.0;
ymid = back_height / 2.0;
radius = MIN (xmid, ymid) / 2.0;
for (i = 0; i < N_IMAGES; i++)
{
double ang;
int xpos, ypos;
int iw, ih;
double r;
GdkRectangle r1, r2, dest;
double k;
ang = 2.0 * G_PI * (double) i / N_IMAGES - f * 2.0 * G_PI;
iw = gdk_pixbuf_get_width (images[i]);
ih = gdk_pixbuf_get_height (images[i]);
r = radius + (radius / 3.0) * sin (f * 2.0 * G_PI);
xpos = floor (xmid + r * cos (ang) - iw / 2.0 + 0.5);
ypos = floor (ymid + r * sin (ang) - ih / 2.0 + 0.5);
k = (i & 1) ? sin (f * 2.0 * G_PI) : cos (f * 2.0 * G_PI);
k = 2.0 * k * k;
k = MAX (0.25, k);
r1.x = xpos;
r1.y = ypos;
r1.width = iw * k;
r1.height = ih * k;
r2.x = 0;
r2.y = 0;
r2.width = back_width;
r2.height = back_height;
if (gdk_rectangle_intersect (&r1, &r2, &dest))
gdk_pixbuf_composite (images[i],
frame,
dest.x, dest.y,
dest.width, dest.height,
xpos, ypos,
k, k,
GDK_INTERP_NEAREST,
((i & 1)
? MAX (127, fabs (255 * sin (f * 2.0 * G_PI)))
: MAX (127, fabs (255 * cos (f * 2.0 * G_PI)))));
}
gtk_widget_queue_draw (da);
frame_num++;
return TRUE;
}
static guint timeout_id;
static void
cleanup_callback (GtkObject *object,
gpointer data)
{
g_source_remove (timeout_id);
timeout_id = 0;
}
GtkWidget *
do_pixbufs (void)
{
if (!window)
{
GError *error;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Pixbufs");
gtk_window_set_resizable (GTK_WINDOW (window), FALSE);
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
g_signal_connect (window, "destroy", G_CALLBACK (cleanup_callback), NULL);
error = NULL;
if (!load_pixbufs (&error))
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failed to load an image: %s",
error->message);
g_error_free (error);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
gtk_widget_show (dialog);
}
else
{
gtk_widget_set_size_request (window, back_width, back_height);
frame = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, back_width, back_height);
da = gtk_drawing_area_new ();
g_signal_connect (da, "expose_event",
G_CALLBACK (expose_cb), NULL);
gtk_container_add (GTK_CONTAINER (window), da);
timeout_id = gtk_timeout_add (FRAME_DELAY, timeout, NULL);
}
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

173
demos/gtk-demo/sizegroup.c Normal file
View File

@@ -0,0 +1,173 @@
/* Size Groups
*
* GtkSizeGroup provides a mechanism for grouping a number of
* widgets together so they all request the same amount of space.
* This is typically useful when you want a column of widgets to
* have the same size, but you can't use a GtkTable widget.
*
* Note that size groups only affect the amount of space requested,
* not the size that the widgets finally receive. If you want the
* widgets in a GtkSizeGroup to actually be the same size, you need
* to pack them in such a way that they get the size they request
* and not more. For example, if you are packing your widgets
* into a table, you would not include the GTK_FILL flag.
*/
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
/* Convenience function to create an option menu holding a number of strings
*/
GtkWidget *
create_option_menu (const char **strings)
{
GtkWidget *menu;
GtkWidget *option_menu;
const char **str;
menu = gtk_menu_new ();
for (str = strings; *str; str++)
{
GtkWidget *menu_item = gtk_menu_item_new_with_label (*str);
gtk_widget_show (menu_item);
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
}
option_menu = gtk_option_menu_new ();
gtk_option_menu_set_menu (GTK_OPTION_MENU (option_menu), menu);
return option_menu;
}
static void
add_row (GtkTable *table,
int row,
GtkSizeGroup *size_group,
const char *label_text,
const char **options)
{
GtkWidget *option_menu;
GtkWidget *label;
label = gtk_label_new_with_mnemonic (label_text);
gtk_misc_set_alignment (GTK_MISC (label), 0, 1);
gtk_table_attach (GTK_TABLE (table), label,
0, 1, row, row + 1,
GTK_EXPAND | GTK_FILL, 0,
0, 0);
option_menu = create_option_menu (options);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), option_menu);
gtk_size_group_add_widget (size_group, option_menu);
gtk_table_attach (GTK_TABLE (table), option_menu,
1, 2, row, row + 1,
0, 0,
0, 0);
}
static void
toggle_grouping (GtkToggleButton *check_button,
GtkSizeGroup *size_group)
{
GtkSizeGroupMode new_mode;
/* GTK_SIZE_GROUP_NONE is not generally useful, but is useful
* here to show the effect of GTK_SIZE_GROUP_HORIZONTAL by
* contrast.
*/
if (gtk_toggle_button_get_active (check_button))
new_mode = GTK_SIZE_GROUP_HORIZONTAL;
else
new_mode = GTK_SIZE_GROUP_NONE;
gtk_size_group_set_mode (size_group, new_mode);
}
GtkWidget *
do_sizegroup (void)
{
GtkWidget *table;
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *check_button;
GtkSizeGroup *size_group;
static const char *color_options[] = {
"Red", "Green", "Blue", NULL
};
static const char *dash_options[] = {
"Solid", "Dashed", "Dotted", NULL
};
static const char *end_options[] = {
"Square", "Round", "Arrow", NULL
};
if (!window)
{
window = gtk_dialog_new_with_buttons ("GtkSizeGroup",
NULL, 0,
GTK_STOCK_CLOSE,
GTK_RESPONSE_NONE,
NULL);
gtk_window_set_resizable (GTK_WINDOW (window), FALSE);
g_signal_connect (window, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 5);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
/* Create one frame holding color options
*/
frame = gtk_frame_new ("Color Options");
gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0);
table = gtk_table_new (2, 2, FALSE);
gtk_container_set_border_width (GTK_CONTAINER (table), 5);
gtk_table_set_row_spacings (GTK_TABLE (table), 5);
gtk_table_set_col_spacings (GTK_TABLE (table), 10);
gtk_container_add (GTK_CONTAINER (frame), table);
add_row (GTK_TABLE (table), 0, size_group, "_Foreground", color_options);
add_row (GTK_TABLE (table), 1, size_group, "_Background", color_options);
/* And another frame holding line style options
*/
frame = gtk_frame_new ("Line Options");
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0);
table = gtk_table_new (2, 2, FALSE);
gtk_container_set_border_width (GTK_CONTAINER (table), 5);
gtk_table_set_row_spacings (GTK_TABLE (table), 5);
gtk_table_set_col_spacings (GTK_TABLE (table), 10);
gtk_container_add (GTK_CONTAINER (frame), table);
add_row (GTK_TABLE (table), 0, size_group, "_Dashing", dash_options);
add_row (GTK_TABLE (table), 1, size_group, "_Line ends", end_options);
/* And a check button to turn grouping on and off */
check_button = gtk_check_button_new_with_mnemonic ("_Enable grouping");
gtk_box_pack_start (GTK_BOX (vbox), check_button, FALSE, FALSE, 0);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button), TRUE);
g_signal_connect (check_button, "toggled",
G_CALLBACK (toggle_grouping), size_group);
}
if (!GTK_WIDGET_VISIBLE (window))
gtk_widget_show_all (window);
else
gtk_widget_destroy (window);
return window;
}

View File

@@ -0,0 +1,563 @@
/* Stock Item and Icon Browser
*
* This source code for this demo doesn't demonstrate anything
* particularly useful in applications. The purpose of the "demo" is
* just to provide a handy place to browse the available stock icons
* and stock items.
*/
#include <string.h>
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
typedef struct _StockItemInfo StockItemInfo;
struct _StockItemInfo
{
gchar *id;
GtkStockItem item;
GdkPixbuf *small_icon;
gchar *macro;
gchar *accel_str;
};
/* Make StockItemInfo a boxed type so we can automatically
* manage memory
*/
#define STOCK_ITEM_INFO_TYPE stock_item_info_get_type ()
static void
stock_item_info_free (StockItemInfo *info)
{
g_free (info->id);
g_free (info->macro);
g_free (info->accel_str);
if (info->small_icon)
g_object_unref (G_OBJECT (info->small_icon));
g_free (info);
}
static StockItemInfo*
stock_item_info_copy (StockItemInfo *src)
{
StockItemInfo *info;
info = g_new (StockItemInfo, 1);
info->id = g_strdup (src->id);
info->macro = g_strdup (src->macro);
info->accel_str = g_strdup (src->accel_str);
info->item = src->item;
info->small_icon = src->small_icon;
if (info->small_icon)
g_object_ref (G_OBJECT (info->small_icon));
return info;
}
static GType
stock_item_info_get_type (void)
{
static GType our_type = 0;
if (our_type == 0)
our_type = g_boxed_type_register_static ("StockItemInfo",
(GBoxedCopyFunc) stock_item_info_copy,
(GBoxedFreeFunc) stock_item_info_free);
return our_type;
}
typedef struct _StockItemDisplay StockItemDisplay;
struct _StockItemDisplay
{
GtkWidget *type_label;
GtkWidget *macro_label;
GtkWidget *id_label;
GtkWidget *label_accel_label;
GtkWidget *icon_image;
};
static gchar*
id_to_macro (const gchar *id)
{
GString *macro = NULL;
const gchar *cp;
/* gtk-foo-bar -> GTK_STOCK_FOO_BAR */
macro = g_string_new (NULL);
cp = id;
if (strncmp (cp, "gtk-", 4) == 0)
{
g_string_append (macro, "GTK_STOCK_");
cp += 4;
}
while (*cp)
{
if (*cp == '-')
g_string_append_c (macro, '_');
else if (g_ascii_islower (*cp))
g_string_append_c (macro, g_ascii_toupper (*cp));
else
g_string_append_c (macro, *cp);
cp++;
}
return g_string_free (macro, FALSE);
}
static GtkTreeModel*
create_model (void)
{
GtkListStore *store;
GSList *ids;
GSList *tmp_list;
store = gtk_list_store_new (1, STOCK_ITEM_INFO_TYPE);
ids = gtk_stock_list_ids ();
ids = g_slist_sort (ids, (GCompareFunc) strcmp);
tmp_list = ids;
while (tmp_list != NULL)
{
StockItemInfo info;
GtkStockItem item;
GtkTreeIter iter;
GtkIconSet *icon_set;
info.id = tmp_list->data;
if (gtk_stock_lookup (info.id, &item))
{
info.item = item;
}
else
{
info.item.label = NULL;
info.item.stock_id = NULL;
info.item.modifier = 0;
info.item.keyval = 0;
info.item.translation_domain = NULL;
}
/* only show icons for stock IDs that have default icons */
icon_set = gtk_icon_factory_lookup_default (info.id);
if (icon_set)
{
GtkIconSize *sizes = NULL;
gint n_sizes = 0;
gint i;
GtkIconSize size;
/* See what sizes this stock icon really exists at */
gtk_icon_set_get_sizes (icon_set, &sizes, &n_sizes);
/* Use menu size if it exists, otherwise first size found */
size = sizes[0];
i = 0;
while (i < n_sizes)
{
if (sizes[i] == GTK_ICON_SIZE_MENU)
{
size = GTK_ICON_SIZE_MENU;
break;
}
++i;
}
g_free (sizes);
info.small_icon = gtk_widget_render_icon (window, info.id,
size,
NULL);
if (size != GTK_ICON_SIZE_MENU)
{
/* Make the result the proper size for our thumbnail */
gint w, h;
GdkPixbuf *scaled;
gtk_icon_size_lookup (GTK_ICON_SIZE_MENU, &w, &h);
scaled = gdk_pixbuf_scale_simple (info.small_icon,
w, h,
GDK_INTERP_BILINEAR);
g_object_unref (G_OBJECT (info.small_icon));
info.small_icon = scaled;
}
}
else
info.small_icon = NULL;
if (info.item.keyval != 0)
{
info.accel_str = gtk_accelerator_name (info.item.keyval,
info.item.modifier);
}
else
{
info.accel_str = g_strdup ("");
}
info.macro = id_to_macro (info.id);
gtk_list_store_append (store, &iter);
gtk_list_store_set (store, &iter, 0, &info, -1);
g_free (info.macro);
g_free (info.accel_str);
if (info.small_icon)
g_object_unref (G_OBJECT (info.small_icon));
tmp_list = g_slist_next (tmp_list);
}
g_slist_foreach (ids, (GFunc)g_free, NULL);
g_slist_free (ids);
return GTK_TREE_MODEL (store);
}
/* Finds the largest size at which the given image stock id is
* available. This would not be useful for a normal application
*/
static GtkIconSize
get_largest_size (const char *id)
{
GtkIconSet *set = gtk_icon_factory_lookup_default (id);
GtkIconSize *sizes;
gint n_sizes, i;
GtkIconSize best_size = GTK_ICON_SIZE_INVALID;
gint best_pixels = 0;
gtk_icon_set_get_sizes (set, &sizes, &n_sizes);
for (i = 0; i < n_sizes; i++)
{
gint width, height;
gtk_icon_size_lookup (sizes[i], &width, &height);
if (width * height > best_pixels)
{
best_size = sizes[i];
best_pixels = width * height;
}
}
g_free (sizes);
return best_size;
}
static void
selection_changed (GtkTreeSelection *selection)
{
GtkTreeView *treeview;
StockItemDisplay *display;
GtkTreeModel *model;
GtkTreeIter iter;
treeview = gtk_tree_selection_get_tree_view (selection);
display = g_object_get_data (G_OBJECT (treeview), "stock-display");
if (gtk_tree_selection_get_selected (selection, &model, &iter))
{
StockItemInfo *info;
gchar *str;
gtk_tree_model_get (model, &iter,
0, &info,
-1);
if (info->small_icon && info->item.label)
gtk_label_set_text (GTK_LABEL (display->type_label), "Icon and Item");
else if (info->small_icon)
gtk_label_set_text (GTK_LABEL (display->type_label), "Icon Only");
else if (info->item.label)
gtk_label_set_text (GTK_LABEL (display->type_label), "Item Only");
else
gtk_label_set_text (GTK_LABEL (display->type_label), "???????");
gtk_label_set_text (GTK_LABEL (display->macro_label), info->macro);
gtk_label_set_text (GTK_LABEL (display->id_label), info->id);
if (info->item.label)
{
str = g_strdup_printf ("%s %s", info->item.label, info->accel_str);
gtk_label_set_text_with_mnemonic (GTK_LABEL (display->label_accel_label), str);
g_free (str);
}
else
{
gtk_label_set_text (GTK_LABEL (display->label_accel_label), "");
}
if (info->small_icon)
gtk_image_set_from_stock (GTK_IMAGE (display->icon_image), info->id,
get_largest_size (info->id));
else
gtk_image_set_from_pixbuf (GTK_IMAGE (display->icon_image), NULL);
stock_item_info_free (info);
}
else
{
gtk_label_set_text (GTK_LABEL (display->type_label), "No selected item");
gtk_label_set_text (GTK_LABEL (display->macro_label), "");
gtk_label_set_text (GTK_LABEL (display->id_label), "");
gtk_label_set_text (GTK_LABEL (display->label_accel_label), "");
gtk_image_set_from_pixbuf (GTK_IMAGE (display->icon_image), NULL);
}
}
static void
macro_set_func_text (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell,
GtkTreeModel *model,
GtkTreeIter *iter,
gpointer data)
{
StockItemInfo *info;
gtk_tree_model_get (model, iter,
0, &info,
-1);
g_object_set (GTK_CELL_RENDERER (cell),
"text", info->macro,
NULL);
stock_item_info_free (info);
}
static void
macro_set_func_pixbuf (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell,
GtkTreeModel *model,
GtkTreeIter *iter,
gpointer data)
{
StockItemInfo *info;
gtk_tree_model_get (model, iter,
0, &info,
-1);
g_object_set (GTK_CELL_RENDERER (cell),
"pixbuf", info->small_icon,
NULL);
stock_item_info_free (info);
}
static void
id_set_func (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell,
GtkTreeModel *model,
GtkTreeIter *iter,
gpointer data)
{
StockItemInfo *info;
gtk_tree_model_get (model, iter,
0, &info,
-1);
g_object_set (GTK_CELL_RENDERER (cell),
"text", info->id,
NULL);
stock_item_info_free (info);
}
static void
accel_set_func (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell,
GtkTreeModel *model,
GtkTreeIter *iter,
gpointer data)
{
StockItemInfo *info;
gtk_tree_model_get (model, iter,
0, &info,
-1);
g_object_set (GTK_CELL_RENDERER (cell),
"text", info->accel_str,
NULL);
stock_item_info_free (info);
}
static void
label_set_func (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell,
GtkTreeModel *model,
GtkTreeIter *iter,
gpointer data)
{
StockItemInfo *info;
gtk_tree_model_get (model, iter,
0, &info,
-1);
g_object_set (GTK_CELL_RENDERER (cell),
"text", info->item.label,
NULL);
stock_item_info_free (info);
}
GtkWidget *
do_stock_browser (void)
{
if (!window)
{
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *hbox;
GtkWidget *sw;
GtkWidget *treeview;
GtkWidget *align;
GtkTreeModel *model;
GtkCellRenderer *cell_renderer;
StockItemDisplay *display;
GtkTreeSelection *selection;
GtkTreeViewColumn *column;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Stock Icons and Items");
gtk_window_set_default_size (GTK_WINDOW (window), -1, 500);
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
hbox = gtk_hbox_new (FALSE, 8);
gtk_container_add (GTK_CONTAINER (window), hbox);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_NEVER,
GTK_POLICY_AUTOMATIC);
gtk_box_pack_start (GTK_BOX (hbox), sw, FALSE, FALSE, 0);
model = create_model ();
treeview = gtk_tree_view_new_with_model (model);
g_object_unref (G_OBJECT (model));
gtk_container_add (GTK_CONTAINER (sw), treeview);
column = gtk_tree_view_column_new ();
gtk_tree_view_column_set_title (column, "Macro");
cell_renderer = gtk_cell_renderer_pixbuf_new ();
gtk_tree_view_column_pack_start (column,
cell_renderer,
FALSE);
gtk_tree_view_column_set_cell_data_func (column, cell_renderer,
macro_set_func_pixbuf, NULL, NULL);
cell_renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_column_pack_start (column,
cell_renderer,
TRUE);
gtk_tree_view_column_set_cell_data_func (column, cell_renderer,
macro_set_func_text, NULL, NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (treeview),
column);
cell_renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_insert_column_with_data_func (GTK_TREE_VIEW (treeview),
-1,
"Label",
cell_renderer,
label_set_func,
NULL,
NULL);
gtk_tree_view_insert_column_with_data_func (GTK_TREE_VIEW (treeview),
-1,
"Accel",
cell_renderer,
accel_set_func,
NULL,
NULL);
gtk_tree_view_insert_column_with_data_func (GTK_TREE_VIEW (treeview),
-1,
"ID",
cell_renderer,
id_set_func,
NULL,
NULL);
align = gtk_alignment_new (0.5, 0.0, 0.0, 0.0);
gtk_box_pack_end (GTK_BOX (hbox), align, FALSE, FALSE, 0);
frame = gtk_frame_new ("Selected Item");
gtk_container_add (GTK_CONTAINER (align), frame);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 4);
gtk_container_add (GTK_CONTAINER (frame), vbox);
display = g_new (StockItemDisplay, 1);
g_object_set_data_full (G_OBJECT (treeview),
"stock-display",
display,
g_free); /* free display with treeview */
display->type_label = gtk_label_new (NULL);
display->macro_label = gtk_label_new (NULL);
display->id_label = gtk_label_new (NULL);
display->label_accel_label = gtk_label_new (NULL);
display->icon_image = gtk_image_new_from_pixbuf (NULL); /* empty image */
gtk_box_pack_start (GTK_BOX (vbox), display->type_label,
FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), display->icon_image,
FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), display->label_accel_label,
FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), display->macro_label,
FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), display->id_label,
FALSE, FALSE, 0);
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE);
g_signal_connect (G_OBJECT (selection),
"changed",
G_CALLBACK (selection_changed),
NULL);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

604
demos/gtk-demo/textview.c Normal file
View File

@@ -0,0 +1,604 @@
/* Text Widget
*
* The GtkTextView widget displays a GtkTextBuffer. One GtkTextBuffer
* can be displayed by multiple GtkTextViews. This demo has two views
* displaying a single buffer, and shows off the widget's text
* formatting features.
*
*/
#include <gtk/gtk.h>
#include <stdlib.h> /* for exit() */
#include "demo-common.h"
static void easter_egg_callback (GtkWidget *button, gpointer data);
#define gray50_width 2
#define gray50_height 2
static char gray50_bits[] = {
0x02, 0x01
};
static void
create_tags (GtkTextBuffer *buffer)
{
GdkBitmap *stipple;
/* Create a bunch of tags. Note that it's also possible to
* create tags with gtk_text_tag_new() then add them to the
* tag table for the buffer, gtk_text_buffer_create_tag() is
* just a convenience function. Also note that you don't have
* to give tags a name; pass NULL for the name to create an
* anonymous tag.
*
* In any real app, another useful optimization would be to create
* a GtkTextTagTable in advance, and reuse the same tag table for
* all the buffers with the same tag set, instead of creating
* new copies of the same tags for every buffer.
*
* Tags are assigned default priorities in order of addition to the
* tag table. That is, tags created later that affect the same text
* property affected by an earlier tag will override the earlier
* tag. You can modify tag priorities with
* gtk_text_tag_set_priority().
*/
gtk_text_buffer_create_tag (buffer, "heading",
"weight", PANGO_WEIGHT_BOLD,
"size", 15 * PANGO_SCALE,
NULL);
gtk_text_buffer_create_tag (buffer, "italic",
"style", PANGO_STYLE_ITALIC, NULL);
gtk_text_buffer_create_tag (buffer, "bold",
"weight", PANGO_WEIGHT_BOLD, NULL);
gtk_text_buffer_create_tag (buffer, "big",
/* points times the PANGO_SCALE factor */
"size", 20 * PANGO_SCALE, NULL);
gtk_text_buffer_create_tag (buffer, "xx-small",
"scale", PANGO_SCALE_XX_SMALL, NULL);
gtk_text_buffer_create_tag (buffer, "x-large",
"scale", PANGO_SCALE_X_LARGE, NULL);
gtk_text_buffer_create_tag (buffer, "monospace",
"family", "monospace", NULL);
gtk_text_buffer_create_tag (buffer, "blue_foreground",
"foreground", "blue", NULL);
gtk_text_buffer_create_tag (buffer, "red_background",
"background", "red", NULL);
stipple = gdk_bitmap_create_from_data (NULL,
gray50_bits, gray50_width,
gray50_height);
gtk_text_buffer_create_tag (buffer, "background_stipple",
"background_stipple", stipple, NULL);
gtk_text_buffer_create_tag (buffer, "foreground_stipple",
"foreground_stipple", stipple, NULL);
g_object_unref (G_OBJECT (stipple));
gtk_text_buffer_create_tag (buffer, "big_gap_before_line",
"pixels_above_lines", 30, NULL);
gtk_text_buffer_create_tag (buffer, "big_gap_after_line",
"pixels_below_lines", 30, NULL);
gtk_text_buffer_create_tag (buffer, "double_spaced_line",
"pixels_inside_wrap", 10, NULL);
gtk_text_buffer_create_tag (buffer, "not_editable",
"editable", FALSE, NULL);
gtk_text_buffer_create_tag (buffer, "word_wrap",
"wrap_mode", GTK_WRAP_WORD, NULL);
gtk_text_buffer_create_tag (buffer, "char_wrap",
"wrap_mode", GTK_WRAP_CHAR, NULL);
gtk_text_buffer_create_tag (buffer, "no_wrap",
"wrap_mode", GTK_WRAP_NONE, NULL);
gtk_text_buffer_create_tag (buffer, "center",
"justification", GTK_JUSTIFY_CENTER, NULL);
gtk_text_buffer_create_tag (buffer, "right_justify",
"justification", GTK_JUSTIFY_RIGHT, NULL);
gtk_text_buffer_create_tag (buffer, "wide_margins",
"left_margin", 50, "right_margin", 50,
NULL);
gtk_text_buffer_create_tag (buffer, "strikethrough",
"strikethrough", TRUE, NULL);
gtk_text_buffer_create_tag (buffer, "underline",
"underline", PANGO_UNDERLINE_SINGLE, NULL);
gtk_text_buffer_create_tag (buffer, "double_underline",
"underline", PANGO_UNDERLINE_DOUBLE, NULL);
gtk_text_buffer_create_tag (buffer, "superscript",
"rise", 10 * PANGO_SCALE, /* 10 pixels */
"size", 8 * PANGO_SCALE, /* 8 points */
NULL);
gtk_text_buffer_create_tag (buffer, "subscript",
"rise", -10 * PANGO_SCALE, /* 10 pixels */
"size", 8 * PANGO_SCALE, /* 8 points */
NULL);
gtk_text_buffer_create_tag (buffer, "rtl_quote",
"wrap_mode", GTK_WRAP_WORD,
"direction", GTK_TEXT_DIR_RTL,
"indent", 30,
"left_margin", 20,
"right_margin", 20,
NULL);
}
static void
insert_text (GtkTextBuffer *buffer)
{
GtkTextIter iter;
GtkTextIter start, end;
GdkPixbuf *pixbuf;
GdkPixbuf *scaled;
GtkTextChildAnchor *anchor;
char *filename;
/* demo_find_file() looks in the the current directory first,
* so you can run gtk-demo without installing GTK, then looks
* in the location where the file is installed.
*/
pixbuf = NULL;
filename = demo_find_file ("gtk-logo-rgb.gif", NULL);
if (filename)
{
pixbuf = gdk_pixbuf_new_from_file (filename, NULL);
g_free (filename);
}
if (pixbuf == NULL)
{
g_printerr ("Failed to load image file gtk-logo-rgb.gif\n");
exit (1);
}
scaled = gdk_pixbuf_scale_simple (pixbuf, 32, 32, GDK_INTERP_BILINEAR);
g_object_unref (G_OBJECT (pixbuf));
pixbuf = scaled;
/* get start of buffer; each insertion will revalidate the
* iterator to point to just after the inserted text.
*/
gtk_text_buffer_get_iter_at_offset (buffer, &iter, 0);
gtk_text_buffer_insert (buffer, &iter, "The text widget can display text with all kinds of nifty attributes. It also supports multiple views of the same buffer; this demo is showing the same buffer in two places.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Font styles. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "For example, you can have ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"italic", -1,
"italic", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"bold", -1,
"bold", NULL);
gtk_text_buffer_insert (buffer, &iter, ", or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"monospace (typewriter)", -1,
"monospace", NULL);
gtk_text_buffer_insert (buffer, &iter, ", or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"big", -1,
"big", NULL);
gtk_text_buffer_insert (buffer, &iter, " text. ", -1);
gtk_text_buffer_insert (buffer, &iter, "It's best not to hardcode specific text sizes; you can use relative sizes as with CSS, such as ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"xx-small", -1,
"xx-small", NULL);
gtk_text_buffer_insert (buffer, &iter, " or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"x-large", -1,
"x-large", NULL);
gtk_text_buffer_insert (buffer, &iter, " to ensure that your program properly adapts if the user changes the default font size.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Colors. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "Colors such as ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a blue foreground", -1,
"blue_foreground", NULL);
gtk_text_buffer_insert (buffer, &iter, " or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a red background", -1,
"red_background", NULL);
gtk_text_buffer_insert (buffer, &iter, " or even ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a stippled red background", -1,
"red_background",
"background_stipple",
NULL);
gtk_text_buffer_insert (buffer, &iter, " or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a stippled blue foreground on solid red background", -1,
"blue_foreground",
"red_background",
"foreground_stipple",
NULL);
gtk_text_buffer_insert (buffer, &iter, " (select that to read it) can be used.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Underline, strikethrough, and rise. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Strikethrough", -1,
"strikethrough", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"underline", -1,
"underline", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"double underline", -1,
"double_underline", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"superscript", -1,
"superscript", NULL);
gtk_text_buffer_insert (buffer, &iter, ", and ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"subscript", -1,
"subscript", NULL);
gtk_text_buffer_insert (buffer, &iter, " are all supported.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Images. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "The buffer can have images in it: ", -1);
gtk_text_buffer_insert_pixbuf (buffer, &iter, pixbuf);
gtk_text_buffer_insert_pixbuf (buffer, &iter, pixbuf);
gtk_text_buffer_insert_pixbuf (buffer, &iter, pixbuf);
gtk_text_buffer_insert (buffer, &iter, " for example.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Spacing. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "You can adjust the amount of space before each line.\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has a whole lot of space before it.\n", -1,
"big_gap_before_line", "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"You can also adjust the amount of space after each line; this line has a whole lot of space after it.\n", -1,
"big_gap_after_line", "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"You can also adjust the amount of space between wrapped lines; this line has extra space between each wrapped line in the same paragraph. To show off wrapping, some filler text: the quick brown fox jumped over the lazy dog. Blah blah blah blah blah blah blah blah blah.\n", -1,
"double_spaced_line", "wide_margins", NULL);
gtk_text_buffer_insert (buffer, &iter, "Also note that those lines have extra-wide margins.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Editability. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line is 'locked down' and can't be edited by the user - just try it! You can't delete this line.\n\n", -1,
"not_editable", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Wrapping. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter,
"This line (and most of the others in this buffer) is word-wrapped, using the proper Unicode algorithm. Word wrap should work in all scripts and languages that GTK+ supports. Let's make this a long paragraph to demonstrate: blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has character-based wrapping, and can wrap between any two character glyphs. Let's make this a long paragraph to demonstrate: blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah\n\n", -1,
"char_wrap", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has all wrapping turned off, so it makes the horizontal scrollbar appear.\n\n\n", -1,
"no_wrap", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Justification. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"\nThis line has center justification.\n", -1,
"center", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has right justification.\n", -1,
"right_justify", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"\nThis line has big wide margins. Text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text.\n", -1,
"wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Internationalization. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter,
"You can put all sorts of Unicode text in the buffer.\n\nGerman (Deutsch Süd) Grüß Gott\nGreek (Ελληνικά) Γειά σας\nHebrew שלום\nJapanese (日本語)\n\nThe widget properly handles bidirectional text, word wrapping, DOS/UNIX/Unicode paragraph separators, grapheme boundaries, and so on using the Pango internationalization framework.\n", -1);
gtk_text_buffer_insert (buffer, &iter, "Here's a word-wrapped quote in a right-to-left language:\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "وقد بدأ ثلاث من أكثر المؤسسات تقدما في شبكة اكسيون برامجها كمنظمات لا تسعى للربح، ثم تحولت في السنوات الخمس الماضية إلى مؤسسات مالية منظمة، وباتت جزءا من النظام المالي في بلدانها، ولكنها تتخصص في خدمة قطاع المشروعات الصغيرة. وأحد أكثر هذه المؤسسات نجاحا هو »بانكوسول« في بوليفيا.\n\n", -1,
"rtl_quote", NULL);
gtk_text_buffer_insert (buffer, &iter, "You can put widgets in the buffer: Here's a button: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter, " and a menu: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter, " and a scale: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter, " and an animation: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter, " finally a text entry: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter, ".\n", -1);
gtk_text_buffer_insert (buffer, &iter, "\n\nThis demo doesn't demonstrate all the GtkTextBuffer features; it leaves out, for example: invisible/hidden text (doesn't work in GTK 2, but planned), tab stops, application-drawn areas on the sides of the widget for displaying breakpoints and such...", -1);
/* Apply word_wrap tag to whole buffer */
gtk_text_buffer_get_bounds (buffer, &start, &end);
gtk_text_buffer_apply_tag_by_name (buffer, "word_wrap", &start, &end);
g_object_unref (G_OBJECT (pixbuf));
}
static gboolean
find_anchor (GtkTextIter *iter)
{
while (gtk_text_iter_forward_char (iter))
{
if (gtk_text_iter_get_child_anchor (iter))
return TRUE;
}
return FALSE;
}
static void
attach_widgets (GtkTextView *text_view)
{
GtkTextIter iter;
GtkTextBuffer *buffer;
int i;
buffer = gtk_text_view_get_buffer (text_view);
gtk_text_buffer_get_start_iter (buffer, &iter);
i = 0;
while (find_anchor (&iter))
{
GtkTextChildAnchor *anchor;
GtkWidget *widget;
anchor = gtk_text_iter_get_child_anchor (&iter);
if (i == 0)
{
widget = gtk_button_new_with_label ("Click Me");
g_signal_connect (G_OBJECT (widget), "clicked",
G_CALLBACK (easter_egg_callback),
NULL);
}
else if (i == 1)
{
GtkWidget *menu_item;
GtkWidget *menu;
menu = gtk_menu_new ();
widget = gtk_option_menu_new ();
menu_item = gtk_menu_item_new_with_label ("Option 1");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
menu_item = gtk_menu_item_new_with_label ("Option 2");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
menu_item = gtk_menu_item_new_with_label ("Option 3");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
gtk_option_menu_set_menu (GTK_OPTION_MENU (widget), menu);
}
else if (i == 2)
{
widget = gtk_hscale_new (NULL);
gtk_range_set_range (GTK_RANGE (widget), 0, 100);
gtk_widget_set_size_request (widget, 70, -1);
}
else if (i == 3)
{
gchar *filename = demo_find_file ("floppybuddy.gif", NULL);
widget = gtk_image_new_from_file (filename);
g_free (filename);
}
else if (i == 4)
{
widget = gtk_entry_new ();
}
else
{
widget = NULL; /* avoids a compiler warning */
g_assert_not_reached ();
}
gtk_text_view_add_child_at_anchor (text_view,
widget,
anchor);
gtk_widget_show_all (widget);
++i;
}
}
GtkWidget *
do_textview (void)
{
static GtkWidget *window = NULL;
if (!window)
{
GtkWidget *vpaned;
GtkWidget *view1;
GtkWidget *view2;
GtkWidget *sw;
GtkTextBuffer *buffer;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size (GTK_WINDOW (window),
450, 450);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_window_set_title (GTK_WINDOW (window), "TextView");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
vpaned = gtk_vpaned_new ();
gtk_container_set_border_width (GTK_CONTAINER(vpaned), 5);
gtk_container_add (GTK_CONTAINER (window), vpaned);
/* For convenience, we just use the autocreated buffer from
* the first text view; you could also create the buffer
* by itself with gtk_text_buffer_new(), then later create
* a view widget.
*/
view1 = gtk_text_view_new ();
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view1));
view2 = gtk_text_view_new_with_buffer (buffer);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_paned_add1 (GTK_PANED (vpaned), sw);
gtk_container_add (GTK_CONTAINER (sw), view1);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_paned_add2 (GTK_PANED (vpaned), sw);
gtk_container_add (GTK_CONTAINER (sw), view2);
create_tags (buffer);
insert_text (buffer);
attach_widgets (GTK_TEXT_VIEW (view1));
attach_widgets (GTK_TEXT_VIEW (view2));
gtk_widget_show_all (vpaned);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}
static void
recursive_attach_view (int depth,
GtkTextView *view,
GtkTextChildAnchor *anchor)
{
GtkWidget *child_view;
GtkWidget *event_box;
GdkColor color;
GtkWidget *align;
if (depth > 4)
return;
child_view = gtk_text_view_new_with_buffer (gtk_text_view_get_buffer (view));
/* Event box is to add a black border around each child view */
event_box = gtk_event_box_new ();
gdk_color_parse ("black", &color);
gtk_widget_modify_bg (event_box, GTK_STATE_NORMAL, &color);
align = gtk_alignment_new (0.5, 0.5, 1.0, 1.0);
gtk_container_set_border_width (GTK_CONTAINER (align), 1);
gtk_container_add (GTK_CONTAINER (event_box), align);
gtk_container_add (GTK_CONTAINER (align), child_view);
gtk_text_view_add_child_at_anchor (view, event_box, anchor);
recursive_attach_view (depth + 1, GTK_TEXT_VIEW (child_view), anchor);
}
static void
easter_egg_callback (GtkWidget *button,
gpointer data)
{
static GtkWidget *window = NULL;
GtkTextBuffer *buffer;
GtkWidget *view;
GtkTextIter iter;
GtkTextChildAnchor *anchor;
GtkWidget *sw;
if (window)
{
gtk_window_present (GTK_WINDOW (window));
return;
}
buffer = gtk_text_buffer_new (NULL);
gtk_text_buffer_get_start_iter (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter,
"This buffer is shared by a set of nested text views.\n Nested view:\n", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter,
"\nDon't do this in real applications, please.\n", -1);
view = gtk_text_view_new_with_buffer (buffer);
recursive_attach_view (0, GTK_TEXT_VIEW (view), anchor);
g_object_unref (G_OBJECT (buffer));
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_container_add (GTK_CONTAINER (window), sw);
gtk_container_add (GTK_CONTAINER (sw), view);
g_object_add_weak_pointer (G_OBJECT (window),
(gpointer *) &window);
gtk_window_set_default_size (GTK_WINDOW (window), 300, 400);
gtk_widget_show_all (window);
}

448
demos/gtk-demo/tree_store.c Normal file
View File

@@ -0,0 +1,448 @@
/* Tree View/Tree Store
*
* The GtkTreeStore is used to store data in tree form, to be
* used later on by a GtkTreeView to display it. This demo builds
* a simple GtkTreeStore and displays it. If you're new to the
* GtkTreeView widgets and associates, look into the GtkListStore
* example first.
*
*/
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
/* TreeItem structure */
typedef struct _TreeItem TreeItem;
struct _TreeItem
{
const gchar *label;
gboolean alex;
gboolean havoc;
gboolean tim;
gboolean owen;
gboolean dave;
gboolean world_holiday; /* shared by the European hackers */
TreeItem *children;
};
/* columns */
enum
{
HOLIDAY_NAME_COLUMN = 0,
ALEX_COLUMN,
HAVOC_COLUMN,
TIM_COLUMN,
OWEN_COLUMN,
DAVE_COLUMN,
VISIBLE_COLUMN,
WORLD_COLUMN,
NUM_COLUMNS
};
/* tree data */
static TreeItem january[] =
{
{"New Years Day", TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL },
{"Presidential Inauguration", FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, NULL },
{"Martin Luther King Jr. day", FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, NULL },
{ NULL }
};
static TreeItem february[] =
{
{ "Presidents' Day", FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, NULL },
{ "Groundhog Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Valentine's Day", FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, NULL },
{ NULL }
};
static TreeItem march[] =
{
{ "National Tree Planting Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "St Patrick's Day", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ NULL }
};
static TreeItem april[] =
{
{ "April Fools' Day", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ "Army Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Earth Day", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ "Administrative Professionals' Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ NULL }
};
static TreeItem may[] =
{
{ "Nurses' Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "National Day of Prayer", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Mothers' Day", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ "Armed Forces Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Memorial Day", TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL },
{ NULL }
};
static TreeItem june[] =
{
{ "June Fathers' Day", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ "Juneteenth (Liberation of Slaves)", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Flag Day", FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, NULL },
{ NULL }
};
static TreeItem july[] =
{
{ "Parents' Day", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ "Independence Day", FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, NULL },
{ NULL }
};
static TreeItem august[] =
{
{ "Air Force Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Coast Guard Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Friendship Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ NULL }
};
static TreeItem september[] =
{
{ "Grandparents' Day", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ "Citizenship Day or Constitution Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Labor Day", TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL },
{ NULL }
};
static TreeItem october[] =
{
{ "National Children's Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Bosses' Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Sweetest Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Mother-in-Law's Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Navy Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Columbus Day", FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, NULL },
{ "Halloween", FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, NULL },
{ NULL }
};
static TreeItem november[] =
{
{ "Marine Corps Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Veterans' Day", TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL },
{ "Thanksgiving", FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, NULL },
{ NULL }
};
static TreeItem december[] =
{
{ "Pearl Harbor Remembrance Day", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ "Christmas", TRUE, TRUE, TRUE, TRUE, FALSE, TRUE, NULL },
{ "Kwanzaa", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, NULL },
{ NULL }
};
static TreeItem toplevel[] =
{
{"January", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, january},
{"February", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, february},
{"March", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, march},
{"April", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, april},
{"May", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, may},
{"June", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, june},
{"July", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, july},
{"August", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, august},
{"September", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, september},
{"October", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, october},
{"November", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, november},
{"December", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, december},
{NULL}
};
static GtkTreeModel *
create_model (void)
{
GtkTreeStore *model;
GtkTreeIter iter;
TreeItem *month = toplevel;
/* create tree store */
model = gtk_tree_store_new (NUM_COLUMNS,
G_TYPE_STRING,
G_TYPE_BOOLEAN,
G_TYPE_BOOLEAN,
G_TYPE_BOOLEAN,
G_TYPE_BOOLEAN,
G_TYPE_BOOLEAN,
G_TYPE_BOOLEAN,
G_TYPE_BOOLEAN);
/* add data to the tree store */
while (month->label)
{
TreeItem *holiday = month->children;
gtk_tree_store_append (model, &iter, NULL);
gtk_tree_store_set (model, &iter,
HOLIDAY_NAME_COLUMN, month->label,
ALEX_COLUMN, FALSE,
HAVOC_COLUMN, FALSE,
TIM_COLUMN, FALSE,
OWEN_COLUMN, FALSE,
DAVE_COLUMN, FALSE,
VISIBLE_COLUMN, FALSE,
WORLD_COLUMN, FALSE,
-1);
/* add children */
while (holiday->label)
{
GtkTreeIter child_iter;
gtk_tree_store_append (model, &child_iter, &iter);
gtk_tree_store_set (model, &child_iter,
HOLIDAY_NAME_COLUMN, holiday->label,
ALEX_COLUMN, holiday->alex,
HAVOC_COLUMN, holiday->havoc,
TIM_COLUMN, holiday->tim,
OWEN_COLUMN, holiday->owen,
DAVE_COLUMN, holiday->dave,
VISIBLE_COLUMN, TRUE,
WORLD_COLUMN, holiday->world_holiday,
-1);
holiday++;
}
month++;
}
return GTK_TREE_MODEL (model);
}
static void
item_toggled (GtkCellRendererToggle *cell,
gchar *path_str,
gpointer data)
{
GtkTreeModel *model = (GtkTreeModel *)data;
GtkTreePath *path = gtk_tree_path_new_from_string (path_str);
GtkTreeIter iter;
gboolean toggle_item;
gint *column;
column = g_object_get_data (G_OBJECT (cell), "column");
/* get toggled iter */
gtk_tree_model_get_iter (model, &iter, path);
gtk_tree_model_get (model, &iter, column, &toggle_item, -1);
/* do something with the value */
toggle_item ^= 1;
/* set new value */
gtk_tree_store_set (GTK_TREE_STORE (model), &iter, column,
toggle_item, -1);
/* clean up */
gtk_tree_path_free (path);
}
static void
add_columns (GtkTreeView *treeview)
{
gint col_offset;
GtkCellRenderer *renderer;
GtkTreeViewColumn *column;
GtkTreeModel *model = gtk_tree_view_get_model (treeview);
/* column for holiday names */
renderer = gtk_cell_renderer_text_new ();
g_object_set (G_OBJECT (renderer), "xalign", 0.0, NULL);
col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Holiday",
renderer, "text",
HOLIDAY_NAME_COLUMN,
NULL);
column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1);
gtk_tree_view_column_set_clickable (GTK_TREE_VIEW_COLUMN (column), TRUE);
/* alex column */
renderer = gtk_cell_renderer_toggle_new ();
g_object_set (G_OBJECT (renderer), "xalign", 0.0, NULL);
g_object_set_data (G_OBJECT (renderer), "column", (gint *)ALEX_COLUMN);
g_signal_connect (G_OBJECT (renderer), "toggled", G_CALLBACK (item_toggled),
model);
col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Alex",
renderer,
"active",
ALEX_COLUMN,
"visible",
VISIBLE_COLUMN,
"activatable",
WORLD_COLUMN, NULL);
column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1);
gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column),
GTK_TREE_VIEW_COLUMN_FIXED);
gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 50);
gtk_tree_view_column_set_clickable (GTK_TREE_VIEW_COLUMN (column), TRUE);
/* havoc column */
renderer = gtk_cell_renderer_toggle_new ();
g_object_set (G_OBJECT (renderer), "xalign", 0.0, NULL);
g_object_set_data (G_OBJECT (renderer), "column", (gint *)HAVOC_COLUMN);
g_signal_connect (G_OBJECT (renderer), "toggled", G_CALLBACK (item_toggled),
model);
col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Havoc",
renderer,
"active",
HAVOC_COLUMN,
"visible",
VISIBLE_COLUMN,
NULL);
column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1);
gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column),
GTK_TREE_VIEW_COLUMN_FIXED);
gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 50);
gtk_tree_view_column_set_clickable (GTK_TREE_VIEW_COLUMN (column), TRUE);
/* tim column */
renderer = gtk_cell_renderer_toggle_new ();
g_object_set (G_OBJECT (renderer), "xalign", 0.0, NULL);
g_object_set_data (G_OBJECT (renderer), "column", (gint *)TIM_COLUMN);
g_signal_connect (G_OBJECT (renderer), "toggled", G_CALLBACK (item_toggled),
model);
col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Tim",
renderer,
"active",
TIM_COLUMN,
"visible",
VISIBLE_COLUMN,
"activatable",
WORLD_COLUMN, NULL);
column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1);
gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column),
GTK_TREE_VIEW_COLUMN_FIXED);
gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 50);
gtk_tree_view_column_set_clickable (GTK_TREE_VIEW_COLUMN (column), TRUE);
/* owen column */
renderer = gtk_cell_renderer_toggle_new ();
g_object_set (G_OBJECT (renderer), "xalign", 0.0, NULL);
g_object_set_data (G_OBJECT (renderer), "column", (gint *)OWEN_COLUMN);
g_signal_connect (G_OBJECT (renderer), "toggled", G_CALLBACK (item_toggled),
model);
col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Owen",
renderer,
"active",
OWEN_COLUMN,
"visible",
VISIBLE_COLUMN,
NULL);
column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1);
gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column),
GTK_TREE_VIEW_COLUMN_FIXED);
gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 50);
gtk_tree_view_column_set_clickable (GTK_TREE_VIEW_COLUMN (column), TRUE);
/* dave column */
renderer = gtk_cell_renderer_toggle_new ();
g_object_set (G_OBJECT (renderer), "xalign", 0.0, NULL);
g_object_set_data (G_OBJECT (renderer), "column", (gint *)DAVE_COLUMN);
g_signal_connect (G_OBJECT (renderer), "toggled", G_CALLBACK (item_toggled),
model);
col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
-1, "Dave",
renderer,
"active",
DAVE_COLUMN,
"visible",
VISIBLE_COLUMN,
NULL);
column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1);
gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column),
GTK_TREE_VIEW_COLUMN_FIXED);
gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 50);
gtk_tree_view_column_set_clickable (GTK_TREE_VIEW_COLUMN (column), TRUE);
}
GtkWidget *
do_tree_store (void)
{
if (!window)
{
GtkWidget *vbox;
GtkWidget *sw;
GtkWidget *treeview;
GtkTreeModel *model;
/* create window, etc */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Card planning sheet");
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_box_pack_start (GTK_BOX (vbox),
gtk_label_new ("Jonathan's Holiday Card Planning Sheet"),
FALSE, FALSE, 0);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),
GTK_SHADOW_ETCHED_IN);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_box_pack_start (GTK_BOX (vbox), sw, TRUE, TRUE, 0);
/* create model */
model = create_model ();
/* create tree view */
treeview = gtk_tree_view_new_with_model (model);
g_object_unref (G_OBJECT (model));
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE);
gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),
GTK_SELECTION_MULTIPLE);
add_columns (GTK_TREE_VIEW (treeview));
gtk_container_add (GTK_CONTAINER (sw), treeview);
/* expand all rows after the treeview widget has been realized */
g_signal_connect (G_OBJECT (treeview), "realize",
G_CALLBACK (gtk_tree_view_expand_all), NULL);
gtk_window_set_default_size (GTK_WINDOW (window), 650, 400);
}
if (!GTK_WIDGET_VISIBLE (window))
gtk_widget_show_all (window);
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

234
demos/pixbuf-demo.c Normal file
View File

@@ -0,0 +1,234 @@
/* GdkPixbuf library - Scaling and compositing demo
*
* Copyright (C) 1999 The Free Software Foundation
*
* Authors: Federico Mena-Quintero <federico@gimp.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include <config.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include <math.h>
#define FRAME_DELAY 50
#define BACKGROUND_NAME "background.jpg"
static const char *image_names[] = {
"apple-red.png",
"gnome-applets.png",
"gnome-calendar.png",
"gnome-foot.png",
"gnome-gmush.png",
"gnome-gimp.png",
"gnome-gsame.png",
"gnu-keys.png"
};
#define N_IMAGES (sizeof (image_names) / sizeof (image_names[0]))
/* Current frame */
static GdkPixbuf *frame;
/* Background image */
static GdkPixbuf *background;
static int back_width, back_height;
/* Images */
static GdkPixbuf *images[N_IMAGES];
/* Widgets */
static GtkWidget *da;
/* Loads the images for the demo and returns whether the operation succeeded */
static gboolean
load_pixbufs (void)
{
int i;
/* We pass NULL for the error return location, we don't care
* about the error message.
*/
background = gdk_pixbuf_new_from_file (BACKGROUND_NAME, NULL);
if (!background)
return FALSE;
back_width = gdk_pixbuf_get_width (background);
back_height = gdk_pixbuf_get_height (background);
for (i = 0; i < N_IMAGES; i++) {
images[i] = gdk_pixbuf_new_from_file (image_names[i], NULL);
if (!images[i])
return FALSE;
}
return TRUE;
}
/* Expose callback for the drawing area */
static gint
expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
{
guchar *pixels;
int rowstride;
rowstride = gdk_pixbuf_get_rowstride (frame);
pixels = gdk_pixbuf_get_pixels (frame) + rowstride * event->area.y + event->area.x * 3;
gdk_draw_rgb_image_dithalign (widget->window,
widget->style->black_gc,
event->area.x, event->area.y,
event->area.width, event->area.height,
GDK_RGB_DITHER_NORMAL,
pixels, rowstride,
event->area.x, event->area.y);
return TRUE;
}
#define CYCLE_LEN 60
static int frame_num;
/* Timeout handler to regenerate the frame */
static gint
timeout (gpointer data)
{
double f;
int i;
double xmid, ymid;
double radius;
gdk_pixbuf_copy_area (background, 0, 0, back_width, back_height,
frame, 0, 0);
f = (double) (frame_num % CYCLE_LEN) / CYCLE_LEN;
xmid = back_width / 2.0;
ymid = back_height / 2.0;
radius = MIN (xmid, ymid) / 2.0;
for (i = 0; i < N_IMAGES; i++) {
double ang;
int xpos, ypos;
int iw, ih;
double r;
GdkRectangle r1, r2, dest;
double k;
ang = 2.0 * G_PI * (double) i / N_IMAGES - f * 2.0 * G_PI;
iw = gdk_pixbuf_get_width (images[i]);
ih = gdk_pixbuf_get_height (images[i]);
r = radius + (radius / 3.0) * sin (f * 2.0 * G_PI);
xpos = floor (xmid + r * cos (ang) - iw / 2.0 + 0.5);
ypos = floor (ymid + r * sin (ang) - ih / 2.0 + 0.5);
k = (i & 1) ? sin (f * 2.0 * G_PI) : cos (f * 2.0 * G_PI);
k = 2.0 * k * k;
k = MAX (0.25, k);
r1.x = xpos;
r1.y = ypos;
r1.width = iw * k;
r1.height = ih * k;
r2.x = 0;
r2.y = 0;
r2.width = back_width;
r2.height = back_height;
if (gdk_rectangle_intersect (&r1, &r2, &dest))
gdk_pixbuf_composite (images[i],
frame,
dest.x, dest.y,
dest.width, dest.height,
xpos, ypos,
k, k,
GDK_INTERP_NEAREST,
((i & 1)
? MAX (127, fabs (255 * sin (f * 2.0 * G_PI)))
: MAX (127, fabs (255 * cos (f * 2.0 * G_PI)))));
}
gtk_widget_queue_draw (da);
frame_num++;
return TRUE;
}
static guint timeout_id;
/* Destroy handler for the window */
static void
destroy_cb (GtkObject *object, gpointer data)
{
gtk_timeout_remove (timeout_id);
timeout_id = 0;
gtk_main_quit ();
}
extern void pixbuf_init();
int
main (int argc, char **argv)
{
GtkWidget *window;
pixbuf_init ();
gtk_init (&argc, &argv);
if (!load_pixbufs ()) {
g_message ("main(): Could not load all the pixbufs!");
exit (EXIT_FAILURE);
}
frame = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, back_width, back_height);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request (window, back_width, back_height);
gtk_window_set_resizable (GTK_WINDOW (window), FALSE);
g_signal_connect (window, "destroy",
G_CALLBACK (destroy_cb), NULL);
da = gtk_drawing_area_new ();
g_signal_connect (da, "expose_event",
G_CALLBACK (expose_cb), NULL);
gtk_container_add (GTK_CONTAINER (window), da);
timeout_id = gtk_timeout_add (FRAME_DELAY, timeout, NULL);
gtk_widget_show_all (window);
gtk_main ();
return 0;
}

19
demos/pixbuf-init.c Normal file
View File

@@ -0,0 +1,19 @@
#include <glib.h>
#include <sys/stat.h>
#include <stdlib.h>
static gboolean
file_exists (const char *filename)
{
struct stat statbuf;
return stat (filename, &statbuf) == 0;
}
void
pixbuf_init ()
{
if (file_exists ("../gdk-pixbuf/libpixbufloader-pnm.la"))
putenv ("GDK_PIXBUF_MODULEDIR=../gdk-pixbuf");
}

View File

@@ -3,460 +3,431 @@
* Copyright (C) 1999 Mark Crichton, Larry Ewing
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include <config.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <errno.h>
#include <gtk/gtk.h>
#include "gdk-pixbuf.h"
#include "gdk-pixbuf-io.h"
#include "gdk-pixbuf-loader.h"
typedef struct {
FILE *imagefile;
GdkPixbufLoader *loader;
GtkWidget **rgbwin;
guchar *buf;
guint timeout;
guint readlen;
typedef struct _LoadContext LoadContext;
} ProgressFileStatus;
#define DEFAULT_WIDTH 24
#define DEFAULT_HEIGHT 24
static const unsigned char default_image[] = {
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xae, 0xb3, 0xb3, 0xc6, 0xc9, 0xcd, 0xd7, 0xd4, 0xdf,
0xec, 0xde, 0xf3, 0xe7, 0xcb, 0xe9, 0xd9, 0xb5, 0xd3, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0xb1, 0xb7, 0xa5,
0xb0, 0xb8, 0xad, 0xb3, 0xb9, 0xb6, 0xc1, 0xc6, 0xc8, 0xd5, 0xd3, 0xdc,
0xec, 0xde, 0xf3, 0xe5, 0xca, 0xe6, 0xe0, 0xbb, 0xd7, 0xe1, 0xad, 0xc2,
0xe3, 0xac, 0xa3, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0xca, 0xc1, 0xa4, 0xc5, 0xc7, 0xac,
0xb7, 0xbe, 0xaf, 0xad, 0xb4, 0xaf, 0xbd, 0xc2, 0xc3, 0xd1, 0xd0, 0xd8,
0xec, 0xde, 0xf3, 0xe5, 0xc7, 0xe4, 0xe0, 0xb6, 0xd1, 0xe7, 0xa9, 0xb4,
0xed, 0xcd, 0xb6, 0xd6, 0xcf, 0xae, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0x00, 0x00, 0x00, 0xdf, 0xa7, 0x9f, 0xdd, 0xbf, 0xaa, 0xcf, 0xc5, 0xa9,
0xc1, 0xc4, 0xac, 0xb2, 0xba, 0xaf, 0xb6, 0xbb, 0xbb, 0xcd, 0xce, 0xd4,
0xec, 0xde, 0xf3, 0xe4, 0xc4, 0xe1, 0xe0, 0xaf, 0xc7, 0xea, 0xbc, 0xae,
0xe1, 0xd6, 0xb6, 0xc7, 0xcc, 0xae, 0xa2, 0xab, 0x9a, 0x00, 0x00, 0x00,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0x00, 0x00, 0x00, 0xe3, 0xab, 0xc0, 0xe6, 0xa3, 0xa7, 0xdf, 0xba, 0xa8,
0xcf, 0xc5, 0xa9, 0xbd, 0xc2, 0xae, 0xad, 0xb4, 0xaf, 0xc6, 0xc9, 0xcd,
0xec, 0xde, 0xf3, 0xe2, 0xbf, 0xdc, 0xe7, 0xa9, 0xb4, 0xe7, 0xd6, 0xb8,
0xc7, 0xcc, 0xae, 0xac, 0xb6, 0xa6, 0x9d, 0xa8, 0x9f, 0x00, 0x00, 0x00,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0xd9, 0xaf, 0xcf, 0xe1, 0xb4, 0xd2, 0xe2, 0xb0, 0xcb, 0xe4, 0xa9, 0xbb,
0xe2, 0xb2, 0xa6, 0xcf, 0xc5, 0xa9, 0x6a, 0x6a, 0x6a, 0x0d, 0x0d, 0x0d,
0x0d, 0x0d, 0x0d, 0x6a, 0x6a, 0x6a, 0xed, 0xcd, 0xb6, 0xc7, 0xcc, 0xae,
0xa6, 0xb1, 0xa3, 0x98, 0xa2, 0x9c, 0x8f, 0x97, 0x96, 0x7e, 0x84, 0x85,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0xe8, 0xc6, 0xe7, 0xe5, 0xc2, 0xe3, 0xe3, 0xbd, 0xdd, 0xe1, 0xb6, 0xd5,
0xe2, 0xb0, 0xcb, 0x6a, 0x6a, 0x6a, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x6a, 0x6a, 0x6a, 0x9d, 0xa8, 0x9f,
0x8f, 0x97, 0x96, 0x8b, 0x90, 0x92, 0x97, 0x9e, 0xa2, 0xa0, 0xa7, 0xae,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0xe7, 0xd3, 0xed, 0xe8, 0xd1, 0xed, 0xe8, 0xce, 0xec, 0xe9, 0xcc, 0xeb,
0xe8, 0xc6, 0xe7, 0x0d, 0x0d, 0x0d, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x0d, 0x0d, 0x0d, 0x97, 0x9e, 0xa2,
0xa7, 0xae, 0xb7, 0xb2, 0xb6, 0xc5, 0xba, 0xbc, 0xce, 0xbf, 0xbe, 0xd3,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0xe9, 0xdf, 0xf0, 0xe9, 0xdf, 0xf0, 0xe9, 0xdf, 0xf0, 0xe9, 0xdf, 0xf0,
0xe9, 0xdf, 0xf0, 0x0d, 0x0d, 0x0d, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x0d, 0x0d, 0x0d, 0xe1, 0xd2, 0xf7,
0xe1, 0xd2, 0xf7, 0xe1, 0xd2, 0xf7, 0xe1, 0xd2, 0xf7, 0xe1, 0xd2, 0xf7,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0xca, 0xc7, 0xd2, 0xc5, 0xc4, 0xcd, 0xbf, 0xbf, 0xc7, 0xb8, 0xb9, 0xc0,
0xae, 0xaf, 0xb6, 0x6a, 0x6a, 0x6a, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x6a, 0x6a, 0x6a, 0xd5, 0xa8, 0xe1,
0xd8, 0xb2, 0xe9, 0xd9, 0xb8, 0xed, 0xdb, 0xbd, 0xf0, 0xdc, 0xbf, 0xf1,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0xa4, 0xa6, 0xac, 0xa8, 0xaa, 0xaf, 0xa0, 0xa6, 0xa8, 0x98, 0x9e, 0x9c,
0xa1, 0xa8, 0x9e, 0xb1, 0xb6, 0xa1, 0x6a, 0x6a, 0x6a, 0x0d, 0x0d, 0x0d,
0x0d, 0x0d, 0x0d, 0x6a, 0x6a, 0x6a, 0xc0, 0x8c, 0xad, 0xcc, 0x90, 0xb5,
0xd3, 0x94, 0xca, 0xd6, 0xa2, 0xdb, 0xd5, 0xa8, 0xe1, 0xcf, 0xa7, 0xdf,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0x00, 0x00, 0x00, 0x98, 0x9f, 0x9b, 0xa1, 0xa8, 0x9e, 0xac, 0xb3, 0xa0,
0xb9, 0xb9, 0xa4, 0xd0, 0xb8, 0xa8, 0xc5, 0xb5, 0xb8, 0xb6, 0xbb, 0xad,
0xe3, 0xd7, 0xb5, 0xdd, 0xb4, 0xa9, 0xcb, 0x89, 0xac, 0xc0, 0x8c, 0xad,
0xc8, 0x91, 0xb5, 0xd1, 0x8d, 0xb7, 0xd3, 0x94, 0xca, 0x00, 0x00, 0x00,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0x00, 0x00, 0x00, 0xa1, 0xa7, 0x98, 0xb1, 0xb6, 0xa1, 0xbd, 0xb9, 0xa5,
0xd0, 0xb8, 0xa8, 0xca, 0xb5, 0xb7, 0xb8, 0xb1, 0xb1, 0xc2, 0xc8, 0xb2,
0xe3, 0xd7, 0xb5, 0xe1, 0xbf, 0xaf, 0xdb, 0x92, 0x9a, 0xbe, 0x82, 0xa6,
0xc0, 0x8c, 0xad, 0xc8, 0x91, 0xb4, 0xc7, 0x8b, 0xb0, 0x00, 0x00, 0x00,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0xbc, 0xb6, 0xa1, 0xd0, 0xb8, 0xa8,
0xcd, 0xb6, 0xb7, 0xc0, 0xb4, 0xb5, 0xb1, 0xb1, 0xaa, 0xca, 0xd1, 0xb4,
0xe3, 0xd7, 0xb5, 0xe2, 0xc1, 0xb0, 0xdb, 0xa8, 0xa3, 0xd2, 0x8a, 0xa9,
0xb7, 0x7e, 0xa2, 0xbd, 0x89, 0xa9, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0xc9, 0xaf, 0xaf,
0xc5, 0xb5, 0xb8, 0xb8, 0xb1, 0xb1, 0xb6, 0xbb, 0xad, 0xd0, 0xd6, 0xb5,
0xe3, 0xd7, 0xb5, 0xe2, 0xbf, 0xaf, 0xdd, 0xb4, 0xa9, 0xdb, 0x92, 0x9a,
0xc6, 0x84, 0xa7, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xac, 0xaa, 0xa6, 0xbd, 0xc3, 0xb0, 0xd2, 0xd7, 0xb5,
0xe3, 0xd7, 0xb5, 0xe2, 0xbf, 0xae, 0xdb, 0xb6, 0xa8, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff,
0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff
struct _LoadContext
{
gchar *filename;
GtkWidget *window;
GdkPixbufLoader *pixbuf_loader;
guint load_timeout;
FILE* image_stream;
};
static void
quit_func (GtkWidget *widget, gpointer dummy)
destroy_context (gpointer data)
{
gtk_main_quit ();
LoadContext *lc = data;
g_free (lc->filename);
if (lc->load_timeout)
g_source_remove (lc->load_timeout);
if (lc->image_stream)
fclose (lc->image_stream);
if (lc->pixbuf_loader)
{
gdk_pixbuf_loader_close (lc->pixbuf_loader, NULL);
g_object_unref (G_OBJECT (lc->pixbuf_loader));
}
g_free (lc);
}
static LoadContext*
get_load_context (GtkWidget *image)
{
LoadContext *lc;
lc = g_object_get_data (G_OBJECT (image), "lc");
if (lc == NULL)
{
lc = g_new0 (LoadContext, 1);
g_object_set_data_full (G_OBJECT (image),
"lc",
lc,
destroy_context);
}
return lc;
}
static void
expose_func (GtkWidget *drawing_area, GdkEventExpose *event, gpointer data)
progressive_prepared_callback (GdkPixbufLoader* loader,
gpointer data)
{
GdkPixbuf *pixbuf;
GdkPixbuf* pixbuf;
GtkWidget* image;
pixbuf = (GdkPixbuf *)gtk_object_get_data(GTK_OBJECT(drawing_area), "pixbuf");
if (!pixbuf->art_pixbuf) {
g_warning ("art_pixbuf is NULL in expose_func!!\n");
return;
}
if (pixbuf->art_pixbuf->has_alpha) {
gdk_draw_rgb_32_image (drawing_area->window,
drawing_area->style->black_gc,
event->area.x, event->area.y,
event->area.width,
event->area.height,
GDK_RGB_DITHER_MAX,
pixbuf->art_pixbuf->pixels
+ (event->area.y * pixbuf->art_pixbuf->rowstride)
+ (event->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
} else {
gdk_draw_rgb_image (drawing_area->window,
drawing_area->style->white_gc,
event->area.x, event->area.y,
event->area.width,
event->area.height,
GDK_RGB_DITHER_NORMAL,
pixbuf->art_pixbuf->pixels
+ (event->area.y * pixbuf->art_pixbuf->rowstride)
+ (event->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
}
}
static void
config_func (GtkWidget *drawing_area, GdkEventConfigure *event, gpointer data)
{
GdkPixbuf *pixbuf;
image = GTK_WIDGET (data);
pixbuf = (GdkPixbuf *)gtk_object_get_data(GTK_OBJECT(drawing_area), "pixbuf");
pixbuf = gdk_pixbuf_loader_get_pixbuf (loader);
g_print("X:%d Y:%d\n", event->width, event->height);
/* Avoid displaying random memory contents, since the pixbuf
* isn't filled in yet.
*/
gdk_pixbuf_fill (pixbuf, 0xaaaaaaff);
#if 0
if (((event->width) != (pixbuf->art_pixbuf->width)) ||
((event->height) != (pixbuf->art_pixbuf->height)))
gdk_pixbuf_scale(pixbuf, event->width, event->height);
#endif
/* Could set the pixbuf instead, if we only wanted to display
* static images.
*/
gtk_image_set_from_animation (GTK_IMAGE (image),
gdk_pixbuf_loader_get_animation (loader));
}
static GtkWidget*
new_testrgb_window (GdkPixbuf *pixbuf, gchar *title)
static void
progressive_updated_callback (GdkPixbufLoader* loader,
gint x, gint y, gint width, gint height,
gpointer data)
{
GtkWidget *window;
GtkWidget *vbox;
GtkWidget *temp_box;
GtkWidget *button;
GtkWidget *drawing_area;
gint w, h;
w = pixbuf->art_pixbuf->width;
h = pixbuf->art_pixbuf->height;
GtkWidget* image;
image = GTK_WIDGET (data);
window = gtk_widget_new (gtk_window_get_type (),
"GtkObject::user_data", NULL,
"GtkWindow::type", GTK_WINDOW_TOPLEVEL,
"GtkWindow::title", "testrgb",
"GtkWindow::allow_shrink", TRUE,
NULL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
(GtkSignalFunc) quit_func, NULL);
/* We know the pixbuf inside the GtkImage has changed, but the image
* itself doesn't know this; so queue a redraw. If we wanted to be
* really efficient, we could use a drawing area or something
* instead of a GtkImage, so we could control the exact position of
* the pixbuf on the display, then we could queue a draw for only
* the updated area of the image.
*/
vbox = gtk_vbox_new (FALSE, 0);
if (title)
gtk_box_pack_start (GTK_BOX (vbox), gtk_label_new (title),
TRUE, TRUE, 0);
drawing_area = gtk_drawing_area_new ();
temp_box = gtk_hbox_new (FALSE, 0);
gtk_drawing_area_size (GTK_DRAWING_AREA(drawing_area), w, h);
gtk_box_pack_start (GTK_BOX (temp_box), drawing_area, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), temp_box, FALSE, FALSE, 0);
gtk_signal_connect (GTK_OBJECT(drawing_area), "expose_event",
GTK_SIGNAL_FUNC(expose_func), NULL);
gtk_signal_connect (GTK_OBJECT(drawing_area), "configure_event",
GTK_SIGNAL_FUNC (config_func), NULL);
gtk_object_set_data (GTK_OBJECT(drawing_area), "pixbuf", pixbuf);
gtk_widget_show (drawing_area);
button = gtk_button_new_with_label ("Quit");
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
(GtkSignalFunc) gtk_widget_destroy,
GTK_OBJECT (window));
gtk_widget_show (button);
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_widget_show_all (vbox);
gtk_widget_show (window);
return window;
/* We only really need to redraw if the image's animation iterator
* is gdk_pixbuf_animation_iter_on_currently_loading_frame(), but
* who cares.
*/
gtk_widget_queue_draw (image);
}
static gint
update_timeout(gpointer data)
progressive_timeout (gpointer data)
{
ProgressFileStatus *status = data;
gboolean done;
GtkWidget *image;
LoadContext *lc;
image = GTK_WIDGET (data);
lc = get_load_context (image);
/* This shows off fully-paranoid error handling, so looks scary.
* You could factor out the error handling code into a nice separate
* function to make things nicer.
*/
if (lc->image_stream)
{
size_t bytes_read;
guchar buf[256];
GError *error = NULL;
bytes_read = fread (buf, 1, 256, lc->image_stream);
done = TRUE;
if (!feof(status->imagefile)) {
gint nbytes;
if (ferror (lc->image_stream))
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (lc->window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failure reading image file 'alphatest.png': %s",
g_strerror (errno));
nbytes = fread(status->buf, 1, status->readlen,
status->imagefile);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
done = !gdk_pixbuf_loader_write (GDK_PIXBUF_LOADER (status->loader), status->buf, nbytes);
}
fclose (lc->image_stream);
lc->image_stream = NULL;
if (done) {
gtk_widget_queue_draw(*status->rgbwin);
gdk_pixbuf_loader_close (GDK_PIXBUF_LOADER (status->loader));
gtk_object_destroy (GTK_OBJECT(status->loader));
fclose (status->imagefile);
g_free (status->buf);
}
gtk_widget_show (dialog);
lc->load_timeout = 0;
return !done;
return FALSE; /* uninstall the timeout */
}
if (!gdk_pixbuf_loader_write (lc->pixbuf_loader,
buf, bytes_read,
&error))
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (lc->window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failed to load image: %s",
error->message);
g_error_free (error);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
fclose (lc->image_stream);
lc->image_stream = NULL;
gtk_widget_show (dialog);
lc->load_timeout = 0;
return FALSE; /* uninstall the timeout */
}
if (feof (lc->image_stream))
{
fclose (lc->image_stream);
lc->image_stream = NULL;
/* Errors can happen on close, e.g. if the image
* file was truncated we'll know on close that
* it was incomplete.
*/
error = NULL;
if (!gdk_pixbuf_loader_close (lc->pixbuf_loader,
&error))
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (lc->window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Failed to load image: %s",
error->message);
g_error_free (error);
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
gtk_widget_show (dialog);
g_object_unref (G_OBJECT (lc->pixbuf_loader));
lc->pixbuf_loader = NULL;
lc->load_timeout = 0;
return FALSE; /* uninstall the timeout */
}
g_object_unref (G_OBJECT (lc->pixbuf_loader));
lc->pixbuf_loader = NULL;
}
}
else
{
lc->image_stream = fopen (lc->filename, "r");
if (lc->image_stream == NULL)
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (lc->window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Unable to open image file '%s': %s",
lc->filename,
g_strerror (errno));
g_signal_connect (dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
gtk_widget_show (dialog);
lc->load_timeout = 0;
return FALSE; /* uninstall the timeout */
}
if (lc->pixbuf_loader)
{
gdk_pixbuf_loader_close (lc->pixbuf_loader, NULL);
g_object_unref (G_OBJECT (lc->pixbuf_loader));
lc->pixbuf_loader = NULL;
}
lc->pixbuf_loader = gdk_pixbuf_loader_new ();
g_signal_connect (lc->pixbuf_loader, "area_prepared",
G_CALLBACK (progressive_prepared_callback), image);
g_signal_connect (lc->pixbuf_loader, "area_updated",
G_CALLBACK (progressive_updated_callback), image);
}
/* leave timeout installed */
return TRUE;
}
static void
progressive_prepared_callback(GdkPixbufLoader* loader, gpointer data)
start_progressive_loading (GtkWidget *image)
{
GtkWidget** retloc = data;
GdkPixbuf* pixbuf;
LoadContext *lc;
pixbuf = gdk_pixbuf_loader_get_pixbuf(loader);
g_assert(pixbuf != NULL);
gdk_pixbuf_ref(pixbuf); /* for the RGB window */
*retloc = new_testrgb_window(pixbuf, "Progressive");
return;
lc = get_load_context (image);
/* This is obviously totally contrived (we slow down loading
* on purpose to show how incremental loading works).
* The real purpose of incremental loading is the case where
* you are reading data from a slow source such as the network.
* The timeout simply simulates a slow data source by inserting
* pauses in the reading process.
*/
lc->load_timeout = g_timeout_add (100,
progressive_timeout,
image);
}
static GtkWidget *
do_image (const char *filename)
{
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *image;
GtkWidget *label;
GtkWidget *align;
GtkWidget *window;
gchar *str, *escaped;
LoadContext *lc;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Image Loading");
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
label = gtk_label_new (NULL);
gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
escaped = g_markup_escape_text (filename, -1);
str = g_strdup_printf ("Progressively loading: <b>%s</b>", escaped);
gtk_label_set_markup (GTK_LABEL (label),
str);
g_free (escaped);
g_free (str);
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
/* The alignment keeps the frame from growing when users resize
* the window
*/
align = gtk_alignment_new (0.5, 0.5, 0, 0);
gtk_container_add (GTK_CONTAINER (align), frame);
gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);
image = gtk_image_new_from_pixbuf (NULL);
gtk_container_add (GTK_CONTAINER (frame), image);
lc = get_load_context (image);
lc->window = window;
lc->filename = g_strdup (filename);
start_progressive_loading (image);
gtk_widget_show_all (window);
return window;
}
static void
progressive_updated_callback(GdkPixbufLoader* loader, guint x, guint y, guint width, guint height, gpointer data)
do_nonprogressive (const gchar *filename)
{
GtkWidget** window_loc = data;
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *image;
GtkWidget *label;
GtkWidget *align;
GtkWidget *window;
gchar *str, *escaped;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Animation");
/* g_print ("progressive_updated_callback:\n\t%d\t%d\t%d\t%d\n", x, y, width, height); */
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
if (*window_loc != NULL)
gtk_widget_queue_draw_area(*window_loc,
x, y, width, height);
vbox = gtk_vbox_new (FALSE, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
return;
label = gtk_label_new (NULL);
gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
escaped = g_markup_escape_text (filename, -1);
str = g_strdup_printf ("Loaded from file: <b>%s</b>", escaped);
gtk_label_set_markup (GTK_LABEL (label),
str);
g_free (escaped);
g_free (str);
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
/* The alignment keeps the frame from growing when users resize
* the window
*/
align = gtk_alignment_new (0.5, 0.5, 0, 0);
gtk_container_add (GTK_CONTAINER (align), frame);
gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);
image = gtk_image_new_from_file (filename);
gtk_container_add (GTK_CONTAINER (frame), image);
gtk_widget_show_all (window);
}
static int readlen = 4096;
int
main (int argc, char **argv)
main (int argc,
char **argv)
{
int i;
int found_valid = FALSE;
gint i;
gtk_init (&argc, &argv);
GdkPixbufAnimation *animation;
GdkPixbufLoader *pixbuf_loader;
i = 1;
while (i < argc)
{
do_image (argv[i]);
do_nonprogressive (argv[i]);
++i;
}
gtk_init (&argc, &argv);
gdk_rgb_set_verbose (TRUE);
gdk_rgb_init ();
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
gtk_widget_set_default_visual (gdk_rgb_get_visual ());
{
char *tbf_readlen = getenv("TBF_READLEN");
if(tbf_readlen) readlen = atoi(tbf_readlen);
}
{
char *tbf_bps = getenv("TBF_KBPS");
guint bps;
if (tbf_bps) {
bps = atoi(tbf_bps);
g_print ("Simulating %d kBytes/sec\n", bps);
readlen = (bps*1024)/10;
}
}
i = 1;
if (argc == 1) {
g_print ("USAGE: testanimation FILE1 ...\n");
return 0;
} else {
for (i = 1; i < argc; i++) {
animation = gdk_pixbuf_animation_new_from_file (argv[i]);
if (animation) {
GList *listptr;
for (listptr = animation->frames; listptr; listptr = listptr->next){
g_print ("in a frame\n");
new_testrgb_window (((GdkPixbufFrame *)listptr->data)->pixbuf, "File");
}
found_valid = TRUE;
}
}
#if 0
{
GtkWidget* rgb_window = NULL;
ProgressFileStatus status;
pixbuf_loader = gdk_pixbuf_loader_new ();
status.loader = pixbuf_loader;
status.rgbwin = &rgb_window;
status.buf = g_malloc (readlen);
gtk_signal_connect(GTK_OBJECT(pixbuf_loader),
"area_prepared",
GTK_SIGNAL_FUNC(progressive_prepared_callback),
&rgb_window);
gtk_signal_connect(GTK_OBJECT(pixbuf_loader),
"area_updated",
GTK_SIGNAL_FUNC(progressive_updated_callback),
&rgb_window);
status.imagefile = fopen (argv[1], "r");
g_assert (status.imagefile != NULL);
status.readlen = readlen;
status.timeout = gtk_timeout_add(100, update_timeout, &status);
}
#endif
}
if (found_valid)
gtk_main ();
return 0;
gtk_main ();
return 0;
}

View File

@@ -1,73 +1,75 @@
#include <config.h>
#include <gtk/gtk.h>
#include <gdk/gdkx.h>
#include "gdk-pixbuf.h"
int close_app(GtkWidget *widget, gpointer data)
int
close_app (GtkWidget *widget, gpointer data)
{
gtk_main_quit();
gtk_main_quit ();
return TRUE;
}
int expose_cb(GtkWidget *drawing_area, GdkEventExpose *evt, gpointer data)
int
expose_cb (GtkWidget *drawing_area, GdkEventExpose *evt, gpointer data)
{
GdkPixbuf *pixbuf;
pixbuf = (GdkPixbuf *) gtk_object_get_data(GTK_OBJECT(drawing_area),
"pixbuf");
if(pixbuf->art_pixbuf->has_alpha)
pixbuf = (GdkPixbuf *) g_object_get_data (G_OBJECT (drawing_area), "pixbuf");
if (gdk_pixbuf_get_has_alpha (pixbuf))
{
gdk_draw_rgb_32_image(drawing_area->window,
drawing_area->style->black_gc,
evt->area.x, evt->area.y,
evt->area.width,
evt->area.height,
GDK_RGB_DITHER_MAX,
pixbuf->art_pixbuf->pixels +
(evt->area.y * pixbuf->art_pixbuf->rowstride) +
(evt->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
gdk_draw_rgb_32_image (drawing_area->window,
drawing_area->style->black_gc,
evt->area.x, evt->area.y,
evt->area.width,
evt->area.height,
GDK_RGB_DITHER_MAX,
gdk_pixbuf_get_pixels (pixbuf) +
(evt->area.y * gdk_pixbuf_get_rowstride (pixbuf)) +
(evt->area.x * gdk_pixbuf_get_n_channels (pixbuf)),
gdk_pixbuf_get_rowstride (pixbuf));
}
else
{
gdk_draw_rgb_image(drawing_area->window,
drawing_area->style->black_gc,
evt->area.x, evt->area.y,
evt->area.width,
evt->area.height,
GDK_RGB_DITHER_NORMAL,
pixbuf->art_pixbuf->pixels +
(evt->area.y * pixbuf->art_pixbuf->rowstride) +
(evt->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
gdk_draw_rgb_image (drawing_area->window,
drawing_area->style->black_gc,
evt->area.x, evt->area.y,
evt->area.width,
evt->area.height,
GDK_RGB_DITHER_NORMAL,
gdk_pixbuf_get_pixels (pixbuf) +
(evt->area.y * gdk_pixbuf_get_rowstride (pixbuf)) +
(evt->area.x * gdk_pixbuf_get_n_channels (pixbuf)),
gdk_pixbuf_get_rowstride (pixbuf));
}
return FALSE;
}
int configure_cb(GtkWidget *drawing_area, GdkEventConfigure *evt, gpointer data)
int
configure_cb (GtkWidget *drawing_area, GdkEventConfigure *evt, gpointer data)
{
GdkPixbuf *pixbuf;
pixbuf = (GdkPixbuf *) gtk_object_get_data(GTK_OBJECT(drawing_area),
"pixbuf");
pixbuf = (GdkPixbuf *) g_object_get_data (G_OBJECT (drawing_area), "pixbuf");
g_print("X:%d Y:%d\n", evt->width, evt->height);
if(evt->width != pixbuf->art_pixbuf->width || evt->height != pixbuf->art_pixbuf->height)
g_print ("X:%d Y:%d\n", evt->width, evt->height);
if (evt->width != gdk_pixbuf_get_width (pixbuf) || evt->height != gdk_pixbuf_get_height (pixbuf))
{
GdkWindow *root;
GdkPixbuf *new_pixbuf;
root = GDK_ROOT_PARENT();
new_pixbuf = gdk_pixbuf_get_from_drawable(NULL, root, NULL,
0, 0, 0, 0, evt->width, evt->height);
gtk_object_set_data(GTK_OBJECT(drawing_area), "pixbuf", new_pixbuf);
gdk_pixbuf_unref(pixbuf);
root = gdk_get_default_root_window ();
new_pixbuf = gdk_pixbuf_get_from_drawable (NULL, root, NULL,
0, 0, 0, 0, evt->width, evt->height);
g_object_set_data (G_OBJECT (drawing_area), "pixbuf", new_pixbuf);
g_object_unref (pixbuf);
}
return FALSE;
}
int main(int argc, char **argv)
extern void pixbuf_init ();
int
main (int argc, char **argv)
{
GdkWindow *root;
GtkWidget *window;
@@ -75,39 +77,39 @@ int main(int argc, char **argv)
GtkWidget *drawing_area;
GdkPixbuf *pixbuf;
gtk_init(&argc, &argv);
gdk_rgb_set_verbose(TRUE);
gdk_rgb_init();
pixbuf_init ();
gtk_widget_set_default_colormap(gdk_rgb_get_cmap());
gtk_widget_set_default_visual(gdk_rgb_get_visual());
gtk_init (&argc, &argv);
gdk_rgb_set_verbose (TRUE);
root = GDK_ROOT_PARENT();
pixbuf = gdk_pixbuf_get_from_drawable(NULL, root, NULL,
0, 0, 0, 0, 150, 160);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_signal_connect(GTK_OBJECT(window), "delete_event",
GTK_SIGNAL_FUNC(close_app), NULL);
gtk_signal_connect(GTK_OBJECT(window), "destroy",
GTK_SIGNAL_FUNC(close_app), NULL);
vbox = gtk_vbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(window), vbox);
drawing_area = gtk_drawing_area_new();
gtk_drawing_area_size(GTK_DRAWING_AREA(drawing_area),
pixbuf->art_pixbuf->width,
pixbuf->art_pixbuf->height);
gtk_signal_connect(GTK_OBJECT(drawing_area), "expose_event",
GTK_SIGNAL_FUNC(expose_cb), NULL);
gtk_widget_set_default_colormap (gdk_rgb_get_colormap ());
gtk_signal_connect(GTK_OBJECT(drawing_area), "configure_event",
GTK_SIGNAL_FUNC(configure_cb), NULL);
gtk_object_set_data(GTK_OBJECT(drawing_area), "pixbuf", pixbuf);
gtk_box_pack_start(GTK_BOX(vbox), drawing_area, TRUE, TRUE, 0);
root = gdk_get_default_root_window ();
pixbuf = gdk_pixbuf_get_from_drawable (NULL, root, NULL,
0, 0, 0, 0, 150, 160);
gtk_widget_show_all(window);
gtk_main();
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "delete_event",
G_CALLBACK (close_app), NULL);
g_signal_connect (window, "destroy",
G_CALLBACK (close_app), NULL);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
drawing_area = gtk_drawing_area_new ();
gtk_widget_set_size_request (GTK_WIDGET (drawing_area),
gdk_pixbuf_get_width (pixbuf),
gdk_pixbuf_get_height (pixbuf));
g_signal_connect (drawing_area, "expose_event",
G_CALLBACK (expose_cb), NULL);
g_signal_connect (drawing_area, "configure_event",
G_CALLBACK (configure_cb), NULL);
g_object_set_data (G_OBJECT (drawing_area), "pixbuf", pixbuf);
gtk_box_pack_start (GTK_BOX (vbox), drawing_area, TRUE, TRUE, 0);
gtk_widget_show_all (window);
gtk_main ();
return 0;
}

258
demos/testpixbuf-save.c Normal file
View File

@@ -0,0 +1,258 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */
#include "config.h"
#include <stdio.h>
#include <gtk/gtk.h>
static void
compare_pixbufs (GdkPixbuf *pixbuf, GdkPixbuf *compare, const gchar *file_type)
{
if ((gdk_pixbuf_get_width (pixbuf) !=
gdk_pixbuf_get_width (compare)) ||
(gdk_pixbuf_get_height (pixbuf) !=
gdk_pixbuf_get_height (compare)) ||
(gdk_pixbuf_get_n_channels (pixbuf) !=
gdk_pixbuf_get_n_channels (compare)) ||
(gdk_pixbuf_get_has_alpha (pixbuf) !=
gdk_pixbuf_get_has_alpha (compare)) ||
(gdk_pixbuf_get_bits_per_sample (pixbuf) !=
gdk_pixbuf_get_bits_per_sample (compare))) {
fprintf (stderr,
"saved %s file differs from copy in memory\n",
file_type);
} else {
guchar *orig_pixels;
guchar *compare_pixels;
gint orig_rowstride;
gint compare_rowstride;
gint width;
gint height;
gint bytes_per_pixel;
gint x, y;
guchar *p1, *p2;
gint count = 0;
orig_pixels = gdk_pixbuf_get_pixels (pixbuf);
compare_pixels = gdk_pixbuf_get_pixels (compare);
orig_rowstride = gdk_pixbuf_get_rowstride (pixbuf);
compare_rowstride = gdk_pixbuf_get_rowstride (compare);
width = gdk_pixbuf_get_width (pixbuf);
height = gdk_pixbuf_get_height (pixbuf);
/* well... */
bytes_per_pixel = gdk_pixbuf_get_n_channels (pixbuf);
p1 = orig_pixels;
p2 = compare_pixels;
for (y = 0; y < height; y++) {
for (x = 0; x < width * bytes_per_pixel; x++)
count += (*p1++ != *p2++);
orig_pixels += orig_rowstride;
compare_pixels += compare_rowstride;
p1 = orig_pixels;
p2 = compare_pixels;
}
if (count > 0) {
fprintf (stderr,
"saved %s file differs from copy in memory\n",
file_type);
}
}
}
static void
keypress_check (GtkWidget *widget, GdkEventKey *evt, gpointer data)
{
GdkPixbuf *pixbuf;
GtkDrawingArea *da = (GtkDrawingArea*)data;
GError *err = NULL;
pixbuf = (GdkPixbuf *) g_object_get_data (G_OBJECT (da), "pixbuf");
if (evt->keyval == 'q')
gtk_main_quit ();
if (evt->keyval == 's') {
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
}
if (!gdk_pixbuf_save (pixbuf, "foo.jpg", "jpeg",
&err,
"quality", "100",
NULL)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
GdkPixbuf *compare;
compare = gdk_pixbuf_new_from_file ("foo.jpg", &err);
if (!compare) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
compare_pixbufs (pixbuf, compare, "jpeg");
g_object_unref (G_OBJECT (compare));
}
}
} else if (evt->keyval == 'p') {
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
}
if (!gdk_pixbuf_save (pixbuf, "foo.png", "png",
&err,
"tEXt::Software", "testpixbuf-save",
NULL)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
GdkPixbuf *compare;
compare = gdk_pixbuf_new_from_file ("foo.png", &err);
if (!compare) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
compare_pixbufs (pixbuf, compare, "png");
g_object_unref (G_OBJECT (compare));
}
}
} else if (evt->keyval == 'a') {
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
} else {
GdkPixbuf *alpha_buf;
alpha_buf = gdk_pixbuf_add_alpha (pixbuf,
FALSE, 0, 0, 0);
g_object_set_data_full (G_OBJECT (da),
"pixbuf", alpha_buf,
(GDestroyNotify) g_object_unref);
}
}
}
static int
close_app (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
return TRUE;
}
static int
expose_cb (GtkWidget *drawing_area, GdkEventExpose *evt, gpointer data)
{
GdkPixbuf *pixbuf;
pixbuf = (GdkPixbuf *) g_object_get_data (G_OBJECT (drawing_area),
"pixbuf");
if (gdk_pixbuf_get_has_alpha (pixbuf)) {
gdk_draw_rgb_32_image (drawing_area->window,
drawing_area->style->black_gc,
evt->area.x, evt->area.y,
evt->area.width,
evt->area.height,
GDK_RGB_DITHER_MAX,
gdk_pixbuf_get_pixels (pixbuf) +
(evt->area.y * gdk_pixbuf_get_rowstride (pixbuf)) +
(evt->area.x * gdk_pixbuf_get_n_channels (pixbuf)),
gdk_pixbuf_get_rowstride (pixbuf));
} else {
gdk_draw_rgb_image (drawing_area->window,
drawing_area->style->black_gc,
evt->area.x, evt->area.y,
evt->area.width,
evt->area.height,
GDK_RGB_DITHER_NORMAL,
gdk_pixbuf_get_pixels (pixbuf) +
(evt->area.y * gdk_pixbuf_get_rowstride (pixbuf)) +
(evt->area.x * gdk_pixbuf_get_n_channels (pixbuf)),
gdk_pixbuf_get_rowstride (pixbuf));
}
return FALSE;
}
static int
configure_cb (GtkWidget *drawing_area, GdkEventConfigure *evt, gpointer data)
{
GdkPixbuf *pixbuf;
pixbuf = (GdkPixbuf *) g_object_get_data (G_OBJECT (drawing_area),
"pixbuf");
g_print ("X:%d Y:%d\n", evt->width, evt->height);
if (evt->width != gdk_pixbuf_get_width (pixbuf) || evt->height != gdk_pixbuf_get_height (pixbuf)) {
GdkWindow *root;
GdkPixbuf *new_pixbuf;
root = gdk_get_default_root_window ();
new_pixbuf = gdk_pixbuf_get_from_drawable (NULL, root, NULL,
0, 0, 0, 0, evt->width, evt->height);
g_object_set_data_full (G_OBJECT (drawing_area), "pixbuf", new_pixbuf,
(GDestroyNotify) g_object_unref);
}
return FALSE;
}
int
main (int argc, char **argv)
{
GdkWindow *root;
GtkWidget *window;
GtkWidget *vbox;
GtkWidget *drawing_area;
GdkPixbuf *pixbuf;
gtk_init (&argc, &argv);
gtk_widget_set_default_colormap (gdk_rgb_get_colormap ());
root = gdk_get_default_root_window ();
pixbuf = gdk_pixbuf_get_from_drawable (NULL, root, NULL,
0, 0, 0, 0, 150, 160);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "delete_event",
G_CALLBACK (close_app), NULL);
g_signal_connect (window, "destroy",
G_CALLBACK (close_app), NULL);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
drawing_area = gtk_drawing_area_new ();
gtk_widget_set_size_request (GTK_WIDGET (drawing_area),
gdk_pixbuf_get_width (pixbuf),
gdk_pixbuf_get_height (pixbuf));
g_signal_connect (drawing_area, "expose_event",
G_CALLBACK (expose_cb), NULL);
g_signal_connect (drawing_area, "configure_event",
G_CALLBACK (configure_cb), NULL);
g_signal_connect (window, "key_press_event",
G_CALLBACK (keypress_check), drawing_area);
g_object_set_data_full (G_OBJECT (drawing_area), "pixbuf", pixbuf,
(GDestroyNotify) g_object_unref);
gtk_box_pack_start (GTK_BOX (vbox), drawing_area, TRUE, TRUE, 0);
gtk_widget_show_all (window);
gtk_main ();
return 0;
}

View File

@@ -1,17 +1,17 @@
#include <gtk/gtk.h>
#include "gdk-pixbuf.h"
#include <stdio.h>
#include <stdlib.h>
ArtFilterLevel filter_level = ART_FILTER_BILINEAR;
GdkInterpType interp_type = GDK_INTERP_BILINEAR;
int overall_alpha = 255;
GdkPixbuf *pixbuf;
GtkWidget *darea;
void
set_filter_level (GtkWidget *widget, gpointer data)
set_interp_type (GtkWidget *widget, gpointer data)
{
filter_level = GPOINTER_TO_UINT (data);
interp_type = GPOINTER_TO_UINT (data);
gtk_widget_queue_draw (darea);
}
@@ -32,14 +32,14 @@ expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
gdk_window_set_back_pixmap (widget->window, NULL, FALSE);
dest = gdk_pixbuf_new (ART_PIX_RGB, FALSE, 8, event->area.width, event->area.height);
dest = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, event->area.width, event->area.height);
gdk_pixbuf_composite_color (pixbuf, dest,
0, 0, event->area.width, event->area.height,
-event->area.x, -event->area.y,
(double) widget->allocation.width / pixbuf->art_pixbuf->width,
(double) widget->allocation.height / pixbuf->art_pixbuf->height,
filter_level, overall_alpha,
(double) widget->allocation.width / gdk_pixbuf_get_width (pixbuf),
(double) widget->allocation.height / gdk_pixbuf_get_height (pixbuf),
interp_type, overall_alpha,
event->area.x, event->area.y, 16, 0xaaaaaa, 0x555555);
gdk_pixbuf_render_to_drawable (dest, widget->window, widget->style->fg_gc[GTK_STATE_NORMAL],
@@ -47,11 +47,13 @@ expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
event->area.width, event->area.height,
GDK_RGB_DITHER_NORMAL, event->area.x, event->area.y);
gdk_pixbuf_unref (dest);
g_object_unref (dest);
return TRUE;
}
extern void pixbuf_init();
int
main(int argc, char **argv)
{
@@ -61,24 +63,34 @@ main(int argc, char **argv)
GtkWidget *hbox, *label, *hscale;
GtkAdjustment *adjustment;
GtkRequisition scratch_requisition;
const gchar *creator;
GError *error;
pixbuf_init ();
gtk_init (&argc, &argv);
gdk_rgb_init ();
if (argc != 2) {
fprintf (stderr, "Usage: testpixbuf-scale FILE\n");
exit (1);
}
pixbuf = gdk_pixbuf_new_from_file (argv[1]);
error = NULL;
pixbuf = gdk_pixbuf_new_from_file (argv[1], &error);
if (!pixbuf) {
fprintf (stderr, "Cannot load %s\n", argv[1]);
fprintf (stderr, "Cannot load image: %s\n",
error->message);
g_error_free (error);
exit(1);
}
creator = gdk_pixbuf_get_option (pixbuf, "tEXt::Software");
if (creator)
g_print ("%s was created by '%s'\n", argv[1], creator);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (gtk_main_quit), NULL);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_main_quit), NULL);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
@@ -86,29 +98,29 @@ main(int argc, char **argv)
menu = gtk_menu_new ();
menuitem = gtk_menu_item_new_with_label ("NEAREST");
gtk_signal_connect (GTK_OBJECT (menuitem), "activate",
GTK_SIGNAL_FUNC (set_filter_level),
GUINT_TO_POINTER (ART_FILTER_NEAREST));
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_NEAREST));
gtk_widget_show (menuitem);
gtk_container_add (GTK_CONTAINER (menu), menuitem);
menuitem = gtk_menu_item_new_with_label ("BILINEAR");
gtk_signal_connect (GTK_OBJECT (menuitem), "activate",
GTK_SIGNAL_FUNC (set_filter_level),
GUINT_TO_POINTER (ART_FILTER_BILINEAR));
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_BILINEAR));
gtk_widget_show (menuitem);
gtk_container_add (GTK_CONTAINER (menu), menuitem);
menuitem = gtk_menu_item_new_with_label ("TILES");
gtk_signal_connect (GTK_OBJECT (menuitem), "activate",
GTK_SIGNAL_FUNC (set_filter_level),
GUINT_TO_POINTER (ART_FILTER_TILES));
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_TILES));
gtk_container_add (GTK_CONTAINER (menu), menuitem);
menuitem = gtk_menu_item_new_with_label ("HYPER");
gtk_signal_connect (GTK_OBJECT (menuitem), "activate",
GTK_SIGNAL_FUNC (set_filter_level),
GUINT_TO_POINTER (ART_FILTER_HYPER));
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_HYPER));
gtk_container_add (GTK_CONTAINER (menu), menuitem);
optionmenu = gtk_option_menu_new ();
@@ -125,8 +137,8 @@ main(int argc, char **argv)
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
adjustment = GTK_ADJUSTMENT (gtk_adjustment_new (overall_alpha, 0, 255, 1, 10, 0));
gtk_signal_connect (GTK_OBJECT (adjustment), "value_changed",
GTK_SIGNAL_FUNC (overall_changed_cb), NULL);
g_signal_connect (adjustment, "value_changed",
G_CALLBACK (overall_changed_cb), NULL);
hscale = gtk_hscale_new (adjustment);
gtk_scale_set_digits (GTK_SCALE (hscale), 0);
@@ -141,12 +153,12 @@ main(int argc, char **argv)
darea = gtk_drawing_area_new ();
gtk_box_pack_start (GTK_BOX (vbox), darea, TRUE, TRUE, 0);
gtk_signal_connect (GTK_OBJECT (darea), "expose_event",
GTK_SIGNAL_FUNC (expose_cb), NULL);
g_signal_connect (darea, "expose_event",
G_CALLBACK (expose_cb), NULL);
gtk_window_set_default_size (GTK_WINDOW (window),
pixbuf->art_pixbuf->width,
scratch_requisition.height + pixbuf->art_pixbuf->height);
gdk_pixbuf_get_width (pixbuf),
scratch_requisition.height + gdk_pixbuf_get_height (pixbuf));
gtk_widget_show_all (window);

View File

@@ -1,31 +1,31 @@
/* testpixbuf -- test program for gdk-pixbuf code
* Copyright (C) 1999 Mark Crichton, Larry Ewing
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include <config.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <gtk/gtk.h>
#include "gdk-pixbuf.h"
#include "gdk-pixbuf-io.h"
#include "gdk-pixbuf-loader.h"
#include <gdk-pixbuf/gdk-pixbuf-loader.h>
#include "test-inline-pixbufs.h"
typedef struct {
FILE *imagefile;
@@ -34,7 +34,6 @@ typedef struct {
guchar *buf;
guint timeout;
guint readlen;
} ProgressFileStatus;
@@ -319,24 +318,19 @@ expose_func (GtkWidget *drawing_area, GdkEventExpose *event, gpointer data)
{
GdkPixbuf *pixbuf;
pixbuf = (GdkPixbuf *)gtk_object_get_data(GTK_OBJECT(drawing_area), "pixbuf");
pixbuf = (GdkPixbuf *)g_object_get_data (G_OBJECT (drawing_area), "pixbuf");
if (!pixbuf->art_pixbuf) {
g_warning ("art_pixbuf is NULL in expose_func!!\n");
return;
}
if (pixbuf->art_pixbuf->has_alpha) {
if (gdk_pixbuf_get_has_alpha (pixbuf)) {
gdk_draw_rgb_32_image (drawing_area->window,
drawing_area->style->black_gc,
event->area.x, event->area.y,
event->area.width,
event->area.height,
GDK_RGB_DITHER_MAX,
pixbuf->art_pixbuf->pixels
+ (event->area.y * pixbuf->art_pixbuf->rowstride)
+ (event->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
gdk_pixbuf_get_pixels (pixbuf)
+ (event->area.y * gdk_pixbuf_get_rowstride (pixbuf))
+ (event->area.x * gdk_pixbuf_get_n_channels (pixbuf)),
gdk_pixbuf_get_rowstride (pixbuf));
} else {
gdk_draw_rgb_image (drawing_area->window,
drawing_area->style->white_gc,
@@ -344,10 +338,10 @@ expose_func (GtkWidget *drawing_area, GdkEventExpose *event, gpointer data)
event->area.width,
event->area.height,
GDK_RGB_DITHER_NORMAL,
pixbuf->art_pixbuf->pixels
+ (event->area.y * pixbuf->art_pixbuf->rowstride)
+ (event->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
gdk_pixbuf_get_pixels (pixbuf)
+ (event->area.y * gdk_pixbuf_get_rowstride (pixbuf))
+ (event->area.x * gdk_pixbuf_get_n_channels (pixbuf)),
gdk_pixbuf_get_rowstride (pixbuf));
}
}
@@ -356,14 +350,14 @@ config_func (GtkWidget *drawing_area, GdkEventConfigure *event, gpointer data)
{
GdkPixbuf *pixbuf;
pixbuf = (GdkPixbuf *)gtk_object_get_data(GTK_OBJECT(drawing_area), "pixbuf");
pixbuf = (GdkPixbuf *)g_object_get_data (G_OBJECT (drawing_area), "pixbuf");
g_print("X:%d Y:%d\n", event->width, event->height);
g_print ("X:%d Y:%d\n", event->width, event->height);
#if 0
if (((event->width) != (pixbuf->art_pixbuf->width)) ||
((event->height) != (pixbuf->art_pixbuf->height)))
gdk_pixbuf_scale(pixbuf, event->width, event->height);
if (((event->width) != gdk_pixbuf_get_width (pixbuf)) ||
((event->height) != gdk_pixbuf_get_height (pixbuf)))
gdk_pixbuf_scale (pixbuf, event->width, event->height);
#endif
}
@@ -376,18 +370,19 @@ new_testrgb_window (GdkPixbuf *pixbuf, gchar *title)
GtkWidget *button;
GtkWidget *drawing_area;
gint w, h;
w = pixbuf->art_pixbuf->width;
h = pixbuf->art_pixbuf->height;
g_return_val_if_fail (pixbuf != NULL, NULL);
w = gdk_pixbuf_get_width (pixbuf);
h = gdk_pixbuf_get_height (pixbuf);
window = gtk_widget_new (gtk_window_get_type (),
"GtkObject::user_data", NULL,
"GtkWindow::type", GTK_WINDOW_TOPLEVEL,
"GtkWindow::title", "testrgb",
"GtkWindow::title", title ? title : "testrgb",
"GtkWindow::allow_shrink", TRUE,
NULL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
(GtkSignalFunc) quit_func, NULL);
g_signal_connect (window, "destroy",
G_CALLBACK (quit_func), NULL);
vbox = gtk_vbox_new (FALSE, 0);
@@ -398,25 +393,24 @@ new_testrgb_window (GdkPixbuf *pixbuf, gchar *title)
drawing_area = gtk_drawing_area_new ();
temp_box = gtk_hbox_new (FALSE, 0);
gtk_drawing_area_size (GTK_DRAWING_AREA(drawing_area), w, h);
gtk_widget_set_size_request (GTK_WIDGET (drawing_area), w, h);
gtk_box_pack_start (GTK_BOX (temp_box), drawing_area, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), temp_box, FALSE, FALSE, 0);
gtk_signal_connect (GTK_OBJECT(drawing_area), "expose_event",
GTK_SIGNAL_FUNC(expose_func), NULL);
gtk_signal_connect (GTK_OBJECT(drawing_area), "configure_event",
GTK_SIGNAL_FUNC (config_func), NULL);
g_signal_connect (drawing_area, "expose_event",
G_CALLBACK (expose_func), NULL);
g_signal_connect (drawing_area, "configure_event",
G_CALLBACK (config_func), NULL);
gtk_object_set_data (GTK_OBJECT(drawing_area), "pixbuf", pixbuf);
g_object_set_data (G_OBJECT (drawing_area), "pixbuf", pixbuf);
gtk_widget_show (drawing_area);
button = gtk_button_new_with_label ("Quit");
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
(GtkSignalFunc) gtk_widget_destroy,
GTK_OBJECT (window));
g_signal_connect_swapped (button, "clicked",
G_CALLBACK (gtk_widget_destroy), window);
gtk_widget_show (button);
@@ -430,26 +424,39 @@ new_testrgb_window (GdkPixbuf *pixbuf, gchar *title)
static gint
update_timeout(gpointer data)
update_timeout (gpointer data)
{
ProgressFileStatus *status = data;
gboolean done;
done = TRUE;
if (!feof(status->imagefile)) {
GError *error;
done = FALSE;
error = FALSE;
if (!feof (status->imagefile)) {
gint nbytes;
nbytes = fread(status->buf, 1, status->readlen,
nbytes = fread (status->buf, 1, status->readlen,
status->imagefile);
done = !gdk_pixbuf_loader_write (GDK_PIXBUF_LOADER (status->loader), status->buf, nbytes);
}
error = NULL;
if (!gdk_pixbuf_loader_write (GDK_PIXBUF_LOADER (status->loader), status->buf, nbytes, &error)) {
g_warning ("Error writing to loader: %s",
error->message);
g_error_free (error);
done = TRUE;
}
}
else
done = TRUE;
if (done) {
gtk_widget_queue_draw(*status->rgbwin);
gdk_pixbuf_loader_close (GDK_PIXBUF_LOADER (status->loader));
gtk_object_destroy (GTK_OBJECT(status->loader));
/* ignoring errors, we should not do that. */
gdk_pixbuf_loader_close (GDK_PIXBUF_LOADER (status->loader), NULL);
gtk_widget_queue_draw (*status->rgbwin);
g_object_unref (G_OBJECT (status->loader));
fclose (status->imagefile);
g_free (status->buf);
}
@@ -459,31 +466,31 @@ update_timeout(gpointer data)
static void
progressive_prepared_callback(GdkPixbufLoader* loader, gpointer data)
progressive_prepared_callback (GdkPixbufLoader* loader, gpointer data)
{
GtkWidget** retloc = data;
GdkPixbuf* pixbuf;
pixbuf = gdk_pixbuf_loader_get_pixbuf(loader);
g_assert(pixbuf != NULL);
pixbuf = gdk_pixbuf_loader_get_pixbuf (loader);
g_assert (pixbuf != NULL);
gdk_pixbuf_ref(pixbuf); /* for the RGB window */
g_object_ref (pixbuf); /* for the RGB window */
*retloc = new_testrgb_window(pixbuf, "Progressive");
*retloc = new_testrgb_window (pixbuf, "Progressive");
return;
}
static void
progressive_updated_callback(GdkPixbufLoader* loader, guint x, guint y, guint width, guint height, gpointer data)
progressive_updated_callback (GdkPixbufLoader* loader, guint x, guint y, guint width, guint height, gpointer data)
{
GtkWidget** window_loc = data;
/* g_print ("progressive_updated_callback:\n\t%d\t%d\t%d\t%d\n", x, y, width, height); */
if (*window_loc != NULL)
gtk_widget_queue_draw_area(*window_loc,
gtk_widget_queue_draw_area (*window_loc,
x, y, width, height);
return;
@@ -491,6 +498,8 @@ progressive_updated_callback(GdkPixbufLoader* loader, guint x, guint y, guint wi
static int readlen = 4096;
extern void pixbuf_init ();
int
main (int argc, char **argv)
{
@@ -500,26 +509,25 @@ main (int argc, char **argv)
GdkPixbuf *pixbuf;
GdkPixbufLoader *pixbuf_loader;
pixbuf_init ();
gtk_init (&argc, &argv);
gdk_rgb_set_verbose (TRUE);
gdk_rgb_init ();
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
gtk_widget_set_default_visual (gdk_rgb_get_visual ());
gtk_widget_set_default_colormap (gdk_rgb_get_colormap ());
{
char *tbf_readlen = getenv("TBF_READLEN");
if(tbf_readlen) readlen = atoi(tbf_readlen);
char *tbf_readlen = getenv ("TBF_READLEN");
if (tbf_readlen) readlen = atoi (tbf_readlen);
}
{
char *tbf_bps = getenv("TBF_KBPS");
char *tbf_bps = getenv ("TBF_KBPS");
guint bps;
if (tbf_bps) {
bps = atoi(tbf_bps);
bps = atoi (tbf_bps);
g_print ("Simulating %d kBytes/sec\n", bps);
readlen = (bps*1024)/10;
}
@@ -528,8 +536,9 @@ main (int argc, char **argv)
i = 1;
if (argc == 1) {
const gchar*** xpmp;
pixbuf = gdk_pixbuf_new_from_data ((guchar *) default_image, ART_PIX_RGB, FALSE,
GError *error = NULL;
pixbuf = gdk_pixbuf_new_from_data (default_image, GDK_COLORSPACE_RGB, FALSE, 8,
DEFAULT_WIDTH, DEFAULT_HEIGHT, DEFAULT_WIDTH * 3,
NULL, NULL);
new_testrgb_window (pixbuf, NULL);
@@ -540,14 +549,37 @@ main (int argc, char **argv)
new_testrgb_window (pixbuf, NULL);
++xpmp;
}
/* Test loading from inline data. */
pixbuf = gdk_pixbuf_new_from_inline (-1, apple_red, FALSE, &error);
if (!pixbuf)
{
fprintf (stderr, "failed to construct \"red apple\" pixbuf: %s\n",
error->message);
g_error_free (error);
}
else
new_testrgb_window (pixbuf, "Red apple from inlined RLE data");
pixbuf = gdk_pixbuf_new_from_inline (sizeof (gnome_foot), gnome_foot, TRUE, NULL);
new_testrgb_window (pixbuf, "GNOME Foot from inlined RLE data");
found_valid = TRUE;
} else {
for (i = 1; i < argc; i++) {
GError *error;
pixbuf = gdk_pixbuf_new_from_file (argv[i]);
error = NULL;
pixbuf = gdk_pixbuf_new_from_file (argv[i], &error);
if (pixbuf == NULL) {
g_warning ("Error loading image: %s",
error->message);
g_error_free (error);
}
#if 0
pixbuf = gdk_pixbuf_rotate(pixbuf, 10.0);
pixbuf = gdk_pixbuf_rotate (pixbuf, 10.0);
#endif
if (pixbuf) {
@@ -566,23 +598,19 @@ main (int argc, char **argv)
status.rgbwin = &rgb_window;
status.buf = g_malloc (readlen);
gtk_signal_connect(GTK_OBJECT(pixbuf_loader),
"area_prepared",
GTK_SIGNAL_FUNC(progressive_prepared_callback),
&rgb_window);
gtk_signal_connect(GTK_OBJECT(pixbuf_loader),
"area_updated",
GTK_SIGNAL_FUNC(progressive_updated_callback),
&rgb_window);
g_signal_connect (pixbuf_loader, "area_prepared",
G_CALLBACK (progressive_prepared_callback),
&rgb_window);
g_signal_connect (pixbuf_loader, "area_updated",
G_CALLBACK (progressive_updated_callback),
&rgb_window);
status.imagefile = fopen (argv[1], "r");
g_assert (status.imagefile != NULL);
status.readlen = readlen;
status.timeout = gtk_timeout_add(100, update_timeout, &status);
status.timeout = gtk_timeout_add (100, update_timeout, &status);
}
#endif
}

View File

@@ -1,7 +1,6 @@
Makefile
Makefile.in
*.html
*.info*
*.dvi
*.ps
*.pg

View File

@@ -1,3 +1,15 @@
DON'T EDIT THIS FILE - changes are now maintained in the reference
manual, see docs/reference/gtk/changes-*.sgml. Also, when adding a
change to the manual, you should amend the docs for all
newly-deprecated features to point to the replacement for that
feature, and be sure the GTK_DISABLE_DEPRECATED guards are in place in
the header files. Be sure to add a note to the docs for EACH
deprecated function; don't just do the changes-*.sgml change.
Incompatible Changes from GTK+-1.0 to GTK+-1.2:
* GtkAcceleratorTable has been replaced with GtkAccelGroup
@@ -272,3 +284,12 @@ Incompatible Changes from GTK+-1.0 to GTK+-1.2:
which returns the requisition of the given widget, modified
by calls to gtk_widget_set_usize().
DON'T EDIT THIS FILE - changes are now maintained in the reference
manual, see docs/reference/gtk/changes-*.sgml. Also, when adding a
change to the manual, you should amend the docs for all
newly-deprecated features to point to the replacement for that
feature, and be sure the GTK_DISABLE_DEPRECATED guards are in place in
the header files. Be sure to add a note to the docs for EACH
deprecated function; don't just do the changes-*.sgml change.

View File

@@ -1,11 +0,0 @@
Incompatible Changes from GTK+-1.2 to GTK+-1.4:
- The gdk_time* functions have been removed. This functionality
has been unused since the main loop was moved into GLib
prior to 1.2.
- The signature for GtkPrintFunc (used for gtk_item_factory_dump_items)
has been changed to take a 'const gchar *' instead of 'gchar *', to
match what we do for glib, and other similar cases.
- The detail arguments in the GtkStyleClass structure are now 'const gchar *'.

587
docs/Changes-2.0.txt Normal file
View File

@@ -0,0 +1,587 @@
DON'T EDIT THIS FILE - changes are now maintained in the reference
manual, see docs/reference/gtk/changes-*.sgml. Also, when adding a
change to the manual, you should amend the docs for all
newly-deprecated features to point to the replacement for that
feature, and be sure the GTK_DISABLE_DEPRECATED guards are in place in
the header files. Be sure to add a note to the docs for EACH
deprecated function; don't just do the changes-*.sgml change.
Incompatible Changes from GTK+-1.2 to GTK+-2.0:
* gtk_container_get_toplevels() was removed and replaced with
gtk_window_list_toplevels(), which has different memory management
on the return value (gtk_window_list_toplevels() copies the GList
and also references each widget in the list, so you have to
g_list_free() the list after first unref'ing each list member).
* The gdk_time* functions have been removed. This functionality
has been unused since the main loop was moved into GLib
prior to 1.2.
* The signature for GtkPrintFunc (used for gtk_item_factory_dump_items)
has been changed to take a 'const gchar *' instead of 'gchar *', to
match what we do for glib, and other similar cases.
* The detail arguments in the GtkStyleClass structure are now 'const gchar *'.
* gtk_paned_set_gutter_size() has been removed, since the small handle tab
has been changed to include the entire area previously occupied by
the gutter.
* gtk_paned_set_handle_size() has been removed, in favor of a style property,
since this is an option that only makes sense for themes to adjust.
* GDK no longer selects OwnerGrabButtonMask for button presses. This means
that the automatic grab that occurs when the user presses a button
will have owner_events = FALSE, so all events are redirected to the
grab window, even events that would normally go to other windows of the
window's owner.
* GtkColorSelectionDialog has now been moved into it's own set of files,
gtkcolorseldialog.c and gtkcolorseldialog.h.
* gtk_widget_shape_combine_mask() now keeps a reference count on the
mask pixmap that is passed in.
* the GtkPatternSpec has been moved to glib as GPatternSpec, the pattern
arguments to gtk_item_factory_dump_items() and gtk_item_factory_dump_rc()
have thusly been changed to take a GPatternSpec instead of GtkPatternSpec.
* Type system changes:
- GTK_TYPE_OBJECT is not a fundamental type anymore. Type checks of the
style (GTK_FUNDAMENTAL_TYPE (some_type) == GTK_TYPE_OBJECT)
will not work anymore. As a replacement, (GTK_TYPE_IS_OBJECT (some_type))
can be used now.
- The following types vanished: GTK_TYPE_ARGS, GTK_TYPE_CALLBACK,
GTK_TYPE_C_CALLBACK, GTK_TYPE_FOREIGN. The corresponding GtkArg
fields and field access macros are also gone.
- The following type aliases vanished: GTK_TYPE_FLAT_FIRST,
GTK_TYPE_FLAT_LAST, GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST.
- The type macros GTK_TYPE_MAKE() and GTK_TYPE_SEQNO() vanished, use of
GTK_FUNDAMENTAL_TYPE() is discouraged. Instead, the corresponding GType
API should be used: G_TYPE_FUNDAMENTAL(), G_TYPE_DERIVE_ID(),
G_TYPE_BRANCH_SEQNO(). Note that the GLib type system doesn't build new
type ids based on a global incremental sequential number anymore, but
numbers new type ids sequentially per fundamental type branch.
- The following type functions vanished/were replaced:
Old Function Replacement
gtk_type_query() - being investigated -
gtk_type_set_varargs_type() -
gtk_type_get_varargs_type() -
gtk_type_check_object_cast() g_type_check_instance_cast()
gtk_type_check_class_cast() g_type_check_class_cast()
gtk_type_describe_tree() -
gtk_type_describe_heritage() -
gtk_type_free() -
gtk_type_children_types() g_type_children()
gtk_type_set_chunk_alloc() GTypeInfo.n_preallocs
gtk_type_register_enum() g_enum_register_static()
gtk_type_register_flags() g_flags_register_static()
gtk_type_parent_class() g_type_parent() / g_type_class_peek_parent()
Use of g_type_class_ref() / g_type_class_unref() and g_type_class_peek()
is recommended over usage of gtk_type_class().
Use of g_type_register_static() / g_type_register_dynamic() is recommended
over usage of gtk_type_unique().
* Object system changes:
GtkObject derives from GObject, so is not the basic object type anymore.
This imposes the following source incompatible changes:
- GtkObject has no klass field anymore, an object's class can be retrived
with the object's coresponding GTK_<OBJECT>_GET_CLASS (object) macro.
- GtkObjectClass has no type field anymore, a class's type can be retrived
with the GTK_CLASS_TYPE (class) macro.
- GtkObjectClass does not introduce the finalize() and shutdown() methods
anymore. While shutdown() is intended for GTK+ internal use only, finalize()
is required by a variety of object implementations. GObjectClass.finalize
should be overriden here, e.g.:
static void gtk_label_finalize (GObject *gobject)
{
GtkLabel *label = GTK_LABEL (gobject);
G_OBJECT_CLASS (parent_class)->finalize (object);
}
static void gtk_label_class_init (GtkLabelClass *class)
{
GObjectClass *gobject_class = G_OBJECT_CLASS (class);
gobject_class->finalize = gtk_label_finalize;
}
- the GtkObject::destroy signal can now be emitted multiple times on an object.
::destroy implementations should check that make sure that they take this
into account, by checking to make sure that resources are there before
freeing them. For example:
if (object->foo_data)
{
g_free (object->foo_data);
object->foo_data = NULL;
}
Also, ::destroy implementations have to release object references that
the object holds. Code in finalize implementations such as:
if (object->adjustment)
{
gtk_object_unref (object->adjustment);
object->adjustment = NULL;
}
have to be moved into the ::destroy implementations. The reason for doing
this is that all object reference cycles should be broken at destruction
time.
Because the ::destroy signal can be emitted multiple times, it no longer
makes sense to check if a widget has been destroyed using the
GTK_OBJECT_DESTROYED() macro, and this macro has been removed. If
catching destruction is still needed, it can be done with a signal
connection to ::destroy.
* Signal system changes:
The Gtk 2.0 signal merly proxies the GSignal system now.
For future usage, direct use of the GSignal API is recommended,
this avoids significant performance hits where GtkArg structures
have to be converted into GValues. For language bindings,
GSignal+GClosure provide a much more flexible and convenient
mechanism to hook into signal emissions or install class default
handlers, so the old GtkSignal API for language bindings is not
supported anymore.
Functions that got removed in the Gtk signal API:
gtk_signal_n_emissions(), gtk_signal_n_emissions_by_name(),
gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
gtk_signal_remove_emission_hook(), gtk_signal_query().
Also, the GtkCallbackMarshal argument to gtk_signal_connect_full() is
not supported anymore.
For many of the removed functions, similar variants are available
in the g_signal_* namespace.
The GSignal system perfomrs emissions in a slightly different manner than
the old GtkSignal code. Signal handlers that are connected to signal "foo"
on object "bar" while "foo" is being emitted, will not be called anymore
during the emission they were connected within.
* Inserting and deleting text in GtkEntry though functions such
as gtk_entry_insert_text() now leave the cursor at its original
position in the text instead of moving it to the location of
the insertion/deletion.
* The ->label field of GtkFrame widgets has been removed. (As part of
a change to allow the arbitrary widgets in the title position.) The
text can now be retrieved with the new function gtk_frame_get_text().
* The 'font' and 'font_set' declarations in RC files are now ignored. There
is a new 'font_name' field that holds the string form of a Pango font
* A number of types in GDK have become subclasses of GObject. For the
most part, this should not break anyone's code. However, it's now
possible/encouraged to use g_object_ref()/g_object_unref() and other
GObject features with these GDK types. The converted types are:
GdkWindow, GdkDrawable, GdkPixmap, GdkImage, GdkGC, GdkDragContext,
GdkColormap
* All drawables including pixmaps used to have a type tag, the
GdkWindowType enumeration, which included GDK_WINDOW_PIXMAP.
GdkWindowType is now a property of GdkWindow _only_, and there is
no GDK_WINDOW_PIXMAP. You can use the GDK_IS_PIXMAP() macro to see
if you have a pixmap, if you need to know that.
* GtkStyle and GtkRcStyle are now subclasses of GObject as well. This
requires fairly extensive changes to theme engines quite badly, but
shouldn't affect most other code.
* xthickness/ythickness have moved from GtkStyleClass to GtkStyle
(from class to instance). This gives themes a bit more flexibility
and is generally more of the Right Thing. You can trivially fix
your code with s/style->klass->xthickness/style->xthickness/g and
same for ythickness.
* Some GtkStyle draw_ methods have been removed (cross, oval, ramp)
and others have been added (expander, layout). This will require
changes to theme engines.
* If you were using private GDK types, they have been rearranged
significantly. You shouldn't use private types. ;-)
* The visual for a widget, and also the default visual is now derived
from the colormap for the widget and the default colormap.
gtk_widget_set_visual(), gtk_widget_set_default_visual(), gtk_widget_push_visual()
and gtk_widget_pop_visual() now do nothing. Since the visual always
had to match that of the colormap, it is safe to simply delete
all references to these functions.
* A number of functions in GDK have been renamed for consistency and
clarity. #defines to provide backwards compatibility have been
included, but can be disabled by defineing GDK_DISABLE_DEPRECATED.
#define gdk_draw_pixmap gdk_draw_drawable
#define gdk_draw_bitmap gdk_draw_drawable
#define gdk_window_get_size gdk_drawable_get_size
#define gdk_window_get_type gdk_window_get_window_type
#define gdk_window_get_colormap gdk_drawable_get_colormap
#define gdk_window_set_colormap gdk_drawable_set_colormap
#define gdk_window_get_visual gdk_drawable_get_visual
#define gdk_window_ref gdk_drawable_ref
#define gdk_window_unref gdk_drawable_unref
#define gdk_bitmap_ref gdk_drawable_ref
#define gdk_bitmap_unref gdk_drawable_unref
#define gdk_pixmap_ref gdk_drawable_ref
#define gdk_pixmap_unref gdk_drawable_unref
#define gdk_gc_destroy gdk_gc_unref
#define gdk_image_destroy gdk_image_unref
#define gdk_cursor_destroy gdk_cursor_unref
(Note that g_object_ref() and g_object_unref() may be used for all of
the above _ref and _unref functions.)
#define gdk_window_copy_area(drawable,gc,x,y,source_drawable,source_x,source_y,width,height) \
gdk_draw_pixmap(drawable,gc,source_drawable,source_x,source_y,x,y,width,height)
#define gdk_rgb_get_cmap gdk_rgb_get_colormap
gtk_widget_popup() was removed, it was only usable for GtkWindows, and
there the same effect can be achived by gtk_widget_set_uposition() and
gtk_widget_show().
* gdk_pixmap_foreign_new() no longer calls XFreePixmap() on the
pixmap when the GdkPixmap is finalized. This change corresponds
to the behavior of gdk_window_foreign_new(), and fixes a lot
of problems with code where the pixmap wasn't supposed to be
freed. If XFreePixmap() is needed, it can be done using the
destroy-notification facilities of g_object_set_data().
* GtkProgress/GtkProgressBar had serious problems in GTK 1.2.
- Only 3 or 4 functions are really needed for 95% of progress
interfaces; GtkProgress[Bar] had about 25 functions, and
didn't even include these 3 or 4.
- In activity mode, the API involves setting the adjustment
to any random value, just to have the side effect of
calling the progress bar update function - the adjustment
is totally ignored in activity mode
- You set the activity step as a pixel value, which means to
set the activity step you basically need to connect to
size_allocate
- There are ctree_set_expander_style()-functions, to randomly
change look-and-feel for no good reason
- The split between GtkProgress and GtkProgressBar makes no sense
to me whatsoever.
This was a big wart on GTK and made people waste lots of time,
both learning and using the interface.
So, we have added what we feel is the correct API, and marked all the
rest deprecated. However, the changes are 100% backward-compatible and
should break no existing code.
The following 5 functions are the new programming interface and you
should consider changing your code to use them:
void gtk_progress_bar_pulse (GtkProgressBar *pbar);
void gtk_progress_bar_set_text (GtkProgressBar *pbar,
const gchar *text);
void gtk_progress_bar_set_fraction (GtkProgressBar *pbar,
gfloat fraction);
void gtk_progress_bar_set_pulse_step (GtkProgressBar *pbar,
gfloat fraction);
void gtk_progress_bar_set_orientation (GtkProgressBar *pbar,
GtkProgressBarOrientation orientation);
* The GtkNotebookPage structure has been removed from the public header files;
this was never meant to be a public structure, and all functionality that
could be done by accessing the struct fields of this structure should be
accesible otherwise.
* GtkMenuPositionFunc has a new parameter push_in which controls how
menus placed outside the screen is handled. If this is set to true and
part of the menu is outside the screen then Gtk+ pushes it into the visible
area. Otherwise the menu is cut of at the end of the visible screen area.
Regardles of what happens to the size of the menu, the result is always
that the items are placed in the same place as if the menu was placed
outside the screen, using menu scrolling if necessary.
* The "draw" signal and virtual method on GtkWidget has been removed.
All drawing should now occur by invalidating a region of the widget
(call gdk_window_invalidate_rect() or gtk_widget_queue_draw() for
example to invalidate a region). GTK+ merges all invalid regions,
and sends expose events to the widget in an idle handler for the
invalid regions. gtk_widget_draw() is deprecated but still works; it
adds the passed-in area to the invalid region and immediately sends
expose events for the current invalid region.
Most widgets will work fine if you just delete their "draw"
implementation, since they will already have working expose_event
implementations. The draw method was rarely called in practice
anyway.
* The GdkExposeEvent has a new region field. This can be used instead
of the area field if you want a more exact representation of the
area to update.
* Sending synthetic exposes using gtk_widget_event is no longer allowed.
If you just need an expose call you should use gdk_window_invalidate_rect()
or gdk_window_invalidate_region() instead. For the case of container
widgets that need to propagate expose events to NO_WINDOW children
you can either use gtk_container_propagate_expose(), or chain to the
default container expose handler.
* The draw_default and draw_focus methods/signals on GtkWidget are
gone; simply draw things in your expose handler.
gtk_widget_draw_focus() and gtk_widget_draw_default() wrapper
functions are also gone; just queue a draw on the widget,
or the part affected by the focus/default anyway.
Also, GtkWidget now has default implementations for focus_in_event
and focus_out_event. These set/unset GTK_HAS_FOCUS, and queue a
draw. So if your focus in/out handler just does that, you can delete
it.
* GtkText and GtkTree are buggy and broken. We don't recommend using
them, and changing old code to avoid them is a good idea. The
recommended alternatives are GtkTextView and GtkTreeView. The
broken widgets are not declared in the headers by default; to use
them, define the symbol GTK_ENABLE_BROKEN during compilation. In
some future release, these widgets will be removed from GTK+.
* GdkColorContext is gone; you probably weren't using it anyway.
Use GdkColormap and the gdk_rgb_* functions instead.
* GtkMenuBar now draws the GtkContainer::border_width space outside
the frame, not inside the frame
* In GTK 1.2, if an event handler returned TRUE it prevented
propagation of that event to parent widgets. That is, the
event signal would not be emitted on parent widgets. In
GTK 2.0, if an event handler returns TRUE, the current signal
emission on the current widget is immediately stopped. That is,
other callbacks connected to the signal will not be invoked.
* gtk_toolbar_new() no longer has arguments. This function
was broken because the default GtkToolbarStyle (icons, text, both)
is now a user preference, which is overridden when you call
gtk_toolbar_set_style(). The constructor forced everyone to
override the preference, which was undesirable. So to port
your app, decide if you want to force the toolbar style
or conform to the user's global defaults; if you want to force
it, call gtk_toolbar_set_style().
The orientation arg was removed from toolbar_new() as well, just
because it wasn't very useful and we were breaking the function
anyway so had an opportunity to lose it. Call
gtk_toolbar_set_orientation() to set toolbar orientation.
* GtkRange/GtkScrollbar/GtkScale were rewritten; this means that most
theme engines won't draw them properly, and any custom subclasses of
these widgets will need a rewrite (though if you could figure out
how to subclass the old version of GtkRange, you have our
respect). Also, GtkTroughType is gone.
* The GtkContainer::focus signal/virtualfunction and
gtk_container_focus() call were replaced by
GtkWidget::focus and gtk_widget_child_focus().
The semantics are the same, so you should be able to just
replace "container_class->focus = mywidget_focus" with
"widget_class->focus = mywidget_focus" and replace
gtk_container_focus() calls with gtk_widget_child_focus() calls.
The purpose of this change was to allow non-containers to have
focusable elements.
* gtk_rc_set_image_loader() and gtk_rc_load_image() has been removed, now
that GTK+ includes decent image loading capabilities itself.
* An extra GtkSettings argument has been added to
gtk_rc_find_pixmap_in_path(). This function is only actually useful
from a theme engine during parsing, at which point the GtkSettings
is provided.
* The child argument facility in gtkcontainer.c has been converted
to a child property facility using GParamSpec and other facilities
for GObject.
- The set_child_arg and get_child_arg virtual methods have been
replaced with set_child_property / get_child_property, which
work similar to GObject->set_property/get_property.
- Other removed functions with the replacements:
gtk_container_add_child_arg_type => gtk_container_class_install_child_property
gtk_container_query_child_args => gtk_container_class_list_child_properties
gtk_container_child_getv => gtk_container_child_set_property
gtk_container_child_setv => gtk_container_child_get_property
gtk_container_add_with_args => gtk_container_add_with_properties
gtk_container_addv => gtk_container_add / gtk_container_child_set_property
* gdk_image_get() (or rather its replacement,
gdk_drawable_get_image()) now handles errors properly by returning
NULL, previously it would crash. Also, a window being offscreen is
no longer considered an error; instead, the area being contains
undefined contents for the offscreen areas. In most cases, code
using gdk_image_get() should really be ported to
gdk_pixbuf_get_from_drawable().
* gtk_widget_set_usize() has been renamed to
gtk_widget_set_size_request(), however the old name still exists
unless you define GTK_DISABLE_DEPRECATED.
* gtk_widget_set_uposition() is deprecated; use gtk_window_move(),
gtk_fixed_put(), or gtk_layout_put() instead.
* gtk_window_set_policy() is deprecated. To get the effect of
"allow_shrink", call gtk_widget_set_size_request(window, 0, 0). To
get the effect of "allow_grow", call
gtk_window_set_resizable(window, TRUE). You didn't want the effect
of auto_shrink, it made no sense. But maybe if you were using it you
want to use gtk_window_resize (window, 1, 1) to snap a window back
to its minimum size (the 1, 1 will be rounded up to the minimum
window size).
* The core GTK+ now takes care of handling mapping, unmapping and
realizing the child widgets of containers in
gtk_widget_set_parent(). In most cases, this allows container
implementations to be simplifid by removing the code in add()
methods to map and realize children. However, there are
a couple of things to watch out for here:
- If the parent is realized before the add() happens,
gtk_widget_set_parent_window() must be called before
gtk_widget_set_parent(), since gtk_widget_set_parent()
will realize the child.
- If a container depended on its children not being mapped
unless it did so itself (for example, GtkNotebook only
mapped the current page), then the new function
gtk_widget_set_child_visible() must be called to keep
widgets that should not be mapped not mapped.
As part of this change, most containers also will no longer need
custom implementations of the map() and unmap() virtual
functions. The only cases where this is necessary are:
- For !NO_WINDOW widgets, if you create children of widget->window
and don't map them in realize() then you must map them
in map(). [ In almost all cases, you can simply map the
windows in realize() ]
- For NO_WINDOW widgets, if you create windows in your realize()
method, you must map then in map() and unmap them in unmap().
* gtk_widget_set_default_style (), gtk_widget_push_style (),
and gtk_widget_pop_style () have been removed, since they
did not work properly with themes and there were better
alternatives for modifying the appearance of widgets.
You should generally use gtk_widget_modify_fg/bg/base/text/font
instead.
* gtk_image_new() now takes no arguments and creates an empty GtkImage
widget. To create a GtkImage widget from a GdkImage (the least
common usage of GdkImage), use gtk_image_new_from_image.
* GTK_SELECTION_EXTENDED is now deprecated, and neither the
GtkList/GtkTree nor the GtkCList/GtkCTree support
GTK_SELECTION_EXTENDED anymore. However, the old extended behavior
replaces MULTIPLE behavior.
* The following variables are no longer exported from GDK. (Other variables
are also no longer exported; the following are the ones found used
externally in a large sample of GTK+ code.)
Variable Replacement
======== ===========
gdk_null_window_warnings None - did nothing in GTK+-1.2.
gdk_leader_window None - private variable
gdk_screen gdk_x11_get_default_screen ()
gdk_root_window gdk_x11_get_default_root_xwindow ()
gdk_root_parent gdk_get_default_root_window ()
gdk_error_code/gdk_error_warnings gdk_error_trap_push()/pop()
gdk_display_name gdk_get_display ()
gdk_wm_delete_window gdk_atom_intern ("WM_DELETE_WINDOW", FALSE)
gdk_wm_take_focus gdk_atom_intern ("WM_TAKE_FOCUS", FALSE)
gdk_wm_protocols gdk_atom_intern ("WM_PROTOCOLS", FALSE)
* The handling of Colormaps and widgets has been changed:
- The default colormap for widgets is now the GdkRGB colormap, not
the system default colormap. If you try to use resources created for
a widget (e.g., widget->style) with a window using the system
colormap, errors will result on some machines.
- gtk_widget_push/pop_colormap() only cause the colormap to be
explicitely set on toplevel widgets not on all widgets. The
colormap for other widgets (when not set using
gtk_widget_set_colormap()), is determined by finding the nearest
ancestor with a colormap set on it explicitely, or if that
fails, the default colormap.
* The default selected day for GtkCalendar is now the current day in the
month, not the first day in the month. The current month and year
were already used.
* GDK is no longer put into threaded mode automatically when
g_thread_init() has been called. In order to use the
global GDK thread mutex with gdk_threads_enter() and
gdk_threads_leave(), you must call gdk_threads_init() explicitely.
If you aren't using GDK and GTK+ functions from multiple threads,
there is no reason to call gdk_threads_init().
* The GtkPreviewInfo struct has had its visual and colormap fields
removed. Also, gtk_preview_get_cmap() and gtk_preview_get_visual()
are deprecated, as GdkRgb works on any colormap and visual. You no
longer need to gtk_widget_push_cmap (gtk_preview_get_cmap ()) in
your code.
* The GtkBox, GtkTable, and GtkAlignment widgets now call
gtk_widget_set_redraw_on_allocate (widget, FALSE); on themselves.
If you want to actually draw contents in a widget derived from
one of these widgets, you'll probably want to change this
in your init() function.
* A number of widgets are now NO_WINDOW widgets (most importantly
GtkButton, but also GtkRange and GtkNotebook)
This has a couple of effects:
- If you are deriving from one of these widgets, you need to
adapt your code appropriately -- for instance, drawing coordinates
start from widget->allocation.x, widget->allocation.y.
- If you are embedding one of these widgets in a custom widget,
you must make sure you call gtk_container_propagate_expose()
correctly, as you must for any NO_WINDOW widgets.
GtkFixed is a little special; it is now created by default as
a NO_WINDOW widget, but if you do
gtk_fixed_set_has_window (fixed, TRUE);
after creating a fixed widget, it will create a window and
handle it properly.
* GtkLayout no longer has the xoffset, yoffset fields, which used
to store the difference between world and window coordinates for
layout->bin_window. These coordinate systems are now always
the same.
* gtk_paint_focus(), gtk_draw_focus() and GtkStyle::draw_focus()
have been changed a bit:
- A GtkStateType argument has been added to gtk_paint_focus()
- The default implementation of GtkStyle::draw_focus virtual
function now draws a focus rectangle whose width is
determinted by the GtkWidget::focus-width style property.
- The rectangle passed in is the bounding box, instead of
the rectangle used in the gdk_draw_rectangle() call, so it is
no longer necessary to subtract 1 from the width and height.
DON'T EDIT THIS FILE - changes are now maintained in the reference
manual, see docs/reference/gtk/changes-*.sgml. Also, when adding a
change to the manual, you should amend the docs for all
newly-deprecated features to point to the replacement for that
feature, and be sure the GTK_DISABLE_DEPRECATED guards are in place in
the header files. Be sure to add a note to the docs for EACH
deprecated function; don't just do the changes-*.sgml change.

View File

@@ -1,201 +1,20 @@
## Process this file with automake to produce Makefile.in
info_TEXINFOS = gdk.texi gtk.texi
SUBDIRS = tutorial faq reference
man_MANS = gtk-config.1
TUTORIAL_FR_FILES=html/gtk_tut_fr-1.html \
html/gtk_tut_fr-2.html \
html/gtk_tut_fr-3.html \
html/gtk_tut_fr-4.html \
html/gtk_tut_fr-5.html \
html/gtk_tut_fr-6.html \
html/gtk_tut_fr-7.html \
html/gtk_tut_fr-8.html \
html/gtk_tut_fr-9.html \
html/gtk_tut_fr-10.html \
html/gtk_tut_fr-11.html \
html/gtk_tut_fr-12.html \
html/gtk_tut_fr-13.html \
html/gtk_tut_fr-14.html \
html/gtk_tut_fr-15.html \
html/gtk_tut_fr-16.html \
html/gtk_tut_fr-17.html \
html/gtk_tut_fr-18.html \
html/gtk_tut_fr-19.html \
html/gtk_tut_fr-20.html \
html/gtk_tut_fr-21.html \
html/gtk_tut_fr-22.html \
html/gtk_tut_fr-23.html \
html/gtk_tut_fr-24.html \
html/gtk_tut_fr.html text/gtk_tut_fr.txt
TUTORIAL_FILES=text/gtk_tut.txt html/gtk_tut.html \
html/gtk_tut.html \
html/gtk_tut-1.html \
html/gtk_tut-2.html \
html/gtk_tut-3.html \
html/gtk_tut-4.html \
html/gtk_tut-5.html \
html/gtk_tut-6.html \
html/gtk_tut-7.html \
html/gtk_tut-8.html \
html/gtk_tut-9.html \
html/gtk_tut-10.html \
html/gtk_tut-11.html \
html/gtk_tut-12.html \
html/gtk_tut-13.html \
html/gtk_tut-14.html \
html/gtk_tut-15.html \
html/gtk_tut-16.html \
html/gtk_tut-17.html \
html/gtk_tut-18.html \
html/gtk_tut-19.html \
html/gtk_tut-20.html \
html/gtk_tut-21.html \
html/gtk_tut-22.html \
html/gtk_tut-23.html \
html/gtk_tut-24.html \
html/gtk_tut-25.html \
html/gtk_tut-26.html \
html/gtk_tut-27.html \
html/gtk_tut-28.html \
html/gtk_tut-29.html \
html/gtk_tut-30.html \
html/gtk_tut-31.html
TUTORIAL_IT_FILES= html/gtk_tut_it.html \
html/gtk_tut_it-1.html \
html/gtk_tut_it-2.html \
html/gtk_tut_it-3.html \
html/gtk_tut_it-4.html \
html/gtk_tut_it-5.html \
html/gtk_tut_it-6.html \
html/gtk_tut_it-7.html \
html/gtk_tut_it-8.html \
html/gtk_tut_it-9.html \
html/gtk_tut_it-10.html \
html/gtk_tut_it-11.html \
html/gtk_tut_it-12.html \
html/gtk_tut_it-13.html \
html/gtk_tut_it-14.html \
html/gtk_tut_it-15.html \
html/gtk_tut_it-16.html \
html/gtk_tut_it-17.html \
html/gtk_tut_it-18.html \
html/gtk_tut_it-19.html \
html/gtk_tut_it-20.html \
html/gtk_tut_it-21.html \
html/gtk_tut_it-22.html \
html/gtk_tut_it-23.html \
html/gtk_tut_it-24.html \
text/gtk_tut_it.txt
FAQ_FILES=html/gtkfaq.html \
html/gtkfaq-1.html \
html/gtkfaq-2.html \
html/gtkfaq-3.html \
html/gtkfaq-4.html \
html/gtkfaq-5.html \
html/gtkfaq-6.html \
html/gtkfaq-7.html \
text/gtkfaq.txt
html/gtk_tut_table.gif: gdk.html gtk.html
.PHONY: html htmldir faq tutorial tutorial_it tutorial_fr files
distdocs: gdk.html gtk.html faq tutorial tutorial_it tutorial_fr
htmldir:
(cd $(srcdir); mkdir -p html; cp gtk_tut*gif html)
textdir:
mkdir -p $(srcdir)/text
gdk.html gdk_toc.html: gdk.texi
(cd $(srcdir); texi2html gdk.texi)
gtk.html gtk_toc.html: gtk.texi
(cd $(srcdir); texi2html gtk.texi)
html/gdk.html html/gdk_toc.html: htmldir gdk.html gdk_toc.html
(cd $(srcdir); cp gdk.html gdk_toc.html html/)
html/gtk.html html/gtk_toc.html: htmldir gtk.html gtk_toc.html
(cd $(srcdir); cp gtk.html gtk_toc.html html/)
$(FAQ_FILES): faq
faq: htmldir textdir
(cd $(srcdir); sgml2html gtkfaq.sgml; \
perl gtkdocs_fix gtkfaq*html; \
mv gtkfaq*html html/; \
sgml2txt gtkfaq.sgml; \
mv gtkfaq.txt text/)
$(TUTORIAL_FILES): tutorial
$(TUTORIAL_FR_FILES): tutorial_fr
$(TUTORIAL_IT_FILES): tutorial_it
tutorial: htmldir textdir
(cd $(srcdir); sgml2html gtk_tut.sgml; \
perl gtkdocs_fix gtk_tut*html; \
mv gtk_tut*html html/; \
sgml2txt gtk_tut.sgml; \
mv gtk_tut.txt text/)
tutorial_it: htmldir textdir
(cd $(srcdir); sgml2html --language=it gtk_tut_it.sgml; \
perl gtkdocs_fix gtk_tut_it*html; \
mv gtk_tut_it*html html/; \
sgml2txt --language=it gtk_tut_it.sgml; \
mv gtk_tut_it.txt text/)
tutorial_fr: htmldir textdir
(cd $(srcdir); sgml2html --language=fr gtk_tut_fr.sgml; \
perl gtkdocs_fix gtk_tut_fr*html; \
mv gtk_tut_fr*html html/; \
sgml2txt --language=fr gtk_tut_fr.sgml; \
mv gtk_tut_fr.txt text/)
files:
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
echo $$p; \
done
EXTRA_DIST += \
Changes-1.2.txt \
EXTRA_DIST = \
debugging.txt \
defsformat.txt \
developers.txt \
dnd_internals.txt \
make-todo \
refcounting.txt \
sizing-test.txt \
styles.txt \
text_widget.txt \
tree-column-sizing.txt \
widget_geometry.txt \
widget_system.txt \
generation.txt \
gtk-config.txt \
gtk-config.1.in \
texinfo.tex \
macros.texi \
gtkdocs_fix \
gtkfaq.sgml \
gtk_tut.sgml \
gtk_tut_it.sgml \
gtk_tut_fr.sgml \
gtk_tut_packbox1.gif \
gtk_tut_packbox2.gif \
html/gtk_tut_table.gif \
html/gtk_tut_packbox1.gif \
html/gtk_tut_packbox2.gif \
gtk_tut_table.gif \
html/gdk.html \
html/gdk_toc.html \
html/gtk.html \
html/gtk_toc.html \
$(TUTORIAL_FILES) \
$(TUTORIAL_FR_FILES) \
$(TUTORIAL_IT_FILES) \
$(FAQ_FILES)
gtkdocs_fix

157
docs/README.linux-fb Normal file
View File

@@ -0,0 +1,157 @@
THIS FILE IS OBSOLETE - use docs/reference/gtk/framebuffer.sgml
About GtkFB:
------------
The linux-fb port of Gtk+, also known as GtkFB is an implementation of
gdk (and therefor gtk) that runs on the linux framebuffer. It runs in
a single process that doesn't need X. It should run most Gtk+ programs
without any changes to the source.
Build requirements:
-------------------
To run GtkFB programs you will need glib, pango and gtk from cvs
HEAD. Make sure you update these at the same time, since changes to
glib and pango often forces changes in gtk+. Pango optionally depends
on libfribidi, but for normal GtkFB usage that can be ignored.
You also need freetype 2, I recommend that you use freetype 2.0.1 or
later, as there was some problems with freetype-config in 2.0.
Make sure that you install freetype before pango, since pango also
needs it.
Freetype can be found at ftp://ftp.freetype.org
Hardware requirements:
----------------------
You need a graphics card with an availible framebuffer driver that can
run in 8, 16, 24 or 32 bpp. I use the matroxfb driver, but i.e. vesafb
should work too. You also need a supported mouse. Currently supported
is ps2 mouse, ms serial mouse and fidmour touchscreen.
Building and installing:
------------------------
First build and install glib and pango as usual, in that order.
Then configure Gtk by running configure (or autogen.sh if running from
cvs) with --with-gdktarget=linux-fb.
Then compile as ususal: make; make install
Fonts:
------
Since GtkFB uses freetype 2 to render fonts it can render truetype and
postscript type 1 antialiased fonts.
At startup it scans some directories looking for fonts. By default
it looks in $prefix/lib/ft2fonts, and if you want to change this you
must add something like:
[PangoFT2]
FontPath = /usr/share/fonts/default/Type1:/usr/share/fonts/default/TrueType
To your $prefix/etc/pango/pangorc or ~/.pangorc.
You must also set up font aliases for the fonts Sans, Serif and Monotype.
This is done by creating a $prefix/etc/pango/pangoft2.aliases or
~/.pangoft2_aliases file. You can also set the name of this file using the
key AliasFiles in the PangoFT2 section in pangorc.
An example of a font alias file for the urw fontset is:
sans normal normal normal normal "urw gothic l"
serif normal normal normal normal "urw palladio l"
monospace normal normal normal normal "nimbus mono l"
And one using the Windows truetype fonts is:
sans normal normal normal normal "arial"
serif normal normal normal normal "times new roman"
monospace normal normal normal normal "courier new"
A more detailed example can be found in examples/pangoft2.aliases in the
pango distribution.
Running:
--------
To run a program you should only need to start it, but there are some
things that can cause problems, and some things that can be controlled
by environment variables. Try testgtk distributed with gtk+ to test
if things work.
If you use a ps2 mouse, make sure that /dev/psaux is readable and
writable.
Make sure gpm is not running.
If you don't specify anything GtkFB will start up in the current
virtual console in the current resolution and bit-depth. This can be
changed by specifying environment variables:
GDK_VT:
unset means open on the current VT.
0-9: open on the specified VT. Make sure you have read/write rights
there.
new: Allocate a new VT after the last currently used one.
GDK_DISPLAY_MODE:
Specifies the name of a mode in /etc/fb.modes that you want to use.
GDK_DISPLAY_DEPTH:
Specify the desired bit depth of the framebuffer.
GDK_DISPLAY_WIDTH:
Specify the desired width of the framebuffer.
GDK_DISPLAY_HEIGHT:
Specify the desired height of the framebuffer.
GDK_DISPLAY:
Specify the framebuffer device to use. Default is /dev/fb0
GDK_MOUSE_TYPE:
Specify mouse type. Currently supported is:
ps2 - PS/2 mouse
imps2 - PS/2 intellimouse (wheelmouse)
ms - Microsoft serial mouse
fidmour - touch screen
Default is ps2.
GDK_KEYBOARD_TYPE:
Specify keyboard type. Currently suppored is
xlate - normal tty mode keyboard.
Quite limited, cannot detect key up/key down events. Doesn't
handle ctrl/alt/shift for all keys. This is the default driver,
but should not be used in "production" use.
raw - read from the tty in RAW mode.
Sets the keyboard in RAW mode and handles all the keycodes. This
gives correct handling of modifiers and key up/down events. You
must be root to use this. If you use this for development or
debugging it is recommended to enable magic sysrq handling in the
kernel. Then you can use ALT-SysRQ-r to turn the keyboard back to
normal mode.
Default is xlate.
HACKING:
--------
Pressing Ctrl-Alt-Return repaints the whole screen.
Unfortunately this cannot be pressed when using the xlate keyboard
driver, so instead you can use shift-F1 instead when using this
driver.
Pressing Ctrl-Alt-BackSpace kills the GtkFB program. (Can't be pressed
in the xlate driver.
More to be written.
- Alexander Larsson <alexl@redhat.com>
2000/12/06

View File

@@ -19,7 +19,7 @@ G_DISABLE_ASSERT
G_DISABLE_CHECKS
If set, disable the g_return_if_fail and g_return_val_if_fail macros
GTK_NO_CHECK_CASTS
G_DISABLE_CAST_CHECKS
If set, don't check casts between different object types
@@ -28,7 +28,7 @@ time by the --enable-debug option.
--enable-debug=minimum [default]
Enable only inexpensive sanity checking
sets GTK_NO_CHECK_CASTS
sets G_DISABLE_CAST_CHECKS
--enable-debug=yes
Enable all debugging support
@@ -36,10 +36,16 @@ time by the --enable-debug option.
--enable-debug=no (or --disable-debug)
Disable all debugging support (fastest)
sets G_DISABLE_ASSERT, G_DISABLE_CHECKS, and GTK_NO_CHECK_CASTS
sets G_DISABLE_ASSERT, G_DISABLE_CHECKS, and G_DISABLE_CAST_CHECKS
Note that !G_DISABLE_CHECKS and --enable-debug=no are to be considered
not only fast, but dangerous as they tend to destabilize even mostly
bug-free software by changing the effect of many bugs from simple warnings
into fatal crashes. Thus --enable-debug=no should *not* be used for
stable releases of gtk+.
RUN TIME OPTIONS
RUNTIME OPTIONS
----------------
At run time, if GTK+ was compiled with debugging enabled, different
@@ -67,15 +73,9 @@ For instance:
runs testgtk with the 'misc' and 'events' debugging options.
GTK_DEBUG
---------
See glib/docs/debugging.txt for information about debugging signal emission
and the object system.
Application relevant options:
'objects' - Trace the creation and destruction of objects, print
out a summary at program termination
Options only interesting to library maintainers:
GDK_DEBUG
---------
@@ -88,10 +88,19 @@ runs testgtk with the 'misc' and 'events' debugging options.
'misc' - Miscellaneous information
'dnd' - Information about drag-and-drop
'color-context' - Information about the internal workings of
GdkColorContext
'xim' - Information about X Input Method support
- Owen Taylor <owt1@cornell.edu>
98/02/19
GTK_DEBUG
---------
Options only interesting to library maintainers:
'misc' - Miscellaneous information
'text' - Information about text widget internals
'tree' - Information about tree widget internals
'updates' - Visual feedback about window updates
- 2001-08-13 Matthias Clasen
- 98/02/19 Owen Taylor

Some files were not shown because too many files have changed in this diff Show More