Commit Graph

46 Commits

Author SHA1 Message Date
Tor Lillqvist
c9b2958b6c Don't draw anything if width or height is zero. Don't print a warning if
* gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
 	or height is zero. Don't print a warning if Pie or Arc fails, they
	always fail (?) for very narrow ellipses.

	* gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
 	the part or the destination window corresponding to source area
 	outside of the source drawable's boundary.

	* gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
 	anything if less than two points.

	* gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
 	return NULL. Gtk cut-and-paste inside a single program works
 	better this way. (It always gets the clipboard contents from
 	Windows, not from its own copy, which is cleared anyway. I can't
 	say I fully understand what happens... Emulating the X selection
 	and property stuff is a bit of a mess.)

	* gdk/win32/gdkevents.c
	* gdk/win32/gdkproperty.c: A bít more verbose logging.

	* gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
 	that never got deleted). Revamp gdk_region_shrink.

	* gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
 	after use.

	* gtk/gtk.def: Add some missing entry points.

	* gtk/gtkrc.c: Strip trailing directory separator from pixmap path
 	component.
1999-07-10 00:26:54 +00:00
Tor Lillqvist
a6afd23c5b Mention using GNU gettext. Enable NLS stuff. Use GNU gettext. Minor header
* README.win32: Mention using GNU gettext.
	* config.h.win32: Enable NLS stuff.
	* gtk/makefile.msc: Use GNU gettext.
	* gdk/win32/gdkdnd.c: Minor header reorg.
	* gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
	cosmetics.
	* gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
	* gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
1999-06-14 21:43:53 +00:00
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
Tor Lillqvist
db30076b0b Check for lstat.
* configure.in: Check for lstat.

* config.h.win32: Add non-definition of HAVE_LSTAT, just for
completeness.

* gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.

* gtk/gtk.def: Removed CRs.

* gtk/makefile.msc: Correct include path to Win32 GDK version (in
..\gdk\win32).

* gdk/win32/makefile.msc: Correct upwards relative paths.
1999-03-16 20:03:50 +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
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
Timur Bakeyev
7cef937760 It was reported by Owen Taylor <otaylor@redhat.com>, that LC_ALL produce
Thu Jan 21 16:04:35 1999  Timur Bakeyev <mc@bat.ru>

	* gtk/gtkrc.c (gtk_rc_init): It was reported by Owen Taylor
	<otaylor@redhat.com>, that LC_ALL produce unparsable garbage
	on some glibc'ed systems and HP/UX. So, falling to LC_CTYPE.
1999-01-21 13:26:35 +00:00
Timur I. Bakeyev
5ce6bea660 Under some systems (notably, BSDI), there is no LC_MESSAGES category in
Under some systems (notably, BSDI), there is no LC_MESSAGES category in
locale.h. In this case it is good guess to relay on the value of LC_ALL
(in fact, LC_CTYPE will be more precise).
1999-01-20 18:35:53 +00:00
Owen Taylor
2aca4b0a80 Allow a bg_pixmap of "<none>", as there was no way to set the background
Sun Jan 17 12:01:57 1999  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkrc.c (gtk_rc_style_init): Allow a bg_pixmap
	of "<none>", as there was no way to set the background
	on all widget but some widgets. This is important
	because Text widgets with background images are
	slow and possibly ugly.
1999-01-17 22:38:05 +00:00
Tim Janik
87620764ae define GTK_DISABLE_COMPAT_H for compilation of gtk code.
Fri Jan 15 19:16:42 1999  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: define GTK_DISABLE_COMPAT_H for compilation of gtk
        code.

        * gtk/gtkrc.c (gtk_rc_style_unref): added an assertment.

        * gtk/gtkcompat.h:
        * gtk/gtklabel.h:
        don't provide compatibility defines if GTK_DISABLE_COMPAT_H is defined.

        * gtk/gtkstyle.h:
        * gtk/gtkstyle.c: coding style, indentation and alignment fixups.
        (gtk_draw_string):
        (gtk_paint_string):
        (gtk_draw_polygon):
        (gtk_style_set_background): fixed assertments.
        (gtk_default_draw_ramp):
        (gtk_default_draw_cross):
        (gtk_default_draw_oval): issue warnings since these functions aren't
        yet implemented.

        * gdk/gdkwindow.c:
        (gdk_window_hide): only unmap window if already mapped.
        (gdk_window_show): only map window if !mapped.
        (gdk_window_internal_destroy): destroyed windows can't be mapped.

        * gtk/gtkwidget.c (gtk_widget_event): don't ignore expose events just
        because a resize is queued on a widget, we rely on the expose events
        now.
