Commit Graph

31 Commits

Author SHA1 Message Date
Tor Lillqvist
0b4d29fd6e Merge in Win32 version: Define macro GDKVAR for declaring gdk variables
* gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
declaring gdk variables exported/imported from the DLL. New image
type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
GDK_DRAG_PROTO_OLE2.

* gdk/gdk.h: Merge in Win32 version: Two new functions,
gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
declared only for the Win32 version, but could be in the X11
version as well. (Needed for a Xlib-less gdk_imlib.)
gdk_color_hash should have only one parameter. Declare
gdk_threads_mutex with GDKVAR.

* gdk/gdkcolor.c (gdk_color_hash): As a hash function should have
just one parameter.

* gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
per pixel, not bits.

* gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
Fetch bpp (which means bits-per-pixel here) from another place on
Win32. Accept also depth==32 (which we might get on Win32) with
bpp==32.

* gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
in the backend-dependent directory, not in the common gdk
directory.

* gtk/testgtk.c: Ditto. Also, don't use ../gdk patchs to gdk
headers.
1999-03-17 23:02:10 +00:00
CST 1999 Shawn T. Amundson
279e878bdd Added notice to look in AUTHORS and ChangeLog files for a list of changes.
Wed Feb 24 01:22:39 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * *.[ch]: Added notice to look in AUTHORS and ChangeLog files
	  for a list of changes.
