Commit Graph

118 Commits

Author SHA1 Message Date
Tor Lillqvist
1c84483f3e Support added for building using a GNU toolchain on Win32,
gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.

	* gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
	* config.h.win32: Changes for gcc.
	* gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
	* gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
	* gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
	* gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
	Protect shl stuff unavaiilable with mingw32 headers.
	* gdk/win32/gdkevents.c: Fix typo.
	* gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
	* gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
	* gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
	* gdk/win32/gdkprivate.h: Make up for some stuff missing from
	the mingw32 headers.
	* gdk/win32/makefile.msc: Use latest Wintab kit and glib.
	* gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
	definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
	* gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
	Test for NATIVE_WIN32, not _MSC_VER.
	* gtk/gtkmain.c: No use warning about developer version on Win32,
	there aren't any non-developer versions anyhow.
	* gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
	* gtk/makefile.msc: Use pthread from another directory. Minor other
	changes.
1999-04-25 21:55:05 +00:00
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
Tim Janik
9f513b1840 tell people that they don't really want to use the Gtk+ devel version
Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
        want to use the Gtk+ devel version (which is true, and yes - even i am
        currently working with the 1.2.x branch). so everyone reading this, you
        probably want to issue
        cvs checkout -r glib-1-2 glib
        and
        cvs checkout -r gtk-1-2 gtk+
        as your next two comands.
1999-03-17 04:18:47 +00:00
Tim Janik
2d49bbb044 build gtkcompat.h from gtkcompat.h.in instead of gtkfeatures.h from
Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>

        * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
        gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.

        * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
        file. strongly deprecated the GTK_HAVE_* macros, we provide
        GTK_CHECK_VERSION() for people that need to check for certain
        Gtk+ versions.

        * gtk/gtkcompat.h: removed this from CVS.
        * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
        idea right from the start, it just didn't seem like that back then.
1999-03-17 02:43:20 +00:00
Tor Lillqvist
c65508d272 This might seem like a large patch, but it isn't that bad, and nothing
should break on Unix/X11.

Win32 merge and general portability stuff:

* acconfig.h,configure.in: Check for <sys/time.h>.

* gdk/win32: New directory (actually, been there for a while).

* gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
NATIVE_WIN32, and use these. Always case fold on Win32. No
backslashed escapes on native Win32.

* gtk/{gtk.def,makefile.msc}: New files.

* gtk/Makefile.am: Add above new files.

* gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
instead of <strings.h>.

* gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
<unistd.h> appropriately.

* gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
Use ABS() (from <glib.h>) instead of abs().

* gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
of gtk (and thus glib) headers, so that WIN32 will be
defined. With MS C, include <direct.h> for mkdir prototype.

* gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
some casts, needed by MS C.

* gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
implemented).

* gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
<X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
G_SEARCHPATH_SEPARATOR_S and g_module_build_path.

* gtk/gtkmain.h: Mark variables for export/import on Win32.

* gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
the event is not a hint, or its window is not the slider. Needed
on Win32, at least.

* gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
a subdirectory of the Windows directory as gtk system
configuration directory.

* gtk/gtkselection.c: No chunks on Win32.

* gtk/gtksocket.c: Not implemented on Win32.

* gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.

* gtk/makeenums.h: Include gdkprivate.h after gdk.h.

* gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
1999-03-15 00:03:37 +00:00
Asbjørn Pettersen
6cda2a2021 add dll suffix 1999-03-07 17:48:02 +00:00
Tim Janik
c4fe78345e warn about &widget->requisition, even for toplevels.
Wed Feb 24 11:19:12 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_size_request): warn about
        &widget->requisition, even for toplevels.

        * gtk/gtkwindow.c (gtk_window_move_resize): request size into an
        automatic variable and check if our size has changed.
        when we decide to reallocate everything, we need to resize our
        own GdkWindow as well.

        * gtk/gtkmain.c:
        * gtk/gtkobject.c: hack time, make --gtk-debug=objects work even
        after gtk_type_init(), this is to "fix" gnome's arg parsing oddities.

        * gtk/gtktypeutils.h: don't segfault in GTK_CHECK_CLASS_TYPE and
        GTK_CHECK_TYPE upon NULL pointers.

        * gtk/gtklayout.c: removed bogus prototypes of gtk_layout_gravity_works,
        gtk_layout_set_static_gravity, gtk_layout_add_child_cb and
        gtk_layout_remove_child_cb to shut up compiler.

        * gtk/Makefile.am: added an empty rule
        gtkrc:
                :
        so make doesn't try to "update" gtkrc from gtkrc.c.