1999-01-15 18:41:43 +00:00
Tim Janik
d2e69a89d4 eliminated some queue_draws when invoking gtk_widget_set_state, since that
Mon Jan 11 15:23:32 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktogglebutton.c: eliminated some queue_draws when invoking
        gtk_widget_set_state, since that cares about redrawing already.
        some code cleanups.

        * gtk/gtktogglebutton.[hc]:
        * gtk/gtkfontsel.c:
        * gtkgamma.c:
        s/gtk_toggle_button_set_state/gtk_toggle_button_set_active/ since
        set_state is already taken by gtkwidget.h.

        * gtk/gtkcompat.h: #define gtk_toggle_button_set_state
        gtk_toggle_button_set_active.

        * gtk/gtkstyle.c: some indentation cleanups.
1999-01-11 18:49:54 +00:00
Manish Singh
a6da2cf948 gdk/gdk.c gdk/gdkinputnone.h casts to get rid of const warnings
* gdk/gdk.c
* gdk/gdkinputnone.h
* gtk/gtkruler.c: casts to get rid of const warnings

* gtk/Makefile.am: fix gtktypebuiltins.h dependencies, and do a
cmp so people don't whine about rebuilds

* gtk/gtknotebook.c: use g_snprintf on translated strings, so we
don't get buffer overflows

* gtk/gtkrc.c: use g_strdup_printf instead of g_malloc/sprintf
Plug some memleaks.

-Yosh
1999-01-02 03:16:07 +00:00
Owen Taylor
11339ec5b3 Add @INTLLIBS@. gtk-scier-981116-0.patch Sean Cier
Thu Dec 17 20:33:28 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk-config.in: Add @INTLLIBS@.
	gtk-scier-981116-0.patch  Sean Cier <scier@PostHorizon.com>) ]

	* gtk/gtkcolorsel.c gtk/gtkfilesel.c gtk/gtkfontsel.c
	  gtk/gtkgamma.c gtk/gtkinputdialog.c
	  gtk/gtknotebook.c gtk/gtkrc.c gtk/gtkthemes.c
	  gtk/gtktipsquery.c:

	Applied parts of gtk-egger-981215-1 [ Daniel Egger
	<Daniel.Egger@t-online.de> ] marking additional strings for
	internationalization.

	* po/nl.po: Added Dutch translation from
	Paul Siegmann <pauls@euronet.nl>.
1998-12-18 01:32:33 +00:00
Owen Taylor
9a9f4591a4 Removed unused variable, fixed minor memory leak.
Tue Dec 15 09:22:44 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkrc.c (gtk_rc_init): Removed unused
	variable, fixed minor memory leak.

	* gdk/gdk.c: Fixed another merge problem.
1998-12-15 14:23:46 +00:00
Owen Taylor
698a11c606 Append locale-specific suffixes to default rc file names, and look these
Mon Dec 14 16:10:05 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_init): Append locale-specific
	suffixes to default rc file names, and look these
	up in addition to the base filename, to facilitate
	having the correct fontset per-locale.

	move $(sysconfdir)/gtkrc to $(sysconfdir)/gtk/gtkrc

	* gtk/gtkitemfactory.[ch] (gtk_item_factory_set_translate_func):
	New function to set a function to translate menu paths.

	* gtk/gtkrc.c (gtk_rc_add_initial_default_files): Free
	results of g_strsplit().
1998-12-14 23:26:12 +00:00
Owen Taylor
af84227184 Allocate correct amount of memory for strings.
Wed Dec  9 00:41:41 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
	correct amount of memory for strings.