1999-02-24 07:37:18 +00:00
Owen Taylor
c3a4205cfa Moved entry->visible into editable class. (Leave it behind deprecated for
Tue Feb  9 19:39:32 1999  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.[ch] gtk/gtkeditable.h: Moved
	  entry->visible into editable class. (Leave it
	  behind deprecated for compatibility)

	* gtk/gtkeditable.c: If not editable->visible,
	  return *'s for clipboard and selection.
1999-02-10 00:39:49 +00:00
Owen Taylor
6a690c6d3f Add flags field to GtkTargetEntry table.
Fri Jan 22 19:22:39 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkeditable.c: Add flags field to
	 GtkTargetEntry table.

	* gdk/gdkwindow.c (gdk_window_is_viewable): Treat foreign
	 windows as always viewable, since we can't track their
	 map-state reliably without speed problems. (Fixes
	 problem where updating didn't occur properly within
	 GtkPlug)
1999-01-23 20:31:42 +00:00
George Lebl
234d762ec3 free the event that was returned to us by gtk_get_current_event
Tue Jan 05 21:18:00 1999  George Lebl  <jirka@5z.com>

        * gtk/gtkmenu.c,gtk/gtkmenuitem.c,gtk/gtkeditable.c: free the
          event that was returned to us by gtk_get_current_event
1999-01-06 05:19:15 +00:00
Jeff Garzik
7433badf8e Check for features.h.
* configure.in, config.h.in:
        Check for features.h.

        * gdk/gdkevents.c (gdk_event_put, gdk_events_queue):
        Fixed bug in linked list append logic by replacing hand-coded
        logic with a call to g_list_append.  Bug found by tml.

        * gdk/gdkimage.c:
        'gcc -ansi -pedantic' on GNU/Linux spews warnings and errors
        in sys/ipc.h, including one specific admonishment to use
        _SVID_SOURCE or _XOPEN_SOURCE.  Manually defined the latter, and
        included features.h if present to obtain the necessary
        side-effects.

        * gtk/gtkclist.c, gtk/gtkeditable.c:
        Eliminates comma-after-final-element warnings.

        * gtk/gtkfontsel.c (gtk_font_selection_init):
        Fixed bug where an intl string was declared as _("x") in
        local var initializer.
1999-01-01 23:36:32 +00:00
Owen Taylor
207757e70d Destroy widgets _after_ propagating unrealize signals through the widget
Mon Dec  7 10:27:09 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
	signals through the widget heirarchy. This is unpleasant, as it
	causes more X traffic, but is necessary, because we have to clean
	up our Input Contexts before destroying the X windows.
	(from matsu-981109-0.patch)

Mon Dec  7 10:18:18 1998  Owen Taylor  <otaylor@redhat.com>

	Applied gtk-a-higuti-981202-0 :
	[ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]

	* gdk/gdk.h gdk/gdk.c
		(gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
			implemented by a combination of Xlib functions, so
			it works even with X_LOCALE.
		(gdk_wcstombs): New function.
		(g_mbtowc): Removed. No longer needed.

	* gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c:
	        Added _wc() variants to gdk_text_width(),
		gdk_char_width(), gdk_draw_text(),

	* gdk/gdki18n.h
		(mblen, mbtowc, wctomb, mbstowcs, wcstombs,
		 wcslen, wcscpy, wcsncpy):
			Removed. No longer needed.
		(iswalnum): Removed.
		(gdk_iswalnum): New macro.
		(gdk_iswspace): New macro.
	* gdk/gdktype.h
		(GdkWChar): New typedef.

	* gtk/gtkentry.h, gtk/gtkentry.c
		There are many changes according to the change of the
		internal representation of text, from multibyte string
		to wide characters.
	* gtk/gtkprivate.h, gtk/gtkmain.c
		Removed the variable gtk_use_mb and related codes.
	* gtk/gtkspinbutton.c
		Some changes according to the change of type of entry->text.
	* gtk/gtktext.h, gtk/gtktext.c
		Changed the internal representation of text. We use GdkWchar
		if a fontset is supplied. If not, we use guchar to save
		memory.
1998-12-09 06:36:57 +00:00
Elliot Lee
060978e069 I submitted this patch twice to gtk-devel-list, and received no comments,
I submitted this patch twice to gtk-devel-list, and received no comments, so
am committing it.  Although not exhaustively tested, I have been using this
gtk+ for a week w/o problems, and I did read the code to ensure that nothing
ever writes to these data structures. If by chance people encounter SEGV's in
gtk+ code that is setting values in global data structures, this patch could
be a possible culprit.

1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>

	* {gdk,gtk}/*.c: Make read-only data structures "static const" to
	allow them to be shared, mainly including (but not limited to) the
	GtkTypeInfo structures for each class.

	* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
1998-11-30 19:07:15 +00:00
Owen Taylor
f7bcb45607 Added a modular client-message-filter mechanism, that is used for the DND
Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
	mechanism, that is used for the DND messages.

	  Removed all the old DND code.

	* gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
	get the visual of a given colormap.

	* gtk/gtkcolorsel.c: Conversion to new DND, drag
	a color-swatch.

	* gdk/gdk.h gdk/gdkdnd.c: The low-level
	X oriented portions of drag and drop protocols.
	Sending and receiving client messages, and navigating
	window trees.

	* gdk/gdkimage.c: added a gdk_flush() when destroying
	SHM images to hopefully make it more likely that
        X will gracefully handle the segment being destroyed.

	* gdk/gdkprivate.h gtk/gtkdebug.h: Add new
	DND debugging flags.

	* gtk/gtkeditable.[ch]: Updates for the selection handling
	changes.

	* gtk/gtkselection.[ch]: Added GtkTargetList, a
	refcounted data structure for keeping track of lists
	of GdkAtom + information. Removed selection_handler_add
	in favor of a "drag_data_get" signal.

	* gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
	dependent) parts of the DND protocols, display of drag icons,
	drag-under highlighting, and the "default handlers".

	* gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
	windows that are used for reliable pointer grabs and
	selection handling in the DND code.

	* gtk/testdnd.c: New test program for new DND. (Old
	DND tests in testgtk still need to be converted.)

	* gtk/testselection.c: Use the new selection API.

	* docs/dnd_internals: Start at describing how
	all the new code works inside.

	* docs/Changes-1.2.txt: New file describing source-incompatible
	changes in GTK+-1.2.

Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkwindow.c (gdk_window_remove_filter): Free
	the right list node.

	* gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
	to the XID table so we can receive events on it.

Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
	to get the timestamp from a generic event.

Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_add_events): Added function
	that safely adds additional events to a widget's event
	mask, even if the widget has previously been realized.
	(We can do this, but not remove events from the event
	 mask).

Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
	for AnyPropertyType.

Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkproperty.c (gdk_atom_intern): Add client-local
	hashing.

Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
	isn't a timestamp.

Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_event_translate): Removed printing
	of unknown window lookup warnings. (Made it
	a GDK_NOTE) - they happen in many circumstances.
1998-10-18 22:51:24 +00:00
Tim Janik
47215ba403 removed gtk_input_add_interp.
Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c: removed gtk_input_add_interp.

        * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
        keyword.
        (gtk_editable_get_event_time): fix default: case.

        * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.

        * gdk/gdkpixmap.c: made a bunch of unexported functions static.

        * gdk/gdkcolor.c:
        * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
        of our functions.

        * various minor compilation cleanups, such as bogus commas in
        enums and similar things.

M
1998-08-17 14:48:51 +00:00
Owen Taylor
ca7082a04a Removed has_cursor, set the cursor beginning of Text when creating the
Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.[ch]: Removed has_cursor, set the cursor
	  beginning of Text when creating the Text widget.

	* gtk/testgtk.c: Grab the focus on the text widget so
	  as to test out the above.

Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
	  ::changed is a notification signal and should have no default
	  handler. A complete redraw of the Text widget does _not_ need to
	  be done on every text insertion.

Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
	(gtk-abilleira-072198-patch)

	* gtk/gtkwindow.[ch]:
	  Add gtk_window_set_modal() which sets a flag; when
	  set the window does a gtk_grab_add() when the window
	  is shown, and a gtk_grab_remove() when the window
	  is hidden.

	* gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
	  that case will run "Create Dir","Delete File" and "Rename File"
	  dialogs as modal too.

	* gtk/testgtk.c: Added a button with an example of creating modal
	  dialog boxes. Including file selection and color selection standard
	  dialogs.

Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
	  Removed CAN_FOCUS by default from scrollbars, button
	  children of toolbar. (But not GDK_TOOLBAR_CHILD_WIDGET children)
	  (Scrollbar definitely good change, toolbar bit more questionable)
1998-08-11 19:06:18 +00:00
Elliot Lee
7c30f2a15f Use common marshalling routines instead of having widget-private ones. It
Use common marshalling routines instead of having widget-private ones.
It compiles & links.

testgtk segfaults. I'm convinced that is Somebody Else's Problem
(marshalling routine gets func_data=0x0 and blithely passes it on) but the
fact that it happens now & not before makes me wrong :-)
1998-07-21 04:13:42 +00:00
Tim Janik
81517a6d4c signdness corrections all ove the place. implementation of object
Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtknotebook.h:
        * gtk/gtknotebook.c: signdness corrections all ove the place.
        implementation of object arguments: GtkNotebook::enable_popup,
        GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
        GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
        begun implementation of child args, we have GtkNotebook::tab_label, but
        GtkNotebook::menu_label and GtkNotebook::position still lack the
        implementation.
        (gtk_notebook_remove_page):
        (gtk_notebook_current_page): allow negative indices (-1) as alias for
        the last page.

        * gtk/gtkentry.h:
        * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
        arguments GtkEntry::max_length and GtkEntry::visibility.
        (gtk_entry_adjust_scroll): queue a redraw.

        * gtk/gtkeditable.h:
        * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
        object arguments GtkEditable::text_position and GtkEditable::editable.
        new (action) signal GtkEditable::set_editable.
        provide a default handler for GtkEditable::changed that queues a redraw.

        * gtk/gtktext.h:
        * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
        set_editable.
1998-07-16 20:23:12 +00:00
Tim Janik
90408c4641 changed reversed_[12] to reserved_[12] in gtk_*_get_type functions.
Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>

        * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
        functions.

        * gdk/gdkwindow.c:
        * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
        to XFree() calls.
1998-07-04 15:31:30 +00:00
Tim Janik
e63d08e43f call the base class init fucntions from all parent types upon class
Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
	fucntions from all parent types upon class initialization.

	* gtk/gtkcontainer.c:
 	(gtk_container_get_type): announce gtk_container_base_class_init to
 	the type system.
	(gtk_container_base_class_init): new function to feature base class
	initialization.
	(gtk_container_get_child_arg):
	(gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
	and set_child_arg methods of the class indicated through the argument
	name.

	* gtk/gtkobject.c:
	(gtk_object_base_class_init): new function to feature base class
 	initialization.
	(gtk_object_init_type): announce gtk_object_base_class_init to the type
	system.
	(gtk_object_class_init): setup the get_arg and set_arg pointers for
	GtkObjectClass.
	(gtk_object_setv):
 	(gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
 	instead of bothering the type system with this.

	* gtk/gtkaccellabel.c:
	* gtk/gtkbutton.c:
	* gtk/gtkradiobutton.c:
	* gtk/gtktable.c:
	* gtk/gtktogglebutton.c:
	* gtk/gtktipsquery.c:
	* gtk/gtkbox.c:
	* gtk/gtkpacker.c:
	* gtk/gtkwidget.c:
	* gtk/gtkwindow.c:
	* gtk/gtkframe.c:
	* gtk/gtkmisc.c:
	* gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
	corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
	functions wrt GtkTypeInfo initialization. changed a lot of the set/get
	arg functions to take a GtkObject argument.

	gtk/gtkadjustment.c:
	gtk/gtkalignment.c:
	gtk/gtkarrow.c:
	gtk/gtkaspectframe.c:
	gtk/gtkbbox.c:
	gtk/gtkbin.c:
	gtk/gtkcheckbutton.c:
	gtk/gtkcheckmenuitem.c:
	gtk/gtkclist.c:
	gtk/gtkcolorsel.c:
	gtk/gtkcombo.c:
	gtk/gtkctree.c:
	gtk/gtkcurve.c:
	gtk/gtkdata.c:
	gtk/gtkdialog.c:
	gtk/gtkdrawingarea.c:
	gtk/gtkeditable.c:
	gtk/gtkentry.c:
	gtk/gtkeventbox.c:
	gtk/gtkfilesel.c:
	gtk/gtkfixed.c:
	gtk/gtkfontsel.c:
	gtk/gtkgamma.c:
	gtk/gtkhandlebox.c:
	gtk/gtkhbbox.c:
	gtk/gtkhbox.c:
	gtk/gtkhpaned.c:
	gtk/gtkhruler.c:
	gtk/gtkhscale.c:
	gtk/gtkhscrollbar.c:
	gtk/gtkhseparator.c:
	gtk/gtkimage.c:
	gtk/gtkinputdialog.c:
	gtk/gtkitem.c:
	gtk/gtkitemfactory.c:
	gtk/gtklist.c:
	gtk/gtklistitem.c:
	gtk/gtkmenu.c:
	gtk/gtkmenubar.c:
	gtk/gtkmenuitem.c:
	gtk/gtkmenushell.c:
	gtk/gtknotebook.c:
	gtk/gtkoptionmenu.c:
	gtk/gtkpaned.c:
	gtk/gtkpixmap.c:
	gtk/gtkpreview.c:
	gtk/gtkprogressbar.c:
	gtk/gtkradiomenuitem.c:
	gtk/gtkrange.c:
	gtk/gtkruler.c:
	gtk/gtkscale.c:
	gtk/gtkscrollbar.c:
	gtk/gtkscrolledwindow.c:
	gtk/gtkseparator.c:
	gtk/gtkspinbutton.c:
	gtk/gtkstatusbar.c:
	gtk/gtktext.c:
	gtk/gtktoolbar.c:
	gtk/gtktooltips.c:
	gtk/gtktree.c:
	gtk/gtktreeitem.c:
	gtk/gtkvbbox.c:
	gtk/gtkvbox.c:
	gtk/gtkviewport.c:
	gtk/gtkvpaned.c:
	gtk/gtkvruler.c:
	gtk/gtkvscale.c:
	gtk/gtkvscrollbar.c:
	gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
	match the modified GtkTypeInfo structure.
1998-06-28 07:46:10 +00:00
Owen Taylor
913831b26f Remove --g-fatal-warnings flag from argv.
Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
	  from argv.

Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/genmarshal.pl: Modified to be more idiomatic Perl,
	  to be more readable perl, to spit out stuff that looks
	  more like readable C, and to pipe output through indent
	  so output looks a lot like readable C. No functional
	  changes.

Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
	  necessary when switching to a masked pixmap. (Based on a patch
	  from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)

Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkeditable.[ch]: Added action signals for keyboard
   	  bindings. (move_cursor, kill_word, etc, etc, etc).

          removed the time argument from
	  gtk_editable_cut/copy/paste_clipboard (source but not
          binary incompatible...) Instead get time from
	  gtk_get_current_event ().

	* gtk/gtktext.c gtk/gtkentry.c: Support the new editable
	  signals.

Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>

	Patches from Damon Chaplin <DAChaplin@email.msn.com>:

        gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
	     parent class to GtkNotebookClass when splitting the widget in
	     two.  Also updated some comments.

        gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
               button without a font selected.

             Fixed bug in set_font_name - I hadn't updated the code to
               search for the style in the font_style clist - it was
               still assuming the style row was equal to its index,
               but it isn't any more.

             Changed 'Reset' button on filter page to 'Clear Filter'.
             Deleted old code relating to the old 'Filter Fonts' toggle
             Updated some comments.
             Cleared 'Actual Fontname' if no font is set.

        gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
	     destroying the GtkFontSelection instead of the
             GtkFontSelectionDialog.

Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
	  flag to make all warnings fatal errors.

	* gtk/testthreads.c: moved <pthreads.h> include inside
	  #ifdef USE_PTHREADS

Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
	  gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:

	- Added new function gtk_container_set_resize_mode() for
	  fine-grained control of where resize-queueing is done.

	- Removed GtkContainer::need_resize and GtkWindow::move_resize
	- Added GtkContainer::check_resize to replace need_resize.

	- Added function gtk_container_check_resize() to trigger
	  queued resizes, and gtk_container_resize_children() to
	  Figure which children need to be size-allocated. (logic
	  moved from gtkwindow.c)

	- Reorganized code in gtkwindow.c

	- Set the resize-mode for viewports so that resizes within
	  a viewport don't propagate out of it.
1998-06-19 01:26:24 +00:00
Elliot Lee
bd191b6537 Revert, as per Owen's request 1998-05-25 02:41:36 +00:00
Elliot Lee
ab37cadbfe Make GtkEditable use signals instead of calling klass->... for stuff. Could someone look at the get_chars routine to see how to return the value properly? 1998-05-24 20:56:35 +00:00
Owen Taylor
579856439b Added style_set handler.
Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkhandlebox.c: Added style_set handler.

Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
 [ From: Chris Lahey  <clahey@umich.edu> ]

	* gtk/gtkeditable.c, gtk/gtkeditable.h,
	  gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
	  and set_position functions to get and set the cursor position.

        * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
	  signal status. Make GtkText do user-controlled insertion
	  and deletion through the Editable widget so that these
	  signals are properly emitted.

	* gtk/gtkentry.c: Changed gtk_entry_set_visibility to
	  display asterisks instead of empty space when visible = FALSE)
1998-05-22 07:07:11 +00:00
Owen Taylor
4851efe296 configure.in acheader.h gdk/gdkwindow.c Check for Shape extension both on
Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in acheader.h gdk/gdkwindow.c
	Check for Shape extension both on the client and server
	side. (And, more importantly, check for the shape extension
	so we may include -lXext even when compiling with --disable-xshm)

	Don't set override_redirect on all shaped windows. It isn't
	necessary.

	* gdk/gdkwindow.c: Set ->colormap to NULL for root
	and foreign windows. Use this to check if we
	need to get the colormap from X.

Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkbutton.c (gtk_button_paint): Draw the areas
	between the default and the button always in GTK_STATE_NORMAL.

	* gtk/gtkrange.c (gtk_range_style_set): Added a style_set
	callback.

Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
	  Fix a buffer overflow on pixmaps that claim to have
	  more than 31 characters per pixel.

	  (gdk_pixmap_read_string): Don't wrap around strings longer
 	  than half of address space ;-)

	* gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
	that were used for printing integers.

	* */* (almost):

	Style: All
	  int foo () { ... }
	changed to
	  int foo (void) { ... }

^^^^^^^ This is why some many files changed

	Even where there were proper prototypes elsewhere.

	* gdk/gxid.c (handle_claim_device): Some extra checks.
	It isn't safe against being fed bad X id's, but at
	least it should be safe against deleting all your
	files.
1998-05-03 22:41:32 +00:00
PDT 1998 Shawn T. Amundson
92006c8e78 Changed LGPL address for FSF in all .h and .c files
Sun Apr 12 18:54:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Changed LGPL address for FSF in all .h and .c files
1998-04-13 02:02:47 +00:00
Owen Taylor
3a02948170 Picky --enable-ansi cleanups.
Thu Apr  9 18:36:31 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmisc.c gdk/gdkwindow gtk/gtkentry.c gtk/testgtk.c:
	Picky --enable-ansi cleanups.

	* gtk/gtkstatusbar.c (gtk_statusbar_pop): Pop top message
	off _belonging_to_this_context_. (gtk-d4bjorn-980409-0)

	From "Damon Chaplin" <DAChaplin@email.msn.com>

	* gtk/gtktable.c (gtk_table_size_request_pass3): Small fix to size
	requisition code.

	* gtk/gtknotebook.c: Make sure not to do things to page->tab_label
	if it doesn't exist.
1998-04-10 00:44:35 +00:00
Owen Taylor
70b3b3e6e1 Try to guess if we can use the mb* functions safely. (For glibc, they do
Tue Mar 17 01:55:00 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmain.c gtk/gtkentry.c: Try to guess if we can
	  use the mb* functions safely. (For glibc, they do
	  UTF-8). Heuristic is (X_LOCALE && locale != C/POSIX)
	  || (mblen("\xc0", MB_CUR_MAX) == 1).

	(From: "Richard Lloyd" <rkl@csc.liv.ac.uk>)

	* gdk/gdk.c (gdk_ic_get_attr): Use an intermediate
	  variable to avoid taking the address of the result
	  of va_arg.

	* gtk/gtkentry.c gtk/gtkeditable.c gtkobject.c
	  gtk/testselection.c: signedness fixups

	* gtk/gtkcontainer.c: Fixed implicit cast between
	  gpointer and func pointer by changing.

	* gtk/gtkcombo.c, gtk/gtkentry.c, gtk/gtktext.c:
	  static void forward declaration vs. void actual fixed

	* gtk/testgtk.c: Limit total number of tree items to 10,000
1998-03-17 19:03:52 +00:00
Owen Taylor
cb6412978c Merging release_1_0 changes into the main tree.
-timj


Tue Mar 10 14:24:09 1998  Owen Taylor  <owt1@cornell.edu>

        * gtk/gtkselection.c (gtk_selection_clear): Make the return
          result reflect whether the clear event was out of data.

        * gtk/gtkeditable.c: Ignore out of date selection clear
          events.

        * gtk/gtkentry.c gtk/gtktext.c: Don't synthesize releases
          on [2/3]BUTTON presses, since we get the normal click as well.

          Claim the selection when selecting words/lines.

Tue Mar 10 13:34:29 1998  Owen Taylor  <owt1@cornell.edu>

        * gtk/gtkrange.c (gtk_range_default_[vh]trough_click):
          Take forward/back step arrows into account when computing
          position for middle button clicks.

        * gtk/gtktext.c gtk/gtkentry.c:
          - Fixes for deleting characters (don't subtract guints and get
            negative numbers!)
          - Reset cursor_virtual_x when moving by words and lines
          - Extra sanity checks
          - Fix to gtk_text_get_chars
                 (from Tony Gale <gale@daedalus.dera.gov.uk>)
1998-03-10 22:57:26 +00:00
Owen Taylor
2f50a3044e commiting changes from owen:
Mon Mar  9 20:38:15 1998  Owen Taylor  <owt1@cornell.edu>

        * gtk/gtkentry.c gtk/gtkeditable.c gtk/gtkspinbutton.c:
          Moved "activate" to editable class. Made the vfuncs in
          gtkeditable just vfuncs not signals.

        * gtkentry.[ch] gtktext.[ch]: Made behavior when pressing
          multiple buttons at once more rational.

        * gtkentry.c gtktext.c: Unified and rationalized key
          bindings. (Now are basically emacs+CUA)

        * gtktext.c:
          - Last position now always shares the property of the preceding
            character
          - Freeze the widget when inserting large amounts of text.
          - Selecting lines now selects the _whole_ line.
          - Fixed bug with displaying the cursor
          - Ctrl-Home/End now move the cursor to the _absolute home/end

        * gtkmenuitem.c: Remove necessary code out of a g_return_if_fail

-timj
1998-03-10 03:17:02 +00:00
Tim Janik
d187183161 made the <widget>_signals[] arrays of type guint rather than gint. made
Mon Mar  9 15:48:10 1998  Tim Janik  <timj@gimp.org>

        * Signal signedness and naming corrections, plus GtkType fixes:

        * gtk/gtkadjustment.c:
        * gtk/gtkbutton.c:
        * gtk/gtkcheckmenuitem.c:
        * gtk/gtkclist.c:
        * gtk/gtkcolorsel.c:
        * gtk/gtkcontainer.c:
        * gtk/gtkcurve.c:
        * gtk/gtkdata.c:
        * gtk/gtkeditable.c:
        * gtk/gtkentry.c:
        * gtk/gtkhandlebox.c:
        * gtk/gtkinputdialog.c:
        * gtk/gtkitem.c:
        * gtk/gtklist.c:
        * gtk/gtkmenuitem.c:
        * gtk/gtkmenushell.c:
        * gtk/gtknotebook.c:
        * gtk/gtkstatusbar.c:
        * gtk/gtktoolbar.c:
        * gtk/gtktree.c:
        * gtk/gtktreeitem.c:
        * gtk/gtkwidget.c:
        * gtk/gtktogglebutton.c:
        * gtk/gtkwindow.c:
        made the <widget>_signals[] arrays of type guint rather than gint.
        * gtk/gtkwidget.c (gtk_widget_get_ancestor): made widget_type a GtkType.

        * gtk/gtkcombo.h:
        handler ids need to be of type guint (entry_change_id, list_change_id).

        * gtk/gtkaccelerator.c:
        changed signal_num to signal_id and typed it guint.

        * gtk/gtkmain.c: made gtk_ndebug_keys a guint.

        * gtk/gtkmenu.h:
        * gtk/gtkmenu.c:
        (gtk_menu_popup): made button a guint.
        (gtk_menu_set_active): made index a guint.

        * gtk/gtkmenuitem.h:
        * gtk/gtkmenuitem.c:
        made accelerator_signal a guint.

        * gtk/gtkoptionmenu.h:
        * gtk/gtkoptionmenu.c:
        (gtk_option_menu_set_history): made index a guint.

        * gtk/gtksignal.h:
        * gtk/gtksignal.c:
        * gtk/gtkobject.h:
        * gtk/gtkobject.c: changed a bunch of prototypes to take guints rather
        than gints. also made some conversions from guint to GtkType, left over
        from when the fundamental-types system was introduced.

        * gtk/gtkobject.h:
        * gtk/gtkobject.c: made object_data_id_index and obj_count guints.
        made *signals and nsignals guints in GtkObjectClass.
1998-03-09 15:16:28 +00:00
Owen Taylor
2b3f8baf86 Change has_selection to always be set in claim_selection() 1998-03-08 21:53:56 +00:00
Owen Taylor
1941bf4cbf Disallow pasting into non-editable widgets.
Fri Mar  6 21:30:05 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkeditable.c: Disallow pasting into non-editable
	  widgets.

	* gtk/gtktext.[ch]:

	  -Added scrolling when dragging the selection
	   paste the top/bottom.

	  -Fix some of the problems with displaying the selection
	   state before mouse release.

	  -Disallow pasting into non-editable widgets

	  -Fixed segfault when changing window size

	  -Update the cursor correctly when switching between
	   editable and non-editable

	* testgtk.c: Added a toggle button for editability for
	  the text widget.
1998-03-07 03:05:36 +00:00
Owen Taylor
f222bd77bb gtk/gtkentry.c gtk/gtktext.c gtkeditable.[ch]
Sun Mar  1 05:18:11 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkentry.c gtk/gtktext.c gtkeditable.[ch]

	Changed interface to cut/copy/paste so it makes sense
	when triggered by say, menu items.
1998-03-01 10:19:22 +00:00
Owen Taylor
2630943eb3 gtk/gtkentry.[ch] gtk/gtktext.[ch] gtkeditable.[ch]
Sun Mar  1 03:20:39 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkentry.[ch] gtk/gtktext.[ch] gtkeditable.[ch]

	Turned off debugging in gtktext.c

	Bug fixes for cutting, pasting, deleting, etc.

	Some of the bugs that were there before have definitely
	been fixed.

	* gtk/testgtk.c gtk/testgtkrc: Removed my ugly orange backgrounds,
	to make things look nicer.
1998-03-01 08:47:36 +00:00
Owen Taylor
9205edae41 gtk/gtkentry.[ch] gtktext.c gtkeditable.[ch]
Sat Feb 28 23:58:54 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkentry.[ch] gtktext.c gtkeditable.[ch]

	Created a new base widget type Editable for the entry and
	text widgets, which encapsulates most of the selection and
	clipboard handling stuff, plus some common signals.

	Changed the Entry widget extensively to support this,
	but the interface and appearance should be the same.

	Changed the Text widget moderately to support this.

	It now supports:

	- Selection style cut and paste
	- Clipboard style cut and paste
	- Emacs style key bindings (~same as Entry)
	- Word motion
	- "changed" signal

	There are definitely still some bugs in the new stuff.

	* gtkfilesel.c gtkspinbutton.c testgtk.c: small changes
	to fit the new interface more exactly.
1998-03-01 05:11:05 +00:00