1999-02-24 16:29:47 +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
25cdbd3560 Account for the fact that Xlib expects format == 32 to be a long, even on
Sun Feb 21 15:59:55 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/MwmUtil.h gdk/gdkwindow.c: Account for the
	fact that Xlib expects format == 32 to be a long,
	even on 64-bit architectures.

	[ patch from George Lebl (jirka@5z.com) ]
1999-02-21 20:55:04 +00:00
Owen Taylor
58e63f08ae Revise algorithm for scrolling backwards. This one might actually work
Sun Feb 21 11:39:06 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (find_line_containing_point): Revise
	algorithm for scrolling backwards. This one might actually
	work with one-line-high	Text widgets.

	* gtk/gtkmain.c: Removed a misplaced comment, a few
	formatting cleanups.
1999-02-21 18:02:14 +00:00
Owen Taylor
213c516091 Fix glib_config_args gtk_config_args confusion. (pointed out by Roland
Thu Feb 18 11:46:57 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk.m4: Fix glib_config_args gtk_config_args
	  confusion. (pointed out by
	  Roland Dreier <droland@mail.math.okstate.edu>)

	* gtk/gtksocket.c gtk/gtkmain.c gtk/gtkdebug.h
	  (gtk_socket_filter_func): Move the plug-socket
	  debugging code to a new "plugsocket" debug keys
	  from the previous hardcoded DPRINTF.
1999-02-18 16:43:42 +00:00
Owen Taylor
9e5e63f0a1 Hack scrollwheel support into the eventloop, by treating button 4-5
Wed Jan 27 18:40:50 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main_do_event): Hack scrollwheel
	support into the eventloop, by treating button 4-5
	presses on scrolled windows and scrollbars specially.
	Put it here to keep the ugliness small and confined.
	(We need to intercept the normal propagation in any case
	to have this work reliably right now, since some
	subwidgets will trap the button presses)

	* gtk/gtkviewport.c (gtk_viewport_realize): Select for
	BUTTON_PRESS to	support the above hack.
1999-01-28 00:57:18 +00:00
Owen Taylor
e260fd6a2b Added gtk_menu_set_title() to set the title of a menu in the torn-off
Mon Jan 18 13:25:14 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.[ch]: Added gtk_menu_set_title() to
	set the title of a menu in the torn-off state.

	* gtk/gtkthemes.c (gtk_theme_engine_get): When loading
	of theme engine fails, just warn and do without -
	don't error out.

	* gtk/gtkmain.c (gtk_check_version): s/to/too/.