1998-12-09 05:43:35 +00:00
CST 1998 Shawn T. Amundson
6421c96ccc Released GTK+ 1.1.6
Tue Dec  8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.6

        * NEWS: updated

        * gtk/Makefile.am:
          gtk/testgtk.c:
          gtk/gtkrc.h:
          gtk/gtkrc.c: Read in default files.
1998-12-09 01:05:41 +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
Tim Janik
58af2b56bf deprecated gtk_widget_freeze_accelerators and
Sat Nov 28 00:06:49 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
        gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
        and gtk_widget_unlock_accelerators.

        * gtk/gtklayout.h:
        * gtk/gtklayout.c: implemented incremental freezing facility.

        * gtk/gtktext.h:
        * gtk/gtktext.c: implemented incremental freezing facility.

        * gtk/gtkenums.h:
        * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.

        * gtk/gtkentry.h:
        * gtk/gtkentry.c:
        deprecated gtk_entry_adjust_scroll().

        * random GtkType, macro and indentation fixes.

Fri Nov 27 22:50:15 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.h:
        * gtk/gtkclist.c: implemented incremental freezing facility, added
        a new class member (*refresh)() which takes over the thaw
        functionality. the clist FROZEN flag got removed on the way.
        * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
        and incremental freezing.

        * gtk/gtkcalendar.c: implemented incremental freezing facility.
1998-11-28 01:56:09 +00:00
jaycox
47b3584d36 Modified Files: gtkclist.c gtkclist.h gtkctree.c gtkctree.h gtknotebook.c
Modified Files:
 	gtkclist.c gtkclist.h gtkctree.c gtkctree.h gtknotebook.c
 	gtknotebook.h gtkrc.c gtkrc.h
 add const in some useful places
1998-11-23 13:53:25 +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
Manish Singh
3c07b7ebbd check if column[i].button is valid before calling gtk_widget_intersect on
* gtk/gtkclist.c: check if column[i].button is valid before calling
gtk_widget_intersect on it in gtk_clist_draw

* gtk/gtkdnd.c: removed unused variable empty_bits

* gtk/gtkrc.c: we should use gslist_* functions with GSLists...

* gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
a boolean (thanks to Elrond for noticing this)

-Yosh
1998-11-08 05:58:41 +00:00
Owen Taylor
e2a5219220 Merge from themes-2. See the ChangeLog for a somewhat detailed
history of the evolution of the changes involved. Most of this
is actually minor painting tweaks.
1998-11-06 22:05:02 +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
8c56db61e3 introduce testbindings on C-1 for buttons, to check out binding
Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>

        * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
        to check out binding priorities. someone should really write
        gtkrc-mode for emacs.

        * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
        * gtk/testgtk.c (main): and move it here ;). this test says something
        on release of C-9. (this works only if the mouse pointer is on a
        spinbutton and there is no focus widget).

        * gtk/gtkrc.h:
        * gtk/gtkrc.c:
        export gtk_rc_parse_color, gtk_rc_parse_state and a new function
        gtk_rc_parse_priority to parse path priority types.
        export rc tokens.
        feature binding parsing.

Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkbindings.h:
        * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
        feature binding parsing in rc files.
        * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
        * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
        order the bindings with lowest priority first.
1998-07-22 22:29:10 +00:00
Tim Janik
ddefd9c9f5 implementation of the "class" keyword for styles.
Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkrc.c: implementation of the "class" keyword for styles.
1998-07-01 01:35:13 +00:00
Tim Janik
1018412555 fixed lookup order for rc styles. the latest defined rc set pattern is
Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
        rc set pattern is favoured, this is needed for overriding of style
        patterns with subsequently parsed rc files.
1998-06-30 12:34:36 +00:00
Tim Janik
b483ca4b97 code overhaul for simplicity and more descriptive error messages.
Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
        error messages.
1998-06-30 11:05:20 +00:00
Tim Janik
a391196ba5 fixed an assertment.
Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.

        * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
        this should eventually be done by gentypeinfo.el somewhen.
        * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.

        * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
        enum values of an enum type.

        * gtk/gtk.defs:
        * gtk/gtkcurve.h:
        * gtk/gtkobject.h:
        * gtk/gtkprivate.h:
        * gtk/gtkwidget.h:
        * gtk/gtkenums.h:
        brought enum/flags definitions in sync, added a few more enum
        definitions for bindings and pattern matching.

        * some more macro and GtkType fixups in various places.

        * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
        as a key-release modifier for the binding system.

Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
        was a stale list pointer that is already present in GtkMenuShell.

        * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
        GtkMenuShell::selection_done which is emitted after the menu shell
        poped down again and all possible menu items have been activated.

Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
        before activation of the menuitem, so the menu is actually taken off the
        screen prior to any menu item activation.

        * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
        for NULL nodes.

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
        the emission of the "add-accelerator" signal on a widget. this is
        usefull to prevent accelerator installation on certain widgets.

        * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
        labels left justified, by setting their alignment. stop accelerator
        installation for the menu items, since we use dynamic menus.

Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
        should *really* use GtkItemFactory. this is only for preserving source
        compatibility where possible, use of GtkMenuFactory is deprecated as of
        now.

        * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
        to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
        missed this possibility when i added gtk_object_class_add_user_signal
        in late january.

        * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.

Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelgroup.h:
        * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.

        * gtk/gtkaccellabel.h:
        * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
        display of the accelerators associated with a certain widget.

        * gtk/gtkitemfactory.h:
        * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
        parsing and accelerator handling.

        * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
        positioning a menu.
        (gtk_menu_map): removed the allocation code.
        (gtk_menu_size_allocate): care for redrawing of children and resize
        our widget->window correctly.
        (gtk_menu_key_press): feature the new accelerator groups.

        * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
        submenu if neccessary.

        * gtk/gtkmenuitem.c:
        * gtk/gtkcheckmenuitem.c:
        * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
        function variants.

        * gdk/gdk.c:
        (gdk_keyval_from_name):
        (gdk_keyval_name): new functions for keyval<->key-name associations.
        (gdk_keyval_to_upper):
        (gdk_keyval_to_lower):
        (gdk_keyval_is_upper):
        (gdk_keyval_is_lower): new functions to check/translate keyvalues with
        regards to their cases.

Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
        widget's class path.
        (gtk_widget_path): new function to calculate a widget's name path.

        * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
        pattern matching, features reversed pattern matches.
1998-06-07 06:48:56 +00:00
Elliot Lee
47c47914d6 I should have named it gtk_rc_set_image_loader() initially - fixed 1998-05-21 19:26:19 +00:00
Elliot Lee
cefd52f52f Allow user to set a custom image loading routine for loading bg_pixmap's
Allow user to set a custom image loading routine for loading bg_pixmap's specified in the
gtkrc's.
1998-05-21 19:24:01 +00:00
Owen Taylor
43dfe74c56 Fixed up a stat() that Sopwith missed when changing stat => lstat.
Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
	that Sopwith missed when changing stat => lstat.

Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
	  gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
	GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.

	* gdk/gdk.c: Print sizeof() results
	as g_print("%ld", (glong)sizeof(foo)), to deal with
	sizeof() being long on Alpha's.

	* gtk/testgtk.c: include <string.h> for strlen

Tue May 12 19:22:58 1998  Owen Taylor  <otaylor@gtk.org>

 	* glib/glib.h: Added macros G[U]INT_TO_POINTER() and
	GPOINTER_TO_[U]INT for storing small integers integers
	inside pointers.

	* glib/testglib.c: Print sizeof() results
	as g_print("%ld", (glong)sizeof(foo)), to deal with
	size_t being long on Alpha's.
1998-05-13 00:24:57 +00:00
Elliot Lee
eae7b32f85 Use lstat() to tell when an rc file was modified, not stat(), because we
Use lstat() to tell when an rc file was modified, not stat(), because we
could be pointing symlinks around.
1998-05-12 22:11:56 +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
Owen Taylor
de210bbdec New function to reset the RC styles for a heirarchy
Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
	function to reset the RC styles for a heirarchy

        Clear the window background if necessary in
	gtk_window_style_set.

	* gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
	rereads all previously read RC files.

	* gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
	(Should it just be called gdk_get_toplevels?)

	* gtk/testgtk.c: New test to reload RC files.