1999-01-18 18:48:09 +00:00
Tim Janik
9c5dfcd3ae incremented version number to 1.1.13, bin age 0, interface age 0.
Sun Jan 17 05:19:14 1999  Tim Janik  <timj@gtk.org>

        * configure.in: incremented version number to 1.1.13, bin age 0,
        interface age 0.

        * gtk/gtkmain.c (gtk_idle_remove_by_data): use g_idle_remove_by_data to
        remove idles, so `data' cannot conflict with other sources.

        * gtk/gtkcompat.h: define gtk_style_apply_default_pixmap here.

        * gtk/gtkstyle.[hc]: removed gtk_style_apply_default_pixmap.
        (struct _GtkStyle): reordered GtkStyleClass*klass; member.
1999-01-17 04:50:13 +00:00
Owen Taylor
24f6d8b887 Add a drag_data_received handler for the label.
Tue Jan 12 18:30:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/testdnd.c (label_drag_data_received): Add
	a drag_data_received handler for the label.

Tue Jan 12 15:01:50 1999  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.c: Removed the putback_events queue,
	since it was causing problems with event ordering -
	just keep a single queue. If we need it, we can
	add priorities to events.

	* gdk/gdkevents.c: Annotate events with flags - we allocate
	a GdkEventPrivate structure in gdk_event_new() and use these
	flags to mark an event being translated as "pending" -
	I.e., not yet ready to be dequeued. So we can put
	the event on the queue and get the order of the
	events right. (This solves the double-click problems)

	* gdk/gdk.h gdk/gdkevents.h: Add gdk_event_peek() to get a copy
	of the next event on the event queue.

	* gtk/gtkmain.c (gtk_main_do_event): Use gdk_event_peek()
	to check the next event without causing event queue
	reordering.
1999-01-12 23:27:30 +00:00
Tim Janik
b6714d9ad1 added an assertement.
1999-01-11  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_propagate_event): added an assertement.
1999-01-11 06:35:41 +00:00
Owen Taylor
1fd7a6e491 Make gtk_propagate_event() non-static, we need it in gtkdnd.c so that the
Tue Jan  5 15:03:47 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_propagate_event): Make
	gtk_propagate_event() non-static, we need it in gtkdnd.c
	so that the button-release we synthesize gets propagated
	correctly.

	* gtk/gtkdnd.c: Use gtk_propagate_event() so
	release gets to a GtkList. But we can't really
	get this right without access to the windows
	event masks and doing X-style propagation ourselves.

Tue Jan  5 11:31:55 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c (gtk_target_list_unref): Free
	memory allocated for target lists.

	* gtk/gtkdnd.c (gtk_drag_drop_finished): Release
	selections before destroying info structure.

	* gdk/gdkdnd.c gdktypes.h (gdk_drag_get_protocol): Add
	new value GDK_DRAG_PROTO_NONE, use it for non-drag
	targets, to quiet Purify.

	* gdk/gdkdnd.c (gdk_window_register_dnd): Set size
	of property properly.
1999-01-05 23:45:21 +00:00
Miguel de Icaza
f2091ab7be Fix memory leak. gdk_event_put would make a copy of next_event, and
1998-12-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gtk/gtkmain.c (gtk_main_do_event): Fix memory leak.
	gdk_event_put would make a copy of next_event, and next_event was
	not being freed.
1998-12-31 04:43:36 +00:00
Tim Janik
af2c3bd16f export the priority at which events are processed.
Sun Dec 20 04:48:59 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdk.h (GDK_PRIORITY_EVENTS): export the priority at which
        events are processed.

        * gtk/gtk[main|signal|container].[ch]: removed deprecated _interp
        variants: gtk_container_foreach_interp, gtk_idle_add_interp,
        gtk_timeout_add_interp, gtk_signal_connect_interp.
1998-12-20 05:47:28 +00:00
Manish Singh
5225ae6105 always run a g_main_iteration, even if there are no active main loops.
* gtk/gtkmain.c: always run a g_main_iteration, even if
there are no active main loops. This fixes the gimp splash
screen.

-Yosh
1998-12-19 11:47:58 +00:00
Tim Janik
8fc5066a69 removed return_if_fail (label->words != NULL) since that's a valid case
Sat Dec 19 05:37:51 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtklabel.c (gtk_label_expose): removed return_if_fail
        (label->words != NULL) since that's a valid case when the label
        is empty, or just default constructed.
        fixed indentation prototype arguments and braces in some places.
        also, pointer comparisions and initializations are done with NULL
        not 0, there's a reason GLib defines NULL.

        * gdk/gdkevents.c (gdk_events_pending): return (queued_events ||
        putback_events) so this again returns whether events are pending,
        not whether other sources like idles are pending.

        * gtk/gtkmain.c (gtk_main_iteration_do):
        (gtk_main_iteration): return whether the loop is done, not whether
        something got dispatch to restore the original behaviour (yosh: this
        fixes code like in GleSelector).
1998-12-19 05:15:15 +00:00
Tim Janik
d2dc06dae1 added gdk_flush() after g_main_run(), so we get the original behaviour
Fri Dec 18 01:32:59 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
        get the original behaviour back, i.e. the event queue needs to be flushed
        after a main loop has been quitted.
        (gtk_main): add/remove the current main loop to/from the main loop
        before/after init/quit functions have been exected to preserve the
        original gtk_main_quit() behaviour.

Thu Dec 17 23:48:29 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_events_init): changed argument order in call
        to g_main_add_poll() to match recent glib changes.
1998-12-18 02:23:48 +00:00
Owen Taylor
fcfe7370d8 Move main thread lock back to GDK - we need it there for locking when
Wed Dec 16 13:06:17 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.[ch] gtk/gtkmain.[ch] gtk/gtkprivate.h: Move main
	thread lock back to GDK - we need it there for locking
	when translating events. Rename things appropriately.

Wed Dec 16 11:44:21 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c (gtk_range_expose): Fix a x/y typo.

CVS:
1998-12-16 20:09:30 +00:00
Tim Janik
017dfc9e4e version bump to 1.1.8, binary age 0, interface age 0, depend on GLib
Wed Dec 16 05:26:32 1998  Tim Janik  <timj@gtk.org>

        * configure.in: version bump to 1.1.8, binary age 0, interface age 0,
        depend on GLib 1.1.8.

        * gdk/gdkprivate.h:
        * gdk/gdkglobals.c: removed last Gdk threads specific bits.

        * gtk/gtkmain.c (gtk_init): s/g_thread_supported/g_thread_supported()/.

        * gtk/gtkprivate.h: changed GTK_THREADS_ENTER and GTK_THREADS_LEAVE
        to function macros GTK_THREADS_ENTER() and GTK_THREADS_LEAVE().
        honour G_THREADS_ENABLED in the definition of GTK_THREADS_ENTER()
        and GTK_THREADS_LEAVE(). changed callers accordingly.
1998-12-16 06:03:14 +00:00
Owen Taylor
cceabe57ba Fixed up some warnings.
Tue Dec 15 11:37:05 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c: Fixed up some warnings.

Tue Dec 15 10:32:01 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk{h,v,}paned.{c,h}: Add new functions
	gtk_paned_set_position(),
	gtk_paned_pack1/2(). The latter take a
	shrink and resize parameters, that allows setting
	minimum sizes and getting 'relative' resizing.
1998-12-15 17:56:31 +00:00
Owen Taylor
a0c84d6818 Commented out testthreads from the build process, since we won't have any
Tue Dec 15 01:38:53 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am: Commented out testthreads from
	the build process, since we won't have any idea
	how to create a thread.

	* configure.in (LIBS): use glib-config ... gthread
	so we always build a thread-compatible library.

        * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
	  gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
	  gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
	  gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
	  gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:

	Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
	and idles to account for the fact that they are no
	longer called within the GTK+ lock.

	* gtk/gtkprivate.h: Added definitions for locking
	the main GTK+ mutex.

	* gtk/gtkmain.c: Re-implement the main loop
	in terms of the GLib main loop.

	* gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading
	functionality, as it seems better to subsume GDK within the
	GTK+ lock than vice-versa.

        * gdk/gdkevents.c: New file, containing event handling bits
	from gdk.c.

	* gdk/gdkevents.c: Implement event source for GDK
	events.

	* configure.in gdk/gdkevents.c: Removed attempts to
	subtract base_id, which were already non-functional.
1998-12-15 07:32:11 +00:00
Owen Taylor
7facb75c85 Added gettext-10.35
Mon Dec 14 12:24:13 1998  Owen Taylor  <otaylor@redhat.com>

	* HACKING: Added gettext-10.35

	* autogen.sh: Run gettextize.

Wed Dec  9 16:29:06 1998  Owen Taylor  <otaylor@redhat.com>

        Applied gtk-egger-981010-[12]
	[ Daniel.Egger@t-online.de (Daniel Egger) ]

	* gtk/gtkintl.h: New file - defines for localization.

	* gtk/gtkfilesel.c gtk/gtkinputdialog.c: Mark strings
	for internationalization.

	* gtk/gtkmain.c: call bindtextdomain

	* po/ - directory for translations. Initially includes
	German translation.
1998-12-14 17:39:58 +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
Tim Janik
33447a3856 reverted marius change to expose the type systems internal type info data
Mon Dec  7 03:08:39 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: reverted marius change to expose the type systems
        internal type info data to the user. if such functionality is required
        we should provide wrapped accessors, ala gtk_signal_query().

        * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
        since it destroys the possibility to implement automatic marshaller
        lookups some day, and it also disables third party code's ability to
        connect to any signal. also the GtkTypeInfo structures are dynamically
        allocated memory portions, so only the type system is really allowed
        to access that stuff.

Mon Dec  7 01:32:18 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
        Tab key on the entry. the focus shouldn't get lost even if completion
        is attempted from an empty entry, since an empty entry string does
        indeed have a valid completion meaning (complete all).
        (gtk_file_selection_init): cast the gchar array parameter in calls to
        gtk_clist_new_with_titles() to quit compiler warnings.
        (check_dir): the no_stat_dirs struct must not be const, since we do
        indeed modify its contents.

        * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
        hook semantics.

        * gtk/gtksignal.h:
        * gtk/gtksignal.c:
        changed emission allocation, so we don't use a doubly linked list
        but link ourselfs (singly linked).
        changed emission hooks, they get the emision parameters passed as
        well now and are emitted during the actuall signal emission (after
        the RUN_FIRST class method, but prior to RUN_FIRST handlers).
        the existing restrictions do still apply to signal emission hooks,
        i.e. an emission may not be stopped or restarted from an emission hook.
        due to possibly huge perfomance impacts, frequent use of emision hooks
        is also not recommended.
        (gtk_signal_next_and_invalidate): added an
        assertments which explicits what the code assumes anyways: a
        maximum amount of 65535 signals.

        * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
        gtk_container_foreach_full() should be used instead.

        * gtk/gtkmain.h:
        deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
        we provide _full variants.

        * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
        gtk_signal_connect_full() for long enough now.
1998-12-07 02:31:19 +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
Tim Janik
238ede333f changed scrolled window inheritance, it inherits from GtkBin now.
Sat Nov 28 03:13:42 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkscrolledwindow.h:
        * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
        it inherits from GtkBin now.

        * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
        visibility of child.
        (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
        added check so a child gets only drawn if it's visible.

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: removed gtk_widget_draw_children().

        * gtk/gtkstyle.h:
        * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
        added internal function gtk_widget_reset_shapes() from gtkstyle.c.

        * gtk/gtkrc.h:
        * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
        argument, changed callers.

        * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
        it will issue a warning now.

        * gtk/gtkcompat.h: new file to #define aliases for historic
        function names.

        * changed 8 function names for consistency and provided aliases to keep
        source compatibility in gtkcompat.h:
        (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
        (gtk_container_set_border_width): renamed from gtk_container_border_width
        (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
        (gtk_packer_configure): renamed from gtk_packer_set_child_packing
        (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
        (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
        (gtk_scale_get_value_width): renamed from gtk_scale_value_width
        (gtk_window_set_position): renamed from gtk_window_position

        * renamed a few recently added funtions for consistency:
        (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
        (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
        (gtk_progress_configure): renamed from gtk_progress_reconfigure.
1998-11-28 07:42:37 +00:00
Jeff Garzik
91d99f8903 Removed DEFS "+=" mess that breaks recent automakes. INCLUDES is the
* gdk/Makefile.am, gtk/Makefile.am:

        Removed DEFS "+=" mess that breaks recent automakes.
        INCLUDES is the correct way to add to CFLAGS from Makefile.am.

* gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
gtk/testthreads.c:

        Include "config.h" instead of "../config.h".

        Now that DEFS works again, automake will automatically pass us
        the location of config.h in -I.
1998-11-24 05:58:53 +00:00
Owen Taylor
a0ca2a7b0d New function gdk_pixmap_foreign_new(). (gtk-blizzard-981005-0. Christopher
Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
	(gtk-blizzard-981005-0.
	 Christopher Blizzard <blizzard@applied-theory.com)

	* gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
	gdk_pixmap_foreign_new to gdkx.h.

Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am: Added rules to generate an empty
	GTK+ theme called "Default" upon installation.

	* gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
	of fonts and fontsets.
	(gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)

	* gtk/gtkmain.c: Change test to detect glibc's
	utf8 based mb* functions to be more specific.

	* gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
	cleanups.
1998-11-13 21:28:36 +00:00
Tim Janik
b89fb9835c support an environment variable GTK_MODULES= which takes a colon sperated
Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): support an environment variable
                GTK_MODULES= which takes a colon sperated list of module names
                        automatically loaded at gtk_init() startup.
1998-10-25 19:30:02 +00:00
Tim Janik
3785528ef8 GtkType and macro fixups set a pattern for the file selection widget to
Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkfilesel.h: GtkType and macro fixups
        * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
        for the file selection widget to try a completion on (set the
        initial filter).

Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c: implement idle functions via GHook. this gives a
        slight speed improvement and lessens code duplication.
1998-10-22 00:54:57 +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
b9a26457b9 NEWS file update for upcoming release of Gtk+ version 1.1.2, binary age 0,
Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>

        * NEWS file update for upcoming release of Gtk+ version 1.1.2,
        binary age 0, interface age 0.

        * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1998-09-21 02:31:39 +00:00
Tim Janik
e33741aed6 use g_atexit() instead of ATEXIT.
Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.

        * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.

        * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
        ATEXIT.

        * ltconfig: use GLib's ltconfig which honours lcc.
1998-09-08 04:08:17 +00:00
Manish Singh
b93d689290 removed some unused variables
* gdk/gdkrgb.c: removed some unused variables

* gtk/gtkclist.c
* gtk/gtkmain.c: #if 0'd out some unused code

* gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug

-Yosh
1998-08-24 18:13:08 +00:00
Tim Janik
a7b3b116a9 added a function to perform a binary version check, returning a static
Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.h:
        * gtk/gtkmain.c (gtk_check_version): added a function to perform a
        binary version check, returning a static string for error descriptions,
        or NULL on success.
1998-08-21 02:22:06 +00:00
Tim Janik
38db8d1951 allow argument parsing in gtk without G_ENABLE_DEBUG being defined
Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
        G_ENABLE_DEBUG being defined (specifically --gtk-module= and
        --g-fatal-warnings), noticed by miguel.
1998-08-18 22:22:22 +00:00
Tim Janik
49dfa78e74 use g_get_current_dir() instead of getcwd().
Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
        getcwd().

        * gdk/gdkprivate.h:
        * gdk/gdkglobals.c:
        * gdk/gdkwindow.c:
        * gdk/gdk.c:
        * gtk/gtkwindow.c:
        * gtk/gtkitemfactory.c:
        dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.

        * gtk/gtkselection.c:
        * gtk/gtkpreview.c:
        * gtk/gtkobject.c:
        * gtk/gtkmain.c:
        * gtk/gtktypeutils.c: indentation fixes due to g_message() use.

        * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
1998-08-18 16:58:09 +00:00
Tim Janik
7f2909bbab restricted the --g*fatal-* arguments to --g-fatal-warnings again. this
Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
        to --g-fatal-warnings again. this option now causes log levels of
        WARNING and CRITICAL to abort().

        * gdk/gdk.c:
        * gdk/gdkdnd.c:
        * gdk/gdkcc.c:
        * gdk/gdkfont.c:
        * gdk/gdkwindow.c:
        * gdk/gdkvisual.c:
        * gtk/gtkwidget.c:
        * gtk/gtktypeutils.c:
        * gtk/gtktree.c:
        * gtk/gtkfontsel.c:
        * gtk/gtkmain.c:
        * gtk/gtkobject.c:
        * gtk/gtkpreview.c:
        * gtk/gtkselection.c:
        * gtk/gtktext.c:
        * gtk/gtktree.c:
        * gtk/gtktreeitem.c:
        did a global search&replace to substitute g_print() calls with
        g_message(). libraries shouldn't use printf(), g_print() or
        g_printerr() at all.
        a bunch of the replacements should probably be wrapped into the
        G{D|T}K_NOTE() macros, so they are special cased for debugging
        purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
        things.

        * gdk/gdkrgb.c: left this out currently.

        * gdk/gdkdnd.c: added copyright notice.
1998-08-18 03:59:41 +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
Tim Janik
d2716f8bfd NULL terminate the arg list to g_strconcat() (thanx raph).
Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
        (thanx raph).
1998-08-17 05:49:13 +00:00
Tim Janik
fe63fe5da9 don't call module initializers multiple times. changed --gtk-with-module
Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
        times. changed --gtk-with-module to --gtk-module at owen's request.
1998-08-17 03:12:10 +00:00
Tim Janik
2b7f8016b5 feature a new commandline option --gtk-with-module=<module> that allows
Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): feature a new commandline option
        --gtk-with-module=<module> that allows additional loading and
        initialization of modules (e.g. GLE).
1998-08-17 02:41:42 +00:00
Tim Janik
7b9b0ab0fa version bump to 1.1.1, binary age 0, interface age 0. pass "gmodule" to
Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>

        * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
        pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.

        * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
        with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
        "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
        different *-fatal-* arguments now. this needs to be revised and
        compressed to a reasonable amount of arguments.
1998-08-17 00:40:55 +00:00
Tim Janik
31de6ff4e0 fatal warning option is split up now, "--g-fatal-warnings" causes fatal
Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
        "--g-fatal-warnings" causes fatal warnings in GLib,
        "--gdk-fatal-warnings" causes fatal warnings in Gdk,
        "--gtk-fatal-warnings" causes fatal warnings in Gtk.

        * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
        * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.

        * gtk/testgtk.c:
        * gdk/gxid.c:
        we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
        since automake doesn't support per target _CFLAGS yet.

        * configure.in: require GLib 1.1.3.
1998-08-16 21:15:11 +00:00
Tim Janik
c1c8caa28c export gtk_binary_age and gtk_interface_age.
Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.h:
        * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.

        * gtk/gtktypeutils.h:
        * gtk/gtkitemfactory.h: remove "void" from prototypes again.

Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
        CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
        (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
        CHILD_ARG_POSITION
        (gtk_notebook_reorder_child): new funktion to change position of a
        notebook page
        (gtk_notebook_draw_arrow): draw left/right arrow with
        GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.

        * gtk/gtkstyle.c (gtk_default_draw_arrow):
        added GTK_SHADOW_ETCHED_IN/OUT
1998-07-19 19:09:27 +00:00