1998-05-01 16:15:39 +00:00
Owen Taylor
05bc6a5b36 Merged changes from gtk-1-0. Check ChangeLog for details. 1998-05-01 04:23:59 +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
d894d2dc0c No, you can't add a GtkStyle * to a list of GtkRcNode *. (Fixes huge
Mon Mar  9 01:01:41 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkrc.c: No, you can't add a GtkStyle * to a
	  list of GtkRcNode *. (Fixes huge performance problem)
	  Plus, don't bother creating a new style unless style
	  actually has bg pixmaps.
1998-03-09 06:07:34 +00:00
Owen Taylor
ab30a02e5f - Show selection correctly when starting selection with arrows
Sun Mar  8 15:53:33 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktext.c:

	- Show selection correctly when starting selection with arrows

	- Display pixmap background only when not editable

	- Redraw focus area more carefully to prevent flashing (and
	  make style of drawing consistent with Entry)

	* gtk/gtktreeitem.c: ref colormaps for pixmap by colormap
	  storage.

	* gtk/gtkrc.c: Store a separate style for each RcStyle for
	  each colormap, so we can handle background pixmaps
	  correctly, which need to be per-colormap. (Leaks
	  colormaps...)

	  Parse text color style entries correctly.

	* gtk/testgtk.c: insert text without fg color
	  gtk/testgtkrc: move "*" after rest, so the other class styles
	                 take effect

        * gdk/gdkwindow.c gdk/gdk.c gdk/gdkprivate.h: Send DND events
	  safely, in case drop window disappears. (Performance hit
	  because XSync()'s are necessary)

	* gdk/gdk.h gdk/gdkpixmap.c: Added
	  gdk_pixmap_colormap_create_from_xpm[_d] to allow creating
	  pixmaps from xpm's before you have a GdkWindow.
1998-03-08 21:47:14 +00:00
Tim Janik
693fa02b83 we make an active server grab now, this way we can change the cursor
Fri Feb 27 15:31:55 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtktipsquery.c: we make an active server grab now, this way we
        can change the cursor globally and don't need to tweak event masks
        of other windows.

        * gtk/gtkframe.c (gtk_frame_style_set): recompute label size.

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c:
        New signal GtkWidget::style_set to be emitted when a widget's style
        changed. New flag GTK_RC_STYLE to indicate whether an rc lookup has
        been perfomed for the widget.
        (gtk_widget_ensure_style): New function.
        (gtk_widget_set_rc_style): New function.

        * docs/styles.txt: new file.
1998-02-27 16:31:06 +00:00
Tim Janik
2b2667e791 new function. many functions adapted to use GScanner for scanning.
* gtk/gtkrc.h (gtk_rc_parse_string): new function.
        * gtk/gtkrc.c: many functions adapted to use GScanner for scanning.
        (gtk_rc_parse): use gtk_rc_parse_any for parsing.
        (gtk_rc_parse_string): new function to support parsing from
        strings, just calls gtk_rc_parse_any.
        (gtk_rc_parse_any): new function using GScanner as lexer.
-timj
1997-12-23 02:12:10 +00:00
Owen Taylor
d5d01a5af9 It's all in the changelog. Well, almost all.
-owt
1997-12-18 02:17:14 +00:00
Tim Janik
37f6b421f2 applied jamesa-971010-0 for stability. applied jamesa-971010-2 for a small
* gtkfilesel.c: applied jamesa-971010-0 for stability.
        * gtkrc.c: applied jamesa-971010-2 for a small optimization.
        * gtkcheckmenuitem.h:
        * gtkcheckmenuitem.c:
        * gtkradiomenuitem.c:
        * testgtk.c: applied johannes-971113-0 which adds
        gtk_check_menu_item_set_show_toggle() to change the way check
        menu items and radio menu items look.
-timj
1997-12-07 02:34:38 +00:00
Elliot Lee
9508b76bd2 Initial revision 1997-11-24 22:37:52 +00:00