Compare commits

...

1839 Commits

Author SHA1 Message Date
Owen Taylor
131966090f Released 1.2.10.
Sun Apr  1 23:01:31 2001  Owen Taylor  <otaylor@redhat.com>

	* Released 1.2.10.

Sun Apr  1 22:22:47 2001  Owen Taylor  <otaylor@redhat.com>

	[ Addition of safety checks to try to avoid segfaulting
	  on broken setups always. ]

	* gdk/gdkfont.c (_gdk_font_wc_to_glyphs): Add a boolean
	return value to deal with failure of conversion of
	wide characters to glyphs.

	* gtk/gtkentry.c gtk/gtklabel.c: Handle failure of
	mbstowcs/wcstombs a bit better.

	* gdk/gdkfont.c gdk/gdkdraw.c: Deal with failure of
	_gdk_font_wc_to_glyphs() gracefully

	* gdk/gdkim.c (_gdk_wcstombs_len): quietly return NULL on
	failure instead of g_return_if_fail().

Wed Mar 28 16:05:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c (gtk_font_selection_select_size): Fix
	problem where fractional sizes caused infinite loop.
	(bugzilla.redhat.com #33081)

Wed Mar 28 14:52:08 2001  Owen Taylor  <otaylor@redhat.com>

	* docs/Makefile.am: Remove excess rules breaking
	distcheck.
2001-04-02 03:51:01 +00:00
Owen Taylor
9eec86b770 Fix problem where dropping into internal child widgets (such as GtkCList
Wed Mar 28 12:33:20 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c: Fix problem where dropping into
	internal child widgets (such as GtkCList tab labels)
	(#52457, reported by Daniel Erat). Can't use
	gtk_container_children(), so provide a substitute
	which uses gtk_container_forall().
2001-03-28 17:43:08 +00:00
Ole Laursen
d78b20c7a6 Updated Danish translation 2001-03-27 20:12:43 +00:00
Andraz Tori
e64144a00f Updated Slovenian translation 2001-03-25 13:04:59 +00:00
Darin Adler
5dbcf115a9 Fixed #if G_ENABLE_DEBUG that was supposed to be #ifdef G_ENABLE_DEBUG.
* gtk/gtkobject.h: Fixed #if G_ENABLE_DEBUG that
	was supposed to be #ifdef G_ENABLE_DEBUG.
2001-03-23 02:44:31 +00:00
Christian Rose
1c92bad0ee Fixed Swedish translation in some places, thanks to comments from Gran
Uddeborg <goeran@uddeborg.pp.se>.
2001-03-19 13:41:21 +00:00
Fatih Demir
e901ee0e51 Header fix 2001-03-18 19:11:24 +00:00
Fatih Demir
1be9a82cd3 Updated tr.po 2001-03-18 19:04:19 +00:00
Fatih Demir
2e765264e7 Updated tr.po 2001-03-18 15:37:48 +00:00
Owen Taylor
de55adbf46 Updated
Thu Mar 15 15:23:11 2001  Owen Taylor  <otaylor@redhat.com>

	* NEWS: Updated

	* configure.in (GTK_BINARY_AGE): Up micro => 10,
	binary => 10, interface => 1.

	* INSTALL.in: Add some discouraging words about
	--with-xinput=gxi.

	* configure.in (x_ldflags): Make --with-xinput be
	--with-xinput=xfree, and warn for --with-xinput=gxi.

Thu Mar 15 14:29:47 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkselection.c (sanitize_ctext): Handle
	extended segments, which can contain arbitrary octets,
	properly. (Fixes problems with cut-and-paste and,
	e.g., KOI8-R.)

	* gtk/gtktext.c gtk/gtkeditable.c: Patch from
	Vlad Harchev to avoid using gdk_draw_text_wc()
	on text that is really chars, not wchars. (Cannot
	convert between chars and wide chars with assignment!)
2001-03-15 22:13:21 +00:00
Pablo Saratxaga
832178099c fixed chars 2001-03-15 10:49:58 +00:00
Pablo Saratxaga
e7b447e89d updated Azeri file 2001-03-15 09:12:56 +00:00
Owen Taylor
296abc67a4 Make somewhat more safe on broken libcs, also add a g_return_if_fail() to
Thu Mar 15 01:31:07 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkim.c (_gdk_wcstombs_len): Make somewhat more
	safe on broken libcs, also add a g_return_if_fail()
	to make the failure case when we somehow get a
	string of invalid wide characters more clear.
	(#51644, Sergey Vlasov)
2001-03-15 06:54:43 +00:00
Owen Taylor
c6351975cd Fix problem in testing the result of g_get_home_dir(), and test the result
Thu Mar 15 01:05:49 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_add_initial_default_files): Fix
	problem in testing the result of g_get_home_dir(),
	and test the result of g_get_home_dir() in another
	place for consistency. (#51833). Also fix off-by-one
	error in check against GTK_RC_MAX_MODULE_PATHS.
2001-03-15 06:25:54 +00:00
Owen Taylor
560b7a063d head -n 7 ChangeLog 2001-03-15 05:45:28 +00:00
Owen Taylor
f1fd0af53b Fix missed equal_pos => option for --with-xinput=gxi. (Which is broken
Wed Mar 14 23:38:23 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.c (gdk_init_check): Fix missed equal_pos => option
        for --with-xinput=gxi. (Which is broken anyways, but
        oh well...) (#51973)

        * gtk/gtkeditable.c (gtk_editable_get_event_time): Fix excess free
        in case where there is no current event. (#51889)

        * gtk/gtkwindow.[ch]: Handle focus for the case of
        PointerRoot (no window manager) by using algorithm taken
        from xterm.
2001-03-15 04:39:32 +00:00
Valek Frob
1b5b657065 Small fix. 2001-03-14 14:26:40 +00:00
Pablo Saratxaga
047ccde819 added Vietnamese file 2001-03-13 01:49:17 +00:00
Andraz Tori
2af348b786 Updated Slovenian translation 2001-03-11 22:10:48 +00:00
Pablo Saratxaga
c38487ceaa Updated Serbian files 2001-03-10 14:26:44 +00:00
Pablo Saratxaga
957ce8e00f converted az.po to 8bit encoding 2001-03-09 16:22:21 +00:00
Christian Meyer
4dd7cd5b52 Revised German translation. 2001-03-08 03:53:09 +00:00
Owen Taylor
4390744d27 Only check the ignore_enter flag for the menu shell that the item is
Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
	check the ignore_enter flag for the menu shell that
	the item is actually a child of, not for attached
	submenus. (#51536)
2001-03-05 21:52:22 +00:00
Owen Taylor
91df70d81b Release 1.2.9
Fri Mar  2 12:35:40 2001  Owen Taylor  <otaylor@redhat.com>

	* Release 1.2.9

        * NEWS: Final update for 1.2.9

	* INSTALL INSTALL.in: Add note about the movement of
	the include files.
2001-03-02 20:01:07 +00:00
Fatih Demir
063048efbf Hmm 2001-03-02 18:40:45 +00:00
Fatih Demir
288466d601 Added tr ... 2001-03-02 18:36:42 +00:00
Fatih Demir
5452736fea Added Turkish translation 2001-03-02 18:32:24 +00:00
Andraz Tori
5c168016eb Updated Slovenian translation 2001-03-01 23:03:13 +00:00
Christian Rose
1d95034b88 Updated Swedish translation. 2001-03-01 10:51:56 +00:00
Owen Taylor
97e83dbccb Never make harmless warning fixes! :-(
Thu Mar  1 04:35:51 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_class_init): Never make harmless
        warning fixes! :-(
2001-03-01 09:40:38 +00:00
Christophe Merlet
30e80df2f7 Updated French translation. 2001-03-01 09:09:01 +00:00
Owen Taylor
ea0c710884 Fix the .in files, add note about --with-native-locale.
Wed Feb 28 21:14:08 2001  Owen Taylor  <otaylor@redhat.com>

	* README.in INSTALL.in: Fix the .in files, add note
	about --with-native-locale.

	* */po/*: Line-number-creepage.
2001-03-01 02:19:26 +00:00
Owen Taylor
0654fc6064 Patch from ChiDeok Hwang to move call to sync_selection() up a few lines
Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
	Hwang to move call to sync_selection() up a few lines
	to before the row list is modified, to fix crash when
	removing rows in the undo_selection list.

	(Test case provided by Daniel Elstner:

        http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)

Wed Feb 28 15:40:27 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalender.c gtk/gtkdnd.c gtk/gtkitemfactory.c gtk/gtklayout.c
	  gtk/gtkplug.c gtk/gtksocket.c gtk/gtktypeutils.c
	  gtk/gtkwidget.c genmarshal.pl: Fix implicit casts
	between void * and function pointers.

	* gtk/gtklayout.c: Remove cruft after #endif

	* gtk/gtkdnd.c: Include stdlib.h for abs.
2001-03-01 00:18:22 +00:00
Owen Taylor
51454e8ac6 Redo the focus stuff once more. Keep track of the focus status via an
Tue Feb 27 18:38:27 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_map): Redo the focus stuff
	once more. Keep track of the focus status via an event
	filter, so we can keep track of whether the window
	or any child has the focus; something that requires
	fields from the XEvent not in the GdkEvent.

	Install this event filter in gtk_window_map() before mapping
	the window, on the guess that this is unlikely to be overriden
	without the overrider chaining up. (fingers crossed)
2001-02-27 23:41:09 +00:00
Owen Taylor
9cad1a8a54 fix messed up commit message from earlier 2001-02-27 09:42:41 +00:00
Owen Taylor
f9c3cfe49f Remove left-over debug-printf.
Tue Feb 27 04:14:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_propagate_event): Remove
	left-over debug-printf.

	* gtk/gtkdnd.c (gtk_drag_find_widget): Don't use
	new_allocation.x/new_allocation.y for coordinate,
	translation since they are clip, use the
	x_offset/y_offset variables we keep for the purpose instead.
2001-02-27 09:19:21 +00:00
Owen Taylor
ce06d6d635 When recursing, get the list of children and ref them all before walking
Tue Feb 27 02:29:20 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_find_widget): When recursing,
	get the list of children and ref them all before walking
	through the list, to prevent problems when the widget
	hierarchy changes in ::drag_motion/drop handlers.

	* gtk/gtkmain.c (gtk_propagate_event): Only activate
	special key-press grab handling for widgets within
	GtkWindows. Otherwise, fall through to normal case.

	This prevents key events being sent twice to GtkInvisible
	widgets, which can cause all sorts of mischief.
2001-02-27 07:36:18 +00:00
Owen Taylor
b501a17c8b Add a configuration option --with-native-locale, that greatly speeds up
Tue Feb 27 01:29:34 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in acconfig.h gdk/gdkfont.c gdk/gdkim.c INSTALL: Add a
	configuration option --with-native-locale, that greatly speeds up
	wide-character/multibyte conversions by dropping the indirection
	through Xlib's property-conversion functions. Off by default due
	to lack of testing for portability, but it should, in general be a
	more correct way of doing things, and should also remove much of
	the speed hit that the recent change to the handling of 8-bit
	fonts may have introduced.
2001-02-27 06:46:08 +00:00
Owen Taylor
8875974d18 Update to describe submitting patches and bug reports to
Mon Feb 26 16:34:33 2001  Owen Taylor  <otaylor@redhat.com>

	* README: Update to describe submitting patches
	and bug reports to bugzilla.gnome.org.

Tue Feb 20 23:48:16 2001  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkim.c,gdk/gdkprivate.h: Add private function
         _gdk_wcstombs_len() which takes a length.

	* gdk/gdkfont.c,gdk/gdkprivate.h,gdk/gdkdraw.c:
        Consistently handle calls to _wc() font for GDK_FONT_FONT
	routines by:

          a) for 8-bit fonts, converting to chars via wcstombs
              (Will make GtkLabel handle using GDK_FONT_FONT for
             non-iso-8859-1 a wee bit better, though GDK_FONT_FONTSET
             is still the only supported way to get correct i18n.
             #50834)

          b) for 16-bit fonts, assuming each wchar is a glyph
             index. (Broken, but no more broken than anything else)
2001-02-27 04:30:56 +00:00
Owen Taylor
46e0b468ed We can't maintain a flag in gtk_window_focus_in/out, because GtkPlug and
Mon Feb 26 21:36:11 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.[ch] (gtk_window_focus_in/out_event): We can't
	maintain a flag in gtk_window_focus_in/out, because
	GtkPlug and cut-and-pastes of GtkPlug override these
	methods and don't chain up. So back out recent change
	adding such a flag, and instead recycle the hack
	GtkPlug uses of making GTK_WIDGET_HAS_FOCUS on the
	top level represent this information
2001-02-27 02:39:28 +00:00
Owen Taylor
a3cf1957cb Do the setting of tree->root_tree in parent_set rather than _map(), fixing
Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktree.c (gtk_tree_class_init): Do the setting
	of tree->root_tree in parent_set rather than _map(),
	fixing #50892 in a bit better manner.
2001-02-26 19:37:29 +00:00
Stano Visnovsky
f10c733cb9 Fixed spelling 2001-02-23 18:00:23 +00:00
Owen Taylor
90a565d677 Change to parent implementation instead of cut-and-paste that was out of
Thu Feb 22 20:50:08 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkplug.c (gtk_plug_set_focus): Change to parent
	implementation instead of cut-and-paste that was
	out of sync.

	* gtk/gtkwindow.[ch] (gtk_window_set_focus): Only send
	::focus_in_event when the toplevel window actually
	has focus on it. (Fixes #50857, Akira Higuchi)
2001-02-23 02:01:18 +00:00
Owen Taylor
d7a68f63be Grab on a offscreen GtkInvisible so that we can move handle boxes whose
Thu Feb 22 19:53:55 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Grab
	on a offscreen GtkInvisible so that we can move handle boxes
	whose parents are iconified or on another desktop. Also,
	make sure we don't reattach to such parents. (#1923)
2001-02-23 00:55:46 +00:00
Owen Taylor
478449f6cd Don't flip cursor. (#50934)
Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2001-02-22 22:50:53 +00:00
Owen Taylor
de78784eb1 Update the current font from the contents of the entry. (#3123)
Thu Feb 22 16:45:17 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c (gtk_font_selection_get_font[_name]):
	Update the current font from the contents of the entry.
	(#3123)
2001-02-22 22:02:24 +00:00
Jody Goldberg
abba4bdf73 Remove duplicate fwd decl for gtk_default_draw_shadow.
Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>

	* gtk/gtkstyle.c : Remove duplicate fwd decl for
	gtk_default_draw_shadow.

Tue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkimage.c (gdk_image_new): Remove excess
	warning, make warnings more verbose, treat a error
	in shmat as permanent, and don't try again.
	(#51163, Ed Randall.)

Mon Feb 19 20:46:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_key_press): Take key presses
	of GDK_Left/GDK_Right when there is a selection to mean
	"move the cursor to the start/end of the selection".
	(Inspired by #50492, Jay Cox, though the implementation
	is different for GTK+-1.2.)

Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
	delay for the first click before starting to scroll.
	(based on #51026, gtk-enf-990512-0.patch, Eric Fisher)

	* gtk/gtktext.c: GtkText should have I-beam cursor.
	(based on gtk-enf-990513-1.patch, Eric Fisher.)

Mon Feb 19 18:39:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkselection.c (gdk_string_to_compound_text,gdk_text_property_to_text_list):
	Robustify by stripping control characters not allowed in COMPOUND_TEXT
	out before passing to XmbTextpropertyToTextList(), and from the
	result of XmbTextListToTextProperty(). This is in the spirit
	of "Be lenient in what you receive, strict in what you generate."
	(Fixes #1704)
2001-02-22 20:38:15 +00:00
Andraz Tori
5a22518969 Updated sl translation 2001-02-20 23:57:39 +00:00
Owen Taylor
635105d142 Fix incorrect mask. (#51039, fix from Martin Maierhofer)
Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
	mask. (#51039, fix from Martin Maierhofer)

Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
	for unshifted + and shifted = for non-us keyboards.
	Make <Control>+ and <Control>- work as well as
	<Control>KP_Plus, <Control>KP_Minus for recursive
	open/close.  (#2682, Ren Seindal)
2001-02-19 21:31:43 +00:00
Owen Taylor
5e6a0c969d Updated (applied gtk-pauls-990307-0.patch)
Sun Feb 18 18:06:11 2001  Owen Taylor  <otaylor@redhat.com>

	* nl.po:	Updated (applied gtk-pauls-990307-0.patch)
2001-02-18 23:06:54 +00:00
Andraz Tori
3883f5a879 Updated Slovenian translation 2001-02-17 14:50:31 +00:00
Owen Taylor
eea850a7c0 Unset the active menu item before deactivating the menu, so
Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
	the active menu item before deactivating the menu,
	so gtk_menu_popdown doesn't change the history. (#50964)
2001-02-17 00:10:31 +00:00
Owen Taylor
f8709339b5 draw lines with text_gc rather than black_gc. (Patch from Vlad Harchev
Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>

	       * gtk/gtktreeitem.c (gtk_tree_item_draw_lines):
	       draw lines with text_gc rather than black_gc.
	(Patch from Vlad Harchev <hvv hippo ru>, #50926)
2001-02-16 23:35:04 +00:00
Owen Taylor
92b5545801 1.2.9pre1
Tue Feb 13 15:39:28 2001  Owen Taylor  <otaylor@redhat.com>

        * 1.2.9pre1

	* NEWS: Update.

        * docs/Makefile.am: Remove building of HTML for
	gdk.texi gtk.texi since it doesn't work.
2001-02-16 04:37:42 +00:00
Christopher R. Gabriel
9a0f08fd30 Updated italian translation 2001-02-15 05:11:15 +00:00
Stano Visnovsky
dd5f18bfba Updated Slovak translation 2001-02-14 11:41:18 +00:00
Simos Xenitellis
e75267a55d Minor fixes to Greek translation 2001-02-13 23:13:59 +00:00
Owen Taylor
8c9ce83511 Fix problems with characters < 256 in wide character locales. (Patch from
Tue Feb 13 13:56:58 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (find_char_width): Fix problems with
	characters < 256 in wide character locales. (Patch
	from Yoichi Imai.)
2001-02-13 19:58:35 +00:00
Owen Taylor
ec7e8f971e Properly handle passive buttons at button creation time (#50686).
Tue Feb 13 00:58:49 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c: Properly handle passive buttons at
	button creation time (#50686).
2001-02-13 15:33:25 +00:00
Owen Taylor
91383ef28e Call gdk_colormap_sync() - fixes #50678.
Mon Feb 12 20:37:32 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c (gdk_rgb_try_colormap): Call gdk_colormap_sync() -
	fixes #50678.

	* gdk/gdk.h: Add missing prototype for gdk_colormap_sync().
2001-02-13 01:53:28 +00:00
Owen Taylor
c17f904633 Fix some cases of implicit casting between void * and function pointers.
Mon Feb 12 20:02:32 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c: Fix some cases of implicit casting between
	void * and function pointers.

	* configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
	and refuse to initialize GTK+ if they fail.

	* configure.in (GTK_INTERFACE_AGE): Reset GTK_INTERFACE_AGE
	to zero.
2001-02-13 01:25:28 +00:00
Owen Taylor
58ea26507c [ Enabling patch for better looking theme engines ]
Mon Feb 12 15:55:26 2001  Owen Taylor  <otaylor@redhat.com>

	[ Enabling patch for better looking theme engines ]

	* gtk/gtkstyle.[ch]: Add new API functions for making
	better looking GTK+-1.2.x themes. THESE FUNCTIONS WILL
	NOT BE SUPPORTED IN THE FUTURE. ANY THEMES DEPENDING
	ON THESE FUNCTIONS MUST CHECK FOR GTK+-1.2.x WHERE
	x >= 1.2.9.

	The functions:

	 _gtk_style_set_prop_experimental()
	 _gtk_style_get_prop_experimental()

	are used to allow configuration of assorted geometry
	parameters.

	* gtk/gtkbutton.c: Make DEFAULT_SPACING configurable as
	GtkButton::default_spacing.

	* gtk/gtkcheckbutton.c gtk/gtkradiobutton.c: Make indicator_size
	and indicator_spacing configurable as GtkCheckButton::indicator_size,
	GtkCheckButton::indicator_spacing.

	* gtk/gtkcheckbutton.[ch]: Private function
	_gtk_check_button_get_props().

	* gtk/gtkcheckmenuitem.c (gtk_check_button_menu_item_set_show_toggle):
	Make a noop - turning this on is just a bad idea visually, and
	changing this from a program is just asking a bad idea.

	* gtk/gtk{h,v,}paned.c: Provide configuration parameters
	GtkPaned::handle_full_size, which, if true, will turn
	on GTK+-1.3.2 style full-size paned handles.
	GtkPaned::handle_width, which sets the gutter size for
	paned widgets. (If set, overrides setting via
	gtk_paned_set_gutter_size())

	* gtk/gtkpaned.[ch]: Add private functions
	_gtk_paned_is_handle_full_size(), _gtk_paned_get_handle_rect(),
	_gtk_paned_get_gutter_size().

	* gtk/gtkstyle.c (gtk_default_draw_box): Add handling for details
	"hpaned", "vpaned", used for drawing full-size grips on horizontal
	and vertical paned widgets. (In the style of GTK+-1.3.2)

	* gtk/gtkhscale.c gtk/gtkhscrollbar.c:

	* gtk/gtkoptionmenu.c: Add configurable parameters:

	  GtkOptionMenu::indicator_width
	  GtkOptionMenu::indicator_height
	  GtkOptionMenu::indicator_left_spacing
	  GtkOptionMenu::indicator_right_spacing
	  GtkOptionMenu::indicator_top_spacing
	  GtkOptionMenu::indicator_bottom_spacing

        To control where the indicator is drawn and how big it is.

	* gtk/gtkrange.[ch]: Add configurable parameters:

	  GtkRange::slider_width    - width of trough
	  GtkRange::trough_border   - space to reserve for trough border
	  GtkRange::stepper_size    - size of arrows
	  GtkRange::stepper_spacing - spacing between scrollbar and arrows

	and private accessor _gtk_range_get_props().

	* gtk/gtkwidget.c (gtk_widget_event): Rewrite a bit to
	quiet GCC.

	* gtk/gtkwidget.c (gtk_widget_propagate_state): Fix typo
	in last commit.
2001-02-12 22:40:03 +00:00
Owen Taylor
8005072a91 Don't allow insensitive widgets to have a grab.
Mon Feb  5 12:47:09 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_propagate_state)
	  gtk/gtkmain.c (gtk_grab_add): Don't allow insensitive widgets to
	have a grab.
2001-02-12 20:30:03 +00:00
Gustavo Maciel Dias Vieira
e6038b6b2e Updated Brazilian Portuguese translation.
2001-02-12  Gustavo Maciel Dias Vieira  <gdvieira@zaz.com.br>

* pt_BR.po: Updated Brazilian Portuguese translation.
2001-02-12 12:26:42 +00:00
Gediminas Paulauskas
3a5a34e651 Small corrections in Lithuanian translation. 2001-02-12 01:47:22 +00:00
Ian Peters
ded7626eeb use the font->ascent and ->descent to calculate the requisition height,
* gtk/gtkprogressbar.c (gtk_progress_bar_size_request): use the
font->ascent and ->descent to calculate the requisition height,
rather than the gdk_text_height
(gtk_progress_bar_paint): use the font->ascent instead of the
gdk_text_height when calculating the vertical offset of the text
label on the progress bar.  This fixes the baseline of the font on
the widget.
2001-02-11 03:58:55 +00:00
Kjartan Maraas
9f8ce57295 Updated translation. Updated translation.
2001-02-08  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated translation.
	* nn.po: Updated translation.
2001-02-08 09:53:45 +00:00
Nam SungHyun
04d5567bbf 1.2.9 2001-02-08 02:44:35 +00:00
Christophe Merlet
39c90da92f Updated French translation. 2001-02-05 16:44:49 +00:00
Owen Taylor
4205ca4ff5 Surround additional regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
	regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2001-02-03 00:25:57 +00:00
Owen Taylor
d83929a297 Remove definition of _XOPEN_SOURCE, since it breaks things on BSD. If you
Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkimage.c: Remove definition of _XOPEN_SOURCE, since
	it breaks things on BSD. If you want to compile GTK+ with
	-ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE
	when configuring, since GTK+ simply can't be "pure ANSI"
	in the header files it uses. (#8170, Greg Hudson)

	* gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
	warning message if no converter can be found.
2001-02-02 23:37:19 +00:00
Owen Taylor
73c002cae4 Fix problem with passing signed chars to isupper() / tolower().
Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/fnmatch.c (FOLD): Fix problem with passing signed
	chars to isupper() / tolower().

	* examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
	to clear up 64-bit warnings. (#567)
2001-02-02 20:25:13 +00:00
Owen Taylor
9f56908ea3 Fix some reference counting problems problems in last patch.
Fri Feb  2 13:38:21 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_propagate_event): Fix some reference
	counting problems problems in last patch.
2001-02-02 19:43:00 +00:00
Owen Taylor
c30e743f8e When a grab widget is in effect, give the grab widget a first crack at
Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_propagate_event): When a grab
	widget is in effect, give the grab widget a first
	crack at KEY_PRESS/RELEASE events. (#424)
2001-02-02 18:35:29 +00:00
Owen Taylor
aa4fd35cfa Use $(libdir), not $(exe_prefix), since some people set $(libdir)
Fri Feb  2 12:02:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
	since some people set $(libdir) separately. (#1290, David Kaelbling)
2001-02-02 17:16:12 +00:00
Owen Taylor
e1068cb50d Improve warnings a bit in a fashion similar to the part of
Thu Feb  1 20:32:49 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c: Improve warnings a bit in a fashion similar
	to the part of gtk-enf-990513-0.patch (Eric Fisher) that hasn't
	been superceded.
2001-02-02 01:36:22 +00:00
Owen Taylor
638adacbfc If PATH_MAX and MAXPATHLEN are not defined, define MAXPATHLEN to 2048.
Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
	defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
	MAXPATHLEN, but the code here depends on a fixed value.)
	(#4524)
2001-02-01 23:32:41 +00:00
Owen Taylor
06c02d4d97 Remove a dependency on bin->child != NULL. (Basically, just a cleanup)
Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkhandlebox.c (gtk_handle_box_draw): Remove a dependency
	on bin->child != NULL. (Basically, just a cleanup)

	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
	where child == NULL and handle_position == RIGHT or BOTTOM. (#8002)
2001-02-01 15:25:37 +00:00
Owen Taylor
87b9290e56 If the node being moved isn't viewable there is no way that moving the
Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (real_tree_move): If the node being moved isn't
	viewable there is no way that moving the node will cause the
	focus row to become not viewable, so omit check on the visibility
	of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
2001-02-01 02:34:36 +00:00
Owen Taylor
6ceae1b5bf Check bounds when setting selection. (#7302)
Wed Jan 31 20:33:35 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_set_selection): Check bounds
	when setting selection. (#7302)
2001-02-01 01:50:49 +00:00
Tim Janik
c007e30064 avoid regeneration of gtkmarshal.c from stamp file dep, when not
Thu Feb  1 02:26:18 2001  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration
        of gtkmarshal.c from stamp file dep, when not @REBUILD@,
        fixes #11008.
2001-02-01 01:25:43 +00:00
Owen Taylor
8a94a2c795 Apply patch gtk-gharris-000907-0.patch (Guy Harris) fixing problem where
Wed Jan 31 19:23:01 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c (gtk_font_selection_set_font_name):
	Apply patch gtk-gharris-000907-0.patch (Guy Harris) fixing problem where
	wrong row was selected when filters filtered out some fonts.
2001-02-01 00:26:25 +00:00
Owen Taylor
aff67cd4da Make the sensitivity of the reparented child track that of the original
Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
	Make the sensitivity of the reparented child track that of
	the original parent menu item. (#34218, David Hodson)

	* gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
	the case where the current item is destroyed properly.

	* gtk/gtkoptionmenu.c: Some additional code cleanups and fix
	some edge cases with child-less menuitems.
2001-01-31 23:53:33 +00:00
Owen Taylor
69871da39f Make Return key pop down window. (#12074, Jon K Hellan)
Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
	key pop down window. (#12074, Jon K Hellan)
2001-01-31 22:21:32 +00:00
Owen Taylor
b1aeb5717d Don't allow toggling of rows off in BROWSE or EXTENDED mode. (#12072, Greg
Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
	toggling of rows off in BROWSE or EXTENDED mode. (#12072, Greg
	Hudson.) The solution here isn't perfect - you get an extraneous
	emission of "toggle", which could conceivably confuse an app,
	but better than the current situation. LXR search seems to
	indicate that no apps in GNOME CVS connect to "toggle".
2001-01-31 21:28:20 +00:00
Owen Taylor
39f0a2780f Move gtkfeatures.h from gtk_public_h_sources to directly here to avoid
Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkfeatures.h from
	gtk_public_h_sources to directly here to avoid warning when
	building srcdir != builddir. (#9656)
2001-01-31 20:48:43 +00:00
Owen Taylor
bebf3ad988 Patch from Kipp Hickman to make the event handlers in gtkrange.c return
Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c: Patch from Kipp Hickman to make the event
	handlers in gtkrange.c return the proper values (TRUE == handled)
	(#10316).

	This is just the tip of the iceberg, but gtkrange.c is the
	most common place where the propagation is problematical,
	and also a place where it is almost certainly safe to change
	this in the stable branch.

	(You don't want right click popups on a range control or anything...)

Tue Jan 30 19:12:52 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
	rather than gdk_window_hide; this makes things work
	correctly if the window is programmatically hidden while
	iconified. [ Backport from HEAD, hope, hope it doesn't break
	anything since it fixes a bunch of stuff. ] (#14082)
2001-01-31 00:52:37 +00:00
Owen Taylor
61a7c6f865 We need to clear the focus area on focus out, even if a background pixmap
Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (clear_focus_area): We need to clear the focus
	area on focus out, even if a background pixmap isn't set.
	(#13941)
2001-01-31 00:00:54 +00:00
Owen Taylor
ab36b33b76 Handle the case where bg_pixmap[i] == GDK_PARENT_RELATIVE.
Tue Jan 30 18:31:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_detach): Handle the case where
	bg_pixmap[i] == GDK_PARENT_RELATIVE.
2001-01-30 23:33:04 +00:00
Owen Taylor
20d6a5c3a5 Fix from Sean Cunningham to deal with setting the shape properly when
Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
	to deal with setting the shape properly when scrolling arrows are
	turned on, but not visible because there is sufficient space.
	(#13432)
2001-01-30 23:27:58 +00:00
Owen Taylor
7431b6b3d6 For menu items with submenus, destroy the item along with the submenu.
Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
	items with submenus, destroy the item along with the submenu.
	(#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...'
	properly.

	* gtk/testgtk.c (menu_items): Add a dummy branch that we delete
	later.
2001-01-30 21:44:48 +00:00
Owen Taylor
db6d3a0ed7 Fix a problem where the focus widget sometimes wasn't drawn with the
Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
	the focus widget sometimes wasn't drawn with the default if there
	was no default widget.

	* gdk/gdkim.c (gdk_ic_destroy): Don't rely on
	ic->mask, which is completely unreliably set, when
	deciding what items to unref/free. (A bit of a hack,
	but this code will be dead in GTK+-2.0.) (#6739)

	* gtk/gtkstyle.c (gtk_style_detach): free colors,
	unreference pixmaps.

	* gtk/gtkstyle.c (gtk_style_init): Reference colormap
	for some extra safety.
2001-01-30 20:57:15 +00:00
Owen Taylor
765398ca79 [ Backport from HEAD ]
Mon Jan 29 19:44:26 2001  Owen Taylor  <otaylor@redhat.com>

        [ Backport from HEAD ]

	* gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
	<mrcooger@cyberverse.com> so that when selecting menus with the
	mouse, the first item will not be selected, but when selecting
	with an accelerator, or navigating left-right on a menubar with
	the menus popped up, the first item will be selected.
2001-01-30 00:46:44 +00:00
Owen Taylor
6596ade0f8 [ Couple of additional tiny cleanup on last commit ]
Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
	the text of a cell to the old pointer value better, by
	copying the new text before freeing the old text. Some code
	cleanup. (#8079, Karl Nelson)
2001-01-30 00:06:03 +00:00
Owen Taylor
9860eb566b Handle setting the text of a cell to the old pointer value better, by
Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
	the text of a cell to the old pointer value better, by
	copying the new text before freeing the old text. Some code
	cleanup. (#8079)
2001-01-30 00:02:49 +00:00
Owen Taylor
4e2ccb69e0 Handle --display= forms of options taking arguments. Fix some memory leaks
Mon Jan 29 18:33:24 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_init_check): Handle --display= forms
	of options taking arguments. Fix some memory leaks with
	repeated arguments. (#28842, Sam Hunter)
2001-01-29 23:41:37 +00:00
Owen Taylor
46fd718c6b Return if fontsel->font_index == -1 - that is, if no font is selected.
Mon Jan 29 16:34:28 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c (gtk_font_selection_select_best_size): Return
	if fontsel->font_index == -1 - that is, if no font is selected.
	(Should fix #50290)
2001-01-29 21:38:10 +00:00
Owen Taylor
ff6120f496 When removing an item from a menu, check to see if it matches
Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_remove): When removing an
	item from a menu, check to see if it matches
	menu->old_active_menu_item, and if so, unref and clear
	old_active_menu_item (Patch from Pavel Cisler)

	* gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset
	menu_shell->active_menu_item, if it is the child being
	removed. (Patch based on that of Gene Ragan, #50337)
2001-01-29 20:36:55 +00:00
Szabolcs Ban
f2d6ff088b Fixed Hungarian translation 2001-01-25 09:40:44 +00:00
Pablo Saratxaga
ad3a3f4897 updated Azeri file 2001-01-06 22:13:44 +00:00
Alexander Larsson
769cc1b56b Set the colormap of input only windows to the system colormap. The
2001-01-03  Alexander Larsson  <alexl@redhat.com>

	* gdk/gdkwindow.c:
	Set the colormap of input only windows to the system colormap.
	The previous GtkInvisible patch generated a lot of colormap ==
	NULL warnings without this.
2001-01-03 09:42:38 +00:00
Christian Meyer
80383a2b45 Small fix for German translation. 2000-12-22 20:32:36 +00:00
Alexander Larsson
a9efc10c62 Attach the style to the window so that the style it is not leaked when
2000-12-20  Alexander Larsson  <alexl@redhat.com>

        * gtk/gtkinvisible.c (gtk_invisible_realize):
        Attach the style to the window so that the style it is not
        leaked when unrealizing the window.
2000-12-20 16:52:46 +00:00
Ramiro Estrugo
dbd5dc6763 Deal with the possibility that XGetImage() might return NULL. Allocate the
* gdk/gdkimage.c: (gdk_image_get):
	Deal with the possibility that XGetImage() might return NULL.
	Allocate the GdkImagePrivate structure only after XGetImage()
	succeeds in order not to dereference a NULL ximage pointer.  This
	prevents a core dump when XGetImage() fails - which is unlikely,
	but can happen due to race conditions accessing the geometries of
	drawables.  An x error will still be triggered, but the gdk image
	wrapper at least wont seg fault.
2000-12-20 04:39:09 +00:00
Owen Taylor
2c4b96bf9e Fix off-by-one error in checks. (Dave Lambert)
Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix
	off-by-one error in checks. (Dave Lambert)
2000-12-12 16:53:43 +00:00
Pablo Saratxaga
2884306517 Fixed charset= line 2000-12-06 15:58:52 +00:00
Pablo Saratxaga
ab08eed58f Added Azeri translation file 2000-12-06 15:46:37 +00:00
Owen Taylor
6d46992454 Strip GDK_RELEASE_MASK out of the state we get from X as a temporary hack
Sun Dec  3 11:44:07 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.c: Strip GDK_RELEASE_MASK out of
        the state we get from X as a temporary hack to
        deal with the fact that GDK_RELEASE_MASK has the
	same values as bits used by XFree86 to indicate the
	keyboard group. (After patch from Vlad Harchev)
2000-12-03 16:50:04 +00:00
Anders Carlsson
a814d8c82f Make GtkToggleButtons have a correct appearance when disabled and active at the same time. Thanks to Tomas gren for noticing this. 2000-12-02 17:59:00 +00:00
Owen Taylor
eb5bc96b67 Fix some signed/unsigned comparison problems. (#6510, David Kaelbling)
Thu Nov 30 12:39:22 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix
	some signed/unsigned comparison problems. (#6510,
	David Kaelbling)
2000-11-30 17:40:52 +00:00
Owen Taylor
2cabfbf0e5 Fix stupid bug causing extra word movement backwards. (#15282, Marco
Thu Nov 30 11:19:56 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_move_word): Fix stupid
	bug causing extra word movement backwards. (#15282, Marco Goetze)
2000-11-30 16:23:54 +00:00
Owen Taylor
95292e412b [ Backport from 1.3.x ]
Wed Nov 29 21:47:26 2000  Owen Taylor  <otaylor@redhat.com>

        [ Backport from 1.3.x ]

	* gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
	prepend not append. (Pointed out by Brett Hall.)
	#11887.
2000-11-30 02:50:07 +00:00
Owen Taylor
f83f73d7d5 Change return type to boolean (Oskar Liljeblad, #18648)
Wed Nov 29 20:56:38 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
	return type to boolean (Oskar Liljeblad, #18648)
2000-11-30 01:59:44 +00:00
Owen Taylor
d102c8eccb Allow mask to be NULL.
Wed Nov 29 20:44:09 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to
	be NULL.
2000-11-30 01:45:56 +00:00
Tim Janik
ef30d8a2b9 [ Backport from 1.3 / otaylor, 29 Nov 2000 ]
Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>

        [ Backport from 1.3 / otaylor, 29 Nov 2000 ]

	* gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
	localization misbehaviour.
2000-11-30 01:22:01 +00:00
Martin Baulig
663a34be8b Make the pkg-config scripts actually work.
2000-11-29  Martin Baulig  <baulig@suse.de>

	* *.pc.in: Make the pkg-config scripts actually work.
2000-11-29 22:00:02 +00:00
Federico Mena Quintero
8ef5b29e80 Connect to the "changed" callback of the adjustment. We need to redraw the
2000-11-27  Federico Mena Quintero  <federico@helixcode.com>

	* gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
	the "changed" callback of the adjustment.  We need to redraw the
	spin button's arrows when the adjustment's range changes.
	(adjustment_changed_cb): Draw the arrows.
	(gtk_spin_button_value_changed): Draw the arrows.
2000-11-27 17:40:47 +00:00
Pablo Saratxaga
857a653824 updated Walloon file 2000-11-25 14:46:36 +00:00
Owen Taylor
4ff5d8fa3e [ backport from 1.3.x ]
Sat Nov 18 11:56:39 2000  Owen Taylor  <otaylor@redhat.com>

	[ backport from 1.3.x ]

	* gdk/gdkrgb.c: If possible, create only a single shm segment and
	use multiple parts of it instead of creating a bunch of separate
	segments, since the maximum number of segments per system is not
	large.

	* gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
	to False when we get EINVAL from shmget so that the caller of
	gdk_image_new can retry with a smaller segment size.

Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
	memleaks found by Evan Martin.
2000-11-18 16:59:40 +00:00
Elliot Lee
90ef5b7758 To handle a really weird error case (race condition), check if
* gtk/gtksocket.c: To handle a really weird error case (race condition),
check if socket->plug_window is there before doing things with it.
2000-11-10 21:32:59 +00:00
Richard Hult
015eabfa60 Fixed a stupidly broken Swedish translation. 2000-11-06 07:57:54 +00:00
Pablo Saratxaga
a7db15b98e Added azeri file 2000-11-03 22:41:14 +00:00
Pablo Saratxaga
f777289e65 corrected Big5 support
added fiel for Azeri
2000-11-03 22:40:27 +00:00
Tim Janik
b4c796a043 updates for 1.2.9 2000-10-20 11:04:35 +00:00
Tim Janik
862b8c9481 up version number to 1.2.9, interface 4, binary 9.
Mon Oct 16 11:39:29 2000  Tim Janik  <timj@gtk.org>

        * configure.in: up version number to 1.2.9, interface 4, binary 9.
2000-10-16 10:54:09 +00:00
Yukihiro Nakai
6dddc43586 configure.in: Add zh_CN.GB2312 (Chinese GB2312) to ALL_LINGUAS. 2000-10-13 07:21:07 +00:00
Yukihiro Nakai
958a3bee88 zh_CN.GB2312.po: Initial Chinese(GB2312) translation
from Wu Yulun.
2000-10-13 07:18:36 +00:00
Martin Baulig
8e79f6c56a Use the correct pkg-config syntax in all the *.pc.in files
(the version that comes with the RedHat 7.0 glib-gtkbeta RPM).
2000-09-30 02:09:42 +00:00
Martin Baulig
09dd53db6c Provide pkg-config scripts.
2000-09-30  Martin Baulig  <baulig@suse.de>

	* gtk+.pc.in, gdk.pc.in: Provide pkg-config scripts.

	* configure.in: Create *.pc scripts from the *.pc.in
	templates.
	* Makefile.am (pkgconfig_DATA): Install the *.pc
	scripts in `$(libexecdir)/pkgconfig'.
2000-09-29 22:43:24 +00:00
Owen Taylor
78f80ff726 Move header files to /usr/include/gtk-1.2 to allow safe parallel
Fri Sep  8 21:57:06 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk-config.in gtk/Makefile.am gdk/Makefile.am:
	Move header files to /usr/include/gtk-1.2 to allow
	safe parallel installations with GTK+-2.0.
2000-09-09 01:58:07 +00:00
George Lebl
b6d153b2e2 Backported Nils Barth's patch for submenu navigation with Owen's fixes and
Thu Sep 07 20:50:49 2000  George Lebl <jirka@5z.com>

	* gtk/gtkmenu.c:  Backported Nils Barth's patch for submenu
	  navigation with Owen's fixes and suggestions.  The original
	  ChangeLog from Owen for HEAD goes as folllows:  Apply patch from
          Nils Barth and David Santiago to improve submenu
          navigation. The patch does this by creating a triangular
          region from the point where the pointer leaves the
          menu to the submenu.  While the pointer is in
          that region and a timeout has not expired, events
          that would cause the active submenu to change are
          ignored.
2000-09-08 01:50:35 +00:00
Nam SungHyun
844f8def4d updated 2000-09-07 10:22:58 +00:00
George Lebl
228a23e2ff Add some documenting comments about GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and
Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>

	* gtk/gtkwidget.h:  Add some documenting comments about
	  GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
	  just as owen said on irc.

	* gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
	  set HAS_DEFAULT.  Only set it if there isn't another window
	  holding it (a focus window which RECEIVES_DEFAULT) and only unset
	  it if the widget is not the focused window with RECEIVES_DEFAULT.
	  This fixes weird double default bugs in dialogs which has things
	  call gtk_window_set_default at times.
2000-09-03 06:20:22 +00:00
Andraz Tori
73d05f5fa0 Updated slovenian translation 2000-08-20 09:30:54 +00:00
Owen Taylor
935faa6b4c Don't leave dangling ->prev fields when merging lists. (Found
Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
	->prev fields when merging lists. (Found simultaneously
	by Pawel Salek and Jakub Jelinek)
2000-08-18 21:37:06 +00:00
Pablo Saratxaga
9e3e202fa9 Added Serbian files 2000-07-30 12:23:33 +00:00
Tim Janik
0d9d12d00c applied patch from Phil Thompson <phil@river-bank.demon.co.uk> that
Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtktable.c: applied patch from Phil Thompson
        <phil@river-bank.demon.co.uk> that enables space settings for
        the last row/columns as well.
2000-07-27 03:12:32 +00:00
Sebastian Wilhelmi
b5b621ce5a Include gdk/gdkrgb.h and gtk/gtktypebuiltins.h resp. outside of the extern
2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk/gdk.h, gtk/gtktypeutils.h: Include gdk/gdkrgb.h and
	gtk/gtktypebuiltins.h resp. outside of the extern "C" block. Makes
	some C++ compiler happy. Reported by Denis Vakatov
	<vakatov@peony.nlm.nih.gov>.
2000-07-19 14:12:07 +00:00
Tim Janik
7e8b6c50c9 scratched notion of completely outdated email adress:
Tue Jul 11 20:47:13 2000  Tim Janik  <timj@gtk.org>

        * docs/gtk_tut_it.sgml (name):
        * docs/gtk_tut_fr.sgml (name):
        * docs/gtk_tut.sgml (name): scratched notion of completely
        outdated email adress: s/timj@psynet.net/timj@gtk.org/.
2000-07-11 19:03:27 +00:00
Tim Janik
f969f69af3 eek, i've never seen a bug here, never been here and never fixed anything
Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
        a bug here, never been here and never fixed anything ;(
        (don't segfault if tree->root_tree is NULL, which happens prior
        to widget realization, but puke instead).
2000-07-11 06:08:02 +00:00
Jesus Bravo Alvarez
7307991b62 Fixed Galician translation 2000-07-10 22:30:08 +00:00
Jesus Bravo Alvarez
c3cde286c9 Fixed Galician translation 2000-07-10 22:28:57 +00:00
Jesus Bravo Alvarez
3cdc2b5eeb Fixed Galician translation 2000-07-10 21:24:47 +00:00
Pablo Saratxaga
a07c4138b8 movec gtkrc.bg to more generic gtkrc.cp1251 2000-06-18 13:55:15 +00:00
Owen Taylor
2589e32c32 Fix cut and paste typo where wrong pixmap was being unref'ed. (Pointed out
Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
	cut and paste typo where wrong pixmap was being
	unref'ed. (Pointed out by a friend of KUSANO Takayuki.)

Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c (gtk_selection_bytes_per_item):
	Add helper function to compute format / bytes
	relationship. Use in a couple places to fix up
	errors which assume 8 * format.

	* gtk/gtkselection.c (gtk_selection_request): Use 32
	rather than 8 * sizeof (GdkAtom), to work correctly
	on Alpha.
2000-06-11 18:02:31 +00:00
Ville Hautamaki
2d68dd4799 Minor finnish update to gtk+ gtk-1-2 branch
Ville
2000-05-25 13:43:08 +00:00
Tim Janik
52223d33df released Gtk+-1.2.8.
Thu May 25 03:54:30 2000  Tim Janik  <timj@gtk.org>

        * released Gtk+-1.2.8.


(see? i _can_ get it right the first time ;)
2000-05-25 01:56:23 +00:00
Tim Janik
3a5d4e0087 gtk version 1.2.8, interface age 3, binary age 8.
Thu May 25 02:30:57 2000  Tim Janik  <timj@gtk.org>

        * configure.in: gtk version 1.2.8, interface age 3, binary age 8.
2000-05-25 01:00:26 +00:00
Tim Janik
b055c28254 update corrections ;) 2000-05-24 22:26:59 +00:00
Tim Janik
21d6acdd59 updates 2000-05-24 22:26:41 +00:00
Kjartan Maraas
71112bd2ea Update 2000-05-22 00:27:11 +00:00
Kenneth Christiansen
76014e2a5f update 2000-05-21 23:09:44 +00:00
Kjartan Maraas
5a4b3458f9 Added Norwegian translation (nynorsk dialect).
2000-05-20  Kjartan Maraas  <kmaraas@gnu.org>

	* nn.po: Added Norwegian translation (nynorsk dialect).
2000-05-20 17:41:16 +00:00
Kjartan Maraas
bb255d8d68 Removed obsolete 2000-05-19 10:34:08 +00:00
Tim Janik
90e47067c4 fix mangling of rectangle height with its width, spotted by Justin David
Fri May 19 09:54:53 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_clip_rect): fix mangling of rectangle
        height with its width, spotted by Justin David Smith (Ytinasni)
        <justins@velius.chaos2.org>.
2000-05-19 08:20:29 +00:00
Tim Janik
42c524897f handle "(nil)" foundries, patch from Grigorios Magklis.
Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
        "(nil)" foundries, patch from Grigorios Magklis.

        * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
        on non-available fonts, based on a patch by Grigorios Magklis
        <maglis@cs.rochester.edu>.

Fri May 19 05:52:08 2000  Tim Janik  <timj@gtk.org>

        * gdk/gdkx.h: wrap contents into extern "C" { }, patch by Leonardo
        Zide (leo@lokigames.com).
2000-05-19 05:42:06 +00:00
Szabolcs Ban
93fe7a1353 Szabolcs BAN <shooby@gnome.hu>
* Finished Hungarian translations...
2000-05-18 13:19:46 +00:00
Ville Hautamaki
3d46b64e3d Minor finnish update
Ville
2000-05-18 11:06:16 +00:00
Pablo Saratxaga
5d1c00802e Updated Spanish and Walloon files
Corrected a syntax error in Dutch file ( s -> %s )
2000-05-17 23:33:45 +00:00
Raph Levien
eda7c00f58 Fixed segfault when gdk_rgb_min_colors exceeds maximum cube size. 2000-05-17 08:04:06 +00:00
Pablo Saratxaga
ab364d726a Added a gtkrc.cp1255 for Yiddish/Hebrew fontset
Added "*-r-*" to all fontsets; as a last resort default.
2000-05-08 18:49:18 +00:00
Pablo Saratxaga
7d622f5328 Updated ca.po (changed mantainer) 2000-05-04 13:09:40 +00:00
Tim Janik
ee76654247 some Make 3.79 $(strip ) versions are broken and require an empty arg,
Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>

        * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
        broken and require an empty arg, give it to them.
2000-05-04 00:19:04 +00:00
Pablo Saratxaga
cc4ef5bcdf Updated wa.po 2000-04-30 00:26:02 +00:00
Tim Janik
2e34ce303a when unref-ing the handlers, also invalidate them. bug nailed down by Karl
Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
        the handlers, also invalidate them. bug nailed down by Karl Nelson
        <kenelson@ece.ucdavis.edu>.
2000-03-26 01:30:34 +00:00
Pablo Saratxaga
44e72c4ac1 Updated Lithuanian file 2000-03-20 18:39:46 +00:00
Owen Taylor
74bd7ec0a1 Fix a bunch of cases where XGetWindowProperty() is called without trapping
Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
	is called without trapping X errors.
2000-03-13 23:41:53 +00:00
Pablo Saratxaga
4078590376 Updated lt.po 2000-03-13 21:14:29 +00:00
GMT 2000 Tony Gale
388e9cc8b1 FAQ Update: - Minor cleanups (Emmanuel, me) - New questions: I need to add
Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: FAQ Update:
          - Minor cleanups (Emmanuel, me)
          - New questions:
                I need to add a new signal to a GTK+ widget. Any idea? (timj)
                How can I retrieve the text from a GtkMenuItem? (timj)
                How do I validate/limit/filter the input to a GtkEntry? (me)
                Memory does not seem to be released when I free the list
                        nodes I've allocated (timj)
2000-03-10 09:36:09 +00:00
Tim Janik
a24c0e61f6 nothing really 2000-03-01 05:08:59 +00:00
GMT 2000 Tony Gale
877738b90a Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>

        * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
          gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
          docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
          docs/gtk_tut.sgml docs/gtk.texi TODO:

          Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
2000-02-29 13:28:13 +00:00
Owen Taylor
fcfaafd93e Fix problem where stray '"' characters found their way into the fontset
Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.*: Fix problem where stray '"' characters found their
	way into the fontset lists.
2000-02-25 15:49:36 +00:00
GMT 2000 Tony Gale
30cc40d29e Implement num_marked_dates, and don't emit mutiple day_selected signals on
Thu Feb 24 16:12:27 GMT 2000  Tony Gale <gale@gtk.org>

        * gtk/gtkcalendar.c: Implement num_marked_dates,
          and don't emit mutiple day_selected signals on
          month_prev.
2000-02-24 16:16:29 +00:00
GMT 2000 Tony Gale
86171eb551 New section on GtkCalendar Update example code
Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/gtk_tut.sgml: New section on GtkCalendar
        * examples/calendar: Update example code
2000-02-23 10:55:56 +00:00
GMT 2000 Tony Gale
8ae8964c9f Get the date on the FAQ right. Grr.
Tue Feb 22 14:02:48 GMT 2000 Tony Gale <gale@gtk.org>

	* Get the date on the FAQ right. Grr.
2000-02-22 13:58:08 +00:00
GMT 2000 Tony Gale
5d4a62a69b FAQ Update
Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: FAQ Update
2000-02-22 13:52:46 +00:00
Tim Janik
572cec3f4c add extern "C" scope.
Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkthemes.h: add extern "C" scope.
2000-02-22 07:58:50 +00:00
Lars Hamann
a53000aa95 applied patch from Guy Harris <guy@netapp.com> to make appends to the list
Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
        to make appends to the list constant. (gtk-guy-990901-0.patch)
2000-02-21 20:19:13 +00:00
Havoc Pennington
ac67b09410 Don't recommend the use of gtk_signal_handlers_destroy, closes bug #6390
2000-02-19  Havoc Pennington  <hp@pobox.com>

	* docs/gtk_tut.sgml: Don't recommend the use of
		gtk_signal_handlers_destroy, closes bug #6390
2000-02-19 19:59:06 +00:00
Tim Janik
e57721e0ba remove extraneous prototypes, patch from Sam O'Connor
Thu Feb 17 02:19:32 2000  Tim Janik  <timj@gtk.org>

        * gdk/gdk.h:
        * gtk/gtkaccelgroup.h:
        * gtk/gtkthemes.h: remove extraneous prototypes, patch from
        Sam O'Connor <oconnor@eiffel.com>.
2000-02-17 01:25:27 +00:00
CST 2000 Shawn T. Amundson
fa77e9551f Released GTK+ 1.2.7
Wed Feb 16 05:22:36 CST 2000 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.7
2000-02-16 13:04:31 +00:00
SHIRASAKI Yasuhiro
01ae7f9537 Updated Japanese translation.
* ja.po: Updated Japanese translation.

-- yasuhiro
2000-02-15 02:21:38 +00:00
Tim Janik
60aea982b0 use g_str_hash() and g_str_equal() for the typename hash table.
Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
        for the typename hash table.
2000-02-14 21:55:04 +00:00
Owen Taylor
5c478e3754 Add some sanity checks to make sure we never divide by zero. (Problem
Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
	to make sure we never divide by zero.
	(Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
2000-02-14 20:03:04 +00:00
Owen Taylor
2853369686 Apply patch from SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make
Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c: Apply patch from
	SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
	better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)

	Also, some cleanups in atom handling.
2000-02-14 19:35:29 +00:00
Tim Janik
a326074438 parent class is GtkContainer, not GtkWidget.
Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
        not GtkWidget.
2000-02-13 07:03:53 +00:00
Tim Janik
778cb9ab52 had to squeeze some more guint wrap-around bugs before going to bed.
Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkhpaned.c (gtk_hpaned_size_allocate):
        * gtk/gtkvpaned.c (gtk_vpaned_size_allocate):
        * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
        more guint wrap-around bugs before going to bed.
2000-02-11 06:39:19 +00:00
Tim Janik
3f8d44d715 guard against guint wrap arounds in allocation.width.
Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
        guint wrap arounds in allocation.width.

        * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
        process untill we fit the allocation given.
2000-02-10 21:13:41 +00:00
Tim Janik
c39a5a1c6f guard widget access with ref/unref around signal emission.
Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c:
        (gtk_widget_unrealize): guard widget access with ref/unref
        around signal emission.
        (gtk_widget_hide): same here, but also check its destroyed
        state before queueing a resize.
2000-02-08 09:03:51 +00:00
Tim Janik
319b25908b use gtk_default_prelight_bg instead of gtk_default_insensitive_bg as
Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
        of gtk_default_insensitive_bg as insensitive base color.

        * gtk/gtktext.c (gtk_text_style_set): set the background color according
        to the widget's state.
        (gtk_text_realize): same here.
        (gtk_text_state_changed): same here.
        (draw_bg_rect): compare background color against base[] from
        GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
2000-02-08 02:09:23 +00:00
Tim Janik
49bc9e0606 ignore delete events when grabs are active, unless a delete event is send
Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
        grabs are active, unless a delete event is send to the toplevel
        of the currently grab holding widget.
2000-02-07 05:27:08 +00:00
Owen Taylor
81cb919181 Remove debugging g_print's.
Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
	debugging g_print's.
2000-02-06 15:14:36 +00:00
Tim Janik
1f72a1fd70 up version number to 1.2.7, interface age 2, binary age 7. depend on glib
Fri Feb  4 19:40:50 2000  Tim Janik  <timj@gtk.org>

        * configure.in: up version number to 1.2.7, interface age 2, binary
        age 7. depend on glib 1.2.7.

        * NEWS: updates.
2000-02-04 03:26:10 +00:00
Owen Taylor
5aa2275d8b Feb 4 15:54:54 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
	ever make the scrolled-window requisition ever depend on the
	visibility state of the scrollbars for the AUTOMATIC policy.
	This breaks the	GTK+ requisition model, and causes loops.
2000-02-03 23:45:12 +00:00
Owen Taylor
ed581c7530 Set the charset explicitely for the default font to avoid problems with
Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
	the default font to avoid problems with XFree86-4.0 where the
	default charset is iso10646-1, not iso8859-1.
2000-02-03 22:15:44 +00:00
Pablo Saratxaga
84591d622b updated lt.po 2000-02-03 17:32:44 +00:00
Kjartan Maraas
d5c5dba8de Updated translation.
2000-02-04  Kjartan Maraas  <kmaraas@online.no>

	* no.po: Updated translation.
2000-02-03 11:05:58 +00:00
Manish Singh
b40cc444eb acinclude.m4 config.guess config.sub ltconfig upgrade to libtool 1.3.4
* acinclude.m4
* config.guess
* config.sub
* ltconfig
* ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)

* gtk/Makefile.am: minor cosmetic consistency tweak

-Yosh
2000-02-03 01:07:44 +00:00
Pablo Saratxaga
c299e5d963 updated ca.po 2000-02-03 01:03:10 +00:00
Owen Taylor
7de47cc94b Set the activate_time to 0, so that we handle a quick press/release
Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
	the activate_time to 0, so that we handle a quick
	press/release press/release properly and don't suppress
        the second release. (Red Hat bug #7545)
2000-02-02 22:04:41 +00:00
Tim Janik
cec440f3e4 fixed very evil reentrancy bugs with destruction notifier, *always* update
Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtkctree.c (row_delete):
        (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy bugs with
        destruction notifier, *always* update internal structures *before*
        calling user code.
2000-02-01 23:32:26 +00:00
Lars Hamann
255369aecb A few more fixes for bug #5487, #2051, #2677. Reset clist->anchor to -1 if
Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>

        A few more fixes for bug #5487, #2051, #2677.
        * gtk/gtkclist.c :
        (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
        not GDK_BUTTON_PRESS.
        (resync_selection): resync only if selection_mode is
        GTK_SELECTION_EXTENDED
        * gtk/gtkctree.c (resync_selection): same here
2000-01-29 23:12:08 +00:00
Owen Taylor
c59f760824 Removed duplicate prototypes for gdk_drag_get_selection() and
Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
	gdk_drag_get_selection() and gtk_menu_detach().

	[ From Jeroen Ruigrok/Asmodai ]
2000-01-29 20:01:59 +00:00
Owen Taylor
06b6a0f70a page->tab_label can be NULL.
Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_size_request):
	page->tab_label can be NULL.
2000-01-28 17:19:02 +00:00
Havoc Pennington
dad7ab1fd6 parent_relative arg is boolean
2000-01-25  Havoc Pennington  <hp@pobox.com>

* gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
arg is boolean

* gdk/gdkselection.c (gdk_selection_owner_set): return boolean

* gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean

* gdk/gdkproperty.c (gdk_property_get): return boolean

* gdk/gdkinput.c (gdk_input_set_mode): return boolean

* gdk/gdkim.c (gdk_im_ready): return boolean

* gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg

* gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
glib clash, should fix glib)

* gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
(gdk_get_show_events): return gboolean, and canonicalize
to TRUE/FALSE

* gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
colormap is private
(gdk_colors_alloc): gboolean whether to be contiguous
(gdk_color_equal): return gboolean since we are a predicate
and not a qsort() (this looks semi-wrong due to glib breakage,
IMO glib should be fixed)

* gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
(gdk_get_use_xshm): return gboolean
(gdk_pointer_is_grabbed): return gboolean

* gdk/gdk.h: Change prototypes to match all the above changes,
and re-run egtk-format-protos as required.
2000-01-27 21:10:44 +00:00
Owen Taylor
bd39b10fc4 Return immediately if clist->drag_pos < 0. This is a workaround for the
Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (resync_selection):
	* gtk/gtkclist.c (resync_selection):

	Return immediately if clist->drag_pos < 0. This is a workaround
	for the corrupt state that the clist gets into when a
	GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().

	Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.

	* gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
	variable from recent commit.
2000-01-27 19:37:34 +00:00
Pablo Saratxaga
3dad840ffb Added Lithuanian file 2000-01-27 16:29:39 +00:00
Owen Taylor
ef642b7799 Fix stupid typo in last commit.
Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
2000-01-27 02:39:44 +00:00
Tim Janik
958d74e856 prefix all autogenerated source that get build in $(srcdir) with
Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: prefix all autogenerated source that get build in
        $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
        in builddir. since we subsequently cd into srcdir for autogeneration,
        the paths have to be stripped from the target file names, thusly we
        use $(@F) as target names now.
        put a comment about configure.in's --disable-rebuilds option,
        which can be used for non-writable source directories, for development
        setups though, srcdir has to be *writable*.
2000-01-26 19:20:44 +00:00
Tim Janik
39246639a1 revert change so stuff compiles 2000-01-26 17:11:12 +00:00
Owen Taylor
e5b7ec7e36 Finish the job of allowing event to be NULL. (Fixes bug #4283, reported by
Thu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
	  Finish the job of allowing event to be NULL.
	  (Fixes bug #4283, reported by Chris Blizzard)

	* gtk/gtkentry.c (entry_adjust_scroll): When calculating
	  things so that the cursor appears on screen, properly
	  take into account INNER_BORDER.
	  (Fixes bug #4754, reported by Antonio Campos)
2000-01-26 05:50:53 +00:00
Owen Taylor
b269eb0874 Don't show the tab_label unless it itself is visible.
Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_map): Don't
	  show the tab_label unless it itself is visible.

	  gtk/gtknotebook.c (gtk_notebook_size_request):
	  Do a better job of making sure that the visibility
	  of the tab label corresponds to whether it should
	  be mapped or not.
2000-01-26 04:29:01 +00:00
Owen Taylor
9770128fb9 Use the requisition, not the allocation, since the allocation has not
Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_position):
	  Use the requisition, not the allocation, since the
	  allocation has not necessarily been computed yet.
	  (Pointed out by Eugene Osintsev)
2000-01-26 02:33:04 +00:00
Owen Taylor
c1f4231af6 Dont' set style/base[GTK_STATE_INSENSITIVE] both to
Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_new): Dont' set
	  style/base[GTK_STATE_INSENSITIVE] both to
	  gtk_default_insensitive_bg!
	  (Bug #2187, reported by Jonathan Blandford)

	* gtk/gtkaccelgroup.c (gtk_accelerator_valid):
	  Add Alt_L, Alt_R to list of invalid accelerators.
 	  (Bug #3736, reported by Vlad Harchev)
2000-01-26 01:03:28 +00:00
Owen Taylor
f86f2a2944 Fix several bugs which occured after an attempt to open invalid home
Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (open_ref_dir): Fix several
	bugs which occured after an attempt to open
	invalid home directory left cmpl_state->reference_dir == NULL.

	 - completion on files in home directory didn't work
	 - completion on an empty string caused  segfault

	 (Bug #3768, reported by Steve Ratcliffe)

	* gtk/gtkscale.c (gtk_scale_get_value_width): Fix
	cut and paste error that was causing scales to
	be incorrectly positioned.
	(Bug #2956,
	 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
2000-01-26 00:44:30 +00:00
Shirasaki Yasuhiro
04d6ead184 check dcgettext with libintl, if it's specified.
2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>

        * acinclude.m4 (AM_GTK_WITH_NLS): check dcgettext
        with libintl, if it's specified.
2000-01-26 00:14:43 +00:00
Owen Taylor
4249864c0d Ignore queue_clear on NO_WINDOW widgets during a reparent, since at that
Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
	queue_clear on NO_WINDOW widgets during a reparent,
	since at that point the window and widget heirarchies
	are out of sync. This stops crashing in some cases
	(the scrolled window reparent test, for instance), and
	_probably_ won't cause drawing errors.

	* gtk/testgtk.c: Make the reparenting-a-scrolled-window
	test do what it was supposed to do and be robust against
	window closings, etc. (Bug #2443)
2000-01-25 23:48:45 +00:00
Owen Taylor
cc7b995f66 Fix return values on mouse events. (Bug #2686, Sky <seb_sky@yahoo.com>)
Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c: Fix return values on mouse events.
	(Bug #2686, Sky <seb_sky@yahoo.com>)

	* gtk/genmarshal.pl: Fix up handling of FOREIGN.
	(pointed out by George Lebl)

 	* gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
	(From Ettore Perazzoli  <ettore@helixcode.com>)
2000-01-25 22:20:20 +00:00
Owen Taylor
03fc238e46 Tiny update from Stanislav Brabec <utx@k332.feld.cvut.cz> (closes Bug
Tue Jan 25 16:46:23 2000  Owen Taylor  <otaylor@redhat.com>

	* cs.po: Tiny update from  Stanislav Brabec <utx@k332.feld.cvut.cz>
	(closes Bug #2406)
2000-01-25 21:26:28 +00:00
Owen Taylor
911ced17c2 Handle clicks between rows or outside calender area correctly. (Patch from
Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
	clicks between rows or outside calender area correctly.
	(Patch from Damon Chaplin)

	* gtk/gtkclist.c (gtk_clist_set_row_data_full):
	* gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
	  Call destroy function when overwriting existing data.
	  (Pointed out by Damon Chaplin)
2000-01-25 15:18:19 +00:00
Owen Taylor
67dbd575c2 Remove useless #include of <X11/Xmu/WinUtil.h>, which was causing problems
Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
	  which was causing problems on various systems with Xmu.
	  This hasn't been needed for a very long time.
	  (Fixes #1185 3167)
2000-01-25 14:42:27 +00:00
Owen Taylor
c3bf3122da Include <ctype.h> when defining gdk_isw* in terms of is* as a fallback.
Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdki18n.h: Include <ctype.h> when defining
	  gdk_isw* in terms of is* as a fallback.
	  (Bug #4106 - Dan Winship <danw@MIT.EDU>)
2000-01-24 02:58:21 +00:00
Owen Taylor
1175039476 Don't realize the widget when it is size allocated! (old, old bug)
Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
	  realize the widget when it is size allocated!
	  (old, old bug)

	* gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
	  Removed unused call to gdk_window_get_size() that
	  showed up when the above was fixed.
2000-01-24 02:41:59 +00:00
Owen Taylor
373c75d574 Added short note about setting LDFLAGS and CPPFLAGS to find libraries not
Sun Jan 23 20:52:40 2000  Owen Taylor  <otaylor@redhat.com>

	* INSTALL: Added short note about setting LDFLAGS
	  and CPPFLAGS to find libraries not in the default
	  install path. Fixed env/setenv confusion for csh.
2000-01-24 01:21:20 +00:00
Owen Taylor
fcd4498506 Correctly fix up widget->window when the widget is a NO_WINDOW container
Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_reparent): Correctly
	  fix up widget->window when the widget is a
	  NO_WINDOW container widget.
2000-01-22 21:48:49 +00:00
Owen Taylor
7c1abc5f73 Rewrite to account for the fact that feof() does _not_ return TRUE on
Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
	  to account for the fact that feof() does _not_
	  return TRUE on errors, and thus avoid infinite loops
	  when trying to use gdk_pixmap_create_from_xpm()
	  on unreadable values.
2000-01-22 17:43:44 +00:00
Owen Taylor
25b47b88cd s/gint/gboolean/.
Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
2000-01-21 23:34:54 +00:00
Owen Taylor
638080f28a Change from gdk_gc_set_dashes to take gint8 instead of gchar to make it
Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkgc.c (gdk_gc_set_dashes): Change from
	  gdk_gc_set_dashes to take gint8 instead of gchar to
	  make it clearer that it is _not_ a NULL terminated string.

	* gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
	  gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
	  gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
	  arguments.
2000-01-21 23:22:51 +00:00
Elliot Lee
087eed88f3 Add note about gtk_tooltips_set_colors().
2000-01-13 Elliot Lee <sopwith@redhat.com>
	* gtk/gtktooltips.c: Add note about gtk_tooltips_set_colors().
2000-01-13 21:17:40 +00:00
Pablo Saratxaga
ecc7096f83 updated es.po 2000-01-09 17:42:09 +00:00
Jesus Bravo Alvarez
29edc1802f Added Galician to ALL_LINGUAS 2000-01-08 10:11:18 +00:00
Kjartan Maraas
bd063a8f9a And this file too 2000-01-03 23:57:26 +00:00
Kjartan Maraas
bc36a3cdb0 A little script that lets people update the .pot file without makefiles
2000-01-04  Kjartan Maraas  <kmaraas@online.no>

	* update.sh: A little script that lets people
	update the .pot file without makefiles etc.
2000-01-03 23:56:24 +00:00
Jesus Bravo Alvarez
cb0c6a6943 Updated Galician translation 2000-01-03 12:47:22 +00:00
Tim Janik
ddd28f9d4c when calculating the background size relative to our allocation, guard
Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkvscale.c (gtk_vscale_pos_background):
        * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
        background size relative to our allocation, guard against small
        allocations, we may have not yet been size allocated.
1999-12-30 03:57:47 +00:00
Tim Janik
4ff91a04c0 reverted sopwith's changes to Makefile.am, the builddir != srcdir case was
Fri Dec 24 03:41:33 1999  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: reverted sopwith's changes to Makefile.am,
        the builddir != srcdir case was already handled fine, and his
        "fix" would produce multiple copies of the built sources.
        for development you just need a writable srcdir.
1999-12-24 02:46:23 +00:00
Elliot Lee
1b1ea194a5 And add .c to a filename, DOH!
And add .c to a filename, DOH!
1999-12-21 23:41:14 +00:00
Elliot Lee
d74b6b56e6 (Tagalong to previous commit) Trailing \'s on previous lines were
(Tagalong to previous commit) Trailing \'s on previous lines were
preventing CWD going back to $builddir
1999-12-21 23:39:31 +00:00
Elliot Lee
822fab280f Fix builddir != srcdir for generation of gtktypebuiltins*.[ch]
* gtk/Makefile.am: Fix builddir != srcdir for
  generation of gtktypebuiltins*.[ch]
1999-12-21 23:36:07 +00:00
Owen Taylor
7b31d00ddf Allow version >= 3, not just version == 3. We implement all 3 + most of 4
Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
	not just version == 3. We implement all 3 + most of 4 -
	(we don't support matching text/plain;charset=iso-8859-1
	to a dest that expects text/plain). We'll still advertise
	3 to be safe, but any client implementing version >= 3
	must interoperate with 3.
1999-12-02 17:03:55 +00:00
Owen Taylor
f6e398fa53 Reverted pending mail to developers explaining patch 1999-11-20 14:32:35 +00:00
Dietmar Maurer
6eb684bebc *** empty log message *** 1999-11-20 14:16:34 +00:00
Owen Taylor
d8ebd2d78a If translation does not include a '/', use entire translation instead of
Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
	If translation does not include a '/', use entire
	translation instead of crashing.
1999-11-16 15:25:48 +00:00
GMT 1999 Tony Gale
0d4c279b4b s/gtk_main_iteration/g_main_iteration/
Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
1999-11-15 17:21:26 +00:00
Pablo Saratxaga
6c70ce7260 updated el.po 1999-11-14 18:48:20 +00:00
GMT 1999 Tony Gale
828b8b8600 New example code files.
Sat Nov 13 23:18:42 GMT 1999  Tony Gale  <gale@gtk.org>

New example code files.
1999-11-13 23:02:30 +00:00
GMT 1999 Tony Gale
bcb86b752f threads example from Erik Mouw. New question on GtkLabel background
Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtkfaq.sgml: threads example from Erik Mouw.
        New question on GtkLabel background colors.

        * docs/gtk_tut.sgml:
          - Correct the example code callback
            function definitions.
          - Update the gtkdial example code, from Frans van Schaik.
          - Update setselection.c to current API.
          - Merge the various versions of this document.

        * examples/Makefile examples/*/*.c: Update to code
        listed in tutorial.
1999-11-13 23:01:18 +00:00
Pablo Saratxaga
0a4ea40510 updated danish file 1999-11-13 20:39:28 +00:00
Sven Neumann
43f31b2e7d gdk/gdkinputcommon.h Call XFreeDeviceState() on results of
* gdk/gdkinputcommon.h
        * gdk/gdkinputxfree.h: Call XFreeDeviceState() on results of
        XQueryDeviceState(). (Ported from HEAD)

--Sven
1999-11-12 21:27:10 +00:00
GMT 1999 Tony Gale
10b03b35c0 Fix off-by-one bug in parameter check.
Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>

        * gtk/gtkclist.c: Fix off-by-one bug in parameter
        check.
1999-11-10 17:31:11 +00:00
Pablo Saratxaga
ab3a70ee16 completed the gtkrc (when declaring arial for the native charset it works
better if it is used for iso8859-1 in the fontset too...)
1999-11-09 18:00:27 +00:00
Pablo Saratxaga
b0e81d06c0 added arial to the various gtkrc fontsets; so on systems that have those
fonts installed the can be used (and in some cases they are currently the
only good fonts available at no cost for some charset encodings)
1999-11-09 17:52:45 +00:00
Owen Taylor
6ed6b20570 Remove files that leaked in from head branch due to CVS magic 1999-11-08 20:16:42 +00:00
Tim Janik
9230dc1470 s/gtk_accel_group_attach/gtk_window_add_accel_group/.
Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>

        * docs/gtk_tut.sgml:
        s/gtk_accel_group_attach/gtk_window_add_accel_group/.
1999-10-31 22:46:16 +00:00
BST 1999 Tony Gale
47e15bdf5f FAQ update
Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: FAQ update
1999-10-30 12:04:35 +00:00
Owen Taylor
e9c55bc8ce Use g_list_remove_link, not g_list_remove.
Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c (gtk_target_list_remove): Use
	g_list_remove_link, not g_list_remove.

	[ From Geert Bevin <gbevin@thunderstorms.org> ]
1999-10-25 00:05:26 +00:00
Tim Janik
703f17ec05 commented out g_print() statement upon unselection (how the heck did that
Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.c (real_undo_selection): commented out g_print()
        statement upon unselection (how the heck did that slip in?).
1999-10-24 06:27:11 +00:00
Tim Janik
3b3891191e undraw/draw cursor here to avoid unnecessary scrolling in frozen state
Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktext.c (gtk_text_freeze):
        (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
        in frozen state (and aparently crashes). patch provided by Anders
        Melchiorsen <and@kampsax.dtu.dk>.

Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>

        * fix insensitive default/focus widget activation,
        reported by Matt Goodall <mgg@isotek.co.uk>.

        * gtk/gtkwindow.c (gtk_window_key_press_event):
        (gtk_window_activate_default):
        (gtk_window_activate_focus):
        return handled=FALSE for actiavtion of insensitive default
        widgets. return handled=TRUE for activation of insensitive
        focus widgets. don't activate in either case.
1999-10-23 01:32:26 +00:00
Owen Taylor
ae1f478285 Switch order of @x_cflags@ and $glib_cflags to match library order and in
Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk-config.in (lib_gtk): Switch order of @x_cflags@
	and $glib_cflags to match library order and in the
	theory that an old version of GLib is more likely to
	be in the include directory for X then vice-versa.
	(Bug #2776)
1999-10-19 14:56:55 +00:00
Owen Taylor
1e8e510300 Always use LC_CTYPE to determine the locale for fontsets, not LC_MESSAGES;
Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE
	to determine the locale for fontsets, not LC_MESSAGES;
	the user may want English messages with a handling
	for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
	will still be broken)
1999-10-19 14:49:44 +00:00
Changwoo Ryu
d7e9880433 Fixed the wrong number of "*"'s.
* gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
1999-10-19 11:39:25 +00:00
Changwoo Ryu
23c00ecebe Changed the Korean default fontset.
* gtk/gtkrc.ko: Changed the Korean default fontset.
1999-10-19 03:17:46 +00:00
Sergey I. Panov
6841c77b0c ru.po: Gramm. and Style corrections from Sergey Chernikov
<Sergey_Chernikov@f29.n5051.z2.fidonet.org>
1999-10-15 14:14:32 +00:00
Shawn Amundson
abfd8215f8 release-o-rama 1999-10-08 16:19:38 +00:00
Owen Taylor
e69a498bd5 Fix bug where when scrolling to the left or top double exposes were done,
Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
	where when scrolling to the left or top double exposes
	were done, causing major slowdowns.
1999-10-08 14:27:28 +00:00
Yukihiro Nakai
ad246fcf51 ja.po: Update from Shirasaki Yasuhiro
ja.po: Update from Shirasaki Yasuhiro
1999-10-08 08:38:52 +00:00
Owen Taylor
e322f322e2 Always normalize codeset names to lowercase and alphanumeric, before
Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
	names to lowercase and alphanumeric, before looking
	them up.

	* gtk/Makefile.am: Install codeset variant gtkrc files
	with normalized names.
1999-10-07 22:38:34 +00:00
Tim Janik
d76955e34b even popup menus when the menu is already visible, but its parent is still
Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
        popup menus when the menu is already visible, but its parent
        is still hidden, (happens after tornoff window got hidden).
1999-10-07 21:29:41 +00:00
CDT 1999 Shawn T. Amundson
003c5dccd0 Released GTK+ 1.2.6
Thu Oct  7 12:50:23 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.6
1999-10-07 18:28:04 +00:00
Owen Taylor
95a5e5cd09 Fix a typo where gtkrc.vi_VN.tcvn5712 wasn't getting deleted, causing
Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (install-data-local): Fix
	a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
	deleted, causing error messages on install.

Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
	the handle as well, since we now sometimes ignore
	exposes on the handle while resizing.
1999-10-07 15:26:07 +00:00
Jesus Bravo Alvarez
fe725cf7d9 Added Galician .po file 1999-10-06 22:45:46 +00:00
Owen Taylor
4a50847abd Fix stupid extra g_free introduced in one of the last one or two commits.
Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
	extra g_free introduced in one of the last one or two
	commits.
1999-10-06 21:53:32 +00:00
Owen Taylor
83f3b1e8e3 Fix typo from last commit. 1999-10-06 20:33:15 +00:00
Owen Taylor
fd37d2bdb0 Make naming of gtkrc files consistent, put each style that a gtkrc.* file
Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
	consistent, put each style that a gtkrc.* file creates
	in a unique namespace, remove old files before installing.
1999-10-06 20:30:11 +00:00
Sergey I. Panov
3b8ecf24f6 ru.po: Updated Russian translation 1999-10-05 18:52:42 +00:00
Manish Singh
91307e5e87 don't list gtkrc in gtkconf_DATA, it totally barfs
-Yosh
1999-10-05 18:42:52 +00:00
Owen Taylor
c2aaaf16f3 Free device->info.axes for core pointer.
Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkinputcommon.h (gdk_input_device_new): Free
	device->info.axes for core pointer.
1999-10-05 16:27:03 +00:00
Pablo Saratxaga
5bfdcc2c3e Added several gtkrc.* fiels for new charset encodings 1999-10-05 12:21:20 +00:00
Pablo Saratxaga
2dc5212004 added several gtkrc.* files 1999-10-05 12:18:22 +00:00
Sergey I. Panov
4478fefd28 ru.po: Updated Russian translation 1999-10-05 05:20:34 +00:00
Nam SungHyun
91da226af7 updated 1999-10-04 18:28:15 +00:00
Kjartan Maraas
f8ca8253f9 Added Ukrainian translation from Yuri Syrota <yuri@renome.rovno.ua>.
1999-09-28  Kjartan Maraas  <kmaraas@online.no>

	* uk.po: Added Ukrainian translation from Yuri
	Syrota <yuri@renome.rovno.ua>.
1999-10-01 22:58:15 +00:00
Owen Taylor
9b98ede875 Rename idle to idle_id, to deal with obsolete, broken C libraries.
Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (destroy_idle_test): Rename idle to
	idle_id, to deal with obsolete, broken C libraries.
1999-09-30 17:50:50 +00:00
Owen Taylor
a97747dfc7 Get rid of stupid C unsigned integer bug. (Bug #2272)
Wed Sep 29 15:41:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeitem.c (gtk_tree_item_size_allocate):
	Get rid of stupid C unsigned integer bug.
	(Bug #2272)
1999-09-29 23:13:01 +00:00
Kjartan Maraas
5739ca8f3b Added Romainan translation from Dan Damian <dand@dnttm.ro>.
1999-09-28  Kjartan Maraas  <kmaraas@online.no>

	* ro.po: Added Romainan translation from Dan
	Damian <dand@dnttm.ro>.
1999-09-28 22:25:29 +00:00
Owen Taylor
9cc3eb8c0d Don't add in allocation->x/y twice!
Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
	allocation->x/y twice!

	* gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
	consistent with gtk_vscale_pos_trough().
1999-09-27 14:56:17 +00:00
Owen Taylor
6b5d56e39c We may be queueing a resize on a toplevel container between the time we
Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcontainer.c (gtk_container_queue_resize): We may
	be queueing a resize on a toplevel container between
	the time we show it and when we map it. So, we need
	to test GTK_WIDGET_VISIBLE() for toplevels, and only
	use GTK_WIDGET_DRAWABLE() for child windows.
1999-09-26 23:46:57 +00:00
Chyla Zbigniew
7a4bc2038f Updated Polish translation 1999-09-26 22:28:48 +00:00
Lauris Kaplinski
6b7f4bb036 updated Estonian tranlation 1999-09-26 20:45:39 +00:00
Elliot Lee
51bae3f9cd Make 'dist-hook' targets, which copy the .spec file into $(distdir),
Make 'dist-hook' targets, which copy the .spec file into $(distdir), depend upon the
.spec file, so that the .spec file will be regenerated when a previously-compiled tree
is 'dist'd with a new version number.
1999-09-24 16:18:02 +00:00
CDT 1999 Shawn T. Amundson
60a7c53123 Released GTK+ 1.2.5
Thu Sep 23 20:11:38 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.5
1999-09-24 01:37:05 +00:00
Tim Janik
ee09d2e5da changed version from Gtk+-1.2.5-pre2, to Gtk+-1.2.5, interface age 0,
Fri Sep 24 02:00:21 1999  Tim Janik  <timj@gtk.org>

        * configure.in (GTK_VERSION): changed version from Gtk+-1.2.5-pre2,
        to Gtk+-1.2.5, interface age 0, binary age 5.
1999-09-24 00:12:30 +00:00
Owen Taylor
4eb1338d42 Add GDK_WLIBS to LDADDS (fixes bug #2144)
Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
	(fixes bug #2144)
1999-09-23 23:19:35 +00:00
Tim Janik
8e8ac56db5 check for container DRAWABLE (instead of VISIBLE), so we don't queue
Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
        container DRAWABLE (instead of VISIBLE), so we don't queue
        resizes on non-toplevel containers.
1999-09-23 22:59:42 +00:00
Tim Janik
54a90a6c61 updates for real 1.2.5 1999-09-23 20:01:29 +00:00
Tim Janik
fc0117177c grr, even if Gdk doesn't handle CreateNotify itself, still put out a
Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
        handle CreateNotify itself, still put out a debuging message for
        --gdk-debug=events. made the ReparentNotify debugging message more
        verbose.
        wrap xcoords translation for ConfigureEvents into an error trap,
        a destroy event may already be pending, and in that case, the
        actuall coordinate values are not at all critical.
1999-09-23 19:48:16 +00:00
Vincent Renardias
8a7795d2db Updated for 1.2.5.
* Updated for 1.2.5.
1999-09-21 16:58:33 +00:00
Kjartan Maraas
2a0a33bc35 Updated Danish translation from Kenneth Christiansen <kenneth@ripen.dk>
1999-09-20  Kjartan Maraas  <kmaraas@online.no>

	* da.po: Updated Danish translation from Kenneth
	Christiansen <kenneth@ripen.dk>
1999-09-20 18:30:35 +00:00
Pablo Saratxaga
cd1c6de2ea added pt_BR.po file 1999-09-20 11:34:35 +00:00
Tim Janik
44a04ee211 released Gtk+-1.2.5-pre2, interface age 0, binary age 5.
Mon Sep 20 01:21:53 1999  Tim Janik  <timj@gtk.org>

        * released Gtk+-1.2.5-pre2, interface age 0, binary age 5.
1999-09-19 23:57:12 +00:00
Owen Taylor
b107653636 Make the data argument const guchar *.
Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.[ch]: Make the data argument
	const guchar *.
1999-09-19 22:23:46 +00:00
Owen Taylor
90d2cae68c Stop leaking the color_hash all over the place. Simplify and improve the
Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcc.c: Stop leaking the color_hash all over
	the place. Simplify and improve the logic.
1999-09-19 02:19:26 +00:00
Owen Taylor
369ea6013d Try to behave sensibly if the focus widget is the window itself. (Should
Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c: Try to behave sensibly if
	the focus widget is the window itself. (Should
	we allow this at all?)
1999-09-19 01:43:30 +00:00
Kjartan Maraas
175b04c33d Updated Danish translation from Kenneth Christiansen <kenneth@ripen.dk>.
1999-09-17  Kjartan Maraas  <kmaraas@online.no>

	* da.po: Updated Danish translation from Kenneth
	Christiansen <kenneth@ripen.dk>.
1999-09-17 19:35:50 +00:00
Tim Janik
389f174dad make gboolean args in prototypes and implementations consistent (Tomas
Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_set_sensitive):
        * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
        * gtk/gtknotebook.c (gtk_notebook_set_show_border):
        * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
        in prototypes and implementations consistent (Tomas Ogren).

        * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
        for prototypes and function implementations consistent (reported
        by Tomas Ogren).

        * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
        before the widget is unparented (reported by damon).

        * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
        since we provide unsigned data anyways.
1999-09-17 09:03:44 +00:00
Owen Taylor
c98ffe744f Delay the call to gtk_tooltips_layout_text() until later.
Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
	the call to gtk_tooltips_layout_text() until later.

	* gtk/gtktooltips.c (gtk_tooltips_draw_tips):
	Call gtk_widget_ensure_style() before using the style.
1999-09-17 01:35:56 +00:00
Owen Taylor
661d0ad067 Added workaround for old widgets that don't propagate draws to all
Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_event): Added workaround
	for old widgets that don't propagate draws to all
	children. (Namely gnome-dock for gnome-libs <= 1.0.16)
1999-09-16 18:59:24 +00:00
Tim Janik
f04d58dd29 NEWS updates 1999-09-14 17:47:06 +00:00
Tim Janik
0ab9dddc34 slight version increment to 1.2.5-pre2.
Tue Sep 14 19:37:53 1999  Tim Janik  <timj@gtk.org>

        * configure.in (GTK_VERSION): slight version increment to 1.2.5-pre2.

Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
        for a redraw but just the widget that requested the resize.

Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c: added new widget level method
        gtk_container_set_reallocate_redraws() and a GtkContainer flag
        reallocate_redraws : 1 to reflect the setting, exported this through
        the argument system as a boolean ::reallocate_redraws.

        * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
        on the widget because the allocation changes, do so as well for
        widget->parent if the parent has reallocate_redraws set to TRUE.
        with that containers requesting reallocation redraws get automatically
        redrawn if their children changed allocation (this unfortunately
        affects also other children that didn't change allocation, but we
        cannot work around that before 1.3).

Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
        send_event set in debugging output.
        (gdk_compress_exposures): default initialize the event so we don't
        operate on bogus values (namely send_event).

        * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
        _and_ height are >0 (not _or_).

        * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
        instead of gtk_container_queue_resize(), which is a core gtk internal
        function (must have been on crack when i queued that).

        * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
        we can check more reliably if we want to discard expose events.
        * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
        flag.

        * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
        we simply trust these events. for deciding whether to discard exposes,
        check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
1999-09-14 17:43:56 +00:00
Owen Taylor
7347cd702f Ignore queues of areas that are completely off screen.
Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
	queues of areas that are completely off screen.

	* gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
	logic for handleboxes.

	* gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
	check on width/height.
1999-09-13 19:01:49 +00:00
Tim Janik
531f44bbdc backed out Raja's recent VPATH build "improvements", we are fine with
Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
        we are fine with using $@ the way we do (if we actually encounter
        brokeness with $@ in VPATH builds because of additional path prefixes,
        we need to use $(@F) actually).
1999-09-13 11:13:07 +00:00
Tim Janik
d807397177 renamed two variables, hopefully didn't introduce short lived bugs, that
Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
        short lived bugs, that would allow language bindings to do surgeries
        to our guts.
1999-09-12 23:39:49 +00:00
Raja R Harinath
8014d7db5e Fix AC_DEFINEs.
* configure.in (wctype): Fix AC_DEFINEs.
1999-09-12 21:07:52 +00:00
Pablo Saratxaga
8cf06479ae updated danis hfile 1999-09-11 00:13:53 +00:00
Pablo Saratxaga
123914048c put Greek file from gtk+ HEAD cvs 1999-09-10 23:35:33 +00:00
Pablo Saratxaga
91645584a5 added Estonian language file 1999-09-10 19:45:35 +00:00
Owen Taylor
6362c20b8b Fix typo where comparison was being done against an uninitialized value
Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
	where comparison was being done against an uninitialized
	value causing intermittant results depending on
	compiler flags. Also make it clearer that we aren't
	ever initializing the child as 0x0 (though this will
	be caught in gtk_widget_size_allocate())
1999-09-10 19:19:00 +00:00
Owen Taylor
a88d8fff6d Move gtk_window_unset_transient_for() call after we do checks involving
Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_set_transient_for): Move
	gtk_window_unset_transient_for() call after we do checks
	involving the old transient parent.
	[ From Lance Capser <lmc@cyberhighway.net> ]
1999-09-10 14:00:45 +00:00
Tim Janik
61f9087af4 fixed "GNU Make" check to pass with new make version 3.77.95.
Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>

        * configure.in: fixed "GNU Make" check to pass with new make version
        3.77.95.
1999-09-08 07:03:00 +00:00
Raja R Harinath
2b2ee64b60 Go back to using `touch' to create an empty file.
* gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
an empty file.
1999-09-07 18:45:04 +00:00
Pablo Saratxaga
4767c40249 updated da file 1999-09-06 09:42:10 +00:00
Lars Hamann
844cbfb1ba return FALSE if node has no children. (Reported by: Chris Rogers
Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
        no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
1999-09-05 22:22:27 +00:00
Kjartan Maraas
04d23ae07e Updated translation.
1999-09-04  Kjartan Maraas  <kmaraas@fib.hl.no>

	* no.po: Updated translation.
1999-09-04 08:40:46 +00:00
Raja R Harinath
59724766af Improve VPATH builds. `$@' is valid only in the build dir, not after we've
* gtk/Makefile.am (gen_sources): Improve VPATH builds.
`$@' is valid only in the build dir, not after we've done
`cd $srcdir'.  Also use `test -f' instead of less portable
`test -e'.
1999-09-03 22:59:25 +00:00
CDT 1999 Shawn T. Amundson
2c331c9fdf Released GTK+ 1.2.5-pre1 (test release)
Fri Sep  3 17:20:57 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.5-pre1  (test release)
1999-09-03 22:47:09 +00:00
Owen Taylor
df57d883b3 Overview of Changes in GTK+ 1.2.5:
* new configure.in option --disable-rebuilds to completely disable
  rebuilds of autogenerated sources.
* check for 5.002 now, to avoid failing autogeneration build rules due
  to old perl versions.
* fonts (and fontsets) are cached now.
* more autogeneration make rules and dependancy fixups, we should be
  save with autogeneration up to make -j12 now ;)
* new window position GTK_WIN_POS_CENTER_ALWAYS, which will recenter the
  GtkWindow on every size change.
* major rework of window manager hints handling code, fixed a bunch of
  races with the new resizing code.
* the new wm hints and resizing code is absolutely perfect and bug free now,
  it only lacks testing ;)
* fixed up various rc style memory prolems.
* gtk_widget_modify_style() now properly changes the style of realized widgets
  and references the style passed into it. if people worked around this bug,
  this will introduce a slight memory leak in their code.
  The code should typically look like:
            GtkRcStyle *rc_style = gtk_rc_style_new ();
            [...]
            gtk_widget_modify_style (widget, rc_style);
            gtk_rc_style_unref (rc_style);
* fix problems with positioning menus offscreen.
* GtkText fixes for some crashes and drawing errors.
* Better handling for unexpected window destroys in GDK and GTK+.
  This should make it possible to use a GtkPlug and catch the
  case where its parent socket is randomly killed.
* FAQ updates.
* FileSelection i18n patches, RadioButton fixups.
* miscellaneous other bugs fixed.
1999-09-03 21:01:15 +00:00
Owen Taylor
c9dec55549 Rewrite for simplicity, and hopefully correctness. (Fixes bug #1322, which
Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (correct_cache_insert): Rewrite
	 for simplicity, and hopefully correctness.
	 (Fixes bug #1322, which was a segfault when
	  on some insertions with the properties around
	  the insertion set up just wrong.)

	* gtk/gtktext.c (gtk_text_adjustment): When we receive
	 a "changed" signal, clamp the new value to the adjustment
	 bounds to avoid segfaulting if someone tries to change
	 the adjustment to a bogus value. (Bug #1795)
1999-09-03 20:45:35 +00:00
Owen Taylor
22a15408bb When we receive an unexpected destroy notify on one of our windows, don't
Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c: When we receive an unexpected
	destroy notify on one of our windows, don't just
	warn about it, also mark our windows as destroyed.

	* gtk/gtkmain.c: Ignore unexpected destroy notifies
	for children, for toplevel windows handle them
	like delete_event.

	* gtk/gtkplug.c: Add an unrealize handler so that
	we unref plug->socket_window when we are done
	with it.
1999-09-03 20:08:13 +00:00
Owen Taylor
3abc634152 Fix stupid signedness problem that was causing background to sometimes be
Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (clear_area): Fix stupid signedness
	 problem that was causing background to sometimes
	 be misaligned.
1999-09-03 18:54:03 +00:00
Owen Taylor
ad9263ec39 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>

	[ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]

	* gtk/gtkmenu.c (gtk_menu_position): Make
	 sure we never position menus with negative x, y,
	 since gtk_widget_set_uposition() can't handle that.

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
	 Modify the positioning code a bit so that we always
	 put the top-left corner onscreen. (This is for
	 UI reasons, gtk_menu_position() now takes care of
	 gtk_widet_set_uposition() brokeness.)
1999-09-03 16:51:12 +00:00
Tim Janik
501c87a65d don't echo @GTK_VERSION@, but
Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>

        * gtk-config.in (--version): don't echo @GTK_VERSION@, but
        @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
        AM_PATH_GTK() macros don't get confused by the -pre1.
1999-09-03 14:08:51 +00:00
Tim Janik
f9c868233f changed version number to 1.2.5-pre1, interface age 0, binary age 5. we
Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>

        * configure.in: changed version number to 1.2.5-pre1,
        interface age 0, binary age 5. we still require Glib-1.2.4 though.

        * gtk/Makefile.am: fixed up things for -jx, x > 1.

        * NEWS: updates for 1.2.5.
1999-09-03 04:38:55 +00:00
Owen Taylor
0285d26804 Ref the RC style that is passed in. The lack of the ref before was a bug.
Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
	  RC style that is passed in. The lack of the ref
	  before was a bug. If people worked around this
	  bug, this will introduce a slight memory leak
	  in their code. The code should typically look like:

	    rc_style = gtk_rc_style_new ();
	    [...]
	    gtk_widget_modify_style (widget, rc_style);
	    gtk_rc_style_unref (rc_style);

	* gtk/gtkwidget.c (gtk_widget_modify_style): Reset
	  the style if it was already set.

	* gtk/gtkwidget.c (gtk_widget_set_name): Only set the
	  style if it was set before.
1999-09-03 03:57:14 +00:00
Owen Taylor
189706f619 Add name => font and name => fontset hashes. The name => fontset hash is a
Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkfont.c (gdk_font_hash_insert): Add
	  name => font and name => fontset hashes. The
	  name => fontset hash is a _big_ win since we
	  weren't previously caching fontsets at all and loading
	  fontsets is expensive. The name => font hash
	  is less of a win, but it does save us from doing
	  repeated XQueryFont calls on the same font.

	* gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
	  list so we can remove font/fontset from hash.
1999-09-03 03:56:34 +00:00
Chyla Zbigniew
b4def251f8 Updated polish translation 1999-09-03 02:55:23 +00:00
Owen Taylor
ddc6217c32 Remove useless and slightly confusing test. [ XInternAtom (,,TRUE) will
Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkproperty.c (gdk_atom_intern): Remove useless
	  and slightly confusing test. [ XInternAtom (,,TRUE)
	  will never return None ].

	* gtk/testgtk.c (main): Add a check to see if we
	  are being run from the correct directory and
	  to quit nicely if we are not.

	* gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
	  static.

	* configure.in (REBUILD): Change check for perl5
	  to check explicitely for v >= 5.002. (5.001
	  does not work with our scripts.)
1999-09-02 23:02:14 +00:00
Tim Janik
80ed2661c5 uncomma 1999-09-02 22:31:38 +00:00
Tim Janik
088428655b added GTK_WIN_POS_CENTER_ALWAYS.
Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.

        * gtk/gtkwindow.c:
        queue resizes unconditionally (gtk_widget_queue_resize will figure
        what to do if the window is not realized).
        (gtk_window_move_resize): only recenter the window
        for GTK_WIN_POS_CENTER_ALWAYS.
        (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
        the same way as GTK_WIN_POS_CENTER.

Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
        with (!(info->last_flags & GDK_HINT_POS)) instead of
        (!info->last_flags & GDK_HINT_POS).

        * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
        new_height unconditionally, because we use these values even if
        !default_size_changed && !hints_changed.
        comented the (default_size_changed || hints_changed) case with
        respect to resize rejects from the window manager.

        * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
        in the zvt condition hack, since this includes the window hints, set
        the hints after the handling_resize case.

        * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
        window is initially shown with to the geometry.
1999-09-02 21:15:01 +00:00
Tim Janik
be326a5a7c s/size_changed/default_size_changed/g so i know what's really going on
Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_move_resize):
        s/size_changed/default_size_changed/g so i know what's
        really going on (frying brain on smaller flame now).
1999-09-02 05:41:57 +00:00
Tim Janik
108d82e785 queue a new resize if we have size_changed upon handling_resize. this is a
Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
        we have size_changed upon handling_resize. this is a gross
        workaround for the broken zvt widget and should be removed in
        1.3 again (search for FIXME).
        Owen provided an accurate comment for this:

        /* We could be here for two reasons
         *  1) We coincidentally got a resize while handling
         *     another resize.
         *  2) Our computation of size_changed was completely
         *     screwed up, probably because one of our children
         *     is broken. It's probably a zvt widget.
         *
         * For 1), we could just go ahead and ask for the
         * new size right now, but doing that for 2)
         * might well be fighting the user (and can even
         * trigger a loop). Since we really don't want to
         * do that, we requeue a resize in hopes that
         * by the time it gets handled, the child has seen
         * the light and is willing to go along with the
         * new size. (this happens for the zvt widget, since
         * the size_allocate() above will have stored the
         * requisition corresponding to the new size in the
         * zvt widget)
         *
         * This doesn't buy us anything for 1), but it shouldn't
         * hurt us too badly, since it is what would have
         * happened if we had gotten the configure event before
         * the new size had been set.
         */
1999-09-02 04:01:11 +00:00
Owen Taylor
c431108d84 Don't omit setting the properties if flags == 0 - there may be an existing
Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_geometry_hints)
	  gdk/gdkwindow.c (gdk_window_set_hints):

	Don't omit setting the properties if flags == 0 -
	there may be an existing set of properties there
	already. (Very old bug. Would it be better to
	delete the property instead?)

	* gdk/gdkselection.c (gdk_selection_property_get): Fix
	  spelling error in comment.
1999-09-02 03:41:41 +00:00
Owen Taylor
bd2194afb1 deal properly with the fact that RC style lists may include rc styles more
Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c: deal properly with the fact that RC
	  style lists may include rc styles more than once.

	* gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
	  unused static function.

	* gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
	  stack of directories of RC files currently being
	  parsed and implicitely add them to pixmap path.

	  This fixes a bug where the directory would get
	  appended then overwritten by pixmap_path declarations.

	  (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)

	* gtk/gtkthemes.c (gtk_theme_engine_unref): Call
	  theme's exit function. (Patch from Peter Wainwright,
	  bug #1454)

	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
	  Add a destroy() handler to take care of removing
	  group for menu item. (Fixes bug #1197)

	* gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
	  in warning message.
1999-09-02 00:43:37 +00:00
Tim Janik
39fb4797ae don't require a server roundtrip to figure window's width and height,
Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
        roundtrip to figure window's width and height, since we know that
        anyways from widget->allocation.
1999-09-01 19:50:58 +00:00
Owen Taylor
10f1fff6ec Use gdk_error_trap_push() to avoid stomping over gdk_error_warnings.
Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
	  to avoid stomping over gdk_error_warnings.

	* gdk/gdkimage.c (gdk_image_new): compute image->bpp
	  as (bits_per_pixel + 7) / 8. This gives the same
	  result as before for multiples of 8, but actually
	  a "reasonable" value for 1bit or 4bit displays.
1999-09-01 17:59:50 +00:00
Owen Taylor
becd87fbd4 Compute the hints after we request the new size.
Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_move_resize): Compute
	  the hints after we request the new size.
1999-09-01 16:32:30 +00:00
Owen Taylor
55c0a94c2c Removed GTK_WIDGET_REALIZED() assertion - we can compute the hints before
Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_compute_hints): Removed
	  GTK_WIDGET_REALIZED() assertion - we can compute the
	  hints before we are realized.

	* gtk/gtkwindow.c (gtk_window_move_resize): Reorder
	  hint changing so that we have a value of hints_changed
	  when we decide whether to constrain the window size.

	* gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.

	* gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
	change back to G_MAXINT.
1999-09-01 14:51:02 +00:00
Pablo Saratxaga
c64f52a36c added da file 1999-09-01 12:31:59 +00:00
Tim Janik
b2a084beb4 zero initialize new GtkWindowGeometryInfo, so fields like GdkGeometry
Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
        new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
        contain uncluttered values.
        (gtk_window_compute_hints): simply assert that window is realized
        and that geometry_info is valid, since we rely on this anyways.
        (gtk_window_constrain_size): major cleanups to the code.
        if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
        for the base size, instead of the minimums. use 32767 as max width
        and height (like in gtkwindow.c) instead of G_MAXINT.
1999-09-01 05:48:55 +00:00
Tim Janik
57485d9029 cleaned up the GtkContainer.need_resize flag handling mess, we only need
Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>

        * cleaned up the GtkContainer.need_resize flag handling mess, we
        only need to force resize requests when we were prematurely
        realized, or our widget tree was modified when we were temporarily
        hidden. handling these cases directly upon showing the window (i.e.
        while the GdkWindow is still unmapped) avoids the need to wait for
        a configure event response and therefore makes the GUI more snappier
        and avoids blank windows during the roundtrip.

        * gtk/gtkwidget.c:
        (gtk_widget_hide):
        (gtk_widget_show): don't queue resizes on toplevels, they know how
        to deal with matters.

        * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
        flag directly for not visible resize containers and spare us unecessary
        signal emissions.

        * gtk/gtkwindow.c:
        (gtk_window_realize): if we need to enforce premature size allocation,
        queue a container resize so we are correctly resized later on.
        (gtk_window_init):
        (gtk_window_size_request):
        don't freak around with the ->need_resize flag,
        gtk_container_queue_resize() will care about that.
        (gtk_window_show):
        handle initial resizing issues here, we can handle matters better in
        this place, especially since we know that our GdkWindow is still
        unmapped.
        (gtk_window_move_resize):
        don't care about ->need_resize at all.
        handle size changes properly that occoured while we waited for a
        configure event.
1999-09-01 02:58:05 +00:00
Owen Taylor
92671fe1f6 Move the hint setting code from gtk_widget_set_uposition to here; set the
Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_set_uposition):
        * gtk/gtkwindow.[hc] (gtk_window_reposition):
        Move the hint setting code from gtk_widget_set_uposition
        to here; set the hints so that we respect any previously
        set geometry hints.

        * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
        change the window hints here or move the window here,
        let that happen in gtk_window_move_resize().
1999-09-01 01:13:10 +00:00
Tim Janik
5e049110f3 when discarding exposes due to already queued resizes (and therefore
Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
        to already queued resizes (and therefore redraws) on a widget, check
        its anchestry as well.

        * gtk/gtkcontainer.c:
        (gtk_container_queue_resize): clear resize widgets for resize
        containers before aborting prematurely. this is especially important
        for toplevels which may need imemdiate processing or their resize
        handler to be queued.
        (gtk_container_dequeue_resize_handler): added new internal function for
        gtkwindow.c.

        * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
        configure event, take possible changes in window position into account
        as well.
        if we request a new window size, queue up a resize handler that will
        last until the configure event response arrives.
        combined the ->need_resize case (initial show) with the general size
        (hints) changed case and added even more comments.
        if !auto_shrink, only revert to the old allocation if the new size
        is smaller than the current allocation.

Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
                           gtk_window_set_geometry_hints
                           gtk_window_set_default_size):
        When hints are set, queue a resize so that the hints will
        be eventually reset on the toplevel.

        * gtk/gtkwindow.c (gtk_window_show): Use
        gtk_window_compute_default_size(). Clear the need_resize flag
        on the initail map so that we don't unnecessarily trigger the
        resize code.

        * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
        into separate functions. Compare the hints we are setting
        with what we set last time so that we can accurately
        tell when we need to reset the hints.

        * gtk/gtkwindow.c (gtk_window_compute_default_size): New
        function to figure out the size from requisition
        and default_size.

        * gtk/gtkwindow.c (gtk_window_constrain_size): Function
        from fvwm to constrain a size to the geometry hints.

        * gtk/gtkwindow.c (gtk_window_compare_hints): New functio
        to compare two sets of geometry hints.

        * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
        from gtk_window_set_hints(), just compute the hints,
        don't set them.

        * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
        code from gtk_window_move_resize() to separate function,
        rationalize a bit.
1999-09-01 00:48:57 +00:00
Owen Taylor
d008fbb84d Missed file from last gtkrc commit. 1999-08-31 21:12:40 +00:00
Owen Taylor
b7fa562427 Move the ref_count member out of the GtkRcStyle structure into a new
Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>

	* gtkrc.h: Move the ref_count member out of the GtkRcStyle
	structure into a new private structure.

	* gtkrc.c: Split GtkRcStyle into public/private.
	In the private part, add a list of pointers to the
	RcStyle lists this RcStyle participates in.

	* gtkrc.c: When a RcStyle is free, remove all
	lists referencing it from the
	realized_style_ht hash, and free those lists.

	* gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
	gtk_rc_init(), since that adds the default styles
	to the list of parsed RC files again.

	* gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
1999-08-31 17:13:33 +00:00
Pablo Saratxaga
5bfd32fd64 a little patch to gtk/gtkfontsel.c to add the missing bit of i18n
support (displays font attributes translated)
1999-08-30 17:43:08 +00:00
Pablo Saratxaga
b977baed2b added eu and ga languages
merged with translations of gtk+ 1.3.0 when they were more up to date
1999-08-30 17:12:09 +00:00
BST 1999 Tony Gale
39024c05ae Minor FAQ Update
Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: Minor FAQ Update
1999-08-29 12:30:32 +00:00
Tony Gale
8ec53bf61b Helps to commit the right version
Helps to commit the right version
1999-08-28 13:44:12 +00:00
BST 1999 Tony Gale
b6d42f7eb7 FAQ update
Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: FAQ update
1999-08-28 13:27:40 +00:00
Raph Levien
7a73d7bd4d Comment fix (it was confusing for yosh). 1999-08-27 05:48:39 +00:00
Tim Janik
083941009f reactivated the sanity checks that ensure that a widget's allocation is at
Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
        checks that ensure that a widget's allocation is at least 1 in width
        and height. (GNOME note: this doesn't affect old panel code anymore,
        because GtkSocket will request width and height of at least 1 since
        Fri Jul 23).

        * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
        allocated yet (happens if the user realizes the window prematurely),
        size request and allocate it.
        (gtk_window_size_allocate): guard against guint underflows.
1999-08-26 12:44:07 +00:00
Lars Hamann
eb0859b277 reordered stamp-gtk.defs in gtk_built_sources, so gtk.defs gets built
Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>

        * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
        in gtk_built_sources, so gtk.defs gets built prior to all other
        sources.
1999-08-25 17:08:03 +00:00
Tim Janik
bb2b76689c evaluate $PERL for the perl version check. added --disable-rebuilds to
Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>

        * configure.in: evaluate $PERL for the perl version check. added
        --disable-rebuilds to give the user an option to completely disable
        any source autogeneration rules.
1999-08-25 13:52:36 +00:00
CDT 1999 Shawn T. Amundson
65725a25ff Released GTK+ 1.2.4
Mon Aug 23 15:05:17 CDT 1999  Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.4
1999-08-23 22:49:05 +00:00
Tim Janik
bd91541a01 evaluate $ac_make when checking for GNU Make.
Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>

        * configure.in: evaluate $ac_make when checking for GNU Make.
1999-08-23 21:20:22 +00:00
Tim Janik
2e6baef994 added some $(srcdir)/ prefixing 1999-08-23 20:39:17 +00:00
Tim Janik
6469f8473e small fix 1999-08-23 20:15:50 +00:00
Tim Janik
40d855bb0c invoke indent on gtkmarshal.*. rewrote source generation rules, use
Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am:
        invoke indent on gtkmarshal.*.
        rewrote source generation rules, use COPYING as oldest source tag for
        a piggyback rule to generate all sources from (don't touch it ;).
        major cleanups, strip spaces on build rules for GNU Make.

        * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
        source and target files from commandline arguments. don't invoke indent.

        * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
        GNU Make.

        * docs/Makefile.am: added generation.txt.

        * Makefile.am: require automake 1.4, build README from README.in and
        INSTALL from INSTALL.in in dist-hook.

        * README.in:
        * INSTALL.in: new files to autogenerate README and INSTALL from.

        * gtk/COPYING:
        * gdk/COPYING: new files containing the GNU LESSER GENERAL PUBLIC
        LICENSE.

        * configure.in: figure wether we have GNU Make, version update to
        Gtk+ 1.2.4, interface age 2, binary age 4.

        * NEWS: updates.

        * docs/generation.txt: minor additions/corrections.
1999-08-23 19:35:22 +00:00
Manish Singh
fb44e1b6df rambopoo commit
-Yosh
1999-08-23 19:21:25 +00:00
Lars Hamann
0ab658cd10 queue_resize notebook after switch to avoid drawing problems. (Bug#856
Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
	notebook after switch to avoid drawing problems.
	(Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)

	(gtk_notebook_pages_allocate): don't map not visible tab_labels,
	show them instead.
	(Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
1999-08-22 12:53:04 +00:00
Tim Janik
f5891aa3bf we use window->need_resize from configure_event now, to indicate that the
Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c:
        we use window->need_resize from configure_event now, to indicate that
        the gtkwindow should keep its allocation (e.g. because the user resized
        the window through window manager handles). resize_count is now reliably
        used to figure whether we got the allocation we requested from the
        window manager.
        configure events get queued as resizes now, the real stuff (size
        computation and allocation) now only goes on in gtk_window_move_resize().
        GtkWindow's requisition now contains its *real* requisition (like all
        other widgets), *not* taking usize into account.
        geometry_info->last_{width|height} is now updated from set_hints() only
        so it always contains the last hints we set for the window manager.
        made some event handlers return TRUE instead of FALSE.
        the overall code should be much more straight forward now, and the
        significant code portions are accompanied by comments now.
        (gtk_window_set_hints):
        removed requisition argument and made it
        fetch the requisition through gtk_widget_get_child_requisition.
        we also don't move the gdkwindow here anymore, gtk_window_move_resize()
        does that now.
        (gtk_window_show):
        ensure that the widget is realized before calling
        gtk_container_check_resize() (and thus gtk_window_move_resize()), also
        ensure that we got properly size requested and allocated before
        realization.
        (gtk_window_configure_event):
        ignore plain window moves, or reallocate the widget tree through the
        resize queue otherwise.
        (gtk_window_move_resize):
        mostly rewrote this function to figure window manager hints more
        reliably, coalesce window moves and resizes to reduce configure events
        and do actuall size allocations.

Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
        that have a resize pending, because a redraw is already queued for them.

        * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
        discarding configure events.

        * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
        hack to clear resize_widgets.

        * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
        for resize containers prior to size allocation. (this is also a bit
        ugly, but avoids side effects for stopped emissions and is thus more
        reliable).
        (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.

        * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
        function from gtk_tooltips_expose, as we connect to ::expose_event
        *and* ::draw now.

Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
        that have a resize pending, because a redraw is already queued for them.

        * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
        discarding configure events.

        * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
        hack to clear resize_widgets.

        * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
        for resize containers prior to size allocation. (this is also a bit
        ugly, but avoids side effects for stopped emissions and is thus more
        reliable).
        (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.

        * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
        function from gtk_tooltips_expose, as we connect to ::expose_event
        *and* ::draw now.
1999-08-20 02:18:22 +00:00
Federico Mena Quintero
5568346aa2 Added missing sanity checks. (gtk_target_list_unref): Likewise.
1999-08-18  Federico Mena Quintero  <federico@redhat.com>

	* gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
	checks.
	(gtk_target_list_unref): Likewise.

	* gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
	refcount is greater than zero.

	* gdk/gdkwindow.c (gdk_window_unref): Likewise.

	* gdk/gdkfont.c (gdk_font_unref): Likewise.

	* gdk/gdkgc.c (gdk_gc_unref): Likewise.

	* gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.

	* gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
1999-08-18 20:21:07 +00:00
Owen Taylor
0f8e13ca60 guard against division by zero. (Fixes bug #1339)
Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
	guard against division by zero. (Fixes bug #1339)
1999-08-17 19:49:06 +00:00
Owen Taylor
8830e211f8 Prevent the trivial leak of information of allowing word motion when the
Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_move_{forward,backward}_word):
	Prevent the trivial leak of information of allowing
	word motion when the entry is not visible.
1999-08-17 14:58:50 +00:00
Owen Taylor
a6c5f95bac Propagate modality to error dialog as well as confirmation dialogs. (Bug
Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
	modality to error dialog as well as confirmation dialogs.
	(Bug #1803, reported by Rosanna Wing Sze Yuen)
1999-08-17 14:34:33 +00:00
BST 1999 Tony Gale
bae298ea0e FAQ Update
Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
        * docs/gtkfaq.sgml: FAQ Update
1999-08-11 12:39:49 +00:00
Owen Taylor
4139d6fc64 Honor tree->view_lines. (gtk-guy-990611-3.patch: Guy Harris
Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
	tree->view_lines.
	(gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)

	* gtk/Makefile.am (install-data-local): Solaris apparently
	has various troubles with ln -f; use rm first instead.
	(gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)

	* gdk/gdkproperty.c (gdk_property_get): Fix assumption
	that format 32 => sizeof(item) == 4. It really is
	sizeof(long).
1999-08-08 20:31:45 +00:00
Raja R Harinath
54b231b034 Don't mv' from builddir to srcdir, use cp' followed by rm' (the rm'
* gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
use `cp' followed by `rm' (the `rm' was already there).
1999-07-30 17:12:48 +00:00
Elliot Lee
0c39d9a4f3 . configure.in: Fix autoconf warnings about cross compilation by trying to
. configure.in: Fix autoconf warnings about cross compilation by trying to
  provide sane defaults for AC_TRY_RUN.
. docs/Makefile.am: Tell distcheck how to generate the .gif files.
. gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), put them into
  $(srcdir) when generated. Also add a dependency of gtksignal.h on gtkmarshal.h
  for -j builds.
. gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
1999-07-30 16:14:09 +00:00
Elliot Lee
263a095543 Allow defining a CUSTOM_RELEASE at RPM build time 1999-07-29 20:09:24 +00:00
Owen Taylor
fe3173bd1a Added missing GDK_THREADS_{LEAVE,ENTER} pair. (From Paul Fisher
Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main_iteration_do): Added missing
	GDK_THREADS_{LEAVE,ENTER} pair.
	(From Paul Fisher <pnfisher@redhat.com>)
1999-07-28 13:26:40 +00:00
Tim Janik
6eb649146c asure that the requested width and height are always >0 (owen).
Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
        width and height are always >0 (owen).
1999-07-23 00:36:33 +00:00
Tim Janik
b7b01fa9d3 typo 1999-07-22 22:15:46 +00:00
Tim Janik
4f490f626a backed out my recent change that assured that a widget's allocated with
Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
        change that assured that a widget's allocated with and height are
        always >1, since this breaks *buggy* panel code. unfortunately this
        back-breaks the gimp's color selector.

        * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
        allocation is always >0 in width and height, before sending the
        configure event; this is a *gross* hack to get the gimp back to work.

        * maked both cases with TODO-1.3
1999-07-22 22:11:47 +00:00
Owen Taylor
66a7a593e2 Don't display wrap indicators when text is not editable and word wrap is
Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c: Don't display wrap indicators when
	text is not editable and word wrap is on.
1999-07-21 19:45:55 +00:00
Yukihiro Nakai
bd7c5b22be ja.po: Japanese translation update from Shirasaki Yasuhiro.
ja.po: Japanese translation update from Shirasaki Yasuhiro.
1999-07-21 08:52:49 +00:00
Tim Janik
32e24f9f32 special case option menus here as they are not derived from menu shell,
Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
        option menus here as they are not derived from menu shell, assure that
        the option menu has a menu we can add items to.
1999-07-21 06:27:12 +00:00
Tim Janik
f50fed4098 convert allocation-> width/height to (gint) before calculations and check
Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
        width/height to (gint) before calculations and check against < 0 to
        avoid guint wraparounds.
1999-07-20 21:59:11 +00:00
Tim Janik
13aa12ea14 ensure that the allocated width and height is never zero. sanity check
Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
        width and height is never zero. sanity check both dimensions against
        32767 and issue a warning if the allocation is greater than that.
1999-07-17 22:42:49 +00:00
Manish Singh
ca599d6060 libtool 1.3.3
-Yosh
1999-07-17 05:21:02 +00:00
Yukihiro Nakai
029baff26a ja.po: "Rename file" translation fixed.
ja.po: "Rename file"  translation fixed.
1999-07-13 05:02:51 +00:00
Tomas Ogren
79e872c851 Updated
1999-07-11  Tomas Ogren  <stric@ing.umu.se>

* sv.po: Updated
1999-07-10 22:28:42 +00:00
Owen Taylor
fa80ff6c59 Indicate that the --with-glib= configure time flag is unsupported.
Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>

	* INSTALL: Indicate that the --with-glib= configure
	time flag is unsupported.

	* configure.in: Some small fixups for libgno
1999-07-08 15:33:41 +00:00
Stuart Parmenter
58102a49f0 s/,/./ 1999-07-07 22:20:33 +00:00
Owen Taylor
d38f1248d1 Unlock around call to g_main_pending() as well.
Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_events_pending): Unlock around call
	to g_main_pending() as well.
1999-07-07 19:04:09 +00:00
Owen Taylor
8e401114ef Unlock around call to g_main_iteration() - since that will regrab GTK+
Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main_iteration): Unlock around
	call to g_main_iteration() - since that will regrab
	GTK+ lock to process events.
1999-07-07 18:55:46 +00:00
Owen Taylor
46144b1be4 Added a file that gives documenation about the autogeneration process for
Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>

	* docs/generation.txt: Added a file that gives
	documenation about the autogeneration process for
	various autogenerated files.
1999-07-06 00:36:56 +00:00
Owen Taylor
af5243ab71 - Code cleanups - Instantaneously update on modifier key presses - Allow
Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c:
	- Code cleanups
	- Instantaneously update on modifier key presses
	- Allow cancellation of the drag with Escape.
1999-06-30 23:35:55 +00:00
Owen Taylor
37ad5eb7c0 Don't core dump at all on X IO errors, only core dump if --enable-debug
Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
	core dump at all on X IO errors, only core dump
	if --enable-debug for X errors.

Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (create_handle_box): Set the policy
	to auto_shrink - otherwise the appearance is rather
	strange when flipping between horizontal and vertical.
1999-06-30 21:52:35 +00:00
Owen Taylor
d97fede574 Look for libgmodule in the right location.
Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>

	* configure.in (LIBS): Look for libgmodule in the
	right location.
1999-06-29 19:58:24 +00:00
Tim Janik
dc624c4dd8 add ::default_width and ::default_height arguments.
Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
        (gtk_window_set_default_size): don't change a value if it's < 0.
        queue a resize.

Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
1999-06-28 23:52:46 +00:00
Owen Taylor
43e80bc87a Don't add an extra "/" when concating "/" + filename. (From Matt Grossman
Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
	add an extra "/" when concating "/" + filename.
	(From Matt Grossman <mattg@oz.net>)
1999-06-28 16:08:28 +00:00
Owen Taylor
4c09ae6026 Reset clip mask for fg_gc if we set it for drawing pixmap.
Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
	for fg_gc if we set it for drawing pixmap.
1999-06-28 15:50:44 +00:00
Tim Janik
86e47a1efa removed old ""Got event for unknown window:" message. disabled
Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
        unknown window:" message. disabled ConfigureNotify discarding code,
        because it led to events being processed out of order.

Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.

        * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
        we export this function, supress error warnings and don't reset the
        error code in the first half of this function.

        * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
        code (instead of just -1) so gdk_error_trap_pop() reveals something
        actually informative about the error that happened.

        * gdk/*.c:
        don't rely on gdk_error_code being -1 if an error occoured, but just
        gdk_error_code != 0.

Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
        pointer *before* invoking the filter function, so we at least don't
        crash if a filter is removed that is currently executed. window filters
        *really* need to be made truely reentrant at some point.

Wed Jun 16 20:28:34 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): don't segfault for
        window==NULL in ConfigureNotify.

Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
        PropertyNotify debug messages.
1999-06-25 23:23:07 +00:00
Owen Taylor
b90f0c9ee7 Removed references to code examples in my directory on gtk.org as they
Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>

	* docs/gtk_tut.sgml: Removed references to
	code examples in my directory on gtk.org as
	they should all be in the tutorial now.

	* docs/gtk_tut.sgml: Added sources for dial-test
	and scribble-xinput programs that were previously
	missing.
1999-06-17 18:01:14 +00:00
Elliot Lee
e0bc92268b Add maintainers list 1999-06-15 17:20:46 +00:00
Tim Janik
94ba2610fe queue a resize.
Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
1999-06-11 03:36:07 +00:00
Tim Janik
b39b03d27d small fix 1999-06-09 09:08:22 +00:00
Tim Janik
611e6e20e7 mark certain functions as internal.
Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelgroup.h: mark certain functions as internal.

Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
        expand behaviour changed.

        * gtk/gtklabel.c (gtk_label_set_pattern):
        (gtk_label_set_justify):
        (gtk_label_set_line_wrap):
        don't bother invoking queue_clear, the reallocation does
        that for us, always free_words so the upcoming resize will
        relayout the label's contents.

Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>

        * applied argument implementation patches from Elena Devdariani
        <elena@cogent.ca>.

        * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
        ::space_style, ::relief
        * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
        * gtk/gtkpreview.c: ::expand
        * gtk/gtkpaned.c: ::handle_size, ::gutter_size
        * gtk/gtknotebook.c: ::homogeneous
        * gtk/gtklabel.c: ::wrap
        * gtk/gtklist.c: ::selection_mode
        * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
        * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
        * gtk/gtkcolorsel.c: ::policy, ::use_opacity
        * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
        * gtk/gtkclist.c: ::sort_type
        * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
        * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
1999-06-09 09:07:42 +00:00
Owen Taylor
852baf9bfe Added entry about menu keyboard navigation, removed some finished items.
Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>

	* TODO: Added entry about menu keyboard navigation, removed
	some finished items.
1999-06-04 04:47:27 +00:00
Owen Taylor
2d19ab20f7 Removed ill-thought-out part of last comment.
Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c: Removed ill-thought-out part of last
	comment.
1999-06-02 03:35:54 +00:00
Owen Taylor
f9aee08d6e Get the reference counting right when we have to attach a new style for a
Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_attach): Get the reference
	counting right when we have to attach a new style
	for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)

	* gtk/gtkstyle.c: Documented the refcounting
	peculularities of gtk_style_attach.
1999-06-02 03:29:39 +00:00
1
c084c71294 added return if fail for invalid window types.
1999-06-01    <timj@dhcpd7.redhat.com>

        * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
        window types.

        * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
        of GTK_TOPLEVEL for creating the window.
1999-06-01 17:26:26 +00:00
1
c288d2419e don't segfault when --gtk-module is the last argument (reported by Per
1999-06-01    <timj@dhcpd7.redhat.com>

        * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
        the last argument (reported by Per Winkvist).
1999-06-01 16:57:02 +00:00
Owen Taylor
8d32617d16 Standardize on func_dgettext not func_gettext, so that the checks for
Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>

	* acinclude.m4: Standardize on func_dgettext
	not func_gettext, so that the checks for dgettext
	actually are paid attention to.
1999-06-01 12:42:56 +00:00
Manish Singh
651a662ba5 blah
-Yosh
1999-05-29 18:19:56 +00:00
Manish Singh
1c2bde024e libtool 1.3.2
add Changes-1.2.txt to EXTRA_DIST

-Yosh
1999-05-29 18:19:22 +00:00
Owen Taylor
3680b735d7 Updates from Stanislav Brabec <utx@k332.feld.cvut.cz>.
Tue May 25 14:11:09 1999  Owen Taylor  <otaylor@redhat.com>

	* cs.po: Updates from Stanislav Brabec <utx@k332.feld.cvut.cz>.
1999-05-25 18:09:26 +00:00
Owen Taylor
9d40a0cd27 Fixes for invisible XOR lines (Frank Loemker
Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>

        Fixes for invisible XOR lines (Frank Loemker
	<floemker@TechFak.Uni-Bielefeld.DE>)

	* gtk/gtkclist.c (gtk_clist_realize): Always use
	a non-zero pixel for GDK_XOR.

	* gtk/gtkvpaned.c gtk/gtkhpaned.c:
	Use GDK_INVERT instead of GDK_XOR.
1999-05-25 17:25:07 +00:00
Lars Hamann
dc9569756e signal emit value_changed signals if h/voffsets differ from adjustment
Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
	signals if h/voffsets differ from adjustment values.
	Reportet by Jerome Bolliet <bolliet@in2p3.fr>
1999-05-12 20:29:31 +00:00
CDT 1999 Shawn T. Amundson
0ef2295c53 GTK+ is as easy as 1.2.3...
Mon May 10 22:20:06 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * GTK+ is as easy as 1.2.3...
1999-05-11 04:50:54 +00:00
Tim Janik
519fed9991 propagate ::selection-done emissions up to the topmost menu shell.
Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
        ::selection-done emissions up to the topmost menu shell.
1999-05-11 02:19:37 +00:00
Owen Taylor
5e52b31fd7 Unset the user data on the window before destroying it.
Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
	the user data on the window before destroying it.

	* gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
	unrealize handler to take care of destroying
	notebook->panel properly.
	(Bug #1198 - Morten Welinder <terra@diku.dk>)

	* gtk/gtktext.c (expand_scratch_buffer): Fix reversal
	of g_new and g_realloc to stop memory leak. (Actually,
	we could just use g_realloc(), but I'm not 100% sure
	that is portable).
	(Bug #1196 - Morten Welinder <terra@diku.dk>)
1999-05-07 14:29:04 +00:00
Owen Taylor
bbe8b7ba61 Removed stray GtkPlugButton declaration.
Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkplug.h: Removed stray GtkPlugButton declaration.

	* gdk/gdkfont.c (gdk_text_measure): Fix the return value
        for fontsets.

	* gtk/gtkbutton.c (gtkbutton_expose): Fix warning
	with bin/button confusion.
1999-05-06 03:13:41 +00:00
Owen Taylor
f187c3bb24 Change G_MAXINT to 2^16 to alleviate overflow problems in various window
Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
	G_MAXINT to 2^16 to alleviate overflow problems in
	various window managers.
1999-05-06 03:12:08 +00:00
Owen Taylor
6227a115be Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>

        Patch from Sung-Hyun Nam <namsh@lgic.co.kr>

	* gdk/gdkim.c: Fix cut-and-paste errors for
	x/y and PreeditAttributes/StatusAttributes.
1999-05-06 03:11:38 +00:00
Tim Janik
2f80acc28e in the ItemFactory test, link radio items together, and show how
Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c: in the ItemFactory test, link radio items together,
        and show how preselection of radio items is done.

Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
        * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
        * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
        * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
        * gtk/gtktable.c (gtk_table_attach):
        * gtk/gtklist.c (gtk_list_insert_items):
        * gtk/gtkmenushell.c (gtk_menu_shell_insert):
        * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
        * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
        * gtk/gtkbin.c (gtk_bin_add):
        * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
        * gtk/gtkfixed.c (gtk_fixed_put):
        * gtk/gtklayout.c (gtk_layout_put):
        general fixups to container_add logic. always realize child if
        child->parent is realized, only map the child and queue a resize
        if child and child->parent are both visible.

Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
        instead of gtk_container_foreach to walk and unrealize children, so
        composite children get also unrealized.
        (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
        (gtk_widget_map): assert that the widget is visible (basic constrain).
        (gtk_widget_real_map): assert that the widget is realized (basic
        constrain).

Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
1999-05-06 02:59:18 +00:00
Owen Taylor
30d6a30b01 Initialize size_hints.x and size_hints.y because kwm brokenly pays
Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_geometry_hints):
	Initialize size_hints.x and size_hints.y because kwm
	brokenly pays attention to them.
	(Bug #1181 -  Lars Heete <hel@admin.de>)
1999-05-05 16:46:28 +00:00
Owen Taylor
7f9cb3548b Free the return value of gdk_list_visuals(). (Bug #1193 - Morten Welinder
Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
	return value of gdk_list_visuals().
	(Bug #1193 - Morten Welinder <terra@diku.dk>)
1999-05-05 15:38:48 +00:00
Owen Taylor
17c8d9cd74 Add $INTLLIBS into $LIBS directly, rather than repeating the checks for
Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>

	* configure.in (LIBS): Add $INTLLIBS into $LIBS
	directly, rather than repeating the checks for
	gettext.

	* INSTALL: Added information about gettext and
	NLS support.

	* acinclude.m4 (LIBM): Check for dgettext, not
	just gettext. This should hopefully fix things wrt
	systems with old versions of GNU gettext installed.
1999-05-05 15:11:36 +00:00
Manish Singh
197950e184 cast the return value of XSetIMValues to (void *) when comparing to NULL,
* gdk/gdkim.c (gdk_im_real_open): cast the return value of
XSetIMValues to (void *) when comparing to NULL, to workaround
the problem of some compilers barfing since older X headers don't
have the prototype for it.

-Yosh
1999-05-04 18:18:06 +00:00
Owen Taylor
bbf7b3a60f Use width,height = 0, 0 to mean - here to edge of window, instead of -1,
Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
	width,height = 0, 0 to mean - here to edge of window,
	instead of -1, -1, since the former is all we support.

Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main): Correctly free list nodes
	when removing from quit_functions list.

Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
	for pseudocolor where colormap->colors was double
	allocated.

	* gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
	color value in the hash table with the pixel filled
	in so when we do later hash table lookups, the color
	value is correct.
1999-05-04 15:00:07 +00:00
Owen Taylor
498b5eca13 Add a gtkrc file for iso-8859-2 locales.
Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
	file for iso-8859-2 locales.

	* configure.in (ALL_LINGUAS): ALL_LINGUAS update.

Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
	 (Pointed out by andy@rz.uni-karlsruhe.de and others).
	 Remove some suspicious and useless lines.
1999-05-04 13:53:19 +00:00
Owen Taylor
658f736af1 Backmerge from HEAD sk.po sl.po zh_TW.Big5.po: New additions
Tue May  4 09:09:52 1999  Owen Taylor  <otaylor@redhat.com>

	* fi.wa wa.po ca.po: Backmerge from HEAD
	  sk.po sl.po zh_TW.Big5.po: New additions

	* pl.po: Backported updates from HEAD
1999-05-04 13:52:23 +00:00
Manish Singh
edf4aa4bcd check private->destroyed before making the call
* gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
making the call

-Yosh
1999-05-02 22:34:49 +00:00
Manish Singh
3046ab9f0f libtool 1.3 upgrade
-Yosh
1999-05-01 18:06:06 +00:00
Tim Janik
a654f96831 remove unused variable.
Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
1999-04-29 00:21:01 +00:00
Owen Taylor
ff01cccfb9 Fix leak pointed out by Morten Welinder <terra@diku.dk>.
Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
	pointed out by Morten Welinder <terra@diku.dk>.
1999-04-27 22:34:00 +00:00
Owen Taylor
0c177d15d1 When redrawing characters on non-visible entry, use appropriate '*'
Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
	 When redrawing characters on non-visible entry, use appropriate
	 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
1999-04-27 22:33:02 +00:00
Lars Hamann
be0f11a4d2 compute destination cell from drag coordinates.
Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.c (drag_dest_cell): compute destination cell
        from drag coordinates.
        (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
        use drag_dest_cell.

        * gtk/gtktree (drag_dest_cell)
        (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
        (Bug #1129)
1999-04-26 23:57:45 +00:00
Changwoo Ryu
ed0db4cd4f Updated.
1999-04-24  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>

	* ko.po: Updated.
1999-04-24 14:42:49 +00:00
Tim Janik
1cc01ceb59 fix (and foxy ;) 1999-04-22 16:05:14 +00:00
Tim Janik
caf95cd161 properly initialize translate_* fields. (gtk_item_factory_finalize):
Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
        translate_* fields.
        (gtk_item_factory_finalize): invoke translate_notify independant from
        translate_data.
        (gtk_item_factory_set_translate_func): likewise.
        (gtk_item_factory_destroy): only ifactory pointer from those widgets
        that belong to us (stupid me).
1999-04-21 22:25:48 +00:00
George Lebl
83c4021614 correctly remove the default filter from the list
Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>

        * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
          default filter from the list
1999-04-21 21:26:46 +00:00
Owen Taylor
fdb8efb35a Fixed leak of rc_style list when lookup succeeeds.
Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
	rc_style list when lookup succeeeds.
1999-04-21 17:12:43 +00:00
Drazen Kacar
9ad66ac6e8 Merged Croatian locale from HEAD. 1999-04-19 01:16:07 +00:00
Tomas Ogren
3834ea83c0 Add a / before the directory name to keep directory names from eachother.
1999-04-18  Tomas Ogren  <stric@ing.umu.se>

        * gtk/gtkrc.c: Add a / before the directory name to keep directory
        names from eachother. (Already fixed in 1.3.x)
1999-04-18 18:21:19 +00:00
Manish Singh
e3b8c8ba92 #include "gdkkeysyms.h" for gdk_XConvertCase #defines
* gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines

* gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
g_strdup_printf instead of calcing the length separately

-Yosh
1999-04-17 03:49:50 +00:00
Lars Hamann
e6828ec4e4 fixed undo_selection bug. fixed resync_selection bug.
Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (resync_selection):
	* gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
	* gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
 	bug.
1999-04-14 23:33:07 +00:00
CDT 1999 Shawn T. Amundson
7ee4ba7781 Released GTK+ 1.2.2
Tue Apr 13 17:14:28 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.2
1999-04-13 23:09:16 +00:00
Owen Taylor
3a03678080 removed some silly #ifdef HAVE_CONFIG that we don't do in many other
Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
	that we don't do in many other places. (Fixing duplicate
	#include of config.h)

	* gdk/gdkevents.c: include gdkinput.h _after_ config.h.
	Otherwise, #ifndef XINPUT_NONE check in the latter
	doesn't work. (Bug #546)
1999-04-13 06:55:55 +00:00
Tim Janik
badd841246 bumped version number to Gtk+ 1.2.2, interface 0, binary 2.
Sun Apr 11 15:08:27 1999  Tim Janik  <timj@gtk.org>

        * configure.in: bumped version number to Gtk+ 1.2.2, interface 0,
        binary 2.

        * NEWS: updates.

Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
        "None" case insensitive.
1999-04-11 15:01:30 +00:00
Owen Taylor
ffafb164d9 Add some missing GDK_THREADS_ENTER()/LEAVE around timeouts. (Patches from
Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
        Add some missing GDK_THREADS_ENTER()/LEAVE around
        timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
1999-04-09 23:34:05 +00:00
Tim Janik
8286bd2493 use gtk_widget_activate() rather than emit_by_name.
Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
        rather than emit_by_name.

        * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
        on the widget across multiple signal emissions.
        (gtk_editable_delete_text): same here.
        (gtk_editable_class_init): set widget_class->activate_signal after
        editable_signals[ACTIVATE] has been created.
1999-04-08 20:11:42 +00:00
Owen Taylor
ceb0f66e51 Don't clamp position here prematurely -- we might not have the right
Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
	position here prematurely -- we might not have the
	right ->min_position and ->max_position yet.
1999-04-08 03:06:03 +00:00
Owen Taylor
3de957405f Add error traps so if the other end of the connection dies, we survive.
Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
	Add error traps so if the other end of the connection
	dies, we survive.

	* gtk/gtkselection.c (gtk_selection_notify): Clean
	up properly when selection property retrieval fails.

	* gtk/gtkselection.c (gtk_selection_request): Correctly
	reject SelectionRequest notifies where the handler
	returns no data.
1999-04-06 21:00:45 +00:00
Owen Taylor
4361369939 Only unhighlight when we've previously highlighted.
Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
	when we've previously highlighted.

	* gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
	emit two "drag_leave" signals for Motif drops.

	* gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
	back the correct status messages when dropping from
	Motif onto a proxy window that is rejecting the
	drop.

	* gdk/gdkdnd.c (gdk_drag_motion): Separate out the
	dest_xid field into two fields - one for the window
	to send in messages, one to indicate the last looked
	up window for caching purposes. This is needed, so
	that Leave messages get the correct window.
1999-04-06 18:50:38 +00:00
Owen Taylor
0d353949e2 Check explicitly for the string "None" - it is in the XPM spec and some
Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
	explicitly for the string "None" - it is in the XPM
	spec and some servers treat unknown colors in odd ways
	(like asking the user!)
1999-04-05 21:14:25 +00:00
Owen Taylor
80c5ac85d4 Fix warning created by people mucking around with the gsource API.
Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
	Fix warning created by people mucking around
	with the gsource API.

	* gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
	Change mapping between GIOCondition and GdkInputCondition
	to match the way the Linux kernel does it. This should
	fix problems where closed pipes were no longer signalling
	GDK_INPUT_READ on systems with a native poll().
1999-04-05 17:24:41 +00:00
Manish Singh
b44c5d0f0c made "->" into a "." of previous change so it compiles
* gdk/gdkevents.c: made "->" into a "." of previous change so
it compiles

* gtk/gtkfontsel.c: added braces enclosing an if-else construct

* autogen.sh: add --enable-maintainer-mode

* configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"

-Yosh
1999-04-02 01:17:12 +00:00
Federico Mena Quintero
7ac92e74e8 Set the window field of the event structure before calling user filters.
Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c (gdk_compress_exposures): Set the
	window field of the event structure before calling
	user filters.

1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_init_check): Use False as the last argument to
	XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
1999-04-01 23:38:43 +00:00
Federico Mena Quintero
eaa98e5cfc Use False as the last argument to XInternAtom() here. This is a
1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_init_check): Use False as the last argument to
	XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
1999-04-01 10:42:06 +00:00
Tim Janik
db496116d9 added functions from GLE, gtk_arg_reset() to free the value and reset type
Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
        the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
        to compare two argument values. added gtk_arg_to_valueloc() to set a
        variable from an arg through its location (pointer).

        * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
        gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
        as gfloat*, uchars are collected as guchar*, ints are collected as
        gint*, etc...
1999-03-30 18:28:38 +00:00
Owen Taylor
d32d93cc3c Include <string.h> instead of <strings.h>.
Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
	Include <string.h> instead of <strings.h>.

	* gtk/gtkstyle.c: Fix double include of gtkthemes.h
	(actually, a lot more duplicate includes occur if
	 you trace through the sequence of #include's)
	gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
1999-03-29 23:44:33 +00:00
Owen Taylor
da74d5d843 Free the value of the intermediate text property - prevents major memory
Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkim.c (gdk_mbstowcs): Free the value of the
	intermediate text property - prevents major memory
        leak when gdk_use_mb.
	gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
1999-03-29 22:38:18 +00:00
Owen Taylor
44dd4a430d Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>

        Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
	gtk-a-higuti-990322-[0-3]

	* gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
	sizeof(wchar_t) != sizeof (GdkWChar)

	* configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
	that was causing -DX_LOCALE not	to work.

	* gtk/gtkrc.c (gtk_rc_init):
	X_LOCALE will never have LC_MESSAGES defined

	* gdk/gdk.c (gdk_init_check):
	Remove --xim-preedit and --xim-status from argv properly.

	* gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
	that the client window is present on the X server
	before we pass it to the input method.
1999-03-29 22:20:41 +00:00
Owen Taylor
fcc38c19d8 Fix bug where if --display is specified on the command line, than the drag
Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
	if --display is specified on the command line, than
	the drag window will not be created on that display.

Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
	lookups with only_if_exists == TRUE were inserting
	bogus values into the atom cache.
1999-03-29 20:40:47 +00:00
Manish Singh
737580cc57 Shut up CVS
-Yosh
1999-03-28 01:07:21 +00:00
Kjartan Maraas
db025ebfb0 updated translation
1999-03-27  Kjartan Maraas  <kmaraas@online.no>

		* no.po: updated translation
1999-03-26 23:11:18 +00:00
Tim Janik
0ae73a09dd get $HOME from g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
        g_get_home_dir() (gtk-pmc-990123-0.patch.gz).

        * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
        left/right as well (gtk-michael-980726-0.patch.gz).

        * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
        for pointer values, use gchar instead of char. fixed uline allocation
        leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
        chunks instead of G_ALLOC_ONLY.
        (gtk_label_size_request): always alter requisition as passed and leave
        widget->requisition alone.
        (gtk_label_set_text): allow NULL strings.
        (gtk_label_new): likewise.
1999-03-25 13:39:54 +00:00
CST 1999 Shawn T. Amundson
2c659472e2 Released GTK+ 1.2.1
Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.1

        * INSTALL:
          README:
          sanity_check: Updated.

        * docs/gtk-config.1.in:
          docs/Makefile.am:
          configure.in: gtk-config is now generated.

        * docs/gtk-config.1: Removed, now generated.
1999-03-25 05:55:03 +00:00
Tim Janik
0720955e17 type/macro fixups.
Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkdrawingarea.[hc]: type/macro fixups.
1999-03-24 15:01:55 +00:00
Stefan Jeske
0c90498103 Added missing "%" to "prefix" 1999-03-24 09:43:05 +00:00
Kjartan Maraas
bab8d95583 1112: add missing . after @xref
1999-03-22  Kjartan Maraas  <kmaraas@online.no>

		* gtk.texi:1112: add missing . after @xref
1999-03-22 20:47:19 +00:00
Tim Janik
3f2cd052fd grrr, stupid cvs, try grasp the meaning of "abort"!
Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
        *and* mapped (i.e. drawable).
        (gtk_bin_expose): only send exposes to drawable children.

        * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
        (gtk_box_expose): only send exposes to drawable children.

        * gtk/gtkhscale.c (gtk_hscale_draw):
        * gtk/gtkvscale.c (gtk_vscale_draw):
        hm, this is an ugly one. we first compute the size of our trough area
        here (window relative) and then check intersection with the draw_area
        which is parent relative because we're a NO_WINDOW widget, so we need
        to offset the trough area by allocation.x and allocation.y before the
        check. (this must not be done for the background area though, since
        that's already computed parent relative).
1999-03-22 06:46:16 +00:00
Tim Janik
0362058f6e only redraw children that are visible *and* mapped (i.e. drawable).
Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
        *and* mapped (i.e. drawable).
        (gtk_bin_expose): only send exposes to drawable children.

        * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
        (gtk_box_expose): only send exposes to drawable children.

        * gtk/gtkhscale.c (gtk_hscale_draw):
        * gtk/gtkvscale.c (gtk_vscale_draw):
        hm, this is an ugly one. we first compute the size of our trough area
        here (window relative) and then check intersection with the draw_area
        which is widget relative, so we need to offset the trough area by
        allocation.x and allocation.y before the check. (this must not be done
        for the background area though, sicne that's already computed parent
        relative).
1999-03-22 06:35:54 +00:00
Lars Hamann
b59eefd649 unmap clist if neccessary, unrealize title buttons.
Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
	unrealize title buttons.
1999-03-21 23:57:07 +00:00
Manish Singh
287624f406 shut up cvs
-Yosh
1999-03-21 02:19:44 +00:00
Manish Singh
d4ecce94c8 acinclude.m4 config.guess config.sub ltconfig upgrade to libtool 1.2f
* acinclude.m4
* config.guess
* config.sub
* ltconfig
* ltmain.sh: upgrade to libtool 1.2f

* autogen.sh: libtool is not required to autogen gtk+

* acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly needed)

-Yosh
1999-03-20 00:48:13 +00:00
Lars Hamann
536673ad38 only connect/disconnect to GtkWidgetClass::event to block mouse events.
Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_column_title_passive)
	(gtk_clist_column_title_active):
	only connect/disconnect to GtkWidgetClass::event to block mouse events.

	* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
	zero initialize event, removed superfluous gdk_window_get_pointer call

	* gtk/gtklist.c (gtk_list_vertical_timeout)
	(gtk_list_horizontal_timeout): removed superfluous
 	gdk_window_get_pointer call
1999-03-19 12:36:22 +00:00
Tim Janik
8b424288ba plugging problems reported by "Bruce Mitchener, Jr." <bruce@puremagic.com>
Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>

        * plugging problems reported by "Bruce Mitchener, Jr."
        <bruce@puremagic.com> due to a purify session.

        * gtk/gtkstyle.c:
        (gtk_style_ref):
        (gtk_style_unref): assert ref_count to be > 0.

        * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
        the requisition.
        (gtk_clist_set_shift): likewise.

        * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
        adjustments.

        * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
        then reset it to NULL.

        * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
        event before sending it and set send_event to TRUE (which needs to
        be done for *all* synthesized events).
        (gtk_list_vertical_timeout): likewise.

        * gdk/gdkcolor.c:
        (gdk_colors_free):
        (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
        key for g_hash_table_remove() in both functions, this prevents us
        from accessing possibly uninitialized portions of a GdkColor structure
        where we are only interested in its pixel value.

        * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
        leaks.

        * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
        to TRUE when synthesizing events.
1999-03-17 10:32:33 +00:00
Stuart Parmenter
f880eba7cd make sure gtk_style_copy copies theme information 1999-03-17 03:32:11 +00:00
Tim Janik
ac8d845b3d updates.
* NEWS: updates.
1999-03-17 02:38:38 +00:00
Tim Janik
b691a88e07 bumped version number to Gtk+1.2.1, interface 0, binary 1.
Wed Mar 17 00:44:23 1999  Tim Janik  <timj@gtk.org>

        * configure.in: bumped version number to Gtk+1.2.1, interface 0,
        binary 1.

        * gtk/gtkfeatures.h.in: added GTK_CHECK_VERSION(major,minor,micro)
        macro to test for specific gtk versions, e.g.
        #if GTK_CHECK_VERSION (1,2,1)
            gtk_menu_ensure_uline_accel_group (menu);
        #endif /* Gtk+1.2.1 */
        this macro will return whether the Gtk+ header files are from version
        major.minor.micro or _newer_, as opposed to gtk_check_version() which
        requires an exact match for binary compatibility.
1999-03-17 00:03:10 +00:00
Tim Janik
af138bc287 ensure the item factory class has been created.
Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
	item factory class has been created.
	(gtk_item_factory_parse_rc): likewise.

	* gtk/gtkmenu.c:
	keep proper references for old_active_menu_item.
	(gtk_menu_reparent): unset the usize of the new parent,
	so the menu can sanely be size requested and we don't get nasty screen
	artefacts upon next reparentation.
	(gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
	enter notify. only synthesize enter notifies if the pointer really is
	inside the event window.
	(gtk_menu_popdown): use gtk_menu_shell_deselect().
	(gtk_menu_popup): move the background setting stuff into
	gtk_menu_tearoff_bg_copy() so it can be called from other places as well.

	* gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
	gtk_menu_shell_select_item() to select the new item.
	(gtk_menu_shell_deselect): export this function, so gtkmenu.c can
	do the right thing for deselection as well.

Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkwidget.[hc]:
	(gtk_widget_accelerators_locked): return whether a widget's accelerators
	are locked.

        * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
	existing accelerators if the widget's accelerators are locked.

Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.

	* gtk/gtkmenu.c: truely forward key press and key release events to
	the menu widget from the toplevel or tearoff window. we can't simply
	connect to that, we need to stop further processing of the events as
	well.

Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkmenu.c:
	(gtk_menu_key_press): pass event->keyval, event->state to
	gtk_accelerator_valid, instead of event->keyval twice.
	refuse to install single letter accelerators for menus that use
	single letter shortcuts.

	* gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
	gtk_menu_ensure_uline_accel_group().

	* gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
	which will always return an uline accel group, made
	gtk_menu_get_uline_accel_group() return NULL if the group isn't
	yet created.
1999-03-16 22:37:32 +00:00
Lars Hamann
29ce61fcf3 added button_passive flag.
Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.

        * gtk/gtkclist.c (gtk_clist_column_title_passive):
        Leave button sensitive, trap  button_press, button_release,
        motion_notify, enter_notify and leave_notify events instead.
        (gtk_clist_column_title_active): disconnect event handler.
        (gtk_clist_drag_data_get): fixed memory leak. Reported by
        Guillaume Laurent <glaurent@worldnet.fr>
1999-03-15 22:37:28 +00:00
George Lebl
69d2eba366 swap the gtk_drag_highlight_expose and gtk_drag_highlight_paint since it
Mon Mar 15 03:39:47 1999  George Lebl  <jirka@5z.com>

        * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
          gtk_drag_highlight_expose and gtk_drag_highlight_paint since
          it was connecting a void function to expose_event and the int
          returning function to the draw signal
1999-03-15 11:40:27 +00:00
Lars Hamann
efb837bdb6 fixed a few width/height mixups.
Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
        width/height mixups.

        * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
        if needed.
1999-03-10 23:20:10 +00:00
Federico Mena Quintero
5db63aaa6d Significantly reduced the number of calls to gdk_draw_point() (and thus to
Wed Mar 10 02:07:31 1999  Tim Janik  <timj@gtk.org>

        * merged from 1.3:
1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>

        * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
        the number of calls to gdk_draw_point() (and thus to X) by
        clipping the points by hand.

        * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
        the clip parameter.
        (gtk_handle_box_paint): Only paint the handle if the expose area
        intersects it.
1999-03-10 01:14:38 +00:00
Tim Janik
7e8d27f327 unref the item factory after window's destruction.
Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c (create_item_factory): unref the item factory after
        window's destruction.

        * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
        count on the menu shell around the menu item's activation, since the
        signal emission may cause menu shell destruction.

        * gtk/gtkitemfactory.c:
        the previous code leaked one accel group per menu. we use
        gtk_menu_get_uline_accel_group() now to fix that, and with that
        also create the underline accelerator group of the menus only if
        required (i.e. an underline accelerator has been specified).
        (gtk_item_factory_construct):
        (gtk_item_factory_create_item): removed code that would create an
        extra accel group for the menu (and leak references).
        (gtk_item_factory_create_item): adapted the underline accelerator
        installation code to properly feature gtk_menu_get_uline_accel_group().

        * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
        menu->accel_group, this may return NULL if the accelerator group
        hasn't been set yet.
        added gtk_menu_get_uline_accel_group() to retrive the underline
        accelerator group of the menu, this will be created on demand
        and proper care is taken about its reference count.

        * gtk/gtkitemfactory.h:
        * gtk/gtkitemfactory.c:
        dumped the approach of keeping a widgets by action list on the
        factory since the factory<->widget destroy negotiation didn't work
        and would be hard to get going at all. instead we keep a list of
        GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
        persistant throughout a program's life time).
        also, i removed the static const gchar *key_* variables, and made
        them inline strings (they weren't actually used anyways).
        (gtk_item_factory_add_item): update ifactory->items.
        (gtk_item_factory_destroy): destroy ifactory->items (and remove
        the item factory pointer from the remaining ifactory widgets).
        (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
        list to find the widget.
        (gtk_item_factory_get_item): new function that works around
        gtk_item_factory_get_widget() limitations, this function will only
        return menu items, even for <Branch> entries.
1999-03-10 01:00:04 +00:00
Tim Janik
8556b64654 first lookup the xfont ID in our font hash table, if we have a
Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
        font hash table, if we have a GdkFontPrivate entry for this font
        already, simply increment its reference count, provided by Olaf Dietsche
        <olaf.dietsche+list.gtk@netcologne.de>.

        * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
        provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
1999-03-09 00:21:31 +00:00
Tim Janik
12d38df79e before adding a child to a conatiner, make sure it is (default)
Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c:
        (gtk_container_add_with_args):
        (gtk_container_addv):
        (gtk_container_add): before adding a child to a conatiner, make sure
        it is (default) constructed, this is neccessary because under certain
        circumstances the child will get relized and mapped immediatedly, in
        which case it has to be constructed already.
1999-03-07 06:09:53 +00:00
Tim Janik
7699e34d83 count object_signal values > 1 as TRUE also.
Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
        values > 1 as TRUE also.
1999-03-01 18:51:07 +00:00
Tim Janik
14ff63b93d minor fix. 1999-02-27 00:35:08 +00:00
CST 1999 Shawn T. Amundson
996f8e931a Incremented version to 1.2.0. -Shawn <amundson@gtk.org>
Incremented version to 1.2.0.  -Shawn <amundson@gtk.org>

Also:

Wed Feb 24 05:26:20 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkitemfactory.h: added a dummy gpointer to
          GtkItemFactoryClass for Tim Janik.

Mon Feb 22 21:22:11 1999  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcontainer.h gtk/gtkwidget.h: Added some
          padding to class structures to allow addition
          of signals without breaking binary compatibility.
1999-02-25 21:39:14 +00:00
Tim Janik
2a4c97f3b3 still request the extra width or height if the corresponding scrollbar is
Thu Feb 25 13:38:38 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): still
        request the extra width or height if the corresponding scrollbar is
        already visible (the change from 09:50 needs to apply to policy ==
        GTK_POLICY_AUTOMATIC only).
1999-02-25 14:08:50 +00:00
Tim Janik
473e31208e updates, i left the text widget related portions in there, to serve as a
Thu Feb 25 11:27:36 1999  Tim Janik  <timj@gtk.org>

        * TODO: updates, i left the text widget related portions in there,
        to serve as a guide line for things to watch out for when it gets
        reimplemented.
1999-02-25 10:29:38 +00:00
Tim Janik
3a3a0ef97b don't add extra width or height if the requested size is mandatory (i.e.
Thu Feb 25 09:50:38 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): don't add
        extra width or height if the requested size is mandatory (i.e. set
        through child->usize).
1999-02-25 08:58:23 +00:00
CST 1999 Shawn T. Amundson
cf7888fdaf New function gtk_menu_reorder_child() from Tim Janik.
Thu Feb 25 02:13:20 CST 1999 Shawn T. Amundson <amundson@gtk.org>

	* gtk/gtkmenu.[ch]: New function gtk_menu_reorder_child()
	  from Tim Janik.

This will be used in GIMP, so it is tested there.
1999-02-25 08:17:13 +00:00
Tim Janik
c9cda15e70 removed bogus line 1999-02-25 06:53:27 +00:00
Owen Taylor
b515672a1e Don't access *bitmapped_sizes if nbitmapped_sizes == 0. (Pointed out by
Thu Feb 25 00:48:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c: Don't access *bitmapped_sizes
	if nbitmapped_sizes == 0. (Pointed out by
	zucchi@zedzone.fsi.com.au (Michael Zucchi))
1999-02-25 05:52:00 +00:00
Owen Taylor
b1135416f2 Make prototypes for drag_data_get and drag_data_received handlers match
Wed Feb 24 23:12:09 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.h gtk/gtkclist.c: Make prototypes
	for drag_data_get and drag_data_received handlers
	match the types used for gtk_singal_new; time needs
	to be a uint, not a uint32.
1999-02-25 04:06:15 +00:00
Owen Taylor
f9a27ad6fd Changed bug reporting instructions to describe using the GNOME bug
Wed Feb 24 20:34:59 1999  Owen Taylor  <otaylor@redhat.com>

	* README: Changed bug reporting instructions to
	describe using the GNOME bug tracking system.
1999-02-25 01:28:31 +00:00
Owen Taylor
da219872d8 Unset the clip mask for the GC if we set it. (Patch from Lars Hamann
Wed Feb 24 19:08:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (draw_cell_pixmap): Unset the clip
	mask for the GC if we set it. (Patch from
	Lars Hamann <lars@gtk.org>)
1999-02-25 00:04:18 +00:00
Tim Janik
6333998df4 added function to check if a specific signal handler connection exists
Thu Feb 24 23:58:44 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_handler_pending_by_id): added function
        to check if a specific signal handler connection exists (similar to
        gtk_signal_handler_pending_by_func). and yes, this is a neccessary
        addition, since without this function, signal handlers can not be
        (un)blocked or disconnected in a generic fashion without producing
        g_warnings().
        made gtk_signal_get_handlers() an inline function since it's used in
        a lot of places, especially within signal emission.
1999-02-24 23:34:14 +00:00
Kjartan Maraas
59c4671866 Updated translation. (monospaced is still missing)
1999-02-25  Kjartan Maraas  <kmaraas@fib.hl.no>

		* Updated translation. (monospaced is still missing)
1999-02-24 23:23:06 +00:00
Tim Janik
3ae4d004ca if the widget is not editable, don't silently eat up GDK_Return, GDK_Home
Wed Feb 24 19:35:15 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktext.c (gtk_text_key_press): if the widget is not editable,
        don't silently eat up GDK_Return, GDK_Home and GDK_End, return FALSE
        instead so the user can still hook up key bindings.
1999-02-24 18:47:49 +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
082c0c8975 removed gtkrc rule added by Sergey Panov, because GTK+ no longer built. We
Wed Feb 24 05:53:15 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * gtk/Makefile.am: removed gtkrc rule added by
          Sergey Panov, because GTK+ no longer built.  We
          don't need to install an empty gtkrc anyway.
1999-02-24 11:56: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
Tim Janik
26ffb00362 fix implicit branch creation, we need the *real* parent path for this and
Tue Feb 23 17:52:37 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_create_item): fix implicit
        branch creation, we need the *real* parent path for this and
        gtk_item_factory_parse_path() only returns the parent path with "_?"
        stripped off.
1999-02-23 19:42:53 +00:00
Pavel Machek
e3eedba2f9 You don't need to check one variable twice (trivial bugfix). 1999-02-23 14:18:38 +00:00
Owen Taylor
148e766334 When sending events to windows with a proxy, set the window field in the
Mon Feb 22 19:06:30 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (xdnd_send_*): When sending events to
	 windows with a proxy, set the window field in the
	 sent event to the original window, not to the proxy.
	 (This gives consistency with Motif, and also provides
	  information to the destination that it wouldn't have
	  otherwise).

	* gtk/gtkdnd.c: Fixed some refcount leaks for windows.

	* gdk/gdkdnd.c (xdnd_send_xevent): When sending
	 Xdnd event to the root window, set the event mask
	 to ButtonPressMask. Hopefully, this should give us
	 compatibility with kfm, if it uses the Qt style
	 of root window drops.
1999-02-23 00:43:26 +00:00
GMT 1999 Tony Gale
d5aed59bbc - Complete the ProgressBar API - Fix the CList example code
Mon Feb 22 08:45:10 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - Complete the ProgressBar API
          - Fix the CList example code

        * examples/clist/clist.c, examples/progressbar/progressbar.c:
           Update from tutorial
1999-02-22 08:51:02 +00:00
Owen Taylor
619ca57c5a Removed check-y/check-n backgrounds - the effect looked like a bug.
Sun Feb 21 17:44:52 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtkrc: Removed check-y/check-n backgrounds -
	 the effect looked like a bug.
1999-02-21 22:38:59 +00:00
Owen Taylor
16561707f8 Always set the max width or height to at least 1, since 0 triggers bugs in
Sun Feb 21 17:14:44 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_geometry_hints): Always
	 set the max width or height to at least 1, since 0
	 triggers bugs in some window managers. (The window
	"pops out" of the frame in fvwm)
1999-02-21 22:12:00 +00:00
Owen Taylor
039d738e3b Changed warnings from g_message() to g_warning().
Sun Feb 21 16:16:22 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkscrolledwindow.c gdk/gdkfont.c gdk/gdkim.c:
	 Changed warnings from g_message() to g_warning().

	* gdk/gdkim.c (gdk_ic_destroy): Changed g_print
	 to g_message within GDK_NOTE()

	* gtk/gtkcolorsel.c  gtk/gtkhandlebox.c:
	 Removed some leftover debugging printfs.
1999-02-21 21:24:02 +00:00
Michael Fulbright
f3f493abbb I've made the spec file autogenerated and I updated the file list
Dr Mike <drmike@redhat.com>
1999-02-21 21:00:23 +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
295e763b4d removed debugging statements about embedded XID's. They could have been
Sun Feb 21 14:21:46 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c: removed debugging statements
	about embedded XID's. They could have been
	moved to the new PLUGSOCKET debug key, but they weren't
	really useful anyways.

	* gdk/gdk.h: Added gdk_error_trap_push/pop to provide
	a clean interface to the gdk_error_code functionality
	of trapping X errors.

	* gtk/gtkplug.c gtk/gtksocket.c: Add error
	traps around accesses to foreign windows.
1999-02-21 19:25:53 +00:00
Tim Janik
e8cfe9062f marked gtk_window_set_focus, gtk_window_set_default,
Sun Feb 21 15:37:25 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.h: marked gtk_window_set_focus, gtk_window_set_default,
        gtk_window_remove_embedded_xid and gtk_window_add_embedded_xid as
        internal functions.
1999-02-21 19:01:08 +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
Tim Janik
b0558e089e hm, set_modal doesn't really work with random gtk_grab_add/gtk_grab_remove
Sat Feb 20 20:59:25 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c: hm, set_modal doesn't really work with random
        gtk_grab_add/gtk_grab_remove calls. either the window user uses
        the set_modal interface or he places grab_add/grab_remove on his own.
        (gtk_window_set_modal): enforce modality state either way.
        (gtk_window_hide): revert previous change.
1999-02-20 20:11:23 +00:00
Tim Janik
32b008bf56 increment years and months by two not three on double clicks, patch
Sat Feb 20 20:04:48 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcalendar.c (gtk_calendar_button_press): increment years and
        months by two not three on double clicks, patch provided by Nick Lamb
        <njl98r@ecs.soton.ac.uk>.
1999-02-20 19:09:21 +00:00
Tim Janik
e0e893da8f added ::modal argument. (gtk_window_hide): reset window->modal from the
Sat Feb 20 19:44:36 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c: added ::modal argument.
        (gtk_window_hide): reset window->modal from the current grab state
        (this is only relevant when grab_add/grab_remove is called on the
        window by bypassing gtk_window_set_modal).
        (gtk_window_remove_embedded_xid):
        (gtk_window_add_embedded_xid): don't use g_print() but g_message()
        within #ifdef G_ENABLE_DEBUG. when the hack got these functions
        added (ChangeLog doesn't know them)?
1999-02-20 19:00:53 +00:00
Sergey I. Panov
af1efabafb Collecttion of the locale dependent gtkrc files and
* gtk/gtkrc,gtk/gtkrc.ja, gtk/gtkrc.ko,
        gtk/gtkrc.ru: Collecttion of the locale dependent
        gtkrc files and

        * gtk/Makefile.am: patched to get that collection
        installed in to $(prefix)/etc/gtk/
1999-02-19 20:09:53 +00:00
Tim Janik
03d9f983de grouped function names into application-level, widget-level and
Fri Feb 19 17:52:28 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.h: grouped function names into application-level,
        widget-level and non-public.

        * gtk/gtktreeitem.c (gtk_tree_item_size_request): use auto
        pix_requisition instead of item->pixmaps_box->requisition.
1999-02-19 18:07:29 +00:00
Owen Taylor
b60c8a83d7 When queueing clears relative to widget->window, actually store
Thu Feb 18 17:26:09 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_queue_clear_area):
	 When queueing clears relative to widget->window,
	 actually store widget->window so we know that
	 the coordinates are window-relative.
1999-02-18 22:36:40 +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
Tim Janik
63e669a75f added widget arg ::titles_active.
Thu Feb 18 00:54:46 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.c: added widget arg ::titles_active.
1999-02-18 00:35:11 +00:00
Tim Janik
432be67c9d only translate widget relative coordinates to window relative if the
Thu Feb 18 00:27:46 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_queue_clear_area): only translate widget
        relative coordinates to window relative if the widget is not a toplevel
        (i.e. it has ->parent != NULL), otherwise the area size gets screwed up
        for toplevels.
1999-02-17 23:31:34 +00:00
Szabolcs Ban
cb54775dab Shooby Ban <bansz@szif.hu>
* Commited missing Changelog entry
1999-02-17 07:19:53 +00:00
Nuno Ferreira
666bb6e1bf Updated.
1999-02-17  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>

	* pt.po: Updated.
1999-02-17 01:25:37 +00:00
Szabolcs Ban
b46aed94c3 Shooby Ban <bansz@szif.hu>
* Added lang hu
1999-02-16 22:25:54 +00:00
Szabolcs Ban
db2f396bfc Shooby Ban <bansz@szif.hu>
* Added hungarian translations
1999-02-16 22:08:54 +00:00
CST 1999 Shawn T. Amundson
f15ea7024b version = 1.1.16
Tue Feb 16 14:25:44 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * INSTALL
          README
          configure.in
          gtk+.spec
          docs/gtk-config.1: version = 1.1.16

        * Makefile.am: removed colorsel example since it
          doesn't actually exist.

        * Released GTK+ 1.1.16
1999-02-16 21:25:25 +00:00
Vincent Renardias
89b9ff8b2b Tue, 16 Feb 1999 12:51:56 +0100
* Complete translation + some contributed fixes.
1999-02-16 11:51:41 +00:00
Owen Taylor
bf39d4cda9 Use a ScrolledWindow test how Text widgets work within ScrolledWindow.
Mon Feb 15 23:55:27 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (create_text): Use a ScrolledWindow
	 test how Text widgets work within ScrolledWindow.
	 (POLICY_AUTOMATIC drew very badly, so it uses
	  POLICY_ALWAYS for the vscrollbar)

	* gtk/gtktext.c (gtk_text_unrealize): Free the cache
	 in the unrealize handler. Some code in gtktext.c
	 assumes that if text->line_start_cache is non-NULL,
	 the widget is realized. We'll recompute it again
	 anyways if we later re-realize.
1999-02-16 04:52:21 +00:00
Owen Taylor
fd2c0c5651 When setting styles, remove unecessary explicits draws and clears.
Fri Feb 12 15:47:20 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalender.c gtk/gtkentry.c gtk/gtkhandlebox.c
	  gtk/gtknotebook.c gtk/gtktext.c  gtk/gtkviewport.c
	  gtk/gtkwidget.c:

	 When setting styles, remove unecessary explicits draws
	 and clears.

	* gtk/gtkrange.c: Ugly fix so the steps get the
	 correct background.
1999-02-16 04:29:00 +00:00
Owen Taylor
3a5883b7e4 Updated for 1.1.16.
Mon Feb 15 22:55:50 1999  Owen Taylor  <otaylor@redhat.com>

	* NEWS: Updated for 1.1.16.
1999-02-16 03:50:09 +00:00
Owen Taylor
0101a46dcd Free label->label_wc.
Mon Feb 15 19:36:57 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_finalize): Free
	 label->label_wc.
1999-02-16 00:31:24 +00:00
Owen Taylor
f1a61ecc75 Some coding style fixups.
Mon Feb 15 18:02:22 1999  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkdnd.c: Some coding style fixups.

	* gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set a flag
	 so that we destroy the icon window that we created
	 when the drag ends.
1999-02-16 00:19:13 +00:00
Owen Taylor
0c9af82e97 When we find a match, stop searching. (Because we assume pspec != NULL in
Thu Feb 11 18:43:12 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbindings.c (gtk_binding_set_add_path): When
	  we find a match, stop searching. (Because we
	  assume pspec != NULL in the search).

Wed Feb 10 01:18:22 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkhandlebox.c (gtk_handle_box_draw_ghost): Fix
	  up painting of "ghosts".

	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
	  Add double-click reattachment.

	* gtk/gtkhandlebox.c: Grab on widget->window,
	  not on handlebox->bin_window. This means we don't
	  have to worry about ungrabbing while reparenting.

	  Don't make a GTK+ grab - that wasn't necessary.

	* gtk/gtkhandlebox.c: Only compute the root -> desk
	  offset once, when starting the drag, instead
	  of continuously. This should solve the *Bad Window*
	  errors that were occurring because of race conditions
	  with the WM.

	* gtk/gtkhandlebox.c: Completely reworked the
	  the logic of reattachment. We introduce the
	  concept of the "snap edge", which is an edge
	  that needs to be aligned for reattachmed.
	  We set a reasonable default from
	  handlebox->handle_position, but an application
	  might want to change this in some circumstances.

	* gtk/gtkhandlebox.[ch]: Add settors:
            gtk_handle_box_set_handle_position  ();
            gtk_handle_box_set_snap_edge        ();
1999-02-15 21:05:51 +00:00
Owen Taylor
063bad00a2 gtk/gtkwidget.c (gtk_widget_real_grab_focus):
Mon Feb 15 11:13:01 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_set_focus):
	  gtk/gtkwidget.c (gtk_widget_real_grab_focus):

	If the focus widget is the same, but does not currently
	have the focus, call gtk_window_set_focus(). This is needed
	so that click focusing with GtkPlug works correctly.
1999-02-15 20:50:47 +00:00
Tim Janik
3d23ab250e default to yes for development trees.
Mon Feb 15 07:45:28 1999  Tim Janik  <timj@gtk.org>

        * configure.in (--enable-debug): default to yes for development trees.
1999-02-15 06:51:28 +00:00
Lars Hamann
1f85d83ef3 don't autoselect focus_row in case of GTK_SELECTION_EXTENDED
Fri Feb 12 00:08:01 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtklist.c (gtk_list_remove_items_internal): don't autoselect
        focus_row in case of GTK_SELECTION_EXTENDED

        * gtk/testgtk.c : few changes in list example.

        * gtk/gtklistitem.c (gtk_list_item_class_init):
        * gtk/gtkctree.c (gtk_ctree_class_init):
        * gtk/gtkclist.c (gtk_clist_class_init):
        fixed indentation, removed unused key bindings
1999-02-11 23:47:48 +00:00
Pablo Saratxaga
ed219818b1 updated spanis hlanguage file 1999-02-11 01:15:42 +00:00
Lars Hamann
6475974086 don't autoselect focus_row in case of GTK_SELECTION_EXTENDED
Wed Feb 10 01:02:46 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (real_remove_row):
	* gtk/gtkctree.c (gtk_ctree_remove_node): don't autoselect focus_row
	in case of GTK_SELECTION_EXTENDED

	* gtk/testgtk.c : few changes in clist/ctree examples.
1999-02-10 23:15:26 +00:00
Tim Janik
1183c0ea69 applied patch from Paolo Molaro to fix GTK_TYPE_POINTER args of
Wed Feb 10 15:49:16 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_class_init):
        * gtk/gtkctree.c (gtk_ctree_class_init): applied patch from Paolo
        Molaro to fix GTK_TYPE_POINTER args of ::tree_collapse and
        ::set_focus signals.

        * docs/gtk_tut.sgml: s/menufactory/itemfactory, minor fixups
        to the item factory example.
1999-02-10 16:37:09 +00:00
Owen Taylor
d8eb880d7d Reverted coding style "fixups"
Wed Feb 10 11:05:53 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c: Reverted coding style "fixups"
1999-02-10 16:01:48 +00:00
Owen Taylor
c9312d02a4 Supplement the existing WMNormalHints, don't overwrite them.
Wed Feb 10 10:43:50 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_icon, gdk_window_set_group):
	 Supplement the existing WMNormalHints, don't
	 overwrite them.
1999-02-10 15:45:19 +00:00
Tim Janik
88c112cde8 asure that ->value_buf always points to an allocated area.
Wed Feb 10 08:35:36 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): asure that
        ->value_buf always points to an allocated area.
        (gtk_color_selection_drag_end): new function hooked up to drag_end to
        destroy the drag_window.

        * gtk/gtkdnd.c: some coding style fixups.

Wed Feb 10 06:47:17 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkwindow.c: various indentation fixes.

        * gdk/gdkevents.c: coding style fixups.
        NULL initialize event_func, event_notify and event_chunk.
        (expose_predicate): made this function static.
        (gdk_event_handler_set): perform destroy notification even if no
        event_func is set.

        * gdk/gdkrectangle.c (gdk_rectangle_union): added g_return_if_fail
        statements.
1999-02-10 08:06:30 +00:00
Owen Taylor
d1bda8d562 Fixed some bugs with set_default_size.
Sun Feb  7 19:49:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_move_resize): Fixed some
	  bugs with set_default_size.

Sat Feb  6 13:23:51 1999  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-1.2.txt: Added information about
	 the change to gtk_widget_size_request().

	* gtk/gtkentry.c: Call gtk_widget_get_child_requisition
	 explicitely since we differentiate between the usize
	 set by the user and what we got. (Ugh)

	* gtk/gtkwidget.[ch] (gtk_widget_get_child_requisition):
	 New function to return the effective size of a widget
	 as it looks to its parent.

	* gtk/gtkwidget.c (gtk_widget_size_request): Leave
	 widget->requisition set to exactly what the widget
	 asked for, and then make a copy of that into
	 the requisition argument. Allow a NULL requisition
	 argument, and, if G_ENABLE_DEBUG, warn if
	 requisition == &widget->requisition.

	* gtkalignment.c gtkaspectframe.c gtkbutton.c gtkclist.c
	  gtkcontainer.c gtkentry.c gtkeventbox.c gtkfixed.c
	  gtkframe.c gtkhandlebox.c gtkhbox.c gtkhpaned.c
	  gtklayout.c gtklist.c gtklistitem.c gtkmenu.c
	  gtkmenubar.c gtkmenuitem.c gtknotebook.c
	  gtkoptionmenu.c gtkpacker.c gtkscrolledwindow.c
	  gtktable.c gtktoolbar.c gtktree.c gtktreeitem.c
	  gtkvbox.c gtkviewport.c gtkvpaned.c gtkwindow.c

	 Avoid calling gtk_widget_size_request with
	 requisition == widget->requisition; use
	 gtk_widget_get_child_requisition to get the
	 size of children.
1999-02-10 02:35:09 +00:00
Owen Taylor
84d9f5f9a1 Removed extraneous line that crept in in previous commit.
Tue Feb  9 19:49:46 1999  Owen Taylor  <otaylor@redhat.com>

	* configure.in (LDFLAGS): Removed extraneous line
	  that crept in in previous commit.
1999-02-10 00:47:02 +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
72d5843898 If we can't find helvetica, fall back to "fixed". If we can't find
Tue Feb  9 19:11:43 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_new): If we can't find
	  helvetica, fall back to "fixed". If we can't
	  find "fixed", exit cleanly.
1999-02-10 00:21:09 +00:00
Changwoo Ryu
782ad2e7d2 Updated.
1999-02-09  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>

	* ko.po: Updated.
1999-02-09 21:15:13 +00:00
Owen Taylor
0bb249746f Added a style_set() function so that word lengths get recomputed on style
Tue Feb  9 15:35:13 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_style_set): Added
	  a style_set() function so that word lengths get
	  recomputed on style change.
1999-02-09 20:50:47 +00:00
Lars Hamann
b43de0cbda changed to 64 (gtk_clist_draw_focus) (hadjustment_value_changed)
Mon Feb  8 21:00:20 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (CLIST_OPTIMUM_SIZE): changed to 64
	(gtk_clist_draw_focus) (hadjustment_value_changed) (draw_row):
 	few fixes to respect GTK_CAN_FOCUS flag.

	* gtk/gtkctree.c (draw_row):
 	respect GTK_CAN_FOCUS flag.
1999-02-08 21:03:54 +00:00
Sergey I. Panov
e95b3635e8 Small corrections. 1999-02-08 20:57:16 +00:00
GMT 1999 Tony Gale
f0d09615c1 missing from the CVS for some reason
Mon Feb  8 19:22:27 GMT 1999 Tony Gale  <gale@gtk.org>

        * example/colorsel/*: missing from the CVS for some reason
1999-02-08 19:23:42 +00:00
Sergey I. Panov
b89e32d980 Changed translation of two strings. For consistancy only. 1999-02-08 19:18:55 +00:00
GMT 1999 Tony Gale
2277c72c41 add SpinButton example
Mon Feb  8 13:08:51 GMT 1999 Tony Gale  <gale@gtk.org>

        * examples/Makefile: add SpinButton example
1999-02-08 13:10:10 +00:00
GMT 1999 Tony Gale
6e13f7bd2b - Heavily edited GtkCombo section initially from Christopher T. Lansdown
Mon Feb  8 12:50:06 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - Heavily edited GtkCombo section initially from
            Christopher T. Lansdown <lansdoct@screech.cs.alfred.edu>.

          - Cleanups and some glib stuff from
            David Wheeler <wheeler@ida.org>

        * Makefile.am: update to include the latest Tutorial examples.
1999-02-08 12:59:21 +00:00
Pablo Saratxaga
2b4a42497b updated spanish language file 1999-02-08 03:53:17 +00:00
Guillaume Laurent
18046d9000 Changed a remaining "menufactory" to "itemfactory" 1999-02-07 22:35:48 +00:00
Owen Taylor
39e2943650 Add the entire draw_data_list back to the free list, not just the last
Sat Feb  6 11:20:16 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_idle_draw): Add the
	entire draw_data_list back to the free list, not
	just the last element.
1999-02-06 16:14:45 +00:00
Tim Janik
c13e6db019 fix comment 1999-02-06 03:07:01 +00:00
Lars Hamann
af30000afe search last visible column instead of using clist->columns.
Sat Feb  6 00:21:14 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (draw_row):
	* gtk/gtkclist.c (draw_row) (new_column_width) (scroll_horizontal)
	(title_focus): search last visible column instead of
	using clist->columns.
1999-02-06 00:21:56 +00:00
Owen Taylor
eb437560d3 Adjust saved positions of children when resizing a guffaw_gravity = TRUE
Fri Feb  5 13:23:50 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_move_resize): Adjust
	saved positions of children when resizing a
	guffaw_gravity = TRUE window.

	* gtk/gtkdnd.c (gtk_drag_highlight): Rework the
	 highlighting so that it is done in callbacks for
	 draw and expose. This should solve problems with
         multiple highlights for the same GdkWindow.

	* gtk/gtkdnd.c (gtk_drag_highlight): Fix bug where
	the highlight was being drawn with an incorrect
	width/height for !NO_WINDOW widgets.
1999-02-05 18:40:14 +00:00
Owen Taylor
915f2c5e59 Don't assume any more that the gtkwidget.c code will queue a redraw on us
1999-02-05  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate):
	Don't assume any more that the gtkwidget.c code
	will queue a redraw on us during a size_allocate -
	queue clear/draws as appropriate for our groove.
1999-02-05 15:48:25 +00:00
Owen Taylor
674b23e434 Fixes to account for the changed structure of the windows of range
Tue Feb  2 11:06:02 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrange.c (gtk_range_style_set): Fixes
	 to account for the changed structure of the windows
	 of range widgets.
1999-02-04 16:12:35 +00:00
Nam SungHyun
189ee72781 fix typos 1999-02-04 14:53:53 +00:00
Christopher Blizzard
7a2363134e change my email address 1999-02-04 14:13:24 +00:00
CST 1999 Shawn T. Amundson
7db6313ab5 version=1.1.15
Thu Feb  4 05:42:34 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * INSTALL
          NEWS
          README
          configure.in
          gtk+.spec
          docs/gtk-config.1: version=1.1.15

        * Makefile.am: example files where incorrect for
          menu directory.

        * Released GTK+ 1.1.15
1999-02-04 13:32:14 +00:00
Manish Singh
7f4ba91800 spelling fix in comment from joey@kuolema.Infodrom.North.DE (Martin
* gtk/gtkclist.h: spelling fix in comment from
joey@kuolema.Infodrom.North.DE (Martin Schulze)

-Yosh
1999-02-04 02:35:32 +00:00
Owen Taylor
902de9d413 Make sure we set the icon window position before it is shown to prevent
Tue Feb  2 12:39:42 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c: Make sure we set the icon window position
	 before it is shown to prevent annoying flicking to 0,0.
	 Make it consistent that info->cur_x/y do not include
	 info->hot_x/y displacement.
1999-02-02 18:40:47 +00:00
GMT 1999 Tony Gale
7e68d71fd2 new sections on Layout and SpinButton [nice widget]
Tue Feb  2 08:59:16 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: new sections on Layout and
          SpinButton [nice widget]

        * examples/spinbutton/*: example code
1999-02-02 10:12:52 +00:00
Owen Taylor
22a54ddf81 Put in some information about 'gtk-config --libs gthread'.
Mon Feb  1 19:25:54 1999  Owen Taylor  <otaylor@redhat.com>

	* docs/gtk-config.txt (testinput_SOURCES): Put
	in some information about 'gtk-config --libs gthread'.

	* docs/Changes-1.2.txt: Updated section on threads.
1999-02-02 02:35:11 +00:00
Lars Hamann
a19e373baa in case of GTK_SELECTION_BROWSE select first inserted row.
Tue Feb  2 00:28:44 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (gtk_ctree_insert_node): in case of
	GTK_SELECTION_BROWSE select first inserted row.
	(resync_selection): select rows in correct order.

	* gtk/gtkclist.c (real_insert_row): in case of GTK_SELECTION_BROWSE
 	select first inserted row.
	(resync_selection): select rows in correct order.

	* gtk/gtklist.c (gtk_list_end_selection): select rows in correct order.
1999-02-02 01:57:11 +00:00
Manish Singh
fb00e9bbb8 Autogenned file removal
-Yosh
1999-02-01 23:29:51 +00:00
Owen Taylor
49ff13e5e1 Pass gthread on to gtk-config.
Mon Feb  1 16:47:55 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk.m4: Pass gthread on to gtk-config.

	* configure.in gtk-config.in: Support gthread flag to
	  add thread cflags/libraries into the output of
	  gtk-config.
1999-02-01 23:17:39 +00:00
Manish Singh
b3184736de Remove autogenned files
-Yosh
1999-02-01 22:50:07 +00:00
Owen Taylor
377b72968d Update from Paul Siegmann <pauls@euronet.nl>
Mon Feb  1 16:37:29 1999  Owen Taylor  <otaylor@redhat.com>

	* nl.po: Update from Paul Siegmann <pauls@euronet.nl>
1999-02-01 22:35:49 +00:00
Owen Taylor
78ab1ea3fc Fixed problem with uints resulting in huge child allocations.
Mon Feb  1 15:14:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_size_allocate):
	 Fixed problem with uints resulting in huge child
	 allocations.
1999-02-01 21:55:49 +00:00
Owen Taylor
a512f0b841 Cast uints to ints in geometry calculations. This should prevent FP
Mon Feb  1 14:54:28 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_expose): Cast uints
	  to ints in geometry calculations. This should
	  prevent FP exceptions on FreeBSD when quantities
	  become negative. [ Actually, this is probably
	  a workaround with a gcc bug with handling of
	  bitfields, according to Ben Jackson <ben@ben.com> ]
1999-02-01 21:05:32 +00:00
Sergey I. Panov
2e2d959bff Corrected shamefull spelling errors. 1999-02-01 18:28:40 +00:00
Tony Gale
6c3513fa24 Try and spell my own name right - Tony
Try and spell my own name right - Tony
1999-02-01 15:03:05 +00:00
GMT 1999 Tony Gale
7402d68c8f update to new examples
Mon Feb  1 13:35:14 GMT 1999 Tony Gale  <gale@gtk.org>

        * examples/Makefile: update to new examples

        * examples/menu/itemfactory.c: I must have forgotten to
          'cvs add' this file
1999-02-01 14:47:05 +00:00
GMT 1999 Tony Gale
5ef056ea94 - Complete documentation of Label widget API - New sections for the
Mon Feb  1 09:16:03 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - Complete documentation of Label widget API
          - New sections for the following:
                * Arrows
                * Alignment
                * Button Boxes
                * Viewports

        * examples/arrow/*, examples/buttonbox/*, examples/label/*
          - New code examples
1999-02-01 10:44:36 +00:00
GMT 1999 Tony Gake
c39dffed55 examples/fixed/*, examples/frame/* - Examples from the Tutorial
Fri Jan 29 09:44:37 GMT 1999 Tony Gake  <gale@gtk.org>

        * examples/fixed/*, examples/frame/*
          - Examples from the Tutorial
1999-01-29 09:53:14 +00:00
GMT 1999 Tony Gale
e735ac6c86 - New sections on the Fixed and Frame containers - Rearrange the
Fri Jan 29 09:18:41 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - New sections on the Fixed and Frame containers
          - Rearrange the Containers section so the easier ones
            are first
          - Move the List widget section to an appendix
1999-01-29 09:29:02 +00:00
GMT 1999 Tony Gale
1cf5a13b08 script to convert and package up the tutorial - stick it here so I don't
Thu Jan 28 12:14:12 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/package_tutorial.sh: script to convert and
          package up the tutorial - stick it here so I don't lose
          it when I accidentally delete it again.
1999-01-28 12:22:36 +00:00
GMT 1999 Tony Gale
a2dafdfc88 - Replace all uses of deprecated functions. - Replace menufactory example
Thu Jan 28 10:16:28 GMT 1999 Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - Replace all uses of deprecated functions.
          - Replace menufactory example with itemfactory example
            from Nick Scott <mendigo@geocities.com>
          - Minor bug fixes in the examples.
1999-01-28 10:35:40 +00:00
Sebastian Wilhelmi
a700058737 s/XIM_INSTANTIATE_IS_MISSING_OR_STRANGE/XIM_INST_IS_MISSING_OR_STRANGE/
1999-01-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk/gdkim.c:
	s/XIM_INSTANTIATE_IS_MISSING_OR_STRANGE/XIM_INST_IS_MISSING_OR_STRANGE/
1999-01-28 10:05:52 +00:00
CST 1999 Shawn T. Amundson
b36903b1b6 version=1.1.14
Thu Jan 28 01:57:06 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * INSTALL
          NEWS
          README
          configure.in
          gtk+.spec
          docs/gtk-config.1: version=1.1.14

        * Released GTK+ 1.1.14
1999-01-28 08:24:17 +00:00
Owen Taylor
f9807a643c When translating N_() strings, use _(), not gettext(), since we really
Thu Jan 28 01:34:29 1999  Owen Taylor  <otaylor@redhat.com>

	* gtkfontsel.c gtkcolorsel.c: When translating
	N_() strings, use _(), not gettext(), since we
	really need to call dgettext().
1999-01-28 06:30:57 +00:00
Manish Singh
bb16a5d331 Xsed isn't valid here, don't use it
* acinclude.m4: Xsed isn't valid here, don't use it

* ltmain.sh
* ltconfig: better file magic regexp for Linux libs

-Yosh
1999-01-28 04:58:01 +00:00
Owen Taylor
5e836af884 Move gravity_works back to a static global variable, since it is a global
Wed Jan 27 23:05:55 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.[ch] (gtk_layout_realize): Move
	gravity_works back to a static global variable,
	since it is a global constant, and this way we
	keep structure sizes uniform.

CV: ---------------------------------------------------------------------- CVS: Enter Log.  Lines beginning with `CVS: ' are removed automatically
1999-01-28 04:12:58 +00:00
Owen Taylor
a29d25821e Move gtkintl.h from $source_headers to $static_sources since it should not
Wed Jan 27 22:59:07 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (static_SOURCES): Move gtkintl.h
	from $source_headers to $static_sources since
	it should not be installed.
1999-01-28 03:56:37 +00:00
Owen Taylor
99b9ce9de6 Allow exposure compression across GravityNotify events to improve the
Wed Jan 27 22:51:23 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c (expose_predicate): Allow exposure
	 compression across GravityNotify events to improve
 	 the appearance of a GTK+ window unshading.
1999-01-28 03:48:04 +00:00
Owen Taylor
b2c8fed880 [ patch from Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp> ]
Wed Jan 27 21:56:07 1999  Owen Taylor  <otaylor@redhat.com>

        [ patch from Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp> ]

	* acconfig.h configure.in gdk/gdkim.c: Add configure
	flag for disabling XRegisterIMInstantiateCallback(), default
	it to off for Solaris. Always try to open the
	input method immediately, and only if that fails,
	register than instantiate callback.

	* gdk/gdkentry.c: Some tweaks to make sure that we
	only get and set the IC attributes when appropriate.
1999-01-28 03:38:58 +00:00
Stuart Parmenter
a472efda2d remove another g_print("\n"); 1999-01-28 01:59:29 +00:00
Owen Taylor
d541b30482 Patch from Sebastian Wilhelmi <wilhelmi@ira.uka.de> to use
Wed Jan 27 20:08:54 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (open_user_dir): Patch from
	Sebastian Wilhelmi  <wilhelmi@ira.uka.de> to
	use g_get_home_dir() instead of calling getpwuid()
	ourselves.
1999-01-28 01:04:38 +00:00
Owen Taylor
77e99440df Change signatures for gdk_drag_begin() and gdk_drag_motion() so that the
Wed Jan 27 18:57:57 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h gdk/gdkdnd.c: Change signatures for
	gdk_drag_begin() and gdk_drag_motion() so that the set
	of possible actions is passed on each motion, not just at
	the beginning of the drag. We do this so that
	we can restrict the set of possible drag events
	when the user presses a modifier key during a
	drag.

	* gdk/gdkdnd.c: Send a motif Operation-changed
	message when the set of possible actions change,
	as well as when the suggested action change.

	* gdk/gdkdnd.c: Change the XdndActionList whenever
	the set of actions change.

	* gdk/gdkdnd.c: Add a filter to catch changes to
	the XdndActionList property for the source widget.

	* gtk/gtkdnd.c: Change the set of possible actions
	when the user presses Control, Shift, or Control-Shift,
	to only include the corresponding action.

	* gtk/gtkdnd.c (gtk_drag_button_release_cb):
	Disconnect button signals before we possibly
	free info structure.
1999-01-28 01:03:15 +00:00
Owen Taylor
4998934dcb Removed some g_print()'s
Wed Jan 27 20:06:06 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.c (gtk_layout_adjustment_changed):
	Removed some g_print()'s
1999-01-28 01:02:09 +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
7934cf9aea Remove TimJ's checks for already being mapped or hidden. See the ICCCM's
Tue Jan 26 14:02:50 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_show/hide): Remove TimJ's
	checks for already being mapped or hidden. See
	the ICCCM's section on state changes for why this
	is a bad idea.
1999-01-27 23:49:34 +00:00
Owen Taylor
607949ed5e Separate out GLIB_LIBS and GLIB_DEPLIBS. This may fix the --with-glib
Wed Jan 27 17:05:40 1999  Owen Taylor  <otaylor@redhat.com>

	* Separate out GLIB_LIBS and GLIB_DEPLIBS. This
	may fix the --with-glib option. GLIB_LIBS are
	the libs to link example programs against, while
	GLIB_DEPLIBS are dependency libraries.
1999-01-27 22:08:46 +00:00
Stuart Parmenter
342e557c58 add GTK_HAVE_FEATURES_1_1_14 1999-01-27 20:56:34 +00:00
Owen Taylor
1472462639 Use floor() instead of truncating to integer values so we get translation
Wed Jan 20 11:19:00 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c: Use floor() instead of truncating
	to integer values so we get translation invariance.

	* gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
	and lower values for adjustments in size_allocate().

	* gdk/gdkwindow.c gdk/gdk.h gdk/gdkprivate.h: New
	function gdk_window_set_static_gravities() to set
	up a window for guffaw scrolling.

	* gdk/gdkwindow.c (gdk_window_internal_destroy): Set flags
	indicating destroyed state before cleanup.

	* gtk/gtkprivate.h gtk/gtkwidget.c: Add a new
	private flag IS_OFFSCREEN. If set, this indicates
	to GTK+ that the widget is not to be considered
	viewable regardless of its map state. Queued draws
	on offscreen widgets are suppressed.

	Added new function static gtk_widget_is_offscreen() to
	check this flag on a widget and its ancestors.

	* gtk/gtklayout.[ch]: Major revisions.

	- Use gdk_window_set_static_gravities to set static gravity
	on all child windows, and thus avoid having to create a window
	for NO_WINDOW children.

	- Adjust allocations of children as we scroll them
	so queued draws work correctly.

	- Don't allocate our children directly in a put()
	or move(); just queue a resize() like every other
	widget.

	* gtk/testgtk.c: Make the arrows on the scrollbars
	work, create a larger and more demanding test.
1999-01-27 18:21:20 +00:00
Tim Janik
90c7ea0b91 assert ref_count>0.
Wed Jan 27 09:19:07 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkcolor.c (gdk_colormap_unref): assert ref_count>0.
1999-01-27 08:53:36 +00:00
Owen Taylor
8e979f59b4 New functions to set the colormap or visual of an existing widget. These
Mon Jan 25 20:05:22 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_{visual,colormap}):
	New functions to set the colormap or visual
	of an existing widget. These functions should not
	be called on a widget that has previosly been
	realized.
1999-01-26 01:18:13 +00:00
Owen Taylor
84c1a71045 Changed log 1999-01-26 01:17:30 +00:00
Owen Taylor
df403d5908 New functions to set the colormap or visual of an existing widget. These
Mon Jan 25 20:05:22 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_{visual,colormap}):
	New functions to set the colormap or visual
	of an existing widget. These functions should not
	be called on a widget that has previosly been
	realized.

	* gtk/gtkcolorsel.c (gtk_color_selection_dialog_init):
	Set the visual and colormap on the toplevel dialog,
	then push them for the child widgets. As opposed
	to push/pop in _new(), this way, things will work
	properly with gtk_widget_new().
1999-01-26 01:15:47 +00:00
Owen Taylor
65dd58ffa3 Queue a redraw on the tab area when a tab changes size. (Includes
Mon Jan 25 19:41:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_page_allocate): Queue
	a redraw on the tab area when a tab changes size.
	(Includes improvements from Lars Hamann)
1999-01-26 00:37:58 +00:00
Owen Taylor
d355451c51 Back out the last solution to updating problem. And try a different one
Mon Jan 25 19:00:13 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c (gtk_color_selection_value_events):
	 Back out the last solution to updating problem. And
	 try a different one that is less dependent on
	 the state of the widget. Just redraw the value_marker
	 when it gets mapped. Somebody needs to analyze
	 this widget more carefully and figure out
1999-01-26 00:28:13 +00:00
Owen Taylor
08f1e8098f Removed some GTK_WIDGET_DRAWABLE() tests - we need to update the value
Mon Jan 25 17:48:03 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c: Removed some GTK_WIDGET_DRAWABLE()
	tests - we need to update the value bar's contents
	even when the widget is unmapped.
1999-01-25 22:43:50 +00:00
Owen Taylor
7d5e1b0ccf Don't define ENABLE_NLS unless we have a working NLS. (This should keep
Mon Jan 25 15:47:46 1999  Owen Taylor  <otaylor@redhat.com>

	* acinclude.m4 (ac_result): Don't define ENABLE_NLS
	 unless we have a working NLS. (This should keep
	 libintl.h from being included when it doesn't
	 exist).
1999-01-25 21:11:13 +00:00
George Lebl
4b8095d525 set RECEIVES_DEFAULT on init, and a button press on the widget doesn't
Mon Jan 25 11:05:10 1999  George Lebl  <jirka@5z.com>

        * gtk/gtkbutton.c: set RECEIVES_DEFAULT on init, and a
          button press on the widget doesn't grab default anymore

        * gtk/gtkcheckbutton.c,gtk/gtkoptionmenu.c,gtk/gtkradiobutton.c:
          unset RECEIVES_DEFAULT on init

        * gtk/gtkwidget.[ch]: add a RECEIVES_DEFAULT flag to widget
          flags

        * gtk/gtkwindow.c,gtk/gtkplug.c: on pressing <enter>, activate
          the focused widget if it is a RECEIVES_DEFAULT widget,
          no matter what the current default_widget is

        * gtk/gtkwindow.c: on focus change, migrate the HAS_DEFAULT
          flag to CAN_DEFAULT widgets if they RECEIVE_DEFAULT as well
          or migrate it back to the default_widget if the focus widget
          doesn't "RECEIVE_DEFAULT"
1999-01-25 19:05:58 +00:00
Owen Taylor
8ac2b1dda6 Byteswap
Sun Jan 24 18:09:24 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (motif_read_initiator_info): Byteswap
1999-01-24 23:07:33 +00:00
Owen Taylor
a1cc053be2 Fix reversed assertion. (Pointed out by Austin Donnelly
Sun Jan 24 12:17:39 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcolor.c (gdk_colormap_real_destroy): Fix
	 reversed assertion.
	 (Pointed out by Austin Donnelly <austin@greenend.org.uk>)

	* gtk/gtkruler.c (gtk_ruler_expose): Remove unecessary
	 and harmful call to gtk_paint_box(). We are going
	 to paint onto the backing store later anyways.
1999-01-24 17:19:21 +00:00
Sergey I. Panov
42ffb3727e tiny style corrections 1999-01-24 16:12:22 +00:00
Owen Taylor
79fbe48242 X expects longs, not uint32 for XChangeProperty, when format == 32.
Sat Jan 23 11:15:39 1999  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkdnd.c (gdk_window_register_dnd): X expects
	 longs, not uint32 for XChangeProperty, when
	 format == 32.

	* gdk/gdkdnd.c (motif_read_initiator_info): Byte-swap
	 the MotifInitiatorInfo structure if necessary.

 	* gdk/gdkdnd.c: When extracting and constructing
         Motif DND messages, don't use data.s[], data.l[]
	 since on 64bit architectures, these won't necessarily
	 be in the same place with data.b[].

 	* gtk/testdnd.c (target_drag_drop): Return TRUE for
	 drag_drop within the drop zone.

	* gtk/gtkdnd.c (gtk_drag_dest_handle_event): Only send
	 a XmTRANSFER_FAILURE if no drop site is found, not
	 on every drop!
1999-01-23 20:32:20 +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
Jeff Garzik
0e9b9e32db Don't search selection list twice. (real_select_row): Remove extra ';',
Sat Jan 23 13:41:00 1999  Jeff Garzik  <jgarzik@pobox.com>

        * gtk/gtkctree.c
        (tree_delete): Don't search selection list twice.
        (real_select_row): Remove extra ';', add default for clarity.
1999-01-23 18:44:36 +00:00
Lars Hamann
f37d395c4f removed extra gtk_spin_button_update calls again. unblock dnd signal
Sat Jan 23 01:44:43 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
	(gtk_spin_button_get_value_as_float): removed extra
 	gtk_spin_button_update calls again.
	* gtk/gtkclist.c (gtk_clist_unmap): unblock dnd signal handler if
	neccessary
	* gtk/gtknotebook.c (gtk_notebook_button_press): grab_focus before
	switch_page
	(gtk_notebook_set_shape): don't use cur_page if it's NULL.
1999-01-23 01:04:33 +00:00
Jeff Garzik
ad987142c1 Fix recent change to match existing coding style.
Fri Jan 22 12:20:54 1999  Jeff Garzik  <jgarzik@pobox.com>

        * gtk/gtktooltips.c:
        Fix recent change to match existing coding style.
1999-01-22 17:23:55 +00:00
Tim Janik
060c32e4e0 take value_spacing into account for GTK_POS_LEFT.
Fri Jan 22 07:33:44 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkvscale.c (gtk_vscale_pos_trough): take value_spacing into
        account for GTK_POS_LEFT.

        * gtk/gtkradiobutton.c (gtk_radio_button_set_group): use
        gtk_toggle_button_set_active () to set the new state.
        (gtk_radio_button_new): only _set_group if group != NULL.
        (gtk_radio_button_clicked): reference the widget.
        (gtk_radio_button_init): make radio buttons active upon
        startup.
1999-01-22 08:12:00 +00:00
Sergey I. Panov
cb4bf0657c A few updates. 1999-01-22 03:59:16 +00:00
Jeff Garzik
ba58aa201d Check args for NULL. (gtk_selection_default_handler): Replace manual list
Thu Jan 21 17:13:12 1999  Jeff Garzik  <jgarzik@pobox.com>

        * gtk/gtkselection.c:
        (gtk_selection_property_notify): Check args for NULL.
        (gtk_selection_default_handler):
        Replace manual list count with call to g_list_length.
        Remove signedness of temp var 'count' to agree with usage.
        Slight spacing adjustment for readability.

        * gtk/gtkbox.c, gtk/gtklayout.c, gtk/gtkselection.c:
        Init a few ptrs to NULL, to quiet warnings.
1999-01-21 22:29:58 +00:00
Manish Singh
cb2eb293e6 Shut up cvs
-Yosh
1999-01-21 21:52:53 +00:00
Owen Taylor
a0fa647a64 [ Tried to commit wrong file last time ]
Thu Jan 21 16:03:02 1999  Owen Taylor  <otaylor@redhat.com>


	* gtk/gtktreeitem.c: Add a paint routine, fix up bugs
	in drawing where if the expose area was contained
	completely in the right side of the tree the background
	wasn't redraw, etc.
1999-01-21 21:09:03 +00:00
Owen Taylor
6878910ad4 Code cleanup.
Thu Jan 21 16:03:02 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbutton.c (gtk_button_expose): Code cleanup.

	* gtk/gtktree.c: Add a paint routine, fix up bugs
	in drawing where if the expose area was contained
	completely in the right side of the tree the background
	wasn't redraw, etc.

	* gtk/gtkwidget.c (gtk_widget_clip_rect): Fix a bug
	in clipping draw regions while propagating them
	upwards.
1999-01-21 21:06:13 +00:00
Owen Taylor
d1d9c5bf04 Pushing and popping the visual/cmap in the init() function does no good,
Thu Jan 21 12:20:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c (gtk_color_selection_dialog_new):
	Pushing	and popping the visual/cmap in the init()
	function does no good, because the window itself needs
	to be create with that visual/cmap.

	So do it in the new() function instead.

	This will require people doing gtk_widget_new() to do
	the push/pop themselves, but I don't see any way around
	it other than digging in and tweaking the window
	widget's colormap and visual ourselves, which
	is highly non-kosher, but would be safe...
1999-01-21 17:27:23 +00:00
Tristan Tarrant
a46ac625c9 Updated Italian texts 1999-01-21 15:16:06 +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
Owen Taylor
fea53a95f8 Set and read the XdndActionList property defined in the Xdnd spec. We do
Thu Jan 21 02:11:44 1999  Owen Taylor  <otaylor@redhat.com>

	* Set and read the XdndActionList property defined
	in the Xdnd spec. We do this always, not just for
	XdndActionAsk like the spec says, but if we don't
	find it, we fall back to actions = suggested_action,
	which is compatible with the language of the spec.
1999-01-21 07:08:25 +00:00
Jeff Garzik
8dc58cb2d3 Move not-null assertion before pointer de-ref.
* gdk/gdkdnd.c (gdk_drag_context_unref):
        Move not-null assertion before pointer de-ref.

        * gdk/gdkevents.c (gdk_event_queue_find_first):
        Fix infinite loop bug.  Someone should look at this further to
        make sure the events_pending tests are correct.
1999-01-21 06:24:09 +00:00
Owen Taylor
e7b04a53ac Default handling for drops should be keyed on GTK_DRAG_DEFAULT_DROP not
Thu Jan 21 00:44:47 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_drop): Default handling
	for drops should be keyed on GTK_DRAG_DEFAULT_DROP
	not GTK_DRAG_DEFAULT_MOTION.
1999-01-21 05:59:04 +00:00
Jeff Garzik
a646da3f1e Don't search entire row list twice for element being removed.
* gtk/gtkclist.c (real_remove_row):
        Don't search entire row list twice for element being removed.

        * gtk/gtkmenushell.c (gtk_menu_shell_insert):
        Replaced hand-coded implementation of g_list_insert with
        call to g_list_insert.

        * gtk/gtktooltips.c
          (gtk_tooltips_destroy_data, gtk_tooltips_layout_text):
        tooltipsdata->row test not-null test now properly encompasses
        both g_list_* calls.
1999-01-21 03:46:32 +00:00
Lars Hamann
1a58d9b3cf few cleanups. (gtk_notebook_key_press): call select page function for
Thu Jan 21 02:47:36 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtknotebook.c (gtk_notebook_focus): few cleanups.
	(gtk_notebook_key_press): call select page function for
	GDK_DOWN key in case of tab_pos == TOP. Changed other
	positions accordingly.
1999-01-21 02:13:13 +00:00
Owen Taylor
21993dcb10 Start off with the cursor for "no drop" since if we'll get a status if we
Wed Jan 20 19:57:14 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_begin): Start off with the
	cursor for "no drop" since if we'll get a status
	if we are over a drag window, but none if we aren't
	over one.
1999-01-21 01:03:27 +00:00
Jeff Garzik
6e3e247b9a . Free 'nprefix', closing a memory leak. Spaced out the code a bit to make
.
        * gtk/gtkcombo.c (gtk_combo_entry_key_press):
        Free 'nprefix', closing a memory leak.
        Spaced out the code a bit to make it more readable.

        * gtk/gtkhbox.[ch] (gtk_hbox_new),
          gtk/gtkvbox.[ch] (gtk_vbox_new):
        Change 'homogenous' arg from gint to gboolean.

        * gtk/gtktogglebutton.[ch]:
        New function gtk_toggle_button_get_active().
1999-01-21 00:37:48 +00:00
Federico Mena Quintero
df21a7064f Allow button 2 to act as GDK_ACTION_ASK. Also, allow MOD1 to specify
1999-01-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkdnd.c (gtk_drag_get_event_action): Allow button 2 to act
	as GDK_ACTION_ASK.  Also, allow MOD1 to specify GDK_ACTION_ASK
	only if that action is enabled in the actions argument.
1999-01-20 23:53:29 +00:00
Raja R Harinath
255005f0e9 New variable. Define to $prefix/$DATADIRNAME/locale. This will point to
* configure.in (gtklocaledir): New variable.  Define to
	$prefix/$DATADIRNAME/locale.  This will point to the directory
	where po/Makefile actually installs the message translation
	tables.
	* gtk/Makefile.am (INCLUDES): Define GTK_LOCALEDIR to
	$(gtklocaledir) rather than $prefix/share/locale.
1999-01-20 23:43:08 +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
6205bbbf65 Instead of drawing a background pixmap in with gdk_draw_pixmap(), set it
Wed Jan 20 13:06:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.[ch] (clear_[focus_]area): Instead of drawing
	a background pixmap in with gdk_draw_pixmap(), set
	it as a tile pixmap for a GC. This should speed
	up things considerably and also will hide a bug
	where text->first_onscreen_ver_pixel is being
	corrupted, causing the bg pixmap drawing code to generate
	graphics exposes.
1999-01-20 18:06:31 +00:00
Lars Hamann
0543c806f9 only call grab_add if pointer_grab succeeds. (gtk_list_unmap): remove
Tue Jan 19 22:15:10 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtklist.c
	(gtk_list_button_press):  only call grab_add if pointer_grab succeeds.
	(gtk_list_unmap): remove pointer/widget grabs if needed.
	(gtk_list_signal_focus_lost): removed.
	(gtk_list_focus) (gtk_list_set_focus_child): set last_focus_child.
	(gtk_list_remove_items_internal) (gtk_list_clear_items): unset
 	undo_focus_child if necessary. In case of SELECTION_BROWSE/EXTENDED
 	select a new item if selection is empty.
1999-01-20 01:09:16 +00:00
Tim Janik
17127d2c6d add compatibility define for gtk_ctree_set_reorderable.
Tue Jan 19 00:21:15 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcompat.h: add compatibility define for
        gtk_ctree_set_reorderable.
1999-01-18 23:51:43 +00:00
Lars Hamann
abb7ed1cea add a sanity check [from Todd Dukes <todddukes@netscape.net>]
Tue Jan 19 00:02:10 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (gtk_ctree_node_set_row_data_full):
	add a sanity check [from Todd Dukes <todddukes@netscape.net>]
1999-01-18 23:09:50 +00:00
Lars Hamann
28df7201ca only call grab_add if pointer_grab succeeds. (gtk_clist_unmap): remove
Mon Jan 18 22:54:11 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_button_press): only call grab_add
	if pointer_grab succeeds.
	(gtk_clist_unmap): remove pointer/widget grabs if needed.
1999-01-18 23:02:08 +00:00
Owen Taylor
03f25c7ade Initialize label->label_wc. (We allocate labels from a memchunk)
Mon Jan 18 15:46:14 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_init): Initialize
	label->label_wc. (We allocate labels from
	a memchunk)
1999-01-18 20:46:51 +00:00
Tim Janik
4ee10fdefa CLAMP digits into a meaningfull range (we need to stay below a certain
Mon Jan 18 18:53:08 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkscale.c (gtk_scale_set_digits): CLAMP digits into a
        meaningfull range (we need to stay below a certain limit anyways
        to avoid string buffer overflows).

        * gtk/gtkvscale.c (gtk_vscale_pos_background): fixed up background
        area calculations for GTK_POS_RIGHT and GTK_POS_BOTTOM.
        * gtk/gtkhscale.c (gtk_hscale_pos_background): likewise.
        (gtk_hscale_draw_value): safety CLAMP the value's x position for
        GTK_POS_TOP and GTK_POS_BOTTOM, so we don't paint strings outside of
        our allocation.

        * gtk/gtkscale.c: implemented GtkScale::digits, GtkScale::draw_value
        and GtkScale::value_pos arguments.
1999-01-18 19:42:59 +00:00
Owen Taylor
7709c1d12d Some editing, a little more detail.
Mon Jan 18 14:26:17 1999  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-1.2.txt: Some editing, a little more
	detail.
1999-01-18 19:27:43 +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
Sergey I. Panov
deb20a3cd0 add Russian translations 1999-01-18 05:47:11 +00:00
Sergey I. Panov
60c57e3e37 First draft of the Russian translations. 1999-01-18 05:45:41 +00:00
Lars Hamann
4551382631 fixed auto resize bug.
Mon Jan 18 01:21:03 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (draw_row): fixed auto resize bug.
1999-01-18 00:36:33 +00:00
CST 1999 Shawn T. Amundson
d225ffbc5b Released GTK+ 1.1.13
Sun Jan 17 17:35:28 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.13

        * README:
          INSTALL:
          docs/gtk-config.1: ver=1.1.13
1999-01-18 00:27:59 +00:00
Tim Janik
fae75219e6 added a section about GtkArgGetFunc and GtkArgSetFunc 1999-01-17 23:54:22 +00:00
Lars Hamann
c9a2b79176 block drag source signal handler during column resizes.
Mon Jan 18 00:22:54 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release):
	block drag source signal handler during column resizes.
	(gtk_clist_set_column_visibility): resize clist if needed.
	(gtk_clist_map): raise resize windows to make resize
 	cursor visible again.
1999-01-17 23:44:18 +00:00
Tim Janik
e65030aaed removed deprecated functions: gtk_clist_set_border,
Sun Jan 17 22:47:15 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.[hc]:
        * gtk/gtkspinbutton.[hc]:
        * gtk/gtkscrolledwindow.[hc]:
        * gtk/gtkprogressbar.[hc]:
        * gtk/gtkpreview.[hc]:
        * gtk/gtkobject.[hc]:
        * gtk/gtkentry.[hc]:
        * gtk/gtkctree.[hc]:
        * gtk/gtkcontainer.[hc]:
        * gtk/gtkclist.[hc]:
        removed deprecated functions: gtk_clist_set_border,
        gtk_container_block_resize, gtk_container_unblock_resize,
        gtk_container_need_resize, gtk_ctree_set_reorderable,
        gtk_ctree_show_stub, gtk_ctree_set_use_drag_icons,
        gtk_entry_adjust_scroll, gtk_object_class_add_user_signal,
        gtk_preview_put_row, gtk_progress_bar_construct,
        gtk_scrolled_window_construct, gtk_spin_button_construct,
        gtk_widget_freeze_accelerators, gtk_widget_thaw_accelerators.

        * gtk/gtkcheckmenuitem.c: removed binary variant of
        gtk_check_menu_item_set_state, this is still defined in gtkcompat.h
        though.

        * docs/Changes-1.2.txt:
        removed section about gtk_idle_remove_by_data vs.
        gtk_timeout_remove_by_data, we actually don't even provide a
        gtk_timeout_remove_by_data() function.
        added a table with removed functions and their replacements.

        * NEWS: updates for 1.1.13.
1999-01-17 23:12:18 +00:00
Owen Taylor
1adaa231c8 Patch from Felix Bellaby <felix@pooh.u-net.com>
Sun Jan 17 17:56:33 1999  Owen Taylor  <otaylor@redhat.com>

	Patch from Felix Bellaby <felix@pooh.u-net.com>

	* gdk/gdk.c: Use XmbSetWMProperties to set
	the class/command on the loader window so that the
	client machine is also set in the same place.
	(For X11R5 sesssion management compatibility)

	* gdk/gdk.c: (gdk_set_sm_client_id) Implementation
	of function to set the session manager client ID.

	* gdk/gdkwindow.c (gdk_window_new): Set
	WM_CLIENT_LEADER propertiy on all windows pointing
	back to GDK's leader window.
1999-01-17 22:58:59 +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
Guillaume Laurent
5af447fa07 Added a g_return_val_if_fail() in gtk_label_parse_uline() to
prevent from 'string' arg being NULL.
1999-01-17 19:02:53 +00:00
Nat Friedman
377579c2ef New macro. Changed the spacing from 5 to 3.
1999-01-17  Nat Friedman  <nat@nat.org>

	* gtk/gtkscrolledwindow.c (DEFAULT_SCROLLBAR_SPACING): New macro.
  	Changed the spacing from 5 to 3.

	* gtk/gtkmenubar.c (BORDER_SPACING): Changed the extra spacing on
 	the menubar from 2 to 0.
1999-01-17 19:01:49 +00:00
Christopher Blizzard
01457a0230 s/1.1.3/1.1.13/ 1999-01-17 17:06:21 +00:00
Tim Janik
7e3af7c078 - GNU autoconf 2.13 - GNU automake 1.4 (Beta releases are at
- GNU autoconf 2.13
        - GNU automake 1.4
                (Beta releases are at ftp://ftp.cygnus.com/pub/tromey)
        - GNU libtool 1.2d
        - indent (GNU indent 1.9.1 is known good)
        - GNU gettext 10.35
                Available in ftp://alpha.gnu.org/gnu
1999-01-17 16:54:58 +00:00
Owen Taylor
529bd529ef Fix typo [ gtk-mailund-990116-0: Thomas Mailund Jensen
Sun Jan 17 11:51:17 1999  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c (gtk_text_move_cursor): Fix typo
	[ gtk-mailund-990116-0: Thomas Mailund Jensen <mailund@daimi.au.dk> ]
1999-01-17 16:51:20 +00:00
Christopher Blizzard
3aba370dad Update to version 1.1.3, change packager address.
Sun Jan 17 11:15:05 1999 Christopher Blizzard  <blizzard@appliedtheory.com>

        * gtk+.spec: Update to version 1.1.3, change packager address.
1999-01-17 16:25:20 +00:00
Tim Janik
65ef495712 deprecated gtk_check_menu_item_set_state, people should use
Sun Jan 17 14:52:29 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcompat.h:
        * gtk/gtkcheckmenuitem.[hc]:
        deprecated gtk_check_menu_item_set_state, people should use
        gtk_check_menu_item_set_active instead.

        * gtk/testgtk.c:
         s/gtk_check_menu_item_set_state/gtk_check_menu_item_set_active/.
1999-01-17 14:52:22 +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
George Lebl
2daaea2f98 for NO_WINDOW widgets, add their allocation.y to the position of the
Sat Jan 16 19:42:48 1999  George Lebl  <jirka@5z.com>

        * gtk/gtktooltips.c: for NO_WINDOW widgets, add their allocation.y
          to the position of the tooltip. This fixes tooltip positioning
          problems with some widgets such as a checkbox.
1999-01-17 03:49:31 +00:00
Tomas Ogren
ad4983713f Updated.
1999-01-17  Tomas Ogren  <stric@ing.umu.se>

* sv.po: Updated.
1999-01-17 03:04:45 +00:00
Nam SungHyun
0e46fffa45 updated 1999-01-17 02:19:33 +00:00
Vincent Renardias
df4598d582 Sat, 16 Jan 1999 23:32:33 +0100 [Vincent]
* fr.po: Updated.
1999-01-16 21:32:10 +00:00
Stuart Parmenter
1eb7f7367d check for child widget being NULL
Sat Jan 16 14:01:53 1999  Stuart Parmenter <pavlov@gtk.org>

	* gtk/gtklayout.c (gtk_layout_put): check for child widget being NULL
1999-01-16 19:04:06 +00:00
Lars Hamann
5c7acbbf42 fixed double click bug.
Sat Jan 16 05:02:22 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_button_press): fixed double click bug.
1999-01-16 04:21:46 +00:00
Manish Singh
b35b174773 Mention libtool 1.2d
-Yosh
1999-01-16 03:44:08 +00:00
Kjartan Maraas
251e586236 Updated translation.
1999-01-16  Kjartan Maraas  <kmaraas@fib.hl.no>

		* Updated translation.
1999-01-15 23:59:44 +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
Owen Taylor
2e99e7713d nparams for selection_get should be 3, not 2. [ From Damon Chaplin
Fri Jan 15 10:22:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_class_init):
	nparams for selection_get should be 3, not 2.
	[ From Damon Chaplin <damon@karuna.freeserve.co.uk> ]

	* gtk/gtkeventbox.c (gtk_event_box_paint): Add a paint
	routine so queued redraws work inside event boxes.

Thu Jan 14 17:47:37 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Only
 	 redraw character under cursor when not displaying
	highlighted selection.

	* gdk/gdkrgb.c (gdk_rgb_init): Add in a cast to
	gpointer to make IRIX cc happy.

Thu Jan 14 12:29:50 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcheckbutton.c (gtk_check_button_draw): Restructure
	the drawing code to remove a bit of duplication -
	and to remove a call to gtk_widget_draw_focus()
	that queues a redraw when an expose occurs.

	* gtk/gtklabel.c (gtk_label_expose): Fix up handling
	  of ypadding.

	* gtk/gtknotebook.c (gtk_notebook_draw): If we redraw
	  the whole widget, also redraw the corresponding
	  areas of the child widget. (have_visible_child
	  still has some problems)

	* gdk/gdkpixmap.c: Change some g_new's to g_new0 so
	  that fields unused for pixmaps get initialzized
	  sanely.

        * gdk/gdk.h gdk/gdkwindow.c gdk/gdkprivate.h: Add new calls
	  gdk_window_is_visible() and gdk_window_is_viewable()
	  and a mapped flag to the window private structure.

        * gtk/gtkbin.c gtk/gtkclist.c gtk/gtkfixed.c gtk/gtkitem.c
	  gtk/gtklayout.c gtk/gtklist.c gtk/gtkmenushell.c
	  gtk/gtknotebook.c gtk/gtkpaned.c gtk/gtktree.c
	  gtk/gtktreeitem.c gtk/gtkviewport.c:
	Map windows after mapping children.

	* gtk/gtkwidget.c (gtk_widget_clip_rect): Handle
	rectangles completely clipped away correctly.

	* gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
	call gtk_widget_draw if width or height is 0.

	* gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
	rely on GTK_REDRAW_PENDING after we've cleared
	it. (This was causing draw-combining to not
	happen at all).

	* gtk/gtkbin.c gtk/gtkscale.c: Remove uneccessary calls
	to gtk_widget_queue_draw() when mapping.
1999-01-15 16:00:39 +00:00
Owen Taylor
3bba843968 Make MOD1-drag also do action ask.
Thu Jan 14 11:29:53 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_get_event_action): Make
	MOD1-drag also do action ask.

	* gtk/gtkdnd.c (gtk_drag_button_release_cb): Send the
	button-release event we simulate to get grabs released,
	with a window of GDK_ROOT_PARENT instead of the actual
	widget. This is a bad hack in some sense, but seems
	to work nicely. (It's sort of like what you would
	if you grabbed on button press, then the user
	released outside of the widget.)
1999-01-15 15:58:17 +00:00
Owen Taylor
eb7c4e4589 Do all event processing in dispatch() instead of prepare() and check().
Thu Jan 14 19:19:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c: Do all event processing in
	dispatch() instead of prepare() and check().
1999-01-15 15:56:32 +00:00
Owen Taylor
40f9670464 Change copy_area => !set_bg. Use tile instead of gdk_window_copy_area when
Thu Jan 14 20:29:16 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.[ch] (gtk_style_apply_default_background):
	Change copy_area => !set_bg. Use tile instead of
	gdk_window_copy_area when drawing without !set_bg.

	This does mess up timj's neat check-button example,
	but is consistent with how we interpret background
	pixmaps everywhere else in the default scheme.

	Restructure code for clarity.
1999-01-15 15:54:39 +00:00
Owen Taylor
467e0fcb24 gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c gtk/gtkframe.c
Wed Jan 13 22:34:29 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c
	gtk/gtkframe.c gtk/gtk[hv]box.c gtk[hv]paned.c gtk/gtklist.c
	gtkmenu.c gtkmenuitem.c gtkmenubar.c gtknotebook.c
	gtk/gtkscrolledwindow.c gtk/gtktable.c gtk/gtktree.c
	gtk/gtktreeeitem.c gtk/gtkviewport.c

	Fix up comparisons of signed and unsigned ints to avoid
	assigning negative widths/heigths.
1999-01-14 06:04:55 +00:00
Owen Taylor
c8ae0b92ca Unset CATOBJEXT so that the macros and Makefiles correctly handle
Wed Jan 13 21:18:41 1999  Owen Taylor  <otaylor@redhat.com>

	* acinclude.m4 (ac_result): Unset CATOBJEXT so
	that the macros and Makefiles correctly handle
	disabling NLS when no gettext is found.
1999-01-14 02:16:49 +00:00
Tim Janik
52a441445c in comparisions with GTK_TYPE_STRING, use the fundamental type to catch
Wed Jan 13 20:14:32 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkarg.c (gtk_arg_copy): in comparisions with GTK_TYPE_STRING, use
        the fundamental type to catch GTK_TYPE_IDENTIFIER as well.

        * gtk/gtkmenushell.c:
        (gtk_real_menu_shell_activate_current):
        (gtk_menu_shell_button_release): asure that we only activate sensitive
        menu items, reported by Dave Cole <dave@dccs.com.au>.
1999-01-13 20:36:23 +00:00
Pablo Saratxaga
aca733c310 updated spanish language file 1999-01-13 19:24:20 +00:00
Jeff Garzik
07cc384be1 cvs be quiet 1999-01-13 19:17:08 +00:00
Tim Janik
55b365d76d eliminate queue_clears or queue_draws where we know that expose events
Wed Jan 13 13:28:00 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c: eliminate queue_clears or queue_draws where we know
        that expose events will be generated.
        (gtk_widget_map): only queue_draw for NO_WINDOW widgets.
        (gtk_widget_unmap): only queue_clear_child for NO_WINDOW widgets.
        (gtk_widget_size_allocate): we don't need a queue_clear on changing
        allocations of !NO_WINDOW widgets, we do still need a full redraw for
        them though.

        * gtk/gtklabel.c (gtk_label_set_text): check whether the new string
        actually differs from the original.
1999-01-13 12:39:17 +00:00
Manish Singh
de7ffb4a1c remove autogened files
-Yosh
1999-01-13 08:52:03 +00:00
Manish Singh
38e44202bd Doah. libtool isn't the only thing in here.
-Yosh
1999-01-13 08:44:21 +00:00
Manish Singh
6790905309 acinclude.m4 ltconfig upgrade to libtool 1.2d (with fixes for irix6 and
* acinclude.m4
* ltconfig
* ltmain.sh: upgrade to libtool 1.2d (with fixes for irix6 and osf)

-Yosh
1999-01-13 06:53:26 +00:00
Stuart Parmenter
9da0be6730 add GTK_HAVE_FEATURES_1_1_13 for the toggle button name changes 1999-01-13 03:34:53 +00:00
Tomas Ogren
fa75646110 Updated, did make update-po
1999-01-13  Tomas Ogren  <stric@ing.umu.se>

* sv.po: Updated, did make update-po
1999-01-13 02:30:55 +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
Owen Taylor
5a86cbd116 Minor fix to handling of misc->[x/y]pad
Tue Jan 12 15:41:20 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_expose): Minor fix
	to handling of misc->[x/y]pad
1999-01-12 20:45:37 +00:00
Owen Taylor
bef538cc7e Add back as wrapper function to restore source/binary compatibility.
Tue Jan 12 14:31:43 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.[ch] (gtk_style_apply_default_pixmap):
	Add back as wrapper function to restore source/binary
	compatibility. grrrr.
1999-01-12 19:40:21 +00:00
Tim Janik
9619e45aa7 updates 1999-01-12 19:35:00 +00:00
Tim Janik
d7bd87f2ea reworked the redrawing heuristics somewhat, this fixed a bunch of existing
Tue Jan 12 13:47:07 1999  Tim Janik  <timj@gtk.org>

        * reworked the redrawing heuristics somewhat, this fixed a bunch of
        existing redrawing problems and majorly reduces overall redrawing needs
        during normal operation. basically we now only queue redraws when
        neccessary and much rely on the draw_area coalescing code in gtkwidget.c
        to optimize the queued portions. widgets will now upon reallocation only
        get redrawed if their allocation has changed. upon hide/show only the
        area allocated by the child will be queued for the parent, this has the
        side effect that parents which change their appearance in dependance on
        the numer of visible children have to keep track of their children's
        visiblity and eventually fully redraw themselves. this is a minor
        constrain with great benefits in terms of redraw reduction, and only got
        triggered by the notebook widget.

        * gtk/gtkwidget.c:
        (gtk_widget_queue_clear): don't bother if width and height == 0.
        (gtk_widget_queue_clear_child): new static function to queue a redraw of
        the area obscured by a child on a parent.
        (gtk_widget_queue_resize): queue_clear the widget if it is drawable.
        (gtk_widget_show): queue resize on the widget before showing.
        (gtk_widget_hide): queue resize on the widget after hiding.
        (gtk_widget_map): queue_draw the widget after mapping.
        (gtk_widget_unmap): queue_clear_child the widget.
        (gtk_widget_size_allocate): queue_clear_child and queue_draw if the
        widget's allocation changed.
        (gtk_widget_unparent): queue_clear_child so the parent redraws obscured
        portions.
        (gtk_widget_real_show):
        (gtk_widget_real_hide):
        (gtk_widget_real_map):
        (gtk_widget_real_unmap):
        (gtk_widget_real_size_allocate): don't bother with redraw queueing,
        descendants that override these functions don't do either and we handle
        all redrawing/resizing related stuff before or after the signal emission
        now.

        * gtk/gtkcontainer.c:
        (gtk_container_resize_children): don't bother about redrawing anymore
        since gtk_widget_size_allocate handles that for us now.

        * gtk/gtknotebook.h:
        * gtk/gtknotebook.c:
        added a flag have_visible_child to indicate whether we need to draw
        non child related portions at all, e.g. shadows etc.
        (gtk_notebook_draw): if have_visible_child changed, do a full paint
        instead of updating a small area only.

Mon Jan 11 20:44:35 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkstyle.c: changed gtk_style_apply_default_pixmap to
        gtk_style_apply_default_background which takes an extra argument
        copy_area to determine NO_WINDOW widget pixmap copying.
        changed callers accordingly.

        * gtk/gtktogglebutton.c:
        (gtk_toggle_size_allocate):
        (gtk_toggle_button_expose):
        (gtk_toggle_button_paint): avoid messing with our parent's window if
        toggle_button->draw_indicator == TRUE and we are a NO_WINDOW widget.

        * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): draw
        the draw_indicator with GTK_STATE_ACTIVE if the toggle button is active.

        * gtk/check-n.xpm:
        * gtk/check-y.xpm:
        * gtk/testgtkrc: set pixmaps for ACTIVE and NORMAL check button
        bg_pixmaps.
1999-01-12 15:12:14 +00:00
Lars Hamann
8b0955954c end drag selections if necessary.
Mon Jan 11 23:52:58 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtklist.c (gtk_list_signal_drag_begin)
	(gtk_list_drag_begin): end drag selections if necessary.

	* gtk/gtkspinbutton.c/h (gtk_spin_button_update): made function
	public. Manually force synchronization of spin button text and
 	adjustment value.
1999-01-11 23:24:41 +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
Owen Taylor
0b84fc2742 Only remove handlers for motion/button_release at drop, remove
Mon Jan 11 10:45:28 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c: Only remove handlers for motion/button_release
	at drop, remove "selection_get" handler later.
1999-01-11 16:07:47 +00:00
Tim Janik
983335243b removed Paolo Molaro's type creation hooks again, since they 1) don't care
Mon Jan 11 13:31:49 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.[hc]: removed Paolo Molaro's type creation hooks
        again, since they 1) don't care about infinite recursion (likely
        to achive), 2) we are in feature freeze for 1.2. this definitely
        deserves a sane implementation in 1.3 though (but without a hook
        return value, without seq_id hackery and with recursion checks).
1999-01-11 12:43:07 +00:00
Tim Janik
e3ee9e9d7d only pass key events to the focus widget if it is sensitive.
Mon Jan 11 13:18:37 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c:
        (gtk_window_key_release_event):
        (gtk_window_key_press_event): only pass key events to the focus widget
        if it is sensitive.

        * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): don't popup the
        submenu if it isn't sensitive.
        (gtk_menu_item_paint): state_type doesn't need to be reset to
        GTK_STATE_INSENSITIVE if the widget is insensitive anyways.

        * gtk/gtkcontainer.c (gtk_container_real_focus):
        * gtk/gtklist.c (gtk_list_focus):
        * gtk/gtkmenushell.c (gtk_menu_shell_move_selected):
        * gtk/gtknotebook.c (gtk_notebook_focus):
        s/GTK_WIDGET_SENSITIVE/GTK_WIDGET_IS_SENSITIVE/ since a widgets
        sensitivity is determined through the parent as well,
        GTK_WIDGET_SENSITIVE is only of interest inside gtkwidget.c, everywhere
        else GTK_WIDGET_IS_SENSITIVE (widget) needs to be used to check for
        sensitivity.

        * gtk/gtkaccelgroup.c (gtk_accel_group_activate): don't activate
        object if it is an insensitive widget.
1999-01-11 12:22:52 +00:00
Paolo Molaro
f3af00f450 Mon, 11 Jan 1999 08:09:08 +0100 Paolo Molaro <lupus@debian.org>
* gtk/gtktypeutils.[ch]: add gtk_type_{add,remove}_creation_hook().
        You can have a notification when a type is created.
1999-01-11 07:09:07 +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
05e714d6d1 Fixed cut and paste bug when comparing text property bg colors. [ Matt
Sun Jan 10 14:45:37 1999  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c (text_properties_equal): Fixed
	cut and paste bug when comparing text property
	bg colors.
	[ Matt Aubury <Matt.Aubury@comlab.ox.ac.uk> ]
1999-01-10 19:49:24 +00:00
Tim Janik
bcbe6f4885 if the lookup failed, try to initialize the object class and reattempt the
1999-01-10  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_lookup): if the lookup failed, try
        to initialize the object class and reattempt the lookup, reported
        by Paolo Molaro <lupus@lettere.unipd.it>.
1999-01-10 19:05:36 +00:00
Pablo Saratxaga
a24e14ceb4 added spanish language file 1999-01-10 18:32:14 +00:00
Owen Taylor
3bd19e15ea Added cs to ALL_LINGUAS.
Sat Jan  9 17:36:20 1999  Owen Taylor  <otaylor@redhat.com>

	* configure.in (ALL_LINGUAS): Added cs to ALL_LINGUAS.

Sat Jan  9 17:27:49 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_populate):
	Mark another string for internationalization.
	[ Stanislav Brabec <utx@k332.feld.cvut.cz> ]
1999-01-09 22:34:28 +00:00
Owen Taylor
71adaddfa7 Added Czech translation by Stanislav Brabec <utx@k332.feld.cvut.cz>
Sat Jan  9 17:35:19 1999  Owen Taylor  <otaylor@redhat.com>

	* cs.po: Added Czech translation by
	  Stanislav Brabec <utx@k332.feld.cvut.cz>
1999-01-09 22:32:58 +00:00
Owen Taylor
a40fd787da Set name "gtk-tooltips" on tip window so that a style can be set for
Sat Jan  9 14:02:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.c (gtk_tooltips_force_window): Set
	name "gtk-tooltips" on tip window so that a style
	can be set for tooltips.
1999-01-09 19:02:06 +00:00
Nuno Ferreira
a646c4b4d0 More strings translated. Not finished yet.
1999-01-09  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>

	* pt.po: More strings translated. Not finished yet.
1999-01-09 13:08:32 +00:00
Owen Taylor
95843529d1 Fixed some list-manipulation breakage.
Fri Jan  8 19:00:17 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (gdk_window_cache_filter): Fixed
	some list-manipulation breakage.

	* gdk/gdkdnd.c (gdk_window_cache_destroy): Free
	window cache structure.

	* gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set an
	event mask on the drag window so clicking on it
	doesn't pop up root menus, etc.

	* gtk/gtkdnd.c (gtk_drag_button_release_cb): Remove
	signal handlers at button release.
1999-01-09 00:21:37 +00:00
Lars Hamann
b56693d114 call gtk_spin_button_update before returning a value
Fri Jan  8 00:42:00 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
	(gtk_spin_button_get_value_as_float): call gtk_spin_button_update
	before returning a value

	* gtk/gtkclist.c (gtk_clist_motion): don't allow 'drag selections'
	if clist is a drag source.
	(gtk_clist_drag_begin): remove pointer grabs, end ongoing selections.

	* gtk/gtkctree.c (remove_grab): copy of clist function.
	(gtk_ctree_drag_begin): let clists drag_begin method set the
	source info struct.
1999-01-08 00:21:36 +00:00
Owen Taylor
41604dd844 Fixes to drawing the background of the bin window so that clearing and
Thu Jan  7 19:10:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkviewport.c (gtk_viewport_style_set): Fixes
	to drawing the background of the bin window
	so that clearing and redrawing of child
	widgets work properly.

	* gtk/gtkwidget.c (gtk_widget_idle_draw): Juggle around
	data so that if somebody triggers more redraw queuing
	from a expose_event handler, it doesn't confuse the
	heck out of GTK+. (But is highly liable to cause
	an infinite loop...)
1999-01-08 00:12:43 +00:00
Owen Taylor
bedab705f2 Fix some more memory leaks.
Thu Jan  7 12:31:41 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c (gtk_target_list_unref): Fix some
	more memory leaks.
1999-01-07 20:17:15 +00:00
Lars Hamann
f28c909c58 fix for dnd bug reported by Bertrand Guiheneuf. Don't return FALSE if
Wed Jan  6 23:14:19 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (gtk_ctree_drag_motion): fix for dnd bug reported
	by Bertrand Guiheneuf. Don't return FALSE if source widget != dest.
	widget.
1999-01-06 22:26:03 +00:00
Tristan Tarrant
216d83587f Added Italian texts 1999-01-06 09:09:04 +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
Owen Taylor
52601eae08 Free memory allocated for target lists.
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.
1999-01-06 00:43:29 +00:00
Owen Taylor
0a411980ef Push GdkRGB's visual and colormap around the color selection dialog so
Tue Jan  5 19:01:18 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c (gtk_color_selection_dialog_init): Push
	GdkRGB's visual and colormap around the color selection
	dialog so that the window and the previews have the
	same colormap. If an app adds things to the colorsel
	dialog, it will have to take care of them itself.
1999-01-06 00:41:04 +00:00
Owen Taylor
5126b13c0a When redrawing the under-cursor character, don't redraw the terminating
Tue Jan  5 11:51:32 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
	When redrawing the under-cursor character, don't
	redraw the terminating NULL.
	[ From: dov@imagic.weizmann.ac.il (Dov Grobgeld) ]
1999-01-05 23:46:49 +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
Arturo Espinosa
ce87813af6 Stuff I did last night while watching TV 1999-01-05 21:27:07 +00:00
Arturo Espinosa
f876ca2681 Loading framework done, start of PNG loader 1999-01-05 04:31:03 +00:00
Arturo Espinosa
f0723b00a9 Initial import of the GdkPixBuf imaging library 1999-01-04 23:53:12 +00:00
Arturo Espinosa
249f6c5326 Initial revision 1999-01-04 23:53:12 +00:00
CST 1999 Shawn T. Amundson
c20ce75179 Released GTK+ 1.1.12
Mon Jan  4 03:45:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.12

        * INSTALL:
          NEWS:
          README:
          configure.in:
          gtk+.spec:
          docs/gtk-config.1:
          gtk/gtkfeatures.h.in: version=1.1.12
1999-01-04 11:04:11 +00:00
Nam SungHyun
37acae8845 Added 'ko'. Added Korean translation.
* configure.in (ALL_LINGUAS): Added 'ko'.
* po/ko.po: Added Korean translation.
1999-01-04 03:33:35 +00:00
Lars Hamann
73c4ee3a6c fixed auto_resize bug
Sun Jan  3 17:41:22 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (real_tree_expand): fixed auto_resize bug
1999-01-03 17:32:43 +00:00
Tim Janik
e573567b99 make this G_PRIORITY_DEFAULT.
Sat Jan  2 03:54:30 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdk.h (GDK_PRIORITY_EVENTS): make this G_PRIORITY_DEFAULT.

        * gdk/gdkevents.c (gdk_events_init): add the source and the poll fd with
        a priority of GDK_PRIORITY_EVENTS.
1999-01-02 22:19:15 +00:00
Jeff Garzik
d6890b721d Removed features.h test.
* configure.in, config.h.in, gdk/gdkimage.c:
        Removed features.h test.

        * gdk/gdkdnd.c:
        Guard public functions against NULL pointer derefs.
1999-01-02 07:32:22 +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
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
Elliot Lee
385108e0de gtk.m4: When testing to see if glib exists, set LIBS="$GTK_LIBS $LIBS" NOT
gtk.m4:
	When testing to see if glib exists, set
	        LIBS="$GTK_LIBS $LIBS"
	NOT
	        LIBS="$LIBS $GTK_LIBS"
	because order matters - if the user specifies their own $LIBS to
	./configure, these need to be passed in last.

gtk/Makefile.am:
	Fix problems with gtktypebuiltins* getting rebuilt every single
	time 'make' was run.

gtk/gtkcalendar.c:
	Set 'week' variable to 0 to get rid of uninitialized
	variable warning. Better solution is to give it the right value
	somewhere :)

gtk/gtkclist.c:
	When computing optimum column size, don't subtract the borders.(?)

gtk/gtkcolorsel.c:
	Don't read past end of array.
1998-12-31 21:01:18 +00:00
Jeff Garzik
d9f5d8f255 updated w/ changed from last night 1998-12-31 15:09:17 +00:00
Jeff Garzik
afd57f842d Init fix from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>. Will ChangeLog shortly. 1998-12-31 05:35:29 +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
CST 1998 Shawn T. Amundson
c44d39c06e Released GTK+ 1.1.11
Wed Dec 30 18:39:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.11

        * INSTALL:
          NEWS:
          README:
          configure.in:
          gtk+.spec:
          docs/gtk-config.1:
          gtk/gtkfeatures.h.in: version=1.1.11

Also fixed docs/Makefile.am so make distcheck works well now,
even on an SMP machine.

Do these .po files really have to be remade during a make dist?
1998-12-31 02:25:58 +00:00
Vincent Renardias
7e855cfc45 Wed, 30 Dec 1998 23:04:25 +0100 [Vincent]
* Major translation updates.
1998-12-30 21:10:02 +00:00
Owen Taylor
a078311369 Fixed off-by-one error when computing length.
Tue Dec 29 16:06:55 1998 Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkim.c (gdk_wcstombs): Fixed off-by-one
	error when computing length.
1998-12-29 21:10:30 +00:00
Jeff Garzik
fc07d22a53 x Pull in string.h for various mem*() and str*() functions, in an
x
   Pull in string.h for various mem*() and str*() functions,
        in an autoconf-friendly way.
x
1998-12-24 19:39:00 +00:00
Jeff Garzik
553fa4309e removed unused var 64-bit cast point to const data Made const-correct.
* gdk/gdkfont.c: removed unused var
        * gdk/gdkim.c: 64-bit cast
        * gtk/gtkaccelgroup.c: point to const data
        * gtk/gtkdnd.[ch]: (gtk_drag_dest_set, gtk_drag_source_set):
          Made const-correct.
        * gtk/gtkfontsel.c: kill uninitialized var warning
        * gtk/gtkselection.[ch]: (gtk_target_list_new,
          gtk_target_list_add_table, gtk_selection_add_targets):
          Made const-correct.
        * gtk/testgtk.c: 64-bit cast
1998-12-24 17:47:02 +00:00
CST 1998 Shawn T. Amundson
9775547b4a Released GTK+ 1.1.10
Thu Dec 24 03:16:52 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.10

        * INSTALL:
          NEWS:
          README:
          configure.in:
          gtk+.spec:
          docs/gtk-config.1:
          gtk/gtkfeatures.h.in: version=1.1.10

        * no.po: added translation by Kjartan Maraas <kmaraas@fib.hl.no>
1998-12-24 15:21:13 +00:00
Martin Baulig
d01381e1cb s,Fedrerico Mena,Federico Mena, 1998-12-24 12:33:19 +00:00
Owen Taylor
b596355d0a Update to changelog, to cover fix that previously slipped in.
Wed Dec 23 20:31:40 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c: Fix problem where empty labels were
	getting a requisition height of zero, and trailing
	newlines were being ignored.
1998-12-24 01:29:44 +00:00
Owen Taylor
c6cf882eee label->label should be the mb text _after_ removing the underlines, not
Wed Dec 23 13:58:14 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_parse_uline):
	label->label should be the mb text _after_ removing
	the underlines, not before.

	* gtk/gtkmenu.c: Reverted Elliot's tearoff-menu-item
	title hack. If it deserves being done, it deserves
	being done right.
1998-12-23 19:16:21 +00:00
Elliot Lee
fb833c477b */Makefile.am: Now passes 'make distcheck'. Now loops. I'm not sure what
*/Makefile.am: Now passes 'make distcheck'. Now loops. I'm not sure what
is up.

1998-12-23  Elliot Lee  <sopwith@redhat.com>

	* gtk/gtkmenu.c: Allow programmer to gtk_object_set_data(obj,
 	"GtkTearoffMenuItem_window_title", ..) on a GtkMenuItem and have
 	it be recognized. If we're getting the title out of the GtkLabel,
 	then remove all underscores.
1998-12-23 16:24:15 +00:00
Owen Taylor
08b22ddebf Request XmTRANFER_FAILURE on Motif drops not within a drop zone. I don't
Tue Dec 22 17:01:43 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_handle_event):
	Request XmTRANFER_FAILURE on Motif drops not within
	a drop zone. I don't know why this is necessary,
	but it is.

	* gdk/gdkdnd.c (gdk_drop_reply): Fixed error where
	Motif flag field in response was getting wrong
	values.
1998-12-22 22:00:43 +00:00
Owen Taylor
1f8fd8871b Return TRUE for button press events we handle. (Allows option menus in
Tue Dec 22 15:55:39 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_button_press):
	Return TRUE for button press events we handle.
	(Allows option menus in radio buttons to work...)
1998-12-22 20:55:30 +00:00
Owen Taylor
7f0156c2ea Optimization - when we've already found a widget, skip all checks for
Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
	when we've already found a widget, skip all checks
	for subsequent children.

	* gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
	!MAPPED, not !VISIBLE, since a widget (like a notebook
	page), can be VISIBLE, but !REALIZED or !MAPPED.

	* gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
	not foreach().
1998-12-22 20:06:44 +00:00
Owen Taylor
b45236cee8 Added translation by Krzysztof Krzyaniak <eloy@venco.com.pl>
Tue Dec 22 14:24:37 1998  Owen Taylor  <otaylor@redhat.com>

	* pl.po: Added translation by
	  Krzysztof Krzyaniak <eloy@venco.com.pl>
1998-12-22 19:25:40 +00:00
Lars Hamann
df7d275d17 fixed column resize bug
Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
1998-12-21 21:09:37 +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
PST 1998 Shawn T. Amundson
cbf5479263 added translation by Tomas gren <stric@ing.umu.se>
Sat Dec 19 18:42:39 PST 1998 Shawn T. Amundson <amundson@gtk.org>

        * sv.po: added translation by Tomas gren <stric@ing.umu.se>
1998-12-20 02:48:52 +00:00
Tim Janik
5070b178e9 eek, fixed an embarrasing bug that caused this function to always return
Sat Dec 19 22:49:40 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_query): eek, fixed an embarrasing bug
        that caused this function to always return NULL (noticed by marius
        vollmer).
1998-12-20 01:24:40 +00:00
Owen Taylor
651e2f744f Don't add the gthread libs to GLIB_LIBS either, or -lgthread -lpthread
Sat Dec 19 17:28:30 1998  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Don't add the gthread libs to
	GLIB_LIBS either, or -lgthread -lpthread will get
	pulled into all applications because of shlib deps.

	* gtk/gtkmain.h gtk/gtkwidget.c gtk/gtk gdk/gdk:
	Use GLIB's priority #define. Revise scale of
	priorities.
1998-12-19 22:27:03 +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
Manish Singh
ee173b486f s/(enter|leave)_button/$1/g, since pthreads.h no longer conflicts
-Yosh
1998-12-19 03:24:15 +00:00
Lars Hamann
2231b92bbb fixed GDK_2BUTTON_PRESS bug.
Sat Dec 19 01:56:13 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_button_press): fixed GDK_2BUTTON_PRESS
 	bug.
1998-12-19 01:18:08 +00:00
Manish Singh
690fa02b0a add ja.po to ALL_LINGUAS
-Yosh
1998-12-19 00:07:36 +00:00
Vincent Renardias
1163b431b5 Sat, 19 Dec 1998 01:15:44 +0100 [Vincent]
* fr.po: Added.
1998-12-18 23:18:11 +00:00
Owen Taylor
6704cf6e1a Marked plug window as destroyed before destroying the window.
Fri Dec 18 15:19:54 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtksocket.c (gtk_socket_filter_func): Marked
	plug window as destroyed before destroying the
	window.
1998-12-18 20:47:21 +00:00
Owen Taylor
8592d1c309 Set the usize on the tearoff window so when we reparent the window out,
Fri Dec 18 14:17:14 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_popup): Set the usize on the
	tearoff window so when we reparent the window out,
	the window doesn't shrink down.
1998-12-18 19:15:46 +00:00
Owen Taylor
21ea00bef0 Fixed transposition of \ and "
Fri Dec 18 09:52:28 1998  Owen Taylor  <otaylor@redhat.com>

	* de.po: Fixed transposition of \ and "
1998-12-18 14:52:57 +00:00
Sven Neumann
6f50500410 Daniels de.po file after a bit of editing.
--Sven
1998-12-18 11:16:31 +00:00
Yukihiro Nakai
c795ded090 Add Japanese Translation.
Add Japanese Translation.
1998-12-18 10:11:32 +00:00
Sebastian Wilhelmi
1a6d6e0647 do not export the glib flags for thread support to gtk-config.
1998-12-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in: do not export the glib flags for thread support to
	gtk-config.
1998-12-18 10:01:21 +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
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
1bde7a5599 Remove the info tag from the context so if the source unexpectedly
Thu Dec 17 18:25:52 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_drop_finished): Remove the
	info tag from the context so if the source unexpectedly
	responds in the future, we do nothing properly.

Thu Dec 17 18:24:41 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): Handle
	the case where one side of the the pane is empty.

	* gtk/gtkfilesel.c (gtk_file_selection_init): Set
	dir_title before using it. (Pointed out by
	Lavoie Philippe <lavoie@zeus.genie.uottawa.ca>)
1998-12-17 23:35:22 +00:00
Owen Taylor
55ce42dad1 Use setlocale (LC_ALL, NULL), not (LC_ALL, "") to query current locale.
Thu Dec 17 11:00:48 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkim.c (gdk_set_locale): Use setlocale (LC_ALL, NULL),
	not (LC_ALL, "") to query current locale.
	(Pointed out by	Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
1998-12-17 16:13:20 +00:00
Owen Taylor
eba4c9a85e Free previous label->label_wc.
Thu Dec 17 10:53:20 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_set_text): Free
	previous label->label_wc.

	* gtk/testgtkrc: Leave font, not fontset commented
	in by default.
1998-12-17 15:51:15 +00:00
Sebastian Wilhelmi
06449bebe1 Define gdk_use_mb outside USE_XIM guard. Removed unnecessary USE_XIM guard
1998-12-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk/gdkim.c: Define gdk_use_mb outside USE_XIM guard. Removed
	unnecessary USE_XIM guard inside another. Made gdk_use_mb
	static. Compile gdk_set_locale also if not USE_XIM.
1998-12-17 09:15:45 +00:00
Shawn T. Amundson
2fa220504c Released GTK+ 1.1.9
Thu Dec 17 00:26:01 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.9

        * INSTALL:
          NEWS:
          README:
          configure.in:
          gtk+.spec:
          gtk/gtkfeatures.h.in:
          docs/gtk-config.1: version=1.1.9
1998-12-17 06:49:15 +00:00
Manish Singh
a9575223a6 rm -rf intl breaks --disable-nls, put it back
* autogen.sh: rm -rf intl breaks --disable-nls, put it back

* gtkbutton.[ch]
* gtktogglebutton.c: s/(enter|leave)/$1_button/g.
Digital: 1 GTK+: 0 (for now)

-Yosh
1998-12-17 05:21:45 +00:00
CST 1998 Shawn T. Amundson
b0ecac9fa1 updated call to g_main_add_poll instead of g_main_poll_add
Wed Dec 16 22:38:22 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * gdk/gdkevents.c: updated call to g_main_add_poll
          instead of g_main_poll_add
1998-12-17 04:40:07 +00:00
Owen Taylor
47a65b7327 Remove unnecessary cast.
Wed Dec 16 23:32:05 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_expose): Remove
	unnecessary cast.
1998-12-17 04:31:49 +00:00
Owen Taylor
b729f6e30a Check for broken glibc 2.0 mb functions, and avoid them.
Wed Dec 16 22:50:52 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c gdk/gdkim.c: Check for broken glibc 2.0
	mb functions, and avoid them.
1998-12-17 04:20:29 +00:00
Arturo Espinosa
2d0bb66479 *** empty log message *** 1998-12-16 23:00:58 +00:00
Owen Taylor
45cdd91a8c Don't call XPending() if we have putback events.
Wed Dec 16 16:57:55 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c (gdk_events_queue): Don't
	call XPending() if we have putback events.
1998-12-16 21:58:54 +00:00
Owen Taylor
b4ba8e3b5d Do nothing on empty string, quietly.
Wed Dec 16 16:04:41 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.c (gtk_label_expose): Do nothing
	on empty string, quietly.
1998-12-16 21:06:49 +00:00
Owen Taylor
c1726375b1 Redraw the character under the cursor when removing the cursor.
Wed Dec 16 15:36:19 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
	Redraw the character under the cursor when removing
	the cursor.
1998-12-16 20:39:31 +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
CST 1998 Shawn T. Amundson
0dcdac5828 Released GTK+ 1.1.8
Wed Dec 16 10:20:27 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.8

        * ChangeLog:
          INSTALL:
          README:
          gtk+.spec:
          docs/gtk-config.1: version=1.1.8
1998-12-16 16:57:13 +00:00
Sebastian Wilhelmi
7f01a3d324 Define gdk_xim_ic only, if USE_XIM is defined.
1998-12-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdk/gdkglobals.c: Define gdk_xim_ic only, if USE_XIM is defined.
1998-12-16 14:28:05 +00:00
Tim Janik
62347c40d9 urg, fixups 1998-12-16 06:05:46 +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
2c9c7efb23 Update news for 1.1.8. 1998-12-16 05:04:46 +00:00
CST 1998 Shawn T. Amundson
0fcd82d16a warn if glib.m4 or gettext.m4 are not found in aclocal's directory.
Tue Dec 15 21:26:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * autogen.sh: warn if glib.m4 or gettext.m4 are not found
          in aclocal's directory.
1998-12-16 03:33:22 +00:00
Owen Taylor
7d7b43c244 Create buttons, not combos again.
Tue Dec 15 21:36:14 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (create_layout): Create buttons,
	not combos again.
1998-12-16 02:37:41 +00:00
Joel Becker
8968861d79 Fixed gettextize/aclocal conflict in autogen.sh 1998-12-16 01:40:50 +00:00
Lars Hamann
8a202e6f5b removed clist flag : GTK_CLIST_DRAG_SELECTION added flags :
Tue Dec 15 22:30:44 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.h :
	removed clist flag : GTK_CLIST_DRAG_SELECTION
	added flags : GTK_CLIST_REORDERABLE, GTK_CLIST_USE_DRAG_ICONS,
	GTK_CLIST_DRAW_DRAG_LINE, GTK_CLIST_DRAW_DRAG_RECT
	(GtkCListDragPos) : new enum for DND
 	(GtkButtonAction) : new enum of possible mouse button actions
	(struct _GtkCList): added button_actions array.
 	Added drag_button and click_cell struct, to store cell and
 	mouse button of last button_press_event

	(struct _GtkCListClass): new class method draw_drag_highlight.
	(gtk_clist_set_reorderable) (gtk_clist_set_use_drag_icons) :
	new functions. Moved from gtkctree.h. Now clist is reorderable
	as well.
	(gtk_clist_set_button_actions) new function to customize mouse
	button actions.

	* gtk/gtkclist.c:
	(gtk_clist_drag_begin)
	(gtk_clist_drag_motion)
	(gtk_clist_drag_leave)
	(gtk_clist_drag_end)
	(gtk_clist_drag_drop)
	(gtk_clist_drag_data_get)
	(gtk_clist_drag_data_received) : new dnd widget methods to
	implement clists reorderability via DND

	(remove_grab) : new function. remove mouse grab if necessary.
	(draw_drag_highlight) : new method. Draw dnd highlight depending
	on clist flags GTK_CLIST_DRAW_DRAG_LINE and GTK_CLIST_DRAW_DRAG_RECT

	(gtk_clist_class_init): added object args "reorderable" and
 	"use_drag_icons"

	(gtk_clist_button_press) (gtk_clist_button_release) :
	use button_actions array to decide which action to perform.
	(gtk_clist_motion) : start reorder operation if necessary.

	* gtk/gtkctree.h :
	(struct _GtkCTree): removed drag_icon, icon_widht, icon_height,
	drag_row, drag_source, drag_target, reorderable, use_icons,
	in_drag, drag_rect
	(gtk_ctree_set_reorderable) :  deprecated function.
 	use gtk_clist_set_reorderable instead.
	(gtk_ctree_set_use_drag_icons) : deprecated function.
 	use gtk_clist_set_use_drag_icons instead.

	* gtk/gtkctree.c :
	(gtk_ctree_class_init): removed object args "reorderable" and
	and "use_drag_icons"

	(draw_xor_line) (draw_xor_rect) (create_drag_icon) (check_cursor)
	(tree_toggle_selection) (set_mouse_cursor) : removed

	(draw_drag_highlight) : new clist method. replacement for
	draw_xor_line and draw_xor_rect functions
	(check_drag) renamed check_cursor function

	(gtk_ctree_drag_begin)
	(gtk_ctree_drag_motion)
	(gtk_ctree_drag_data_received) : new dnd methods to implement ctrees
	reorderability via DND

	(gtk_ctree_button_release)
	(gtk_ctree_button_motion) : removed.

	* gtk/testgtk.c:
	(create_clist) : added new reorderable toggle button
1998-12-16 01:28:31 +00:00
Owen Taylor
1566d98867 Use base[NORMAL] instead of bg[PRELIGHT] so CLists now can be used in
Tue Dec 15 19:50:41 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c gtk/gtkclist.c gtk/testgtk.c: Use
	base[NORMAL] instead of bg[PRELIGHT] so CLists now can be
	used in detergent commercials.
1998-12-16 00:52:46 +00:00
Jeff Garzik
96501b3481 Remove --with-threads, unused GTK_THREAD_FLAGS 1998-12-16 00:07:33 +00:00
Elliot Lee
a8e00e2169 Use G_IO_ERR|G_IO_HUP|G_IO_NVAL as the mask for checking for
1998-12-15  Elliot Lee  <sopwith@bogus.cuc.ml.org>

	* gdk/gdkevents.c: Use G_IO_ERR|G_IO_HUP|G_IO_NVAL
	as the mask for checking for GDK_INPUT_EXCEPTION events.
1998-12-15 23:59:44 +00:00
Martin Baulig
3f1ffdacbb Make the gettext check for for libc5 systems.
1998-12-15  Martin Baulig  <martin@home-of-linux.org>

	* acinclude.m4: Make the gettext check for for libc5 systems.
1998-12-15 23:11:05 +00:00
Martin Baulig
cc7eba32a2 Not running gettextize fails on a fresh CVS checkout and we'll get a lot
1998-12-15  Martin Baulig  <martin@home-of-linux.org>

	* autogen.sh: Not running gettextize fails on a fresh CVS checkout
	and we'll get a lot of bug reports tomorrow, so I add it back.
1998-12-15 22:13:35 +00:00
Martin Baulig
7b105fea0a Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and AM_WITH_NLS_GTK to
1998-12-15  Martin Baulig  <martin@home-of-linux.org>

	* acinclude.m4: Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and
	AM_WITH_NLS_GTK to AM_GTK_WITH_NLS to avoid this ugly automake
	warnings.
1998-12-15 22:03:53 +00:00
Owen Taylor
d56a55a484 Moved gtk_label_set() compatiblity define from <gtkcompat.h> to
Tue Dec 15 16:54:09 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklabel.h: Moved gtk_label_set() compatiblity
	define from <gtkcompat.h> to <gtklabel.h> for
	compatibility.
1998-12-15 21:54:13 +00:00
Owen Taylor
dabb02d282 Provide a hacked version of the gettext macros that never use the included
Tue Dec 15 16:06:15 1998  Owen Taylor  <otaylor@redhat.com>

	* acinclude.m4: Provide a hacked version of the
	  gettext macros that never use the included gettext.

	* Makefile.am configure.in: Remove references
	  to intl/

	* autogen.sh: Don't run gettextize.
1998-12-15 21:08:52 +00:00
Owen Taylor
a3c1e86ffa Added gdk_text_extents_wc()
Tue Dec 15 14:30:35 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h gdk/gdkfonts.c: Added gdk_text_extents_wc()

        * Patch from Jonathan Blanford <jrb@redhat.com> to add line wrapping
	  to label. (Based on patch from Jeff Dairiki
	  <dairiki@mac-ceope.apl.washington.edu> gtk-dairiki-971208-0)

	- Adds new function gtk_label_set_line_wrap()
	- implement GTK_JUSTIFY_FILL.
	- rename gtk_label_set to gtk_label_set_text() add
	   gtk_label_set() to gtkcompat.h.

	* Use an internal wc representation in the label, so
	  that we handle underlining and line breaks correctly
	  for multi-byte strings.
1998-12-15 20:31:26 +00:00
Owen Taylor
7eec796cbd Added GTK_USER_DRAW flag.
Tue Dec 15 13:32:28 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.h: Added GTK_USER_DRAW flag.

	* gtk/gtkwindow.c: Honor GTK_USER_DRAW flag.

	* gtk/gtkdrawwindow.c gtk/Makefile.am: Removed
	GtkDrawWindow, which GTK_USER_DRAW obsoletes.
1998-12-15 18:48:19 +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
1bf27c357d Keep separate putback_events and queued_events queues so that we get both
Tue Dec 15 10:26:23 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c: Keep separate putback_events and
	queued_events queues so that we get both FIFO and
	preemptive behavior for	gdk_event_put().
1998-12-15 15:32:49 +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
a2fc714adb Remove gdk_signal, which crept back in in last commit.
Tue Dec 15 08:53:38 1998  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.c (gdk_get_display): Remove gdk_signal,
        which crept back in in last commit.

gdk/gdkevents.c: File missed on last commit.

CVS
1998-12-15 13:54:20 +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
Manish Singh
58475f05a5 acconfig.h removed IPC_RMID_DEFERRED_RELEASE check
* acconfig.h
* configure.in: removed IPC_RMID_DEFERRED_RELEASE check

* gdk/gdk.c: remove signal handlers, since we do an IPC_RMID
after XShmAttach, and nobody complained

-Yosh
1998-12-15 07:08:05 +00:00
Manish Singh
30b9a28779 autoconf says we need AC_ISC_POSIX. Whiner.
-Yosh
1998-12-15 05:27:17 +00:00
Tim Janik
931b25f230 include -lintl in LIBS 1998-12-15 03:37:32 +00:00
Sven Neumann
d1edd7e40c Replaced the crappy de.po with a valid one.
(Bring me the haed of ...)


--Sven
1998-12-15 01:32:30 +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
Nuno Ferreira
c46265c82c Added Portuguese translation.
* Added Portuguese translation.
1998-12-14 23:21:27 +00:00
Stefan Jeske
c242e9e36c Only call gtk_spin_button_update if the spinbutton is editable.
Mon Dec 14 20:04:31 1998  Stefan Jeske  <stefan@gtk.org>

	* gtk/gtkspinbutton.c: Only call gtk_spin_button_update if
 	the spinbutton is editable.
1998-12-14 19:13:58 +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
Tim Janik
edc1476865 made GtkWidget::grab_focus a RUN_LAST and RUN_ACTION signal. moved stuff
Mon Dec 14 02:42:11 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c: made GtkWidget::grab_focus a RUN_LAST and
        RUN_ACTION signal. moved stuff from gtk_widget_grab_focus() into
        gtk_widget_real_grab_focus() so a signal is always emitted
        if the focus is grabbed on a widget.
1998-12-14 01:59:43 +00:00
Tim Janik
7ea8bb92a6 fixed submenu popup timeouts, we decide whether or not to delay the
Mon Dec 14 02:13:01 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenuitem.c: fixed submenu popup timeouts, we decide whether or
        not to delay the submenu popup from a menu item deselection time stamp.
        the code looks even more hackish than before, but in practice "feels"
        very well.
1998-12-14 01:35:33 +00:00
Federico Mena Quintero
3441c3f2c4 Added a "grab_focus" signal for widgets. When the signal is emitted, the
1998-12-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
	signal for widgets.  When the signal is emitted, the widget will
	grab the focus.  This is needed to let the user press an
	accelerator key in a dialog box and have the corresponding widget
	be focused.

	* gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
	signal.  The default handler is simply gtk_widget_grab_focus().
1998-12-14 01:32:24 +00:00
GMT 1998 Tony Gale
113448e030 Update the following sections to the current API: - Container Widgets -
Sun Dec 13 22:15:48 GMT 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: Update the following sections to the
          current API:
            - Container Widgets
            - CList Widget
            - List Widget
            - Tree Widget
1998-12-13 22:25:07 +00:00
Tim Janik
6d6d3a59b8 made GtkMenuItem::activate a GTK_RUN_ACTION signal.
Sat Dec 12 19:11:35 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenuitem.c: made GtkMenuItem::activate a GTK_RUN_ACTION signal.

        * gtk/gtkbutton.c: made GtkButton::clicked a GTK_RUN_ACTION signal.

        * gtk/gtkfeatures.h.in: define GTK_HAVE_FEATURES_1_1_8.
1998-12-13 00:13:39 +00:00
Owen Taylor
07f0382368 Mark child->window as destroyed so we don't destroy it again.
Sat Dec 12 17:46:55 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtklayout.c (gtk_layout_unrealize): Mark
	child->window as destroyed so we don't destroy
	it again.
1998-12-12 22:49:38 +00:00
Owen Taylor
823b4d43a1 Corrections to computation of extents of text from a font set. (from
Sat Dec 12 17:18:32 1998  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkfont.c (gdk_text_extents): Corrections
        to computation of extents of text from a font set.
        (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
         and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
1998-12-12 22:21:48 +00:00
Owen Taylor
11a8051179 Added "style_set" handlers.
Fri Dec 11 08:59:12 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklistitem.c (gtk_list_item_style_set):
	* gtk/gtklist.c     (gtk_list_style_set):
	Added "style_set" handlers.
1998-12-11 14:00:09 +00:00
Owen Taylor
84b2d43d95 Add in a "style_set" handler so that the background of the clist changes
Fri Dec 11 05:49:30 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
	handler so that the background of the clist changes
	with the theme.
1998-12-11 10:52:30 +00:00
CST 1998 Shawn T. Amundson
353a7158ed Released GTK+ 1.1.7
Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.7

        * INSTALL:
          NEWS:
          README:
          configure.in:
          gtk+.spec:
          gtk/gtkfeatures.h.in:
          docs/gtk-config.1: Version to 1.1.7
1998-12-11 06:12:24 +00:00
Manish Singh
6af277b502 avoid void pointer math
* gtk/gtkclist.c: avoid void pointer math

* gtk/gtkhscale.c
* gtk/gtkhscrollbar.c
* gtk/gtkvscale.c
* gtk/gtkvscrollbar.c: removed trailing , from enums

* gtk/gtksignal.c: can't use enums as a bitfield type, use guint

* gtk/testgtk.c: removed C++ comment added by owenpoo

-Yosh
1998-12-11 05:52:42 +00:00
Owen Taylor
939c818395 Added gtk_drag_source_unset()
Thu Dec 10 21:48:34 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
1998-12-11 02:48:40 +00:00
Owen Taylor
ba17081caa Use gdk_window_get_origin() instead of gdk_window_get_position, because
Thu Dec 10 20:42:22 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use
	gdk_window_get_origin() instead of gdk_window_get_position,
	because get_position is unreliable for plugs.

	This is a bad hack, maybe we need GDK_WINDOW_PLUG?
1998-12-11 01:44:12 +00:00
GMT 1998 Tony Gale
3821880398 - re-write the GtkProgressBar section to the 1.1 API. - add an Appendix
Thu Dec 10 17:58:49 GMT 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - re-write the GtkProgressBar section to the 1.1 API.
          - add an Appendix listing all the signals
            (apologies to TimJ for taking so long in using his hard work
             in automating the extraction - thanx Tim).
        * examples/*: bring them all upto the tutorial versions
1998-12-10 17:31:04 +00:00
Jeff Garzik
600ef4e7d1 use g_snprintf, eliminate need for string.h include string.h, for strlen
* gtk/testdnd.c: use g_snprintf, eliminate need for string.h
        * gtk/testrgb.c: include string.h, for strlen
1998-12-10 06:18:32 +00:00
Owen Taylor
6413a421f1 Add a case for success in test for XUnregisterIMInstantiate, to prevent
Wed Dec  9 17:39:26 1998  Owen Taylor  <otaylor@redhat.com>

	* configure.in: Add a case for success in
	test for XUnregisterIMInstantiate, to prevent
	screwing up $LIBS.
1998-12-09 22:40:42 +00:00
Sebastian Wilhelmi
d3483d010e Fixed argument list and return type for non-XIM fallback.
Wed Dec  9 13:06:31 1998  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

 	* gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
 	list and return type for non-XIM fallback.

 	* configure.in: Only build XIM-support if available.
1998-12-09 18:13:52 +00:00
Owen Taylor
dfa88ef9c7 Add in missing 'flags' field to target list.
Wed Dec  9 12:23:30 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/testselection.c (main): Add in missing 'flags'
	field to target list.

	* gdk/gdkproperty.c (gdk_atom_intern): Actually
	add the atoms to the local cache.
1998-12-09 17:31:52 +00:00
Manish Singh
adc2698da1 put text after #endif in comment
* gdk/gdkprivate.h: put text after #endif in comment

* gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl

* gtk/testdnd.c: #include <string.h>

-Yosh
1998-12-09 13:01:17 +00:00
Owen Taylor
a309b7dd12 New file that holds code for dealing with X Input Methods.
(Missing from last big commit)
1998-12-09 09:19:36 +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
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
Tim Janik
9806d64e40 added gtk_type_query() which returns a newly allocated structure holding
Wed Dec  9 00:49:12 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
        allocated structure holding certain type specific informations.
        fixed the big bunch of `discards const' warnings with the
        initialization of enum/flags values.
1998-12-08 23:57:25 +00:00
Owen Taylor
847aed3652 Fixed order of arguments to gdk_window_transient_for().
Tue Dec  8 15:10:17 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_transient_parent_realized):
	Fixed order of arguments to gdk_window_transient_for().
1998-12-08 20:12:26 +00:00
GMT 1998 Tony Gale
f6c5b74fb7 simple top level Makefile that invokes all the sub-directory Makefiles.
Tue Dec  8 18:02:57 GMT 1998  Tony Gale  <gale@gtk.org>

        * examples/Makefile: simple top level Makefile that invokes all
          the sub-directory Makefiles.
1998-12-08 18:04:58 +00:00
Andrew T. Veliath
d6acd1ecd3 Functions to test the toolbar space style.
* gtk/testgtk.c: Functions to test the toolbar space style.

	* gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
	GtkToolbarChild to hold allocation. Set default space style to
	GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
	fraction defaults.
	(gtk_toolbar_paint_space_line): New function; paints the separator
	line, using "toolbar" as the detail.
	(gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
	style is set to SPACE_LINE.
	(gtk_toolbar_size_allocate): Store space allocations.
	(gtk_toolbar_insert_element): If we are a space, allocate and
	initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
	(gtk_toolbar_set_space_style): New function.

	* gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
	and LINE. Add prototype for gtk_toolbar_set_space_style.
1998-12-08 13:25:35 +00:00
Owen Taylor
287b0ce008 Remove random unnecessary includes of standard headers.
Mon Dec  7 16:03:55 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkthemes.h: Remove random unnecessary includes
	of standard headers.
1998-12-07 21:11:34 +00:00
Damon Chaplin
583b0b53e8 "" 1998-12-07 20:56:46 +00:00
Elliot Lee
73edf2ce77 Don't name function parameters after ObjC reserved words ("id" to
Don't name function parameters after ObjC reserved words ("id" to
"sm_client_id" - the function doesn't appear to be implemented anywhere so
it's no great loss).
1998-12-07 19:53:08 +00:00
Owen Taylor
d1045b6876 Use IPC_RMID _after_ doing XShmAttach. This should work everywhere, and
Mon Dec  7 13:38:06 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
	_after_ doing XShmAttach. This should work everywhere,
	and avoid the need for signal handlers or configure
	checks.
1998-12-07 19:03:10 +00:00
Federico Mena Quintero
139e3cd47d Removed the unused cursor field in the structure.
1998-12-07  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
	field in the structure.
1998-12-07 15:53:21 +00:00
GMT 1998 Tony Gale
337bdee253 Start mass update for GTK 1.1 Look for the best version of awk Fix FD leak
Mon Dec  7 15:15:06 GMT 1998  Tony Gale <gale@gtk.org>

        * docs/gtk_tut.sgml: Start mass update for GTK 1.1
        * examples/extract.sh: Look for the best version of awk
        * examples/extract.awk: Fix FD leak
        * example/base: minimal example from Tutorial
1998-12-07 15:19:00 +00:00
Owen Taylor
621beb8aaf New functions gtk_window_set_transient_for() - set up a "transient for"
Mon Dec  7 01:29:27 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwindow.c: New functions
        gtk_window_set_transient_for() - set up a "transient for" relationship.
	gtk_window_set_default_size() - set the initial size of a window
	   distinct from its minimum size.
	gtk_window_set_geometry_hints() - Allow the user to set
	   minimum, maximum sizes, aspect rations, and gridded geometry,
	   possibly all with respect to a subwidget of the window.
	These interfaces are still a wee bit experimental.

	* gdk/gdk.c: Added gdk_window_set_transient_for(),
	gdk_window_set_geometry_hints(), and gdk_window_set_role().

	* gdk/gdktypes.h: Added new types for find-grained specification
	of WM hints.

	* gtk/testgtk.c: Various changes to tests to test the
	above new functions.

	* gtk/gtkfontsel.c: Squash a few 'const' warnings.

	* gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
	call to gtk_style_set_background() to prevent egregious
	flashing to black.
1998-12-07 06:37:27 +00:00
Tim Janik
fd7bdf03e0 updates 1998-12-07 03:12:58 +00:00
Tim Janik
d2a3858b4b fixups 1998-12-07 03:02:19 +00:00
Tim Janik
f314322885 when marshalling connect_object signals, don't pass the data pointer
Mon Dec  7 03:52:01 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
        signals, don't pass the data pointer twice, but swap it with the
        object pointer (proposed on Nov 30 1998 on gtk-devel-list).
1998-12-07 02:58:24 +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
Marius Vollmer
031aa464c6 *** empty log message *** 1998-12-06 22:18:13 +00:00
Marius Vollmer
3f7c856606 Allow a NULL marshaller. (gtk_signal_connect_by_type): Allow only
* gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
(gtk_signal_connect_by_type): Allow only no_marshal handlers to
connect to signals with a NULL marshaller.

* gtk/gtktypeutils.c (gtk_type_get_info): New.
gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
1998-12-06 22:15:53 +00:00
Stefan Jeske
8abed09aea Grey out arrows if wrap == FALSE and interval borders are reached.
* gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
  arrows if wrap == FALSE and interval borders are reached.
1998-12-06 14:18:46 +00:00
Owen Taylor
5c42d2f6d6 Fixed long-standing typo in aspect ratio computation code. (pointed out by
Sat Dec  5 21:07:09 1998  Owen Taylor  <otaylor@gtk.org>

     * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
       long-standing typo in aspect ratio computation code.
       (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
1998-12-06 02:08:28 +00:00
Lars Hamann
f5c4b3740c call toggle_row with valid row numbers only (toggle_row): check if
Fri Dec  4 01:20:06 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
        valid row numbers only
        (toggle_row): check if clist_row != NULL
1998-12-04 01:11:46 +00:00
Lars Hamann
f76880f205 fixed for-loop.
Fri Dec  4 00:50:12 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.

	* gtk/gtkclist.c
	(gtk_clist_set_column_visibility)
	(gtk_clist_column_titles_active)
 	(gtk_clist_column_titles_active)
	(gtk_clist_column_title_passive)
 	(gtk_clist_column_title_active): few additional tests whether
 	column->button != NULL
1998-12-04 00:04:31 +00:00
Owen Taylor
646d68e4bd Changed to 5 min from 10 seconds, so it doesn't abort while users have an
Thu Dec  3 16:49:18 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
	from 10 seconds, so it doesn't abort while users
	have an ACTION_ASK menu up.

	* gtk/gtkdnd.c: Hide the icon window between sending a a
	drop event to the destination and displaying the
	snapback animation, so that it doesn't hang around
	during ACTION_ASK.
1998-12-03 21:50:20 +00:00
Owen Taylor
46afb008db Use GTK_STATE_INSENSITIVE for the foreground of cells for CLists in the
Thu Dec  3 16:37:42 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
	for the foreground of cells for CLists in the insensitive
	state, instead of GTK_STATE_PRELIGHT.
1998-12-03 21:41:14 +00:00
Tim Janik
1ec6733573 moved checks upon focus setting from gtk_window_real_set_focus to
Thu Dec  3 06:20:59 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c: moved checks upon focus setting from
        gtk_window_real_set_focus to gtk_window_set_focus, so we don't
        emit the signal if unneccessary.

        * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
        containers when grabbing focus on a new widget. this is based on
        a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.

        * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
        flag, so we take the buttons into consideration upon the next focus
        request.

        * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
        assertment.
1998-12-03 06:52:48 +00:00
CST 1998 Shawn T. Amundson
7cc3040412 Fixes for low-color displays and a slight enhancement for true-color
Wed Dec  2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
          enhancement for true-color displays.

        * INSTALL:
          README:
          configure.in:
          gtk+.spec:
          docs/gtk-config.1: up to version 1.1.6
1998-12-03 05:52:19 +00:00
Manish Singh
8285f4fc6f lets #define GTK_HAVE_FEATURES_1_1_6 before we release it this time
-Yosh
1998-12-02 09:38:31 +00:00
Tim Janik
0d15bc6687 s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
Wed Dec  2 01:39:02 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtknotebook.h:
	* gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.

	* incremented version number to 1.1.6 and made Gtk
 	dependant on GLib 1.1.6.

	* gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
 	from guint16 to gint16, since sizes bigger than 32767 are not supported
 	anyways, and aritmethics with intermediate negative values are possible
 	now.

Tue Dec  1 00:00:04 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkscrolledwindow.c:
	implementation of GTK_POLICY_NEVER functionality, added rationales
	on the policy and size requisition handling at the top.
	(gtk_scrolled_window_size_request):
	we assume a default minimum for our child's width and height
	if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
	specified the dimension explicitely.
 	(gtk_scrolled_window_size_allocate):
	do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.

	* gtk/gtkviewport.c (gtk_viewport_size_request): report the real
	size we require (including the child).

        * gtk/gtkclist.c:
	(gtk_clist_size_request): report the real size required.

	* gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.

	* gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
	need to be a static variable.

Mon Nov 30 22:41:25 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkclist.h:
	* gtk/gtkclist.c:
	* gtk/gtkviewport.h:
	* gtk/gtkviewport.c:
	* gtk/gtktext.h:
	* gtk/gtktext.c:
	* gtk/gtklayout.h:
	* gtk/gtklayout.c:
	* gtk/gtkwidget.h:
	* gtk/gtkwidget.c:
	* gtk/gtkscrolledwindow.h:
	* gtk/gtkscrolledwindow.c:
	s/scroll_adjustements/scroll_adjustments/
	s/scroll_adjustments/set_scroll_adjustments/g
1998-12-02 03:40:03 +00:00
Lars Hamann
4ebc61c067 new class method/signal row_move. new public function. emit a row_move
Tue Dec  1 22:45:58 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
	row_move.
	* gtk/gtkclist.c (gtk_clist_row_move): new public function.
	emit a row_move signal
	(real_row_move): move source_row to dest_row
	(gtk_clist_swap_rows): use gtk_clist_row_move calls.
	(gtk_clist_columns_autosize): resize all columns to their optimal
	width
	* gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
	entire sub-tree.
	* gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
1998-12-02 00:52:14 +00:00
Manish Singh
7078402341 configure.in gdk/Makefile.am Put -DFOO stuff into Makefile.am INCLUDES.
* configure.in
* gdk/Makefile.am
* gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
Separate vars for each, for granularity.

-Yosh
1998-12-01 10:42:01 +00:00
Tim Janik
6047ed3ebd fixed a stupid error of mine about the run type values.
Tue Dec  1 02:19:54 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkenums.h: fixed a stupid error of mine about the run type
        values.
1998-12-01 01:22:37 +00:00
Jeff Garzik
471afbe62b Surround debug variable with #ifdef to silence gcc. 1998-11-30 19:35:38 +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
Jeff Garzik
58ca2448eb Added initializer to quiet gcc warning. Added assertion to check for null
Added initializer to quiet gcc warning.
        Added assertion to check for null pointer deref.
1998-11-30 17:19:59 +00:00
Tim Janik
0c36e30836 merged testgtkrc with the pre-themes one, removed system specific
Mon Nov 30 10:11:29 1998  Tim Janik  <timj@gtk.org>

        * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
        system specific includes.

        * gtk/gtksignal.c: asured that stop and restart emissions are also
        checked and processed for not connected objects. fixed up restart
        emission administration. invoke emission hooks after emission, hooks
        are not supposed to muck around with the current emission, and
        may also not cause emission restarts. fixed up stop emission
        administration.
1998-11-30 10:38:29 +00:00
Tim Janik
2c0fc39e62 added an event watcher for enter/leave based on signal emission hooks.
Mon Nov 30 06:20:36 1998  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c: added an event watcher for enter/leave based on
        signal emission hooks.

        * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
        GTK_RUN_NO_HOOKS signal.

        * gtk/gtksignal.h:
        * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
        to a signal with gtk_signal_add_emission_hook or
        gtk_signal_add_emission_hook_full, and can be removed again with
        gtk_signal_remove_emission_hook.

        * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
        an appropriate mask for signal runtypes for a long time now.
        added GTK_RUN_NO_HOOKS value, which is used to flag signals
        that do not allow the running of signal hooks.
1998-11-30 07:09:36 +00:00
Michael Krause
140c26afbc made 'page_num' argument a gint: switch_page signal delivers valid page
1998-11-26  Michael Krause  <m.krause@tu-harburg.de>

        * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
        argument a gint: switch_page signal delivers valid page numbers
        again.
1998-11-29 22:00:28 +00:00
Tim Janik
c7850eccde set composite names.
Sun Nov 29 06:12:01 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment):
        set composite names.
1998-11-29 09:51:02 +00:00
Tim Janik
f755abd275 updates 1998-11-29 06:30:26 +00:00
Tim Janik
60e5a21022 removed default initialization check, people must use gtk_type_init();
Sun Nov 29 06:12:01 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
        check, people must use gtk_type_init();

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
        for internal use by containers, that want to assign specific composite
        names to their composite children.
        added gtk_widget_get_composite_name() which will return a newly
        allocated string, containing the composite name of a widget. valid
        composite names can only be retrived from widgets that have a parent
        assigned and are flagged as GTK_COMPOSITE_CHILD.

        * gtk/gtkcontainer.h:
        * gtk/gtkcontainer.c: added a new function
        gtk_container_child_default_composite_name() which will return a
        newly allocated string, holding the composite name of a containers
        child. a default implementation is provided which will compose the
        composite name out of the widgets type and its sequential children
        id. this implementation can be overidden through a new class function
        *(composite_name)().
1998-11-29 06:29:40 +00:00
Owen Taylor
6edbb34d54 Removed bogus expose_event handler - we had two expose_event handlers!
Sat Nov 28 10:57:59 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
	expose_event handler - we had two expose_event
	handlers!
1998-11-28 15:57:55 +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
Manish Singh
67d445eebc check for existing viewport first, and don't add one if there already is
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
check for existing viewport first, and don't add one if there
already is one

-Yosh
1998-11-28 03:05:31 +00:00
Tim Janik
33347533ec GTK_BASIC and freeze/thaw explanaition 1998-11-28 02:07:44 +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
Raph Levien
36d80dc374 Fixed gdk_input_devices being NULL when compiled with --xinput=xfree but
no XInput extension in X server.
1998-11-27 19:44:01 +00:00
Owen Taylor
f26c189e5b New function to get the source widget of a drag.
Fri Nov 27 12:17:15 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
	get the source widget of a drag.

	* gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
	to restrict certain targets to the same widget or to
	the same application.

	* gtk/testdnd.c: Test gtk_drag_get_source_widget().
1998-11-27 17:16:36 +00:00
Lars Hamann
4ab10dc891 define GtkCTreeNode as boxed type use GTK_CTREE_NODE_TYPE instead of
Thu Nov 26 19:11:46 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
	* gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
	instead of GTK_TYPE_POINTER in signal definitions.
	(patch from James Henstridge <james@daa.com.au>)

Thu Nov 26 18:48:44 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (set_cell_contents)
	* gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
 	if auto.resize == TRUE

	* gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
 	don't draw tab, if show_tabs == FALSE
 	(bug reports from Alexis Mikhailov / Dave Cole)
 	(gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
 	the focus rectangle, not the hole tab.
1998-11-26 18:47:58 +00:00
Tim Janik
c7ac3835fa reverted bogus and undocumented!!! changes from Jay Cox (98/11/23
Thu Nov 26 03:18:08 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.h:
        * gtk/gtkctree.h:
        * gtk/gtkclist.c:
        * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
        Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.

        * gtk/maketypes.awk: changed underline substitution, so we get
        GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
        * gtk/makeenums.pl: likewise.
        * gtk/gtkctree.c: adapted type names accordingly.
1998-11-26 03:43:24 +00:00
Jeff Garzik
ce073aac7d Replaced pushd and popd calls with equivalent shell code.
pushd and popd are not supported by ksh or sh [under Solaris at least].
1998-11-25 17:13:14 +00:00
Elliot Lee
9cb5eb75f8 use $srcdir instead of the $OBJ_DIR hack 1998-11-25 16:34:23 +00:00
Owen Taylor
a425e6b5c2 Edited section on the ScrolledWindow.
Tue Nov 24 11:31:06 1998  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-1.2.txt: Edited section on the ScrolledWindow.

	* gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
	some code duplication.

	* gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
	and child widgets when scrolling greater than 32k pixels.

	* testgtk.c: Modified layout test to test scrolling over
	long distances.

	* gtk/gtkplug.c: Added a few blank lines.
1998-11-24 19:33:01 +00:00
Owen Taylor
1bb0d4c0f3 Fixed up copyright message.
Tue Nov 24 11:11:05 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtklayout.[ch]: Fixed up copyright message.

	* gdk/gdkrgb.c (DM): Make the dither matrix constant
	so it can be shared.

	* gtk/gtkdnd.c: Make cursor bitmaps const.

	* gdk/gdk.h gdk/gdkpixmap.c: Added const to
	gdk_pixmap/bitmap_create_from_data.
1998-11-24 16:15:46 +00:00
Tim Janik
5efb9be963 added a section on scrolled windows and scrollable widgets.
Tue Nov 24 07:46:09 1998  Tim Janik  <timj@gtk.org>

        * docs/Changes-1.2.txt: added a section on scrolled windows and
        scrollable widgets.
1998-11-24 07:23:06 +00:00
Andrew T. Veliath
b0fd18c7bf Include radio buttons when setting relief for button items.
* gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
	buttons when setting relief for button items.
	(gtk_toolbar_set_button_relief): Same.
1998-11-24 06:27:02 +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
5a5fb5635f Fixed accidentally introduced typo. 1998-11-24 05:10:21 +00:00
Owen Taylor
ee1d43929c Added layout widget for scrolling arbitrarily big areas. Added plug/socket
Mon Nov 23 22:10:09 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
	gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:

	Added layout widget for scrolling arbitrarily big areas.
	Added plug/socket widgets for interprocess embedding.

	These widgets still, at some point, need to be
	made more pure in their use of GDK, as opposed
	to raw X.

	* gtk/testgtk.c: Added test for layout widget.
1998-11-24 04:45:29 +00:00
Jeff Garzik
42faec1736 Bugfix from Brandon Long <blong@fiction.net> - Do the intended thing with
* gtk/gtkclist.c: (gtk_clist_swap_rows):
Bugfix from Brandon Long <blong@fiction.net> -
Do the intended thing with 'first' and 'last' list index
1998-11-24 04:25:38 +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
Manish Singh
72bd1c5859 make a saner default adjustment (from 0 to 100) instead. I'm not sure if
* gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
default adjustment (from 0 to 100) instead. I'm not sure if this
is the correct level for the fix, but gtk_progress_bar_new()'s
original default behavior is restored.

-Yosh
1998-11-23 12:29:03 +00:00
Martin Baulig
8e2b7688fd Define this so we can check for latest GTK features.
1998-11-23  Martin Baulig  <martin@home-of-linux.org>

	* gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
	we can check for latest GTK features.
1998-11-23 11:08:12 +00:00
Havoc Pennington
3e90b96b08 When setting relief, also affect toggle buttons.
1998-11-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
	(gtk_toolbar_insert_element): When setting relief, also affect
	toggle buttons.
1998-11-23 06:53:07 +00:00
Manish Singh
6c0458c428 remove extraneous comma
* gtk/gtkobject.h: remove extraneous comma

-Yosh
1998-11-23 04:37:57 +00:00
Tim Janik
b9017e53a2 removed assertements for constructed containers again, since this
Mon Nov 23 05:21:50 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c:
        (gtk_container_add_with_args):
        (gtk_container_addv):
        (gtk_container_add): removed assertements for constructed containers
        again, since this essentially breaks the "child" arg.

        * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
        reference count, we don't need to reference toplevels that already have
        destroy notifiers.

        * gtk/gtkscrolledwindow.c: check for the composites existance in
        _forall since we might not be already constructed.
1998-11-23 04:32:04 +00:00
Shawn Amundson
72149265a3 configure.in: require GLib 1.1.5 1998-11-23 03:07:50 +00:00
Tim Janik
f46ffebbc8 minor buglet 1998-11-23 02:41:18 +00:00
Tim Janik
97fd98099c minor updates 1998-11-23 02:31:44 +00:00
Tim Janik
10a2d8be70 disconnect hadj & vadj, not 2 * hadj.
Mon Nov 23 03:21:17 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
        2 * hadj.
1998-11-23 02:30:45 +00:00
Tim Janik
988f43bfa0 update 1998-11-23 02:01:14 +00:00
Tim Janik
98e22a43ab added args ::show_text, ::text_xalign, ::text_yalign, ::activity_mode.
Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
 	::text_yalign, ::activity_mode.

	* gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
 	::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
 	::activity_blocks.
	(gtk_progress_bar_new):
	(gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
	(gtk_progress_bar_construct): deprecated.

	* gtk/gtkvscrollbar.c:
	(gtk_vscrollbar_draw_step_back):
	(gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
 	gtk_paint_arrow, to be consistent with hscrollbar.

	* gtk/gtktext.c
	added construct args ::hadjustment, ::vadjustment.
	added args ::line_wrap, ::word_wrap.
	(gtk_text_class_init): added scroll_adjustments signal.
	(gtk_text_new): use gtk_widget_new.
	(gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
	so we don't screw the reference counts and don't leave signals connected.
 	(gtk_text_destroy): disconnect adjustments signals.
 	(gtk_text_finalize): unref adjustments.

	* gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
	added args ::indent, ::spacing, ::show_stub, ::reorderable,
 	::use_drag_icons, ::line_style and ::expander_style.
	(gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
	deprecated now.

	* gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
	* gtk/gtkclist.c:
 	removed ::vadjustment and ::hadjustment args, introduced
 	::scroll_adjustments signal.
	added ::shadow_type, ::selection_mode and ::row_height args.
	added n_columns construct arg.
	(gtk_clist_construct): call gtk_object_constructed().
 	(gtk_clist_set_row_height): if height is passed as 0,
	revert to automatic height calculation.
	(gtk_clist_destroy): before unrefing the adjustments, disconnect our
	signal handlers.

Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
	like gtk_object_new.
	(gtk_widget_destroy): assert that we only destroy constructed widgets.

	* gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
	to identify args that may only be used for construction.
	GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
	time.
	* gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
	at the end if the object is not fully constructed.
	(gtk_object_newv): likewise.
	(gtk_object_destroy): assert that we only destroy constructed objects.
 	(gtk_object_init): setup GTK_CONSTRUCTED from the
	objects real klass.
	(gtk_object_default_construct): new function to complete default
	construction of an object by applying missing construtor args with
	default values of 0, 0.0 or NULL.
	(gtk_object_constructed): new function to mark an object as being
	constructed (used from within constructors).

	* gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
	so it is immediatedly available for the caller.

	* gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
	the object initilizer (GtkObjectInitFunc takes a second arg now, the
 	real klass), and asure that object initializers may temporarily alter
	the class pointer.

Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>

	* gtk/testgtk.c: change all occourances of gtk_container_add (
	scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
	for widget!=(clist, ctree, text, viewport).

	* gtk/gtkcombo.c:
 	(gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
	to add children to the scrolled window.

	* gtk/gtkscrolledwindow.h:
	* gtk/gtkscrolledwindow.c:
	changed scrolled_window->viewport to scrolled_window->child, and use
	gtk_widget_scroll_adjustements() to set the scroll adjustments for the
	widget, we do not create an additional viewport anymore.
	added ::hadjustment and ::vadjustment constructor args.
 	(gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
	(gtk_scrolled_window_set_hadjustment):
	(gtk_scrolled_window_set_vadjustment): new functions that superceed
	gtk_scrolled_window_construct.
	(gtk_scrolled_window_construct): deprecated this function.

	* gtk/gtkhscrollbar.c:
	* gtk/gtkvscrollbar.c:
	* gtk/gtkhscale.c:
	* gtk/gtkvscale.c:
	support a constructor arg "::adjustment", and use gtk_widget_new() for
	the widget creation.

	* gtk/gtkrange.c: added ::update_policy arg.
 	(gtk_range_set_adjustment): if adjustment is passed in as NULL, create
 	a default adjustment so this function can be used for derived widgets
 	that depend on the adjustment's existance.
	(gtk_range_destroy): disconnect the adjustment signal, so we don't
	get called after we got destroyed, we don't destroy the adjustment
	in here, because it might have been provided from another widget.

	* gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
	(gtk_viewport_destroy): same as gtk_range_destroy.

	* gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.

	* gtk/gtkwidget.h:
	* gtk/gtkwidget.c: changed gtk_widget_activate() to return a
	gboolean, indicating whether this widget supports activation.
	added gtk_widget_scroll_adjustements() to set the scrolling
	adjustments of a widget.

Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkoptionmenu.c:
 	(gtk_option_menu_remove_contents):
	(gtk_option_menu_update_contents): removed
 	gtk_container_[un]block_resize() pairs.

	* gtk/gtknotebook.h:
	* gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
	be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
	wrtie-only argument.

	* *.c: made deprecated functions issue a message:
	gtk_clist_set_border, gtk_container_block_resize,
 	gtk_container_unblock_resize, gtk_container_need_resize,
 	gtk_object_class_add_user_signal, gtk_spin_button_construct,
	gtk_scrolled_window_construct.
	removed non-functional functions:
	gtk_container_disable_resize, gtk_container_enable_resize,
	gtk_clist_set_policy.

Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkbox.c (gtk_box_init):
	* gtk/gtkdrawingarea.c (gtk_drawing_area_init):
	* gtk/gtkeventbox.c (gtk_event_box_init):
	* gtk/gtkfixed.c (gtk_fixed_init):
	* gtk/gtkframe.c (gtk_frame_init):
	* gtk/gtkhandlebox.c (gtk_handle_box_init):
	* gtk/gtkpacker.c (gtk_packer_init):
	* gtk/gtkmisc.c (gtk_misc_init):
	* gtk/gtkpreview.c (gtk_preview_init):
	* gtk/gtkprogress.c (gtk_progress_init):
	* gtk/gtkprogressbar.c (gtk_progress_bar_init):
	* gtk/gtkseparator.c (gtk_separator_init):
	* gtk/gtktable.c (gtk_table_init):
	* gtk/gtkviewport.c (gtk_viewport_init):
	* gtk/gtkalignment.c (gtk_alignment_init):
	removed setting of the GTK_BASIC flag.

	* gtk/gtkwidget.h:
	* gtk/gtkwidget.c:
	removed GTK_BASIC, GTK_WIDGET_BASIC and	gtk_widget_basic.

	* miscellaneous GtkType and macro fixups.
1998-11-23 01:54:45 +00:00
CST 1998 Shawn T. Amundson
12f7825907 INSTALL: NEWS: README: gtk+.spec: docs/gtk-config.1: Version incremented
Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * configure.in:
          INSTALL:
          NEWS:
          README:
          gtk+.spec:
          docs/gtk-config.1: Version incremented to 1.1.5

        * Released GTK+ 1.1.5
1998-11-23 01:46:11 +00:00
Owen Taylor
d88375e9c3 Fixed so it at least works with window managers other than Enlightenment,
Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
	Fixed so it at least works with window managers other
	than Enlightenment, though it probably needs to be
	removed altogether.
1998-11-22 00:06:57 +00:00
Andrew T. Veliath
06d68566df Minor indent fix on gtk_handle_box_get_arg proto 1998-11-21 15:04:49 +00:00
Andrew T. Veliath
b1ab800825 Add shadow_type and gtk_handle_box_set_shadow_type function (plus a
1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>

	* gtk/gtkhandlebox.[ch]: Add shadow_type and
	gtk_handle_box_set_shadow_type function (plus a
	GtkHandleBox::shadow arg) to allow configuration of shadow in the
	bin window.
1998-11-21 10:08:41 +00:00
CST 1998 Shawn T. Amundson
27a8669d0d Fix for marking days from Dan Reish <dreish@izzy.net>.
Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkcalendar.c: Fix for marking days from
	  Dan Reish <dreish@izzy.net>.
1998-11-20 05:51:45 +00:00
Elliot Lee
14f08e6a93 allow setting $OBJ_DIR to specify building in a subdir 1998-11-20 04:21:48 +00:00
Tim Janik
45c02db925 crift removal 1998-11-19 15:05:19 +00:00
Lars Hamann
7351327089 return the nth GtkCTreeNode in row_list. (from Samuel Solon
Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
	in row_list. (from Samuel Solon <ssolon@usa.net>)

	* gtk/gtkclist.c (gtk_clist_get_column_title): return column title
	(gtk_clist_get_column_widget): return column widget
1998-11-18 23:55:10 +00:00
Arturo Espinosa
3725bc3ad9 Bah, the ChangeLog got unsynced - Federico 1998-11-18 17:20:23 +00:00
Owen Taylor
8715d1c1b3 Accept drops that are sent to a toplevel but are not within the toplevels
Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
	that are sent to a toplevel but are not within the
	toplevels bounds.

	* gdk/gdkdnd.c gdk/gdk.h: Added support for a
	XdndProxy atom which proxies the drag to another window.
1998-11-18 17:00:48 +00:00
Ben Gertzfield
fb6a7ccb92 Argh. Missed one dumb space in rules file. Fixed. 1998-11-18 06:25:35 +00:00
Ben Gertzfield
9c3e01cf3a add -b (binary-only; no source packages) flag to dpkg-buildpackage 1998-11-18 05:32:52 +00:00
Ben Gertzfield
a85038d0ec libgtk-cvs-dev now Provides: and Replaces: libgtk1.1-dev 1998-11-18 04:40:02 +00:00
Ben Gertzfield
d8bbe62f8e Added a newline to print NEWVERSION 1998-11-18 04:23:35 +00:00
Carsten Haitzler
6343181e2b Tue Nov 17 1998 The Rasterman <raster@redhat.com> Added
Tue Nov 17 1998 The Rasterman <raster@redhat.com>
        * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
          function to correctly determine gdk window position relative to
	  its "root window" - contains check for an Enlightenment
	  virtual root window.
        * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
	  gdk_window_get_deskrelative_origin to get the origin of dragged
	  handleboxes correctly. Now it works correctly with E.
1998-11-18 03:15:14 +00:00
lukka
e2f7831640 *** empty log message *** 1998-11-18 00:57:16 +00:00
Ben Gertzfield
9b26da82ca Added Debian CVS build scripts. To build a snapshot Debian release,
simply run, from within the top level of the gtk+ directory:

[ben@gilgamesh:~/src/gtk-snap/gtk+]% debian/build                        1:16PM

This will build a Debian snapshot release, updating debian/changelog, and
place the resultant .debs in .. (~/src/gtk-snap/ in this example).
The version numbers are automatically updated, and look like:

YYYYMMDD.XX

where YYYY is the four-digit year (Y10K problem!) and MM is the
month (01-12) and DD is the day (01-31). XX is the build number;
it starts at 01 and debian/build increments it if you build from
CVS more than once in a day. If you're doing more than 99 CVS
builds in one day you need your head checked.

*NOTE*! The debian/build script I've written does not check in the
changes it has made to debian/changelog; that'd be scary and probably
generate too many log files all the time.

This really doesn't matter *too* much, since debian/changelog is
kind of irrelevant with CVS builds. Just know that the scant
information that is in there will not be updated via CVS.

Also, for obvious reasons, the debian/build script I've written
disables PGP signing of the resultant .changes and .dsc file.
Since these packages are not going into any archives, this will
not be a problem.

Of course, all this doesn't mean much to you if you don't have the
Debian dpkg-dev tools and debhelper installed, so don't worry if
you have no idea what I'm talking about. :)
1998-11-17 21:19:25 +00:00
Martin Baulig
cb4a61eaa3 Put output files in the current directory and not in the $(srcdir) since
1998-11-17  Martin Baulig  <martin@home-of-linux.org>

	* gtk/genmarshal.pl: Put output files in the current directory
	and not in the $(srcdir) since the VPATH is ignored for built
	sources.
1998-11-17 20:47:33 +00:00
Manish Singh
3e1dcab4c0 gtk/genmarshal.pl check for unchanged autogenerated files, so we don't
* gtk/genmarshal.pl
* gtk/Makefile.am: check for unchanged autogenerated files, so
we don't rebuild everything just for adding a new function

-Yosh
1998-11-17 09:59:26 +00:00
CST 1998 Shawn T. Amundson
bb0ec69706 Pixmaps now grey out when insensitive, code thanks to GNOME stock by
Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkpixmap.h
          gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
          code thanks to GNOME stock by Eckehard Berns.  New function
          gtk_pixmap_set_build_insensitive to provide ability to turn
          this off.
1998-11-17 01:34:07 +00:00
Lars Hamann
e94a7b1a7a new flags : homogeneous; new guints : tab_hborder, tab_vborder; marked
Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
	new guints : tab_hborder, tab_vborder; marked tab_border deprecated
	(struct _GtkNotebookPage): new flags : expand, fill, pack

	* gtk/gtknotebook.h/c
	(gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
 	tabs
	(gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
	(gtk_notebook_set_tab_hborder): new function. set tab_hborder
	(gtk_notebook_set_tab_vborder): new function. set tab_vborder
	(gtk_notebook_query_tab_label): new function. get tab_label widget.
	(gtk_notebook_set_tab_label): new function. set tab_label widget.
	(gtk_notebook_set_tab_label_text): new function. set tab_label text.
	(gtk_notebook_query_menu_label): new function. get tab_label widget.
	(gtk_notebook_set_menu_label): new function. set tab_label widget.
	(gtk_notebook_set_menu_label_text): new function. set tab_label text.
	(gtk_notebook_set_tab_label_packing): new function. set tab_label
 	fill, expand, fill_type
	(gtk_notebook_query_tab_label_packing): new function. get tab_label
 	fill, expand, fill_type

	(gtk_notebook_real_page_position): return logic page number
	(gtk_notebook_search_page) search next/prev logic page
	(gtk_notebook_update_labels): set logic page number.
	(gtk_notebook_page_compare): renamed gtk_notebook_find_page
	(gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
 	CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
 	(gtk_notebook_button_press) (gtk_notebook_key_press)
 	(gtk_notebook_focus) (gtk_notebook_pages_allocate)
	(gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
 	use gtk_notebook_search_page
	(gtk_notebook_page_allocate): fixed allocation bug
	(gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
	(gtk_notebook_init): unset GTK_NO_WINDOW flag
	(gtk_notebook_size_request): check whether page->child is visible.
 	changes due to tab h/vborder, homogeneous tabs
	(gtk_notebook_paint): don't draw invisible tabs
	(gtk_notebook_switch_page): calculate page_num if it's less than 0
 	(gtk_notebook_append_*) (gtk_notebook_prepend_*)
 	(gtk_notebook_insert_page): removed sanity checks

	* gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
1998-11-16 23:40:50 +00:00
Owen Taylor
7e44eced8c Optimizations for moving point n places. (gtk-mailund-980718-0, Thomas
Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c: Optimizations for moving point n
	places.
	(gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)

	* gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
	broken. (GtkWidget's default unmap handler should work fine).
	Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
1998-11-16 23:18:06 +00:00
Manish Singh
d8ab8e0e7d added shadow_type setting and gtk_menu_bar_set_shadow_type function to
* gtk/gtkmenubar.[ch]: added shadow_type setting and
gtk_menu_bar_set_shadow_type function to allow shadow
configurability for menubars

* gtk/gtkviewport.h: use GtkShadowType enum instead of generic guint

-Yosh
1998-11-16 09:05:26 +00:00
Tim Janik
3ae1549289 relookup type node after class creation and parent class' object
Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
        class creation and parent class' object initializer.
1998-11-16 06:05:37 +00:00
Guillaume Laurent
3196b43aa2 Corrected signals declarations 1998-11-14 18:19:23 +00:00
Federico Mena Quintero
3552f4bbf8 Destroy the cursor after we have assigned it to the window -- there is no
1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
	have assigned it to the window -- there is no point in keeping it around.
	(gtk_paned_unrealize): No need to destroy the cursor here.

	* gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
	it is not needed.
1998-11-13 23:10: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
Lars Hamann
8b621ad059 don't show event_window (gtk_toggle_button_map) (gtk_toggle_button_unmap):
Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
        show event_window
        (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
        event_window if draw_indicator is set
        (gtk_toggle_button_set_mode):
1998-11-13 16:07:04 +00:00
Manish Singh
d1e07dbee8 cast NULL to GtkItemFactoryCallback to ensure proper type (SunPro cc
* gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
ensure proper type (SunPro cc complains)

* gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"

* gtk/gtktogglebutton.c: use our own draw method so we get proper
redraws on active state

-Yosh
1998-11-12 23:38:42 +00:00
Lars Hamann
b214f7e59e use GtkPositionType defines.
Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
	defines.

	* gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
	GTP_POS_RIGHT
1998-11-11 23:40:17 +00:00
Lars Hamann
f164436f86 added ARG_WINDOW_PLACEMENT
Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
        (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
        added ARG_WINDOW_PLACEMENT

        * gtk/gtkclist.c (size_allocate_columns): resize column if column
        button > column width and auto_resize is set
        (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
        consider column button width of auto resized columns
        (gtk_clist_parent_set): removed

        * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
        (auto_resize_columns): auto_resize all columns
        (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
        (column_auto_resize): respect column button width of auto resized
        columns
1998-11-11 20:46:51 +00:00
Martin Baulig
d5f4e60c56 Define this so we can check for latest GTK features.
1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>

	* gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
	we can check for latest GTK features.
1998-11-10 16:01:03 +00:00
Lars Hamann
6ef274c0ed new enum GtkCornerType added window_placement. new method to set
Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkenums.h : new enum GtkCornerType
        * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
        window_placement.
        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
        new method to set window_placement.
        (gtk_scrolled_window_viewport_allocate)
        (gtk_scrolled_window_size_allocate): few changes due to
        window_placement.
        * gtk/testgtk.c (remove_selection): fixed while loop.
1998-11-09 00:23:37 +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
Jay Cox
a77c4da512 forward declaration for gtk_window_paint declare xid_ht static get the
1998-11-07  Jay Cox  <jaycox@earthlink.net>

	* gtk/gtkwindow.c: forward declaration for gtk_window_paint
	* gdk/gdkxid.c: declare xid_ht static
	* examples/*/Makefile: get the link ordering right.
1998-11-07 16:12:37 +00:00
Stefan Jeske
cf1d80fd80 Set background of title button window to GTK_STATE_NORMAL instead of
* gtk/gtkclist.c (gtk_clist_realize): Set background of
  title button window to GTK_STATE_NORMAL instead of
  GTK_STATE_SELECTED to avoid ugly flicker.
1998-11-07 15:45:27 +00:00
Lars Hamann
9d874ec20a resize clist if adjustments are NULL and list size has changed
Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
 	if adjustments are NULL and list size has changed
	(gtk_clist_size_request): return real list requsition,
 	if adjustments are NULL.
	(size_allocate_columns): use button->requisition.with, if column
 	width is not set.
	(list_requisition_width): new function. return full list width.
	(gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
	auto create adjustments.
	(gtk_clist_motion) (move_vertical) (move_horizontal):
 	check adjustment != NULL.
1998-11-07 14:29:22 +00:00
Guillaume Laurent
75fff482b9 Added warning about callback on <Branch> items 1998-11-07 00:33:22 +00:00
Owen Taylor
b0f8915fe7 Indentation cleanups.
Fri Nov  6 17:10:03 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
	cleanups.
1998-11-06 22:10:27 +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
Lars Hamann
3c0df19a58 gtk/gtkclist.h (struct _GtkCListClass) removed scrollbar_spacing.
Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.h (struct _GtkCListClass)
	* gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1998-11-05 18:16:17 +00:00
Lars Hamann
00fbbe68b0 removed vscrollbar, hscrollbar, vscrollbar_policy, hscrollbar_policy.
Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
 	vscrollbar_policy, hscrollbar_policy. added h/vadjustment.

	* gtk/gtkclist.c (gtk_clist_class_init): added new args types
  	"hadjustment" & "vadjustment"
 	 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
  	set/get_arg functions
 	(gtk_clist_construct): don't create/adjust scrollbars.
 	(gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
 	to set h/vadjustments
  	(gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
 	to query h/vadjustments
 	(create_scrollbars): removed.
 	(create_adjustments): replacement for create_scrollbars
 	(gtk_clist_new): call gtk_clist_new_with_titles
 	(gtk_clist_new_with_titles): don't warn on titles == NULL
 	(move_horizontal): use CLAMP instead
 	(gtk_clist_set_policy): deprecated method.
  	use gtk_scrolled_window_set_policy instead.
 	(vadjustment_value_changed): use clist->vadj.
 	(adjust_scrollbars): renamed to adjust_adjustments
 	(adjust_adjustments): former adjust_scrollbars
 	(gtk_clist_destroy): unref adjustments
 	(gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
  	(gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
  	(gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
 	(gtk_clist_thaw) (real_insert_row) (real_remove_row)
 	(gtk_clist_set_row_height) (real_resize_column):
 	call adjust_adjustments
 	(gtk_clist_moveto): return if clist has no adjustments yet.
 	(gtk_clist_parent_set): new GtkWidget::parent_set function.
 	Autogenerate h/vadjustments if needed.
 	(move_horizontal) (move_vertical): some cleanups

	* gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
  	call only gtk_viewport_set_h/vadjustment and let these functions
  	do the work.
 	(gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
 	generate a new adjustment if needed

	* gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
  	use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
  	queue_resize if visibility of scrollbars changes
  	(gtk_scrolled_window_remove): only call container_remove with
  	scrolled_window->viewport automatically if viewport was autogenerated
 	(gtk_scrolled_window_add): add widget as scrolled_window->viewport.
 	auto create a viewport only if widget does not take h/vadjustments.
 	(gtk_scrolled_window_construct): don't generate a viewport
  	automatically.
 	(gtk_scrolled_window_forall): call callback with viewport in any case
 	(gtk_scrolled_window_set_arg): call gtk_container_add in case of
  	ARG_VIEWPORT
 	(gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
 	(gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
  	viewport != NULL

	* gtk/testgtk.c
 	(create_ctree) (export_ctree) (create_clist): use a scrolled_window
  	in conjunction with clists/ctrees

	* gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
 	in conjunction with clists

	* gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
 	in conjunction with clists
1998-11-05 15:44:22 +00:00
Lars Hamann
6a227eec1c fix focus_row adjustment (gtk_ctree_remove_node): select focus_row if
Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
        (gtk_ctree_remove_node): select focus_row if needed
        (cell_size_request): only get pixmap size if pixmap != NULL
1998-11-04 21:44:09 +00:00
Tim Janik
08ebf9dbe9 added a bunch of checks for widget != NULL and GTK_IS_WIDGET (widget):
Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
        GTK_IS_WIDGET (widget):
1998-11-04 03:32:22 +00:00
Lars Hamann
268dd6deb7 set correct focus_row after a remove_row call.
Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
	focus_row after a remove_row call.
1998-11-04 01:28:07 +00:00
GMT 1998 Austin Donnelly
b9a51f3530 gtk/gtkoptionmenu.c make option menus work when some of the menuitems are
Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>

	* gtk/gtkoptionmenu.c
	* gtk/gtkmenushell.c: make option menus work when some of the
	menuitems are hidden - previously, option menu would popup too
	high.
1998-11-01 21:10:44 +00:00
Raja R Harinath
5492003cff Forgot to commit ChangeLog 1998-11-01 01:44:44 +00:00
Raja R Harinath
f2fe3fe221 Remove `#pragma }'.
* gtk/gtkfeatures.h.in: Remove `#pragma }'.

* gdk/gdki18n.h: Update to use new `glib' widechar defines.

* configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
case instead.
(wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
(GDK_WLIBS): New variable.  Lists extra libraries needed to use
widechar functions.
* gtk-config.in (--libs): List $GDK_WLIBS, too.
1998-11-01 01:44:05 +00:00
Shawn Amundson
704266d646 Require GLib 1.1.4 1998-10-31 10:01:16 +00:00
CST 1998 Shawn T. Amundson
4848d691e0 Released GTK+ 1.1.3
Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.3

        * INSTALL:
        * NEWS:
        * README:
        * gtk+.spec:
        * docs/gtk-config.1: updated for v1.1.3

        * Makefile.am
        * sanity_check
        * docs/Makefile.am: Includes new 'make release' as well as
          'make sanity'.  Also handles html and text creation from html,
          and puts them into the distribution

        * docs/Makefile.sgml: removed, similar functionality is now in
          the Makefile.am file

        * docs/.cvsignore: ignore html and text directories
        * docs/glib.texi: removed (now in glib dist)
1998-10-31 09:53:29 +00:00
Lars Hamann
52f5eeab68 free undo_un/selection, unselect list_item before disconnect signal
Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtklist.c (gtk_list_remove_items_internal):
	free undo_un/selection, unselect list_item before disconnect
	signal functions
	(gtk_list_destroy): removed. gtk_list_shutdown clears the list
	already
	(gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
	(gtk_list_signal_item_toggle)	(gtk_list_signal_scroll_horizontal)
 	(gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
 	(gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
 	(gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
 	(gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
 	(gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
 	new functions. These functions are signal connected to inserted
 	list_items, to handle key bindings and GtkItem::de/select/toggle
 	signals.

	* gtk/gtklistitem.c (gtk_list_item_class_init): added missing
	gtk_object_class_add_signals call.
	(gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
	(gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
	(gtk_list_item_start_selection) (gtk_list_item_end_selection)
	(gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
	(gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
 	removed. These functions are handled via connected
 	gtk_list_signal_* functions now
1998-10-30 19:57:50 +00:00
Tim Janik
fd8a1c93a9 cause the built sources to be rebuild when possible, even with
Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: cause the built sources to be rebuild when possible,
        even with --include-deps:
        $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1998-10-30 04:25:42 +00:00
Tim Janik
e655e59bc7 renamed from gtk_object_data_set_destroy to fit the gtkobject.h API.
Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
        gtk_object_data_set_destroy to fit the gtkobject.h API.

        * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
        * gtk/gtkfontsel.h:
        * gtk/gtkfontsel.c:
        Added support for an extra 'base' filter which an application can
        set to restrict the fonts available to the user (e.g. a terminal
        program only wants the user to be able to select fixed-width fonts).
        The type of font (bitmap/scalable/scaled bitmap) is now
        also a part of the filter, so that an application can
        request that only scalable fonts are shown.
        There are new functions to set the base & user filters.
        I've also stopped the up/down key press signals getting
        to the clists since the font selection widget handles
        them itself. It acted a bit strangely before.
1998-10-30 01:34:06 +00:00
Joel Becker
4dce69399a fixed xlc stuff 1998-10-26 03:12:19 +00:00
Joel Becker
0d214799be fixed extraneous "," on line 390 1998-10-26 00:29:12 +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
6d5faa20c4 added more g_return_if_fail() statements.
Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1998-10-25 10:00:19 +00:00
Lars Hamann
18ce1ade26 removed. gtk_clist_destroy is sufficient
Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
        is sufficient
1998-10-22 21:00:01 +00:00
Lars Hamann
87b6664073 samll fix for invisible columns
Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
        columns
1998-10-22 14:54:28 +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
Arturo Espinosa
acfab255cc One-character fix to make it compile - Federico 1998-10-21 16:22:28 +00:00
Owen Taylor
4b2885b5d3 Always send "drag_leave" to dests without GTK_DEST_DEFAULT_MOTION.
Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c: Always send "drag_leave" to dests
	without GTK_DEST_DEFAULT_MOTION.

Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
	on destroyed windows so we clear the XID table properly.
	Finish up restructure of return value handling that
	was half-done before.

Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
	the window tree more comprehensively, so that we find
	client windows hidden under non-toplevels.

Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c (gtk_selection_data_set):
	Maintain the null-termintation guarantee, even when
	data = NULL, length = 0. (Warn on data = NULL,
	length > 0)

Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
	into function prototype for drag_data_received.
1998-10-20 18:43:54 +00:00
Paolo Molaro
7a564681b1 file testps.c was initially added on branch ps-mf. 1998-10-20 16:22:48 +00:00
Paolo Molaro
4e0feda1bd file region.h was initially added on branch ps-mf. 1998-10-20 16:22:46 +00:00
Paolo Molaro
a31d35650b file poly.h was initially added on branch ps-mf. 1998-10-20 16:22:44 +00:00
Paolo Molaro
a558d2dfef file gdkps.h was initially added on branch ps-mf. 1998-10-20 16:22:40 +00:00
Paolo Molaro
0aae38d765 file gdkps.c was initially added on branch ps-mf. 1998-10-20 16:22:39 +00:00
Paolo Molaro
40428da32c file gdkdrawable.c was initially added on branch ps-mf. 1998-10-20 16:22:35 +00:00
Paolo Molaro
5f53c26527 file Region.c was initially added on branch ps-mf. 1998-10-20 16:22:32 +00:00
Paolo Molaro
e812996962 file PolyReg.c was initially added on branch ps-mf. 1998-10-20 16:22:31 +00:00
Paolo Molaro
75f85f940e Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>

	* gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1998-10-20 09:54:57 +00:00
Lars Hamann
e45890a616 rearranged some functions (gtk_clist_set_column_auto_resize): new
Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c: rearranged some functions
	(gtk_clist_set_column_auto_resize): new function. toggle auto_resize
 	flag of column
	(gtk_clist_set_column_resizeable): if resizeable disable auto_resize
	(gtk_clist_set_border): deprecated function, use
 	gtk_clist_set_shadow_type instead.
	(gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
 	(adjust_scrollbars): some cleanups
	(select_row) (unselect_row): removed. replaced by equivalent
	gtk_signal_emit calls
	(add_style_data): removed, use gtk_clist_style_set instead
	(gtk_clist_style_set): fill in size data, after style was set.
 	(set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
 	(gtk_clist_set_cell_style): auto_resize columns if needed
	(column_auto_resize): resize column if needed for auto_resize
	(real_clear): disable auto_resize while list destroy
	(resize_column): removed

	* gtk/gtkctree.c : (gtk_ctree_remove_node)
	(gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
	(gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
 	(set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
	(real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
	(real_tree_collapse) (real_tree_expand) (column_auto_resize):
 	auto_resize columns if needed
	(gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
	(real_clear): disable auto_resize while processing the tree

	* gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
	for one column
1998-10-19 22:46:38 +00:00
Owen Taylor
b443f453ed Fixed typo - look for right atom on transfer failures.
Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
	typo - look for right atom on transfer failures.
1998-10-19 14:15:27 +00:00
Christopher Blizzard
9b00b1a2ed add testdnd to .cvsignore 1998-10-19 01:46:49 +00:00
Owen Taylor
65a9d5b2f9 Change signal for drag_data_get to match the use that was being made of it
Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwidget.c gtkmarshal.list: Change signal
	for drag_data_get to match the use that was being
	made of it everywhere else...
1998-10-19 00:51:21 +00:00
Owen Taylor
d5129fbb3a New test program for new DND. (Old DND tests in testgtk still need to be
* gtk/testdnd.c: New test program for new DND. (Old
	DND tests in testgtk still need to be converted.)
1998-10-18 23:28:36 +00:00
Owen Taylor
58d21d03f6 Missed two files. 1998-10-18 22:52:25 +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
Martin Baulig
7dbb5755a4 new function to toggle line wrapping like gtk_text_set_word_wrap ()
1998-10-18  Martin Baulig  <martin@home-of-linux.org>

	* gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
	line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
1998-10-18 13:10:08 +00:00
Lars Hamann
eff33964d7 change a few cell styles of inserted row (change_style): change style of
Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>

	* gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
	styles of inserted row
	(change_style): change style of focus_row

	* gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
	(gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
	to set/get row/cell styles.
	(gtk_clist_realize): attach row and cell style, allocate row colors.
	(gtk_clist_unrealize): detach row and cell styles.
	(get_cell_style): new function. get correct cell style.
	(draw_cell_pixmap): new function.
	(draw_row): draw cells with row or cell styles.
	(row_new): set cell and row styles to NULL.
	(row_delete): detach & unref cell and row styles.

	* gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
	new functions to attach/detach styles and allocate colors.
	(gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
	styles of invisible nodes.
	(draw_cell_pixmap): new function.
	(get_cell_style):  new function. get correct cell style.
	(gtk_ctree_draw_expander): new function. draw tree expander.
	(gtk_ctree_draw_lines): new function.draw tree lines.
	(draw_row): draw cells with row or cell styles.
	(row_new): set cell and row styles to NULL.
	(row_delete): detach & unref cell and row styles.
	(gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
	(gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
	Analogons of GtkCList functions
	(gtk_ctree_set_spacing): new function. set spacing between
	tree expander and cell contents
	(gtk_ctree_set_expander_style): new function. set expander style
	of ctree.
	(ctree_is_hot_spot): few changes due to draw_row modifications.
1998-10-16 15:00:05 +00:00
Paolo Molaro
0849664209 Wed, 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
* gtk/gtkcombo.c: try completion on MOD1-TAB.
	Handle case when the combo->list is empty.
1998-10-14 09:07:18 +00:00
Tim Janik
b6b7941b0d fixed a comment 1998-10-12 11:24:29 +00:00
Tim Janik
128cb63dcc only unref those handlers that have not yet been disconnected (finally
Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
        handlers that have not yet been disconnected (finally managed to
        trigger the gtk_signal_handler_unref() paranoid warning).

Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
        width and height which is -1 and not -2.
1998-10-12 06:01:09 +00:00
Manish Singh
3e4c74d7ef HACKING we need libtool 1.2b now
* HACKING
* autogen.sh: we need libtool 1.2b now

-Yosh
1998-10-10 07:51:50 +00:00
Tim Janik
357c50b14e take the left, right, top and bottom attach arguments as mandatory and
Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
        and bottom attach arguments as mandatory and readjust the table size
        and opposing edge accordingly if required. this way the order in which
        the arguments are set doesn't matter.
1998-10-10 01:55:09 +00:00
Owen Taylor
922d7fd0ae Fixed warning message to print out parent class name correctly.
Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
	message to print out parent class name correctly.
1998-10-08 19:43:47 +00:00
Tim Janik
3f7c96b352 removed functions gtk_object_set_data_destroy and
Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.h:
        * gtk/gtkobject.c:
        removed functions gtk_object_set_data_destroy and
        gtk_object_set_data_destroy_by_id.
        added functions gtk_object_remove_no_notify and
        gtk_object_remove_no_notify_by_id which will remove a certain data
        portion without invokation of its destroy notifier, this should only
        be used in very controled circumstances.
1998-10-08 06:33:49 +00:00
Lars Hamann
3a5447574b added size_allocate_title_buttons call (gtk_clist_realize): changed
Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
	size_allocate_title_buttons call
	(gtk_clist_realize): changed initial column.window position
1998-10-07 22:13:19 +00:00
Lars Hamann
28cd4d6102 removed xor_gc, use clists xor_gc instead removed
Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
        xor_gc instead
        * gtk/gtkctree.c (create_xor_gc): removed
        (gtk_ctree_button_press): set correct line_attributes for
        clist->xor_gc on drag start
        (gtk_ctree_button_release): reset clist->xor_gc
1998-10-07 19:28:25 +00:00
Tim Janik
3322a264e0 removed all occourances of #pragma } and #pragma { which were in place to
Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtk*.h:
        * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
        which were in place to fixup emacs' cc-mode indentation.
        putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
        proper way to achive this and doesn't produce problems for
        stupid pragma-related compiler bugs. ;)
1998-10-07 04:21:19 +00:00
Lars Hamann
a2951281f3 new signal GtkCList::resize_column. don't draw invisible columns
Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.h: new signal GtkCList::resize_column.
        * gtk/gtkclist.c (draw_row): don't draw invisible columns
        (size_allocate_title_buttons) (size_allocate_columns):
        skip invisible columns
        (new_column_width): take min/max_width into account
        (gtk_clist_button_release) (gtk_clist_motion):
        changes due to changed new_column_width function
        (LIST_WIDTH): changed define to inline function.
        (real_resize_column): class function for resize_column signal
        (gtk_clist_motion): fixed autoscrolling for column resizes
        (gtk_clist_set_column_visibility): don't hide last visible column,
        changed visible arg to gboolean
        (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
        new functions : set min/max width of a column
        (gtk_clist_set_column_resizeable): new function : enable/disable
        column resize operations by mouse

        * gtk/gtkctree.c (draw_row): don't draw invisible columns
        (ctree_is_hot_spot): return FALSE if tree_column is invisible
        (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
        tree_column is invisible
        (gtk_ctree_find_all_by_row_data)
        (gtk_ctree_find_all_by_row_data_custom):  new function from
        Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
        GtkCTreeNodes with row->data == data.
1998-10-07 00:03:24 +00:00
Tim Janik
c3a163b021 use g_free to free g_malloced memory (Martin Pool
Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
        memory (Martin Pool <mbp@wistful.humbug.org.au>).
1998-10-06 12:36:17 +00:00
Raph Levien
ecb9ebbce3 Fixed an alpha bug. 1998-10-05 22:30:08 +00:00
CDT 1998 Shawn T. Amundson
6b15c2ca82 gtk/gtkcalendar.c: More changes: - The day with focus is now seperated
Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkcalendar.h:
          gtk/gtkcalendar.c: More changes:
          - The day with focus is now seperated from the day selected
          - The day with focus has the xor's line around it
          - The selected day is now standard selected style
          - The week names and week numbers are now also drawn
            with selected style
          - Space now selects the day which has focus
1998-10-05 03:52:48 +00:00
Joel Becker
edebc6cf21 added xlc to the list of compilers that call automake with --include-deps 1998-10-05 03:50:46 +00:00
CDT 1998 Shawn T. Amundson
16786ffbf7 gtk/gtkcalendar.c: Some significant changes, including: - No longer draw
Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkcalendar.h:
          gtk/gtkcalendar.c: Some significant changes, including:
          - No longer draw focus around entire widget, only around
            the day which has focus
          - Draw relief around entire widget like originally planned
          - Show header and day names by default
          - Move data private to the widget out of GtkCalendar struct
            and only point to it with a gpointer
          - Remove some old unused variables from GtkCalendar struct
1998-10-04 23:07:04 +00:00
BST 1998 Tony Gale
89a9da8a21 update I've had sat around: - Grammar patch from James R. Van Zandt
Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: update I've had sat around:
          - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
          - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
          - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1998-10-04 16:55:16 +00:00
Martin Baulig
a9c05acd70 Added `visible'.
1998-10-01  Martin Baulig  <martin@home-of-linux.org>

	* gtk/gtkclist.h (GtkCListColumn): Added `visible'.

	* gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
	Makes it possible to individually show and hide columns.
	(size_allocate_columns): Adapted to keep track of hidden columns.
	(size_allocate_title_buttons): Likewise.
1998-10-04 10:52:52 +00:00
Tim Janik
c62ab96bcc for unknown foreign fundamental types, collect an argument of the type
Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
        fundamental types, collect an argument of the type returned from
        gtk_type_get_varargs_type(). removed the first macro argument which
        was just the same as the fundamental type of the *arg passed to
        the macro.
        * gtk/gtkarg.c (gtk_args_collect):
        * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
        gtk_type_get_varargs_type() to set and query the varargs collect
        type used for a fundamental type, registered outside of Gtk.

        * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
        GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
        GTK_TYPE_FLOAT.

        * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
        GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
        to GTK_TYPE_FLOAT.
1998-10-03 17:04:41 +00:00
Lars Hamann
879683b674 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>

    * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
    (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
    fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV

    (real_tree_expand) (real_tree_collapse):
    don't expand/collapse a leaf
1998-10-02 23:45:09 +00:00
Tim Janik
bbe7d97e00 make sure we don't segfault when looking up a non-existant value name
Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
        segfault when looking up a non-existant value name (reported by
        Pablo <pcj+gtk@primenet.com>).
1998-10-02 21:14:26 +00:00
Tim Janik
b89ed0c35f new function. (gtk_clist_insert): added g_return_val_if_fail() statements.
Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.h (gtk_clist_prepend):
        * gtk/gtkclist.c (gtk_clist_prepend): new function.
        (gtk_clist_insert): added g_return_val_if_fail()
        statements. accept a row parameter < 0 or > clist->rows to indicate
        append mode.
        (real_clear): first clean up all internal pointers and lists (e.g.
        clist->row_list or clist->rows), then delete the distinct rows. this
        is required because of destroy notifiers, we need to have all internal
        structures updated and be reentrant.

        * gtk/gtkcalendar.h:
        * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
        GtkCalendarClass signal methods.
        GtkType and macro fixups, put `void' into () prototypes, avoid C++
        style comments, indentation fixes, fixed some g_return_if_fail()
        statements.
        (gtk_calendar_paint_header):
        (gtk_calendar_paint_day_names):
        (gtk_calendar_paint_week_numbers):
        (gtk_calendar_paint_main): made these static functions.
        (gtk_calendar_select_month):
        (gtk_calendar_select_day):
        (gtk_calendar_mark_day):
        (gtk_calendar_unmark_day):
        (gtk_calendar_get_date): signedness corrections, use guints
        rather than gints.
        (gtk_calendar_size_request): removed unused variables.
1998-10-01 13:24:42 +00:00
Tim Janik
fa5c68f7c6 list all widgets in the ->widgets_by_action list that have a callback
Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
        widgets in the ->widgets_by_action list that have a callback
        defined (not only those with a callback_action!=0).
1998-09-30 11:22:13 +00:00
CDT 1998 Shawn T. Amundson
3261e656e5 gtk/gtkcalendar.c: examples/calendar/gcalendar.c: remove HAVE_FEATURES
Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkcalendar.h:
          gtk/gtkcalendar.c:
          examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1998-09-28 03:20:03 +00:00
CDT 1998 Shawn T. Amundson
31045ef4f2 gtk/gtkcalendar.c: examples/calendar: Added gtkcalendar widget and demo
Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkcalendar.h:
          gtk/gtkcalendar.c:
          examples/calendar: Added gtkcalendar widget and demo
1998-09-27 18:32:00 +00:00
Tim Janik
fbe8f91806 adde g_return_if_fail() statements.
Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.c (gtk_clist_sort):
        (gtk_clist_clear):
        (gtk_clist_unselect_all):
        (gtk_clist_select_all): adde g_return_if_fail() statements.
1998-09-26 06:31:30 +00:00
Tim Janik
d0b7b3f5c9 set binary age and interface age to 0.
Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>

        * configure.in: set binary age and interface age to 0.

        * gtk/gtkspinbutton.h:
        * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
        gtk_spin_button_configure. gtk_spin_button_construct is still defined
        as an alias for gtk_spin_button_configure for source compatibility,
        but actuall use is deprecated.
        typeness corrections, i.e. gint->gboolean and gint->guint.
        added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
        GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
        GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
        GtkSpinButton::adjustment, GtkSpinButton::digits and
        GtkSpinButton::climb_rate.
        GtkType and macro fixups.
1998-09-26 03:12:03 +00:00
Tim Janik
c961dd184b new function to get the *real* geometry position of a window, taken
Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
        the *real* geometry position of a window, taken possible window
        manager offsets into account.
        this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
        olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
        it does fail though for amiwm which adds windows to a pseudo root
        window, and for icewm by a small offset because it defines the
        geometry position whithin its border.

        * gtk/testgtk.c: added "saved position" test to figure how
        gdk_window_get_root_origin() interacts with window managers (repopup
        this window to figure ;).
1998-09-25 23:04:32 +00:00
Tim Janik
416b69a2c1 update to Gtk+ version 1.1.3, binary age 1, interface age 1.
Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>

        * configure.in: update to Gtk+ version 1.1.3, binary age 1,
        interface age 1.

        * gtk/gtkobject.c
        (gtk_object_ref):
        (gtk_object_unref): check for ->ref_count to be greater than 0 (the
        existing code was buggy in letting ->ref_count==0 pass through and
        then failing the living_objs_ht assertion).

        * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
        pixtext fields (Roman Pozlevich <roma@botik.ru>).
1998-09-23 04:47:45 +00:00
CDT 1998 Shawn T. Amundson
e1aba58de1 Released GTK+ 1.1.2
Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.2
1998-09-22 05:13:22 +00:00
Manish Singh
2e8d1aaa79 Shut up gcc AND cvs
-Yosh
1998-09-21 08:28:53 +00:00
jaycox
f6db9670d1 use $(PERL) instead of perl render properly in non-square aspect ratios.
* gtk/Makefile.am: use $(PERL) instead of perl
	* gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
	also much faster to render.
1998-09-21 08:14:10 +00:00
Manish Singh
8d3a895773 This shouldn't be there
-Yosh
1998-09-21 06:28:24 +00:00
Tim Janik
dcc8bc33db reallocate the required memory block, rather than allocating it newly from
Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
        the required memory block, rather than allocating it newly from
        scratch and doing a full-blown block copy on it.
1998-09-21 06:14:18 +00:00
Manish Singh
4721a7dd40 shut up CVS
-Yosh
1998-09-21 02:54:58 +00:00
Tim Janik
c1381c8cea more NEWS updates 1998-09-21 02:34:44 +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
Owen Taylor
beb6af329e Patch to libtool-1.2b to make --disable-static
Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>

	* ltconfig.sh: Patch to libtool-1.2b to make --disable-static
1998-09-20 22:14:58 +00:00
Marius Vollmer
240a22f4ed More stuff about the type system. 1998-09-20 18:10:03 +00:00
Owen Taylor
104e5d2cc6 indent other than GNU indent should be OK now.
Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>

	* HACKING: indent other than GNU indent should be OK
	  now.

	* gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
	  instead of piping through indent. If indent wasn't
	  found in ./configure don't bother indenting at
	  all.
1998-09-20 14:58:08 +00:00
Owen Taylor
fd69dc379a file libtool-1.2.patch was initially added on branch gtk-1-0. 1998-09-20 14:54:19 +00:00
Owen Taylor
b03172656c Add names to prototype for gdk_image_new_bitmap.
Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1998-09-20 13:35:24 +00:00
Raja R Harinath
cc4aa3cd47 Forgot to commit this 1998-09-20 02:35:59 +00:00
jaycox
1fe70a7a0d gtk/Makefile.am: use $(AWK) instead of awk
gtk/Makefile.am: use $(AWK) instead of awk
1998-09-19 01:54:04 +00:00
Raja R Harinath
49aa89e261 Remove references to $(top_srcdir). (gtk.defs,
* gtk/Makefile.am (gdk_headers):
Remove references to $(top_srcdir).
(gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
* gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1998-09-18 20:20:23 +00:00
Tim Janik
dc9d35402a changed gpointer object_data; to GData*object_data to cure compiler
Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
        GData*object_data to cure compiler warnings.
1998-09-18 18:19:00 +00:00
Manish Singh
483bec40cc updated to latest automake version
-Yosh
1998-09-18 02:07:42 +00:00
Manish Singh
eb0fec7865 shutup CVS further
-Yosh
1998-09-17 22:59:18 +00:00
Raja R Harinath
44557367ed Move `gtkfeature.h' ... (gtkinclude_HEADERS): ... here. (gtk.defs): Pass
* gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
(gtkinclude_HEADERS): ... here.
(gtk.defs): Pass `g' flag to sed, to replace all occurances.
1998-09-17 18:16:10 +00:00
Raph Levien
dfcde48090 Added GNU indent to HACKING, as it is now required to build. 1998-09-17 17:52:00 +00:00
Owen Taylor
486362db9f Update to libtool-1.2b, change library versioning scheme to drop
Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am gtk-config.in l*: Update to libtool-1.2b,
	change library versioning scheme to drop LT_RELEASE
	from the -l line, while keeping it in the soname.

Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>

	* configure.in Makefile.in: define a MAINT-like variable REBUILD
	which is set if Perl and awk are found, and autogenerated sources
	can be rebuilt. Remove the auto-generated sources from
	CVS.

	Add dependencies so that the autogenerated sources are
	rebuilt if the files they depend on change.
	(This unfortunately currently results in the entire
	gtk/ directory being rebuilt when any header changes.
	Moving all enums to gtkenums.h would fix this.)
1998-09-17 15:40:22 +00:00
Tim Janik
ee1b96185f added gtk_object_set_data_destroy and gtk_object_set_data_destroy_by_id
Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.h: added gtk_object_set_data_destroy and
        gtk_object_set_data_destroy_by_id functions to set the destroy
        function pointer for an existing data portion.

        * gtk/gtkobject.c: removed the GtkObjectData implementation and
        made all gtk_object_*data* functions use the GLib equivalents.
1998-09-17 05:00:30 +00:00
Arturo Espinosa
0b54ffa9d6 sync 1998-09-16 23:34:03 +00:00
Federico Mena Quintero
bf69ab9d68 Test whether type is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before
1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
	is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
	(widget != NULL), otherwise radio button insertion will not work
	-- the widget argument is NULL for the first radio button in the
	group.
1998-09-16 23:33:25 +00:00
Owen Taylor
eacc9f5d05 Reverted global changes of g_new to malloc(), added back in the one place
Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkimage.c (gdk_image_new): Reverted global changes
	of g_new to malloc(), added back in the one place where
	it actually mattered. #include <stdlib.h>.

	* gdk/gdkrgb.c: g_malloc() to malloc() as above.
1998-09-15 17:08:38 +00:00
Owen Taylor
a2524578cd Don't request a new size from the WM if we asked for the same size before
Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_move_resize): Don't request
	a new size from the WM if we asked for the same size
	before and our request was rejected.

	* gtk/gtkwindow.c (gtk_window_configure_event): If
	in response to a request, we get a configure event
	with unchanged dimensions, send a synthetic expose
	since ForgetGravity won't expose our window.

Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (adjust_adj): Change the way we
	set the adjustments on resize so that it tries to
	keep the beginning of the text in approximately
	the same place.

	Removed assertion that the above change made invalid.
1998-09-15 14:59:48 +00:00
CDT 1998 Shawn T. Amundson
c2f99dd168 changed g_new()s to malloc()s and g_free()s to free()s to avoid mixing
Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gdk/gdkimage.c: changed g_new()s to malloc()s and
          g_free()s to free()s to avoid mixing g_new()s with
          free()s.  X itself uses free() on some of the
          malloced memory.
1998-09-15 03:12:54 +00:00
Owen Taylor
fb00a59c2f at Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
* gtkfilesel.c: Maintain a list of directories like
	/afs we know contain only directories, and avoid
	stat'ing files in those directories. (Because
	stat'ing all files in /afs is extremely expensive)

	To support automounters, try to open directories,
	even if we couldn't find them when reading their
	parent directory.
1998-09-12 14:41:04 +00:00
Lars Hamann
cb7c4d6c7f new function to set/unset the selectable flag of a single row.
* gtk/gtkclist.c (gtk_clist_set_selectable): new function
  to set/unset the selectable flag of a single row.
  (gtk_clist_get_selectable): new function
  to get the state of the selectable flag

* gtk/gtkctree.c (gtk_ctree_node_set_selectable)
  (gtk_ctree_node_get_selectable): clist analogons
1998-09-11 13:52:42 +00:00
Raph Levien
6d13f0f9b3 Checking in minor changes. Now synced with 0.9.0. 1998-09-11 00:11:05 +00:00
Manish Singh
683cb5753e added -posix check for NeXTStep
* configure.in: added -posix check for NeXTStep

* gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
a unique buffer for each thread.

* docs/gtk-config.1: clarified copyright

-Yosh
1998-09-09 09:51:44 +00:00
Tim Janik
c8fbf3b01e minor fixup 1998-09-08 09:24:22 +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
f830dc3f36 comment the -std1 check and save LIBS properly
-Yosh
1998-09-08 03:09:54 +00:00
Manish Singh
e096fc9752 cosmetic case change
-Yosh
1998-09-07 02:16:41 +00:00
Manish Singh
f6d4cb9b99 #include <stdlib.h> for rand()
-Yosh
1998-09-06 19:36:56 +00:00
Owen Taylor
51021f88c5 When the pointer is grabbed on an input window, either explicitely, or
Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
	When the pointer is grabbed on an input window,
	either explicitely, or through press-grab, and
	then grabbed on a non-input window, ungrab the
	devices.
1998-09-05 21:22:51 +00:00
Tim Janik
78dbc1efdb don't include any gdk headers. added structure definitions for
Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h: don't include any gdk headers.
        added structure definitions for GtkTypeObject and GtkTypeClass,
        which cover the very basic fields of GtkObject and GtkObjectClass,
        which are actually used by the type system.

        * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
        we only refer to our own structures. improved class inheritance
        sanity checking a bit.

        * gtk/gtkobject.h: placed appropriate comments at the beginnings
        of the GtkObject and GtkObjectClass structures, which explain
        their relationship to GtkTypeObject and GtkTypeClass.

        * gtk/gtktypeutils.h:
        * gtk/gtkobject.h:
        moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
        GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
        gtkobject.h to gtktypeutils.h.

        * gtk/gtkobject.h:
        * gtk/gtkobject.c:
        removed gtk_object_check_cast() and gtk_object_check_class_cast()
        functions. to keep source compatibility, we can provide macro aliases
        for the corresponding gtk_type_* functions. but then again, people
        shouldn't have been using these functions anyways since they were part
        of Gtk's internal API.

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c:
        implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
        functions to check GtkTypeObject and GtkTypeClass types.
1998-09-05 06:54:20 +00:00
Tim Janik
0f0d9509c0 `const' fixups.
Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkctree.h:
        * gtk/gtkctree.c: `const' fixups.

        * gtk/gtkclist.h:
        * gtk/gtkclist.c: `const' fixups and some coding style adaptions.

        * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
        if it is passed as NULL.
1998-09-03 07:28:37 +00:00
Raph Levien
ebe76c752c Fixed up some of the bigendian 32bpp modes. 1998-09-03 05:47:08 +00:00
Tim Janik
75bda50723 plug another small GtkSIgnalQuery leak.
Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
        GtkSIgnalQuery leak.
1998-09-03 02:48:52 +00:00
Tim Janik
698c89e5c4 GTK_MENU_DIR_CHILD: check for the existance of
Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
        GTK_MENU_DIR_CHILD: check for the existance of
        menu_shell->active_menu_item before accessing its child.
        GTK_MENU_DIR_PREV:
        GTK_MENU_DIR_NEXT: if we haven't had an active item and still
        don't, make a default selection.

Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
        the children with _forall for sensitivity changes and with
        _foreach on pure state changes. this fixes a lot of the
        old inclusions of internal widgets into _foreach calls.

        * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
        do the work. don't walk the subtrees of first level children.

        * gtk/gtktreeitem.c: provide a _forall implementation,
        which walks the subtrees as well for include_internals.

        * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
        the submenus as well for include_internals.

        * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
        implemented gtk_scrolled_window_forall, which will iterate over
        the viewport and the scrollbars for gtk_container_forall or
        iterate over the viewports children for gtk_container_foreach.

        * gtk/gtktoolbar.c:
        * gtk/gtktable.c:
        * gtk/gtkpaned.c:
        * gtk/gtkpacker.c:
        * gtk/gtkmenushell.c:
        * gtk/gtklist.c:
        * gtk/gtkfixed.c:
        * gtk/gtkclist.c:
        * gtk/gtkbox.c:
        * gtk/gtkbin.c:
        * gtk/gtknotebook.c:
        removed the old gtk_*_foreach functions and provided gtk_*_forall.

        * gtk/gtknotebook.c:
        (gtk_notebook_real_switch_page): expose tabs.
        (gtk_notebook_page_num): new function to return the page number
        of a distinct child.
        (gtk_notebook_focus): minor fixups. foxus handling is still screwed
        under some circumstances.

        * gtk/gtktreeitem.c:
        (gtk_real_tree_item_select):
        (gtk_real_tree_item_deselect): major fixes.
        some general fixups wrt queue_redraw, and tree items not being
        NO_WINDOW widgets.

        * gtk/gtklistitem.c:
        (gtk_real_list_item_select):
        (gtk_real_list_item_deselect):
        (gtk_real_list_item_toggle):
        removed unneccessary queue_redraw calls.

Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
        automatically popup the menu on space bar.

Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.h:
        * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
        method), which acts similar to gtk_container_foreach(), but iterates
        over internal children. the GtkContainer::foreach signal vanished in
        favour of a new class method ->forall() that optionally includes
        internal widgets.

        * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
        but a _forall implementation, since all child widgets we have are
        internal ones.
        (column_button_create): set the parent window prior
        to gtk_widget_set_parent().

        * gtk/gtkwidget.c:
        exchanged all calls to gtk_container_foreach() with
        gtk_container_forall().

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
        the GtkWidget::composite_child argument. to have a widget created
        with the flag initially, two new functions got added to wrap a widgets
        creation:
        gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().

Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktooltips.h:
        * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
        gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
        prior to the first tip being set.
        don't put an extra reference on the window, since it is a toplevel,
        it wont get destroyed from anywhere else.

        * overall macro and GtkType fixups.
1998-09-03 02:38:53 +00:00
Federico Mena Quintero
af9c5dede4 Replaced "foo == TRUE" and "foo == FALSE" constructs by more forgiving
1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
	constructs by more forgiving ones.  (Does anyone else feel like
	the color selector need rewriting?).
1998-09-02 21:46:49 +00:00
Owen Taylor
0e2758ae42 Unref the adjustment.
Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkprogress.c (gtk_progress_finalize): Unref
	the adjustment.

	* gtk/gtkmenu.c: Modified reference counting so
	that the reference count from the toplevel that
	the menu creates to the menu is invisible to the
	application.
1998-09-01 18:41:26 +00:00
Raph Levien
7dbe380691 I should have added testrgb to the .cvsignore last time. Now I have. 1998-09-01 06:01:30 +00:00
Raph Levien
1fe35dda56 Minor improvements to gdkrgb, added testrgb to the gtk directory. 1998-09-01 05:29:45 +00:00
Frank Belew (Myth)
4bb5d92a02 file .cvsignore was initially added on branch themes-2. 1998-09-01 05:20:20 +00:00
Raph Levien
10dcedad06 Added a gdk_draw_rgb_image_dithalign function. 1998-08-31 22:18:18 +00:00
Manish Singh
f2322ebeb4 quell some warnings with g_hash_table_new
* gdk/gdkcolor.c:
(gdk_colormap_new) (gdk_colormap_get_system):
quell some warnings with g_hash_table_new

* gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery when
we're done with it

* gtk/itemfactory.c:
(gtk_item_factory_from_path):
(gtk_item_factory_create_item): free some strings

* gtk/gtklabel.c:
(gtk_label_finalize): free label->pattern when done
(gtk_label_parse_uline): null terminate pattern string, delete some duplicated
code

* gtk/testthreads.c: add #include <unistd.h> for sleep()

-Yosh
1998-08-29 22:27:47 +00:00
Owen Taylor
1dafcb2a24 Make sure the mark we pass to line start is the beginning of a real line,
Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (recompute_geometry): Make sure the
	mark we pass to line start is the beginning of a
	real line, not a wrapped one.
1998-08-25 22:22:12 +00:00
Marius Vollmer
155da3a8c5 Started to document the lowest layers of the type system. 1998-08-25 20:51:58 +00:00
Arturo Espinosa
1cbad0a4fc Updated the stupid builtins file, again - Federico 1998-08-25 16:44:03 +00:00
Owen Taylor
caf8ebc6f1 Reference count the fonts used in the text widget.
Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c: Reference count the fonts used in
	the text widget.

	* gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
	freeing functions to be more consistent, and more
	convenient; leave the old names in for backwards compatibility.

	* gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
	allocations in pseudo-color colormaps to greatly reduce
	calls to XAllocColor. Keep a per-colormap hashtable to
	speed up finding if there is an already-allocated matching
	color.

	* gdk/gdkcolor.c: Don't just match read the system colormap
	when the colormap is created, but synchronize our copy
	with the system colormap periodically.

	* gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
	Change XIM constants names to match GDK conventions

	* gtk/testinput.c: Allow the drawing area to get the focus.

	* gtk/testgtk.c: Change around the Text test to demonstrates
	multiple fonts, use more colors.

	* gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
	so they work after a widget is unrealized.

	* gtk/gtktext.[ch]: Remove the requirement that the text
	widget be realized before adding text (!) Allocate colors
	ourself, instead of requiring the caller allocate them.
	Allow changing styles to work properly by keeping track
	of the values for a certain property are default or
	set explicitely.

	* gtk/gtkmenu.h: Added some comments.

	* gtk/gtkentry.c: Changes to match XIM constants.

	* gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
	for adding keyed data to drawables. (Uses g_dataset
	internally)

	* gdk/gdkpixmap.c: Keep track of the colors we allocate,
	when creating an XPM - store them as user data for the GdkPixmap,
	so we don't leak colors when we create pixmaps from XPM's.

	Allocate memory for color information in large blocks instead of
	as many little pieces.
1998-08-25 00:06:38 +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
02a871bc31 begin the parameter elipsis (...) after the first argument name. this
Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkarg.h:
        * gtk/gtkarg.c:
        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c:
        * gtk/gtkobject.h:
        * gtk/gtkobject.c:
        * gtk/gtkcontainer.h:
        * gtk/gtkcontainer.c:
        (gtk_object_new):
        (gtk_object_set):
        (gtk_widget_new):
        (gtk_widget_set):
        (gtk_container_add_with_args):
        (gtk_container_child_set):
        begin the parameter elipsis (...) after the first argument name. this
        change is source compatible, since it was always required, even as NULL.
        (gtk_args_collect):
        (gtk_object_args_collect):
        (gtk_container_child_args_collect):
        changed prototypes to pass first_arg_name, also, pass va_list variable
        by value (portability concerns). callers changed.

        * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
        a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
        can't pass va_list variables by reference for portability reasons.
1998-08-24 05:27:29 +00:00
Raph Levien
db10ace6c8 Added some calls to gdk_rgb_init, so it's much more likely to correctly
initialize now.
1998-08-22 05:41:32 +00:00
Carsten Haitzler
6cfad41c09 file makemakefile.sh was initially added on branch themes-2. 1998-08-22 01:29:55 +00:00
Carsten Haitzler
6ccb4844c9 file README was initially added on branch themes-2. 1998-08-22 01:29:54 +00:00
Carsten Haitzler
17a24b0ca3 file Makefile.am was initially added on branch themes-2. 1998-08-22 01:29:53 +00:00
Carsten Haitzler
04f593c9fb file ICON.png was initially added on branch themes-2. 1998-08-22 01:29:52 +00:00
Owen Taylor
41e007894c file ltmain.sh was initially added on branch themes-2. 1998-08-22 00:13:35 +00:00
Owen Taylor
97c37421a6 file ltconfig was initially added on branch themes-2. 1998-08-22 00:13:34 +00:00
Owen Taylor
5682c4abb6 file makemakefile.sh was initially added on branch themes-2. 1998-08-21 23:47:22 +00:00
Owen Taylor
cb6b2054ab file Makefile.am was initially added on branch themes-2. 1998-08-21 23:47:21 +00:00
Owen Taylor
0363711f77 file .cvsignore was initially added on branch themes-2. 1998-08-21 23:47:20 +00:00
Owen Taylor
bf7eeebb3a file install-sh was initially added on branch themes-2. 1998-08-21 23:41:07 +00:00
Owen Taylor
2c099e45e3 file README was initially added on branch themes-2. 1998-08-21 23:41:06 +00:00
Owen Taylor
9c891d4417 file NEWS was initially added on branch themes-2. 1998-08-21 23:41:05 +00:00
Owen Taylor
0c27e75cbe file ChangeLog was initially added on branch themes-2. 1998-08-21 23:41:02 +00:00
Owen Taylor
02a024df2f file AUTHORS was initially added on branch themes-2. 1998-08-21 23:41:01 +00:00
Stuart Parmenter
7aac253dcc added GTK_HAVE_FEATURES_1_1_2 1998-08-21 17:07:11 +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
Owen Taylor
29d8fe021b Check to see if we've computed our geometry yet, and if not, ignore the
Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c ([un]draw_cursor): Check to see if we've
	computed our geometry yet, and if not, ignore the request.

	  gtk/gtktext.c (correct_cache_insert): Fiddled around]
	some more. All the bug-test codes seem to work at once
	now. (fingers crossed...)
1998-08-21 00:13:38 +00:00
Carsten Haitzler
f616dc9a9a file gtkrc was initially added on branch themes-2. 1998-08-20 22:20:49 +00:00
Carsten Haitzler
bd088fe083 file metal_theme_main.c was initially added on branch themes-2. 1998-08-20 22:20:06 +00:00
Carsten Haitzler
94ed72d3e6 file metal_theme_draw.c was initially added on branch themes-2. 1998-08-20 22:20:05 +00:00
Carsten Haitzler
c312fe1c8d file metal_theme.h was initially added on branch themes-2. 1998-08-20 22:20:04 +00:00
Carsten Haitzler
2fde6f677e file README.metal was initially added on branch themes-2. 1998-08-20 22:20:03 +00:00
Manish Singh
568b42bd52 silly visual fixes
* gdk/gdkrgb.c: silly visual fixes

* gtk/testgtk.c: call gdk_rgb_init so color preview test actually works

-Yosh
1998-08-20 20:10:52 +00:00
Federico Mena Quintero
cad57a6686 Do not do anything if the event's window is not the bin window.
1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
	anything if the event's window is not the bin window.
	(gtk_handle_box_motion): Likewise.
1998-08-20 16:55:16 +00:00
Raph Levien
e946fcf69d Change to testgtk to go along with GdkRgb integration into gtk_preview. 1998-08-20 06:59:26 +00:00
Raph Levien
f1a524a21e Minor fixes that were needed for the Gimp/GdkRgb integration. 1998-08-20 06:52:52 +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
Lars Hamann
1575a19c59 fix for sigsegv in case of show_tabs == NULL
Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
	* gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
	in case of show_tabs == NULL
1998-08-18 15:31:49 +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
Raph Levien
fdc36ada3f It works better when I actually check the file in :) (I.e. this is the
speedup I was trying to check in a minute ago).
1998-08-18 00:34:43 +00:00
Raph Levien
265a137efc More speedups to the 565_d case. 1998-08-18 00:32:34 +00:00
Lars Hamann
17d141c8e5 new class methods: (sort_list) (insert_row) (remove_row)
Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.h:
        (struct _GtkCListClass): new class methods:
        (sort_list) (insert_row) (remove_row) (set_cell_contents)

        * gtk/gtkclist.c :
        (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
        removed and replaced by (set_cell_contents)
        (set_cell_contents): function for class method set_cell_contents
        (real_insert_row): function for class method insert_row
        (real_remoce_row): function for class method remove_row
        (real_sort_list): function for class method sort_list
        (default_compare): fix to avoid problems with cell types != CELL_TEXT

        * gtk/gtkctree.h :
        (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
        (gtk_ctree_node_is_visible): new function to return visibility state
        of a node
		(gtk_ctree_show_stub): new function to set visibility of root stub

        renamed functions :
        (gtk_ctree_insert) -> (gtk_ctree_insert_node)
        (gtk_ctree_remove) -> (gtk_ctree_remove_node)
        (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
        (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
        (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
        (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
        (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
        (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
        (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
        (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
        (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
        (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
        (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
        (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
        (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
        (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
        (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
        (gtk_ctree_sort) -> (gtk_ctree_sort_node)
		(gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)

        * gtk/gtkctree.c :
        (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
        removed and replaced by (set_cell_contents)
        (set_cell_contents): function for class method set_cell_contents
        (real_insert_row): function for class method insert_row
        (real_remoce_row): function for class method remove_row
        (real_sort_list): function for class method sort_list
        (default_compare): removed. CTree now also compares two GtkCTreeRows
        instead of two GtkCTreeNodes.
        (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
        unlinking the node
        (real_tree_expand) (real_tree_collapse): fix for refcounting of
        node pixmaps
        (set_node_info): call gtk_ctree_node_set_pixtext instead of
        manipulating the row itself

        * gtk/testgtk.c: use renamed functions of GtkCTree.
        new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
        at work.
1998-08-17 23:48:04 +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
Dietmar Maurer
690a18f032 gdk.c: fixed bug in gdk_input_remove 1998-08-17 08:28:13 +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
Shawn Amundson
477f14037c release delayed... 1998-08-17 05:24:45 +00:00
CDT 1998 Shawn T. Amundson
42cabcf5fb Released GTK+ 1.1.2
Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.2

        * NEWS: updated for 1.1.2
        * gtk+.spec: version = 1.1.2
1998-08-17 05:04:33 +00:00
Tim Janik
dceb6a11c8 remove the ugly HAVE_LIBGLE test (last time i typed that word!). 1998-08-17 03:54:27 +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
johne
a4a3c87b3d Forgot Changelog. 1998-08-15 07:32:34 +00:00
John Ellis
db85d915e7 New function to set a callback to test if a node in drag can be dropped
Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>

        * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
        to set a callback to test if a node in drag can be dropped onto
        it's currrent location.
        * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
        to change the pointer when a drag destination is not allowed.
1998-08-15 07:30:01 +00:00
Arturo Espinosa
736bdbeaeb Regenerated gtktypebuiltins.h by hand. The autostuff files really need to be
changed to detect the presence of awk/perl and enable regeneration of the maintainer-only files
inside the gtk subdirectory - Federico
1998-08-14 22:20:47 +00:00
Raph Levien
0e563e0064 Committing a patch by Ray Lehtiniemi to speed up 565_d by 25%. 1998-08-14 04:06:42 +00:00
Owen Taylor
0dece0ba4f Added file README.cvs-commits
* Added file README.cvs-commits
1998-08-13 21:18:43 +00:00
Owen Taylor
814bfe1305 Changed GtkSignalFunc back to () from (void). (again!)
Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>

	* Changed GtkSignalFunc back to () from (void). (again!)
1998-08-13 21:00:43 +00:00
Nat Friedman
eff77f116b Fixed the GtkSignalFunc typedef to read "(void)" instead of "()", which
Fixed the GtkSignalFunc typedef to read "(void)" instead of "()", which was
causing it to not build on my irix machine.
1998-08-13 19:03:48 +00:00
Tony Gale
87f9cc2162 One character type fix - tony [gale@gtk.org] 1998-08-13 13:35:11 +00:00
BST 1998 Tony Gale
e8e7692534 - Tidy up of the menufactory example from Andy Kahn <kahn@zk3.dec.com> -
Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - Tidy up of the menufactory example from
            Andy Kahn <kahn@zk3.dec.com>
          - New section on Range Widgets from
            David Huggins-Daines <bn711@freenet.carleton.ca>
          - Started a new section on 'Advanced Event and Signal
            Handling' - used an email from Owen.
          - New appendix on Gdk Event Types
          - Added the tictactoe full example code to the
            'Code Examples' appendix
1998-08-13 13:11:14 +00:00
Owen Taylor
7a235648ea More ChangeLog fixups. 1998-08-12 16:53:45 +00:00
Owen Taylor
0346147a0e Removed leftover bits from ChangeLog 1998-08-12 16:50:41 +00:00
Owen Taylor
4af7480f8f Added gdk_text/string_extents() - too calculate all the metrics at once of
Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
	  too calculate all the metrics at once of a string, including
	  things which weren't calculated before.

	* gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
	  MenuItem type, that when put as the first thing in a
	  menu, makes the menu tearoff. Currently drawn as a
	  dashed line.

	* gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
	  "hide_on_activate" to the MenuItem class structure to allow
	  check and radio buttons to be changed with <Space> without
	  hiding the menu.

	* gtk/gtkaccellabel.[ch]: Added new capabilities to set
	  a underline_group and underline_mods for the label -
	  accelerators added in the underline group matching
	  underline_mods will be displayed as an underline character.

	  This doesn't work - Save As needs to be underlined
	  as Save _As.

	* gtk/gtkitemfactory.c:
	  - Create a AccelGroup for each MenuShell we create.
	  - If an '&' appears before a  character 'c' in the path,
	    then make 'c' an accelerator in the menu's accel group,
	    and if the menuitem is menubar <alt>C an accelerator
	    in the itemfactory's accel group.

	* gtk/gtklabel.[ch]: Add support for a pattern arg -
          which is a string. If an '_' appears in this string,
	  the corresponding position in the label is underlined.

          Add gtk_label_parse_uline() convenience function which
	  takes a string with embedded underlines, sets the
	  pattern and label, and returns the accelerator keyval.

	* gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
	  Instead, they create a GtkWindow and add themselves
	  to that. (When torn off, another new feature, they
	  create another GtkWindow to hold the torn off menu)

	  New function gtk_menu_set_tearoff_state()

	* gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
	  Added action signals  for keyboard navigation of menus.

	* gtk/gtkmenushell.c: Key press handler which activates
          bindings for navigation, and accelerators, for handling
	  underline accelerators. Exported functions to select
	  and activate menu items in a menushell.

	* gtk/testgtk.c: Added a new "Item Factory" test which
	  tests GtkItemFactory and the new keyboard navigation
	  of menus.
1998-08-12 16:49:13 +00:00
Tim Janik
5d270c2f45 relookup nodes after external functions have been called. also relookup
Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
        external functions have been called. also relookup nodes after
        this function has been invoked.
1998-08-11 19:29:36 +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
Tim Janik
b46f089b6f #include fixes (reported by Asbjoern Pettersen).
Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>

        * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
        Pettersen).
1998-08-11 18:27:49 +00:00
Owen Taylor
f6abe64479 Applied gtk-pedersen-980727-0; added all logical operations to
Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
	  added all logical operations to gc->function.
1998-08-11 04:32:14 +00:00
Carsten Haitzler
20661babbf file DUMMY was initially added on branch themes-2. 1998-08-11 03:06:26 +00:00
Carsten Haitzler
1f3c079761 file vline.png was initially added on branch themes-2. 1998-08-11 03:06:24 +00:00
Carsten Haitzler
d7cf38387c file trough.png was initially added on branch themes-2. 1998-08-11 03:06:23 +00:00
Carsten Haitzler
c86201e87e file shadow2.png was initially added on branch themes-2. 1998-08-11 03:06:22 +00:00
Carsten Haitzler
279d363ab2 file shadow1.png was initially added on branch themes-2. 1998-08-11 03:06:21 +00:00
Carsten Haitzler
7d4023e88e file scrollbar_vert1.png was initially added on branch themes-2. 1998-08-11 03:06:20 +00:00
Carsten Haitzler
e2269c4f03 file scrollbar_thumb2.png was initially added on branch themes-2. 1998-08-11 03:06:19 +00:00
Carsten Haitzler
9648fd88b8 file scrollbar_thumb.png was initially added on branch themes-2. 1998-08-11 03:06:18 +00:00
Carsten Haitzler
4ed3aa1cb8 file scrollbar_horiz1.png was initially added on branch themes-2. 1998-08-11 03:06:17 +00:00
Carsten Haitzler
355fbf04b8 file ruler_vert.png was initially added on branch themes-2. 1998-08-11 03:06:16 +00:00
Carsten Haitzler
7f39f122d2 file ruler_horiz.png was initially added on branch themes-2. 1998-08-11 03:06:15 +00:00
Carsten Haitzler
96457c0af4 file progressbar.png was initially added on branch themes-2. 1998-08-11 03:06:13 +00:00
Carsten Haitzler
0b49ebc6f2 file option_menu.png was initially added on branch themes-2. 1998-08-11 03:06:12 +00:00
Carsten Haitzler
b08cdd5c00 file option2.png was initially added on branch themes-2. 1998-08-11 03:06:11 +00:00
Carsten Haitzler
62c2373866 file option1.png was initially added on branch themes-2. 1998-08-11 03:06:10 +00:00
Carsten Haitzler
5baacee740 file hline.png was initially added on branch themes-2. 1998-08-11 03:06:09 +00:00
Carsten Haitzler
ae6489b868 file handle_vert_thumb.png was initially added on branch themes-2. 1998-08-11 03:06:08 +00:00
Carsten Haitzler
bebf5b23fd file gap_top_start.png was initially added on branch themes-2. 1998-08-11 03:06:07 +00:00
Carsten Haitzler
334ad44555 file gap_top_end.png was initially added on branch themes-2. 1998-08-11 03:06:06 +00:00
Carsten Haitzler
bdd1baec35 file gap_top.png was initially added on branch themes-2. 1998-08-11 03:06:05 +00:00
Carsten Haitzler
075c96bc26 file gap_right_start.png was initially added on branch themes-2. 1998-08-11 03:06:04 +00:00
Carsten Haitzler
7f400fd777 file gap_right_end.png was initially added on branch themes-2. 1998-08-11 03:06:03 +00:00
Carsten Haitzler
8e0cab7cba file gap_right.png was initially added on branch themes-2. 1998-08-11 03:06:02 +00:00
Carsten Haitzler
981607d4a0 file gap_left_start.png was initially added on branch themes-2. 1998-08-11 03:06:01 +00:00
Carsten Haitzler
cd14b33a8a file gap_left_end.png was initially added on branch themes-2. 1998-08-11 03:05:59 +00:00
Carsten Haitzler
99fee10fe1 file gap_left.png was initially added on branch themes-2. 1998-08-11 03:05:58 +00:00
Carsten Haitzler
c9122881c8 file gap_bottom_start.png was initially added on branch themes-2. 1998-08-11 03:05:57 +00:00
Carsten Haitzler
0bff0b31cb file gap_bottom_end.png was initially added on branch themes-2. 1998-08-11 03:05:56 +00:00
Carsten Haitzler
78280d9de0 file gap_bottom.png was initially added on branch themes-2. 1998-08-11 03:05:55 +00:00
Carsten Haitzler
2109f32cfa file frame_gap_top_start.png was initially added on branch themes-2. 1998-08-11 03:05:54 +00:00
Carsten Haitzler
90eca42b09 file frame_gap_top_end.png was initially added on branch themes-2. 1998-08-11 03:05:53 +00:00
Carsten Haitzler
2fe4312b12 file frame_gap.png was initially added on branch themes-2. 1998-08-11 03:05:52 +00:00
Carsten Haitzler
9aac2c5a1f file frame2.png was initially added on branch themes-2. 1998-08-11 03:05:51 +00:00
Carsten Haitzler
884770db85 file frame1.png was initially added on branch themes-2. 1998-08-11 03:05:50 +00:00
Carsten Haitzler
0caf9d85a5 file focus.png was initially added on branch themes-2. 1998-08-11 03:05:49 +00:00
Carsten Haitzler
853ec8ef22 file extension_top1.png was initially added on branch themes-2. 1998-08-11 03:05:48 +00:00
Carsten Haitzler
2be1b69313 file extension_right1.png was initially added on branch themes-2. 1998-08-11 03:05:47 +00:00
Carsten Haitzler
59f64fa998 file extension_left1.png was initially added on branch themes-2. 1998-08-11 03:05:46 +00:00
Carsten Haitzler
a77eacb2a1 file extension_bottom1.png was initially added on branch themes-2. 1998-08-11 03:05:45 +00:00
Carsten Haitzler
601f4ecdb4 file entry2.png was initially added on branch themes-2. 1998-08-11 03:05:44 +00:00
Carsten Haitzler
a46bb12afe file entry1.png was initially added on branch themes-2. 1998-08-11 03:05:43 +00:00
Carsten Haitzler
54467af1c1 file curve_bg1.png was initially added on branch themes-2. 1998-08-11 03:05:42 +00:00
Carsten Haitzler
6b678e59fd file check2.png was initially added on branch themes-2. 1998-08-11 03:05:41 +00:00
Carsten Haitzler
e924208067 file check1.png was initially added on branch themes-2. 1998-08-11 03:05:40 +00:00
Carsten Haitzler
4cb1634b8c file button_def.png was initially added on branch themes-2. 1998-08-11 03:05:39 +00:00
Carsten Haitzler
a63c1000a8 file button9.png was initially added on branch themes-2. 1998-08-11 03:05:38 +00:00
Carsten Haitzler
ee791f46b4 file button8.png was initially added on branch themes-2. 1998-08-11 03:05:37 +00:00
Carsten Haitzler
e08f874a51 file button7.png was initially added on branch themes-2. 1998-08-11 03:05:36 +00:00
Carsten Haitzler
0cb81deacc file button6.png was initially added on branch themes-2. 1998-08-11 03:05:35 +00:00
Carsten Haitzler
71828f4669 file button5.png was initially added on branch themes-2. 1998-08-11 03:05:34 +00:00
Carsten Haitzler
c808e8ee75 file button4.png was initially added on branch themes-2. 1998-08-11 03:05:33 +00:00
Carsten Haitzler
41035ec767 file button3.png was initially added on branch themes-2. 1998-08-11 03:05:32 +00:00
Carsten Haitzler
a8eac0c33e file button2.png was initially added on branch themes-2. 1998-08-11 03:05:31 +00:00
Carsten Haitzler
c79aed0e05 file button1.png was initially added on branch themes-2. 1998-08-11 03:05:30 +00:00
Carsten Haitzler
13da0b3878 file brown_bg2.png was initially added on branch themes-2. 1998-08-11 03:05:29 +00:00
Carsten Haitzler
8ef268f205 file brown_bg1.png was initially added on branch themes-2. 1998-08-11 03:05:28 +00:00
Carsten Haitzler
23fbaaadb0 file arrow_up3.png was initially added on branch themes-2. 1998-08-11 03:05:27 +00:00
Carsten Haitzler
fce02ea0be file arrow_up2.png was initially added on branch themes-2. 1998-08-11 03:05:26 +00:00
Carsten Haitzler
2abc008e51 file arrow_up1.png was initially added on branch themes-2. 1998-08-11 03:05:25 +00:00
Carsten Haitzler
d6aa14f9ac file arrow_right3.png was initially added on branch themes-2. 1998-08-11 03:05:24 +00:00
Carsten Haitzler
2e8dae28fd file arrow_right2.png was initially added on branch themes-2. 1998-08-11 03:05:23 +00:00
Carsten Haitzler
19cc4bc416 file arrow_right1.png was initially added on branch themes-2. 1998-08-11 03:05:22 +00:00
Carsten Haitzler
708e45dd43 file arrow_left3.png was initially added on branch themes-2. 1998-08-11 03:05:20 +00:00
Carsten Haitzler
965e34a43c file arrow_left2.png was initially added on branch themes-2. 1998-08-11 03:05:19 +00:00
Carsten Haitzler
874b1d06e7 file arrow_left1.png was initially added on branch themes-2. 1998-08-11 03:05:18 +00:00
Carsten Haitzler
a698395064 file arrow_down3.png was initially added on branch themes-2. 1998-08-11 03:05:17 +00:00
Carsten Haitzler
e53b16ed74 file arrow_down2.png was initially added on branch themes-2. 1998-08-11 03:05:16 +00:00
Carsten Haitzler
fe7211b9c2 file arrow_down1.png was initially added on branch themes-2. 1998-08-11 03:05:15 +00:00
Lars Hamann
3184f21f0a Fix for resize bug. Call gtk_widget_size_allocate instead of
Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
        gtk_widget_size_allocate instead of gtk_widget_queue_resize
        if the visibility state of a scrollbar changes.
1998-08-10 17:56:43 +00:00
Tim Janik
d86059ea5a fixed an #include statement (reported by Eric Kidd).
Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
1998-08-10 10:52:08 +00:00
Shawn Amundson
c355f84a19 file gtk_vbox.pod was initially added on branch gtk-1-0. 1998-08-07 03:12:10 +00:00
Shawn Amundson
25884cfbf5 file gtk_hbox.pod was initially added on branch gtk-1-0. 1998-08-07 03:12:09 +00:00
Shawn Amundson
123d1f2673 file gtk.pod was initially added on branch gtk-1-0. 1998-08-07 03:12:06 +00:00
Tim Janik
c493091772 hm, someone changed an enum and didn't update auto-files... 1998-08-07 02:54:23 +00:00
Stefan Jeske
b7afebffed Renamed my_merge and my_mergesort to gtk_clist_merge and
Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>

	* gtk/gtkclist.c: Renamed my_merge and my_mergesort to
 	gtk_clist_merge and gtk_clist_mergesort. :)
1998-08-06 20:49:24 +00:00
Raph Levien
2a98c4a504 Fixed some minor comment typos and added myself to AUTHORS in gtk+. 1998-08-06 04:09:40 +00:00
Martin Baulig
123709106e Renamed merge' -> my_merge' and mergesort' -> my_mergesort'.
1998-08-06  Martin Baulig  <martin@home-of-linux.org>

	* gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
	`mergesort' -> `my_mergesort'.
1998-08-06 02:20:47 +00:00
Stefan Jeske
c8df83a2fe new enum GtkSortType.
Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>

	* gtk/gtkenums.h: new enum GtkSortType.

	* gtk/gtkclist.h:
	* gtk/gtkclist.c:
	Added sorting capabilities to GtkCList. New APIs :
	gtk_clist_set_compare_func, gtk_clist_set_sort_column,
	gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
	New internal functions : default_compare, merge, mergesort.

	(gtk_clist_append): This is just a wrapper for gtk_clist_insert now.

	(gtk_clist_insert): Modified to handle gtk_clist_append and the
	auto sort flag. Changed the return value from void to gint to
	return the row number where the element was actually inserted.

	(gtk_clist_swap_rows): Return immediately if auto sort flag is set.

	* gtk/gtkctree.h:
	* gtk/gtkctree.c:
	Removed the auto_sort flag, replaced ctree->node_compare with
	clist->compare all over the place, modified default_compare to
	match clist's needs. Removed APIs : gtk_ctree_set_auto_sort,
	gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.

	* gtk/testgtk.c: Modified clist/ctree samples to demonstrate
	sorting. The lists can be sorted by a column by clicking the
	corresponding title button.
1998-08-05 20:02:32 +00:00
PDT 1998 Shawn T. Amundson
e48d4e7159 Released GTK+ 1.1.1
Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.1
1998-08-05 05:04:30 +00:00
Lars Hamann
e3b8e18524 changed to return a gboolean (gtk_ctree_insert_gnode): new function for
Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkctree.h:
        * gtk/gtkctree.c:
        (gtk_ctree_find): changed to return a gboolean
        (gtk_ctree_insert_gnode): new function for recursive insertion of a
        GNode tree.
        (gtk_ctree_real_select_recursive): fix for extended selection
        (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
        (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
1998-08-05 02:11:32 +00:00
Tim Janik
c4b3014e09 version bump to 1.1.1, binary age 0, interface age 0. GLib version 1.1.1
Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>

        * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
        GLib version 1.1.1 is now required at minimum.

        * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
        of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
1998-08-04 23:44:27 +00:00
Owen Taylor
ed3c12aa5f Added missing else 1998-08-04 15:07:55 +00:00
Owen Taylor
f7a5303612 Undraw the cursor before (possibly) deleting the cursor's text property.
Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>

 	* gtk/gtktext.c (gtk_text_forward_delete): Undraw the
 	  cursor before (possibly) deleting the cursor's text
 	  property.

 	* gtk/gtktext.c (correct_cache_delete): More attempts
 	  to clean the line-start cache up after inserting
 	  a property. Among other things, make sure to
 	  fix up text->current_line, since it is used to
 	  refetch the changed lines.
1998-08-04 14:56:44 +00:00
Owen Taylor
790a6ae5b2 Empty rows/columns of the table should not have been marked as being able
Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktable.[ch]: Empty rows/columns of the table
        should not have been marked as being able to shrink.
	(Fixes prorlem with shrinking scrollbarless GIMP canvases)
1998-08-04 14:55:04 +00:00
Michael Fulbright
fb8cd9520f Changed a %postun to a %preun, should get rid of errors when uninstalling
Dr Mike <msf@redhat.com>
1998-08-04 14:34:23 +00:00
Federico Mena Quintero
f8a40e214a New public function to find a row by its data pointer using a custom
1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
	function to find a row by its data pointer using a custom
	comparison function.
1998-08-03 19:50:23 +00:00
Vincent Renardias
08d246be89 Mon, 3 Aug 1998 20:08:46 +0200 [Vincent]
* French version of the Gtk+ tutorial contributed by Eric Jacoboni <jaco@dotcom.fr>
1998-08-03 18:05:06 +00:00
George Lebl
2a1cd0c42e don't you hate it when you apply the wrong patch and discover it only
after applying it and committing
-George
1998-08-03 06:22:41 +00:00
George Lebl
fba2b02b10 draw the buttons during a "draw" as well, this fixes a bug when the whole
Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>

        * gtk/gtkclist.c: draw the buttons during a "draw" as well,
          this fixes a bug when the whole widget is made non-sesitive
          the buttons weren't redrawn
1998-08-03 05:58:49 +00:00
Lars Hamann
c3c5e72151 reset drag_pos after abort removed a few unneeded lines fixed compiler
Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
	* gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
	* gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
1998-08-02 22:18:20 +00:00
Owen Taylor
d597937560 Change window_private->parent pointer when reparenting.
Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>

        * gdk/gdkwindow.c (gdk_window_reparent): Change
          window_private->parent pointer when reparenting.
1998-08-02 07:15:00 +00:00
Raph Levien
7ba4ba0d2f Made some config changes to make it work better both as a standalone
module (i.e. with Gtk 1.0) and as a module under Gtk 1.1+, i.e. harmonized
with the separate GdkRgb release.
1998-08-02 05:39:47 +00:00
Lars Hamann
8ad52d1024 Few fixes for column resize. Store resize column in clist->drag_pos.
Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
        (gtk_clist_button_release) (new_column_width): Few fixes for
        column resize. Store resize column in clist->drag_pos.

Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>

        * gtk/gtkctree.h
        * gtk/gtkctree.c
        * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
        to GtkCTreeNode *node.

        * gtk/gtklist.h : added extended selection mode and auto scrolling.
        (struct _GtkList): removed unneeded variables timer, button,
        selection_start_pos, selection_end_pos, scroll_direction, have_grab.
        Added new variables undo_selection, undo_unselection, last_focus_child,
        undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
        drag_selection, add_mode.

        New functions :
        (gtk_list_extend_selection), (gtk_list_start_selection),
        (gtk_list_end_selection), (gtk_list_select_all),
        (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
        (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
        (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
        (gtk_list_undo_selection), (gtk_list_end_drag_selection)

        * gtk/gtklist.c :
        (gtk_list_enter_notify): removed, because auto scrolling now works
        with gtk_list_motion_notify

        New functions, needed for auto scrolling :
        (gtk_list_motion_notify) (gtk_list_move_focus_child)

        New functions for extended selection support :
        (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
        (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
        (gtk_list_focus_lost)

        (gtk_list_set_focus_child): modified gtk_container_set_focus_child
        function to support auto scrolling, and avoid out-of-sync errors in
        case auf GTK_SELECTION_BROWSE
        (gtk_list_focus): modified gtk_container_focus function to avoid out
        off sync errors in case auf GTK_SELECTION_EXTENDED

        * gtk/gtklistitem.h
        * gtk/gtklistitem.c :
        New signal functions for key binding support :
        (toggle_focus_row), (select_all), (list_item), (unselect_all)
        (list_item), (undo_selection), (start_selection), (end_selection)
        (extend_selection), (scroll_horizontal), (scroll_vertical),
        (toggle_add_mode)
        (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
        GDK_KEY_RELEASE_MASK
        (gtk_list_item_draw_focus): modify gc if parent has add_mode set.

        * gtk/gtkcombo.c :
        (gtk_combo_popup_button_press):  grab pointer for combo->list
        (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
        (gtk_combo_list_key_press): take care of which child HAS_GRAB
        (gtk_comb_init): don't connect combo->button with button_release_event
1998-07-31 20:48:06 +00:00
Carsten Haitzler
cf7b958af5 file pixmap_theme_main.c was initially added on branch themes-2. 1998-07-31 16:47:50 +00:00
Carsten Haitzler
1616d67d81 file pixmap_theme_draw.c was initially added on branch themes-2. 1998-07-31 16:47:49 +00:00
Carsten Haitzler
c312e81604 file pixmap_theme.h was initially added on branch themes-2. 1998-07-31 16:20:32 +00:00
Carsten Haitzler
bd745719cf file b_full.png was initially added on branch themes-2. 1998-07-30 18:53:11 +00:00
Carsten Haitzler
e884fc143d file b3.png was initially added on branch themes-2. 1998-07-30 18:53:10 +00:00
Carsten Haitzler
0e6bf066c6 file b2.png was initially added on branch themes-2. 1998-07-30 18:53:09 +00:00
Carsten Haitzler
0d1978edbf file b1.png was initially added on branch themes-2. 1998-07-30 18:53:08 +00:00
Carsten Haitzler
ddabef3c49 file b0.png was initially added on branch themes-2. 1998-07-30 18:53:07 +00:00
Carsten Haitzler
dcc96c09bd file _rulev.png was initially added on branch themes-2. 1998-07-30 18:53:06 +00:00
Carsten Haitzler
032196b9dd file _ruleh.png was initially added on branch themes-2. 1998-07-30 18:53:04 +00:00
Carsten Haitzler
f6665c9c0a file _prog_vgrad.png was initially added on branch themes-2. 1998-07-30 18:53:03 +00:00
Carsten Haitzler
e6f7751958 file _option2.png was initially added on branch themes-2. 1998-07-30 18:53:02 +00:00
Carsten Haitzler
93ab7875e4 file _option1.png was initially added on branch themes-2. 1998-07-30 18:53:01 +00:00
Carsten Haitzler
b7ab832906 file _focus.png was initially added on branch themes-2. 1998-07-30 18:53:00 +00:00
Carsten Haitzler
b5658eeaef file _check2.png was initially added on branch themes-2. 1998-07-30 18:52:59 +00:00
Carsten Haitzler
cc7f7a2eb5 file _check1.png was initially added on branch themes-2. 1998-07-30 18:52:58 +00:00
Carsten Haitzler
103739f248 file _box_out_dgrad6.png was initially added on branch themes-2. 1998-07-30 18:52:57 +00:00
Carsten Haitzler
3f314b2cd8 file _box_out_dgrad5.png was initially added on branch themes-2. 1998-07-30 18:52:56 +00:00
Carsten Haitzler
fe480d99b4 file _box_out_dgrad4.png was initially added on branch themes-2. 1998-07-30 18:52:55 +00:00
Carsten Haitzler
965d225c9a file _box_out_dgrad3.png was initially added on branch themes-2. 1998-07-30 18:52:54 +00:00
Carsten Haitzler
82765cc166 file _box_out_dgrad2.png was initially added on branch themes-2. 1998-07-30 18:52:53 +00:00
Carsten Haitzler
7329d5cb8c file _box_out_dgrad1.png was initially added on branch themes-2. 1998-07-30 18:52:52 +00:00
Carsten Haitzler
44097af086 file _arrow_u3.png was initially added on branch themes-2. 1998-07-30 18:52:51 +00:00
Carsten Haitzler
527bf45430 file _arrow_u2.png was initially added on branch themes-2. 1998-07-30 18:52:50 +00:00
Carsten Haitzler
5f6e095722 file _arrow_u1.png was initially added on branch themes-2. 1998-07-30 18:52:49 +00:00
Carsten Haitzler
919c335569 file _arrow_r3.png was initially added on branch themes-2. 1998-07-30 18:52:48 +00:00
Carsten Haitzler
2720bec633 file _arrow_r2.png was initially added on branch themes-2. 1998-07-30 18:52:47 +00:00
Carsten Haitzler
13ce27bfef file _arrow_r1.png was initially added on branch themes-2. 1998-07-30 18:52:46 +00:00
Carsten Haitzler
d1812f696e file _arrow_l3.png was initially added on branch themes-2. 1998-07-30 18:52:45 +00:00
Carsten Haitzler
03def75b3f file _arrow_l2.png was initially added on branch themes-2. 1998-07-30 18:52:44 +00:00
Carsten Haitzler
63ff245b44 file _arrow_l1.png was initially added on branch themes-2. 1998-07-30 18:52:43 +00:00
Carsten Haitzler
5622a388fa file _arrow_d3.png was initially added on branch themes-2. 1998-07-30 18:52:42 +00:00
Carsten Haitzler
23aec8934e file _arrow_d2.png was initially added on branch themes-2. 1998-07-30 18:52:41 +00:00
Carsten Haitzler
d0ccf396e7 file _arrow_d1.png was initially added on branch themes-2. 1998-07-30 18:52:40 +00:00
Carsten Haitzler
4ed4f66911 file win95_theme_main.c was initially added on branch themes-2. 1998-07-30 18:52:38 +00:00
Carsten Haitzler
e2aace2ade file win95_theme_draw.c was initially added on branch themes-2. 1998-07-30 18:52:37 +00:00
Carsten Haitzler
5fa74836b8 file win95_theme.h was initially added on branch themes-2. 1998-07-30 18:52:36 +00:00
Carsten Haitzler
24de292011 file motif_theme_main.c was initially added on branch themes-2. 1998-07-30 18:52:32 +00:00
Carsten Haitzler
9cf57615e6 file motif_theme_draw.c was initially added on branch themes-2. 1998-07-30 18:52:31 +00:00
Carsten Haitzler
8857d094a8 file motif_theme.h was initially added on branch themes-2. 1998-07-30 18:52:30 +00:00
Carsten Haitzler
43916bf90f file configure.in was initially added on branch themes-2. 1998-07-30 18:52:29 +00:00
Carsten Haitzler
551b25196f file autogen.sh was initially added on branch themes-2. 1998-07-30 18:52:28 +00:00
Carsten Haitzler
0d45a265fa file Makefile.in was initially added on branch themes-2. 1998-07-30 18:52:27 +00:00
Carsten Haitzler
d0b6c5e10f file Changelog was initially added on branch themes-2. 1998-07-30 18:52:26 +00:00
Lars Hamann
a9912f2e78 removed a few unneeded lines
* gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
1998-07-30 10:52:35 +00:00
Lars Hamann
cfd59821e7 column resize now works with horizontal autoscrolling, GtkCTree's 'reorder
* gtk/gtkclist.c (gtk_clist_motion): column resize now works with
  horizontal autoscrolling, GtkCTree's 'reorder ability' now works
  with horizontal and vertical autoscrolling.
1998-07-29 21:46:39 +00:00
CDT 1998 Shawn T. Amundson
e93751bbbd new directory new file, initial gtk_button man page
Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/docs/man: new directory
        * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
1998-07-29 01:33:51 +00:00
Lars Hamann
7b5763fdd0 small fix for border drawing bug
* gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
  bug
1998-07-28 21:43:04 +00:00
Carsten Haitzler
0e7cab347a file th_main.c was initially added on branch themes-2. 1998-07-28 20:39:26 +00:00
Carsten Haitzler
8ad3303188 file th_draw.c was initially added on branch themes-2. 1998-07-28 20:39:25 +00:00
Carsten Haitzler
7b07769355 file th.h was initially added on branch themes-2. 1998-07-28 20:39:24 +00:00
Carsten Haitzler
dc69fc120d file COMPILE was initially added on branch themes-2. 1998-07-28 20:39:23 +00:00
CDT 1998 Shawn T. Amundson
71c52a71f4 new format for GDK documentation. Eventually plan to remove gdk.texi, but
Tue Jul 28 00:15:28 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * docs/gdk.sgml: new format for GDK documentation.  Eventually
	  plan to remove gdk.texi, but not quite yet.  Just getting
	  started.
1998-07-28 05:19:38 +00:00
BST 1998 Tony Gale
49fdaf4fff GtkTree section from David Huggins-Daines <bn711@freenet.carleton.ca>, add
Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: GtkTree section from
          David Huggins-Daines <bn711@freenet.carleton.ca>,
          add a GtkText widget example
        * examples/text/* example/tree/* : new examples for the
          GtkTree and GtkText widgets
        * docs/gtk_tut.sgml: added an appendix to hold complete code                          examples that aren't in a full form elsewhere in the
          tutorial (e.g. scribble)
1998-07-27 08:24:38 +00:00
BST 1998 Tony Gale
8864534892 GtkTree section from David Huggins-Daines <bn711@freenet.carleton.ca>, add
Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: GtkTree section from
          David Huggins-Daines <bn711@freenet.carleton.ca>,
          add a GtkText widget example
        * examples/text/* example/tree/* : new examples for the
          GtkTree and GtkText widgets
1998-07-27 08:21:40 +00:00
CDT 1998 Shawn T. Amundson
718259dcc2 Released GTK+ 1.1.0
Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.1.0
1998-07-27 06:59:50 +00:00
Tim Janik
31055c2981 fixed EXTRA_DIST sections 1998-07-27 02:51:48 +00:00
Tim Janik
f111f4b58e revamped the definitions for 1-1-0, so that all the new API stuff is
Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>

        * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
        the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
1998-07-27 02:24:39 +00:00
Tim Janik
fc7c7f466f fixup, so that enum values are looked up.
Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
        values are looked up.

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
        gtk_type_enums_find_value to lookup enum values.

        * gtk/gtkctree.h:
        * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
        GtkCTreeExpansionType. fixed signal creations to pass the enum
        types not just the base type GTK_TYPE_ENUM.

        * gtk/gtkclist.h:
        * gtk/gtkclist.c: fixed signal creations to pass the real enum
        types not just the base type GTK_TYPE_ENUM.
1998-07-27 01:50:16 +00:00
Lars Hamann
656061cb2b little fix to avoid warnings
* gtk/gtkclist.c gtk/gtkctree.c : little fix to avoid warnings
1998-07-26 15:54:41 +00:00
Stefan Jeske
a7f95d982f --- 1998-07-26 14:46:52 +00:00
Stefan Jeske
7170996088 Began cleanup, e.g. use gtk_widget_show_all instead of many
gtk_widget_show's. Completely rewrote the button box sample
(only one window now). Removed "miscellaneous" button.
1998-07-26 14:45:40 +00:00
Stefan Jeske
fb430a8dc5 Fixed wrong allocation for GTK_BUTTONBOX_END.
(allocation->x  =>  allocation->y)
1998-07-26 14:44:36 +00:00
Lars Hamann
65044acefd fix for pointer grab
* gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
  (abort_column_resize) (gtk_clist_key_press): fix for pointer grab

* gtk/gtkctree.c (real_tree_select): added check to avoid double
  selected rows
  (gtk_ctree_button_press)
  (gtk_ctree_button_release): fix for pointer grab
1998-07-26 13:12:07 +00:00
Damon Chaplin
72415bc1a7 *** empty log message *** 1998-07-25 12:17:45 +00:00
Damon Chaplin
3f8175bb20 Fixed 2 bugs in font selection - initialising array sizes and checking that
a bitmapped font can be scaled.
1998-07-25 12:09:38 +00:00
Tim Janik
5c86382961 minor adjustments. 1998-07-25 04:07:04 +00:00
Lars Hamann
165fab7605 test for node != NULL (gtk_ctree_is_visible) (gtk_ctree_realize)
* gtk/gtkctree.c (gtk_ctree_sort_recursive)
  (gtk_ctree_sort_recursive): test for node != NULL
  (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
  (gtk_ctree_last) : added sanity checks
* gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
1998-07-25 01:10:58 +00:00
Lars Hamann
f970ecf821 mini code cleanup
* gtk/gtkclist.c (toggle_focus_row): mini code cleanup
1998-07-24 16:22:53 +00:00
Paolo Molaro
7b1a4b5eb5 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
* gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
1998-07-24 08:53:59 +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
Manish Singh
3ea4f70fa6 actually builds and runs properly on big endian machines now, because we
* gdk/gdkrgb.c: actually builds and runs properly on big endian machines
now, because we #include config.h. Also fixed up a compile error in the
WORDS_BIGENDIAN case in gdk_rgb_convert_565_gray. I made the fix by looking
at patterns in the other code; Raph can you verify this?

* gdk/gdkthreads.c: #include <unistd.h> to quell compiler warnings

-Yosh
1998-07-22 22:22:05 +00:00
Lars Hamann
aa1bf58196 few fixes for gtk_signal_emits
* gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
  (tree_toggle_expansion) (real_select/unselect_row)
  (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
1998-07-22 21:13:48 +00:00
Tim Janik
59a36172d8 make auto-files update 1998-07-22 19:23:51 +00:00
Owen Taylor
b4c814e272 We free things from the text property MemChunk, so it needs to be
Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (new_text_property): We free things from
	the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.

	* Fix up line start cache when splitting a property
	during an insert.
1998-07-21 19:31:38 +00:00
Elliot Lee
8cf49d7c10 genmarshal.pl: Handle complex types, and functions with a return value but
genmarshal.pl: Handle complex types, and functions with a return value but
	       no parameters.
genmarshal.pl gtkmarshal.* gtkwidget.c: Remove support for GDK_EVENT and
				        STYLE parameter types.
1998-07-21 18:49:53 +00:00
Elliot Lee
5f8748c53e Marshallers for C_CALLBACK parameters now pass "func, func_data," instead
Marshallers for C_CALLBACK parameters now pass "func, func_data," instead
of "func,".
1998-07-21 16:06:00 +00:00
Raph Levien
d154bfafd9 More minor config fixes. 1998-07-21 05:53:44 +00:00
Raph Levien
4667d36ccd Fixed minor config bug. 1998-07-21 05:20:29 +00:00
Elliot Lee
e53fd25b04 missed this 1998-07-21 05:01:37 +00:00
Stefan Jeske
dbfe3d3967 Fixed wrong size of activity indicator. It is settable now as a fraction
Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>

	* gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
 	activity indicator. It is settable now as a fraction of the
	total width/height using gtk_progress_bar_set_activity_blocks.
	Renamed gtk_progress_bar_set_number_of_blocks to
	gtk_progress_bar_set_discrete_blocks.
1998-07-21 04:49:01 +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
Lars Hamann
cebb7bfc9f new functions, recursive process tree to specified depth
* gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
  (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
  tree to specified depth
  (gtk_ctree_expand_to_depth): expand tree to specified depth
  (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
1998-07-20 19:45:45 +00:00
Lars Hamann
bfa2ec274b fix for vertical scrolling in case of GTK_CLIST_ADD_MOD changed pixmap
* gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
  of GTK_CLIST_ADD_MOD
* gtk/testgtk.c (add1000_clist): changed pixmap
1998-07-19 22:42:21 +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
Stefan Jeske
b43c45571d Introduced generic GtkProgress widget. Derived GtkProgressBar from
Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>

	* gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
	  gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
	Introduced generic GtkProgress widget. Derived GtkProgressBar from
	GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
1998-07-19 10:35:39 +00:00
Manish Singh
c25b3aad1e explicitly specify void in prototype
-Yosh
1998-07-18 06:50:57 +00:00
Lars Hamann
15201b48c9 Changelog fix 1998-07-17 16:07:08 +00:00
Lars Hamann
c0ce3a6107 fix to avoid flicker at begin/end of list
* gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
  of list
1998-07-17 16:05:42 +00:00
Owen Taylor
656eaa93bf If xid_ht hasn't been created yet, don't do the lookup.
Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
	hasn't been created yet, don't do the lookup.
1998-07-17 14:48:35 +00:00
Tim Janik
2bc6d4548f sropped the approach of copying all signal specific data into a
Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
        sropped the approach of copying all signal specific data into a
        GtkHandlerInfo structure. we rather keep the signal data on the stack
        in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
        avoids multiple lookups of the signal pointer and works savely together
        with destroy notifiers of handlers.

        * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
        someone destroys the entry on the ::activate signal.
1998-07-17 06:10:02 +00:00
Tim Janik
ca7b223bf0 care for the posssibility that someone destroys the entry on the
Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
        someone destroys the entry on the ::activate signal.
1998-07-17 03:56:13 +00:00
Tim Janik
ca17982ed2 use misc->xpad for x calculation instead of ypad (typo). (gtk_arrow_set):
Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
        instead of ypad (typo).
        (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
        border around the allocation).
        (gtk_arrow_init): the static requisition needs to be setup in this
        function rather than gtk_widget_new(), so arrow creation works without
        the gtk_arrow_new() constructing.
        (gtk_arrow_expose): return TRUE, since we actually handled the expose.

        * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
        implementation for GtkWidget::size_request, so size requisition for
        simple statically sized widgets like GtkArrow works.
1998-07-17 00:03:35 +00:00
Manish Singh
699dcbab17 Fix slight screwup
-Yosh
1998-07-16 23:05:22 +00:00
Manish Singh
5886cc2cdf minor changes to gtk-config: --cflags doesn't prepend -I@libdir@/glib/include
anymore, since glib-config handles it; --libs strips out redundant -L<path>'s
properly (there was code in there to do it before, but it didn't work)

-Yosh
1998-07-16 21:24:52 +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
Elliot Lee
5e3acecc12 Make gdk_window_foreign_new fail gracefully 1998-07-16 19:41:12 +00:00
Lars Hamann
8f733319d1 fix for sigsegv in case of drag_target == NULL fix for
* gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
  case of drag_target == NULL
* gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
  Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
* gtk/gtkfilesel.c (gtk_file_selection_file_button,
  gtk_dir_selection_file_button): fix due to changes in clist's
  select_row signal.
1998-07-16 13:05:02 +00:00
Tim Janik
af24aef782 handle negative values similar to gtk_widget_set_uposition(). that is:
Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
        similar to gtk_widget_set_uposition(). that is: -1=unspecified,
        -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
        to be gint16s rather than guint16s, since that's what the code expected
        (for a long time actually).

        * gtk/gtkviewport.c:
        added support for object arguments: GtkViewport::shadow_type,
        GtkViewport::vadjustment and GtkViewport::hadjustment.
        (gtk_viewport_add): chain gtk_bin_add.

        * gtk/gtkscrolledwindow.c:
        added support for object argument: GtkScrolledWindow::hscrollbar_policy,
        GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.

        * gtk/gtkadjustment.h:
        * gtk/gtkadjustment.c:
        * gtk/gtkctree.h:
        * gtk/gtkclist.h:
        * gtk/gtkctree.c:
        * gtk/gtkclist.c:
        * gtk/gtkscrolledwindow.h:
        * gtk/gtkscrolledwindow.c:
        * gtk/gtkviewport.h:
        * gtk/gtkviewport.c:
        GtkType and macro fixups.
1998-07-16 02:47:15 +00:00
Lars Hamann
8b9b7b9d04 Added focus handling, horizontal and vertical autoscrolling, extended
* gtk/gtkctree.h :
* gtk/gtkctree.c :
  Added focus handling, horizontal and vertical autoscrolling,
  extended Selection Mode, key bindings
  Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
  Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
  Removed gtk_ctree_clear.

* gtk/gtkclist.h :
* gtk/gtkclist.c :
  Added focus handling, horizontal and vertical autoscrolling,
  extended Selection Mode, key bindings
1998-07-15 23:40:00 +00:00
Manish Singh
b665608816 Build fixes for gdkrgb
-Yosh
1998-07-15 21:15:33 +00:00
Raph Levien
23124810d1 Integrating GdkRgb 0.0.3 into the Gtk+ source tree.
Integrating GdkRgb 0.0.3 into the Gtk+ source tree.
1998-07-15 20:25:52 +00:00
Tim Janik
a3c7dca8cf pass only the signal_id to this function. it needs to relookup the signal
Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
        to this function. it needs to relookup the signal multiple times.
        this fixes spurious segfaults that could show up with signal intensive
        code, when classes are created during a pending emission (which is
        normal case).
1998-07-15 12:25:43 +00:00
Tim Janik
7702d2f8fc don't destroy a buttons child if it isn't a label.
Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
        child if it isn't a label.
1998-07-14 17:48:28 +00:00
Tim Janik
a91be9352f macro and GtkType fixups.
Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkdialog.h:
        * gtk/gtkseparator.h:
        * gtk/gtkhseparator.h:
        * gtk/gtkvseparator.h: macro and GtkType fixups.
1998-07-14 16:34:48 +00:00
Tim Janik
da355feec6 display the current cursor name.
Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c (create_cursors): display the current cursor name.

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
        the fundamental type definition. the GtkArg union now only covers
        the required storage types for argument values. adapted the GTK_VALUE_*
        macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.

        * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
        code, fixed int/float collection. fixed a bug in the sanity checking
        code for GtkObjects.

        * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
        argument collection code.

        * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
        macros when distinguishing the return type.
1998-07-14 07:40:15 +00:00
George Lebl
f38374c160 check if old_parent_private is not NULL before trying to g_list_remove the
Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>

        * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
          is not NULL before trying to g_list_remove the child. A patch
          from Michael Lausch.

this finally fixes the swallows for the panel :)
1998-07-13 19:43:33 +00:00
Tim Janik
8792bbbd28 fix float argument collection (always casted to doubles upon argument
Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
        collection (always casted to doubles upon argument passing).
1998-07-12 14:43:03 +00:00
Tim Janik
34b7b5d74e call the base classes' object_init_func for derived objects with the
Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
        object_init_func for derived objects with the object's ->klass field
        still pointing to the corresponding base class, otherwise overridden
        class functions could get called with partly-initialized objects.
        (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
1998-07-12 04:13:02 +00:00
Tim Janik
ab7cb5019e new functions which wraps gtk_arg_get_info().
Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.h:
        * gtk/gtkobject.c:
        (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().

        * gtk/gtkcontainer.h:
        * gtk/gtkcontainer.c:
        (gtk_container_child_arg_get_info): new function which wraps
        gtk_arg_get_info().
1998-07-12 01:34:20 +00:00
Tim Janik
5edb04999c strictly check for the associated get/set arg functions. if an arg is
Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c:
        (gtk_container_arg_get):
        (gtk_container_arg_set):
        * gtk/gtkobject.c:
        (gtk_object_arg_set):
        (gtk_object_arg_get):
        strictly check for the associated get/set arg functions. if an
        arg is readable or writable, the associated class functions *must*
        be provided.
1998-07-10 11:36:26 +00:00
Tim Janik
ab3f4a1607 only take the padding into account if there is an accelerator.
Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
        padding into account if there is an accelerator.
1998-07-10 08:53:52 +00:00
Tim Janik
55b5e035fc collect the arguments with gtk_container_child_args_collect, not through
Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c:
        (gtk_container_add_with_args): collect the arguments with
        gtk_container_child_args_collect, not through gtk_object_args_collect.
        (gtk_container_child_set): likewise.

(cut 'n paste strikes back)
1998-07-10 03:59:44 +00:00
Tim Janik
002d37e6e3 added a new internal type GTK_TYPE_IDENTIFIER which is derived from
Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
        which is derived from GTK_TYPE_STRING.

        * gtk/gtkbindings.c: reworked the argument type handling.
1998-07-10 02:33:06 +00:00
CDT 1998 Shawn T. Amundson
524be636e9 add in just enough support for 1 or 4 bits so that it seems to allow
Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
	  so that it seems to allow normal operation in those modes,
	  although you will only see black.  1 bit untested
1998-07-10 02:09:10 +00:00
CDT 1998 Shawn T. Amundson
26dcaeaf56 4 bit support, increased available_depths array, which was too low (?)
Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gdk/gdkvisuals.c: 4 bit support, increased available_depths
	  array, which was too low (?)
1998-07-10 01:27:37 +00:00
Tim Janik
347efc33b8 deleted most of the argument handling code, since that is now implemented
Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkcontainer.h:
	* gtk/gtkcontainer.c: deleted most of the argument handling code, since
	that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
	we now export a new function gtk_container_child_args_collect().
	for consistency with the object arguments, a few functions got renamed:
	gtk_container_child_arg_get -> gtk_container_child_get,
	gtk_container_child_arg_set -> gtk_container_child_set,
	gtk_container_child_arg_getv -> gtk_container_child_getv,
	gtk_container_child_arg_setv -> gtk_container_child_setv,
	gtk_container_add_with_argv -> gtk_container_addv.
	note, gtk_container_add_with_args() remained, because its equivalent
	would be gtk_container_add(,, ...) which would break all existing code.
	(gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
	we expect the `arg_name' argument to be a const static string now.
	(gtk_container_get_child_arg_type): function removed.

Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
	this is a static inline function that collects command line arguments
	from a va_list. this file can just be included in all places that
	need this functionality.

	* gtk/gtkarg.h:
	* gtk/gtkarg.c: new files which implement most of the argument
	handling stuff from gtkobject.c. also collected a few more
	gtk_arg_* utility functions from else places.

	* gtk/gtkobject.h:
	* gtk/gtkobject.c: moved most of the argument handling code into
 	gtkarg.c. we now export gtk_object_args_collect() as a non-public
	method with a blind va_list pointer.
	(gtk_object_add_arg_type): the `arg_name' argument is required to be a
	const static string now.
	(gtk_object_get_arg_type): function got removed.

	* gtk/gtkwidget.c:
	(gtk_widget_set):
	(gtk_widget_new): adaptions for gtk_object_args_collect().

	* gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
 	fundamental type name so as to have a valid prefix, e.g. "bool"->
	"gboolean", "string"->"GtkString" and somesuch, left "void" as is,
	though that should probably be something like GtkNone since the
	type itself is called GTK_TYPE_NONE.
	even the internal type names need to avoid name clashes and must live
	in their own namespace, several code portions rely on that.
	we should relly have typedefs such as typedef gchar* GtkString; so the
	fundamental type names can be used for code dumpers just like with all
	the Gtk/Gdk types.
1998-07-09 23:00:34 +00:00
Tim Janik
9b4d90465e handle GTK_RELIEF_HALF, which was introduced to keep either
Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
        keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
        to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
        (GTK_RELIEF_HALF).
        (gtk_button_paint): set the background for prelighted buttons with
        GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
        (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
        the shadow type (otherwise we get strange shadows for coloured buttons).
        (gtk_button_set_relief): queue a redraw after changing
        the relief.
        (gtk_button_class_init):
        (gtk_button_set_arg):
        (gtk_button_get_arg): added object argument "GtkButton::relief".

        * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
1998-07-08 14:12:27 +00:00
Tim Janik
88fba9f845 totaly binary incomnpatible change:
Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkbutton.h:
        * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
        GTK_BIN (button)->child to button->child to keep source compatibility.

        * gtk/gtkoptionmenu.c:
        * gtk/gtkclist.c:
        * gtkcheckbutton.c: don't refer to button->child, but
        GTK_BIN (button)->child instead.
1998-07-07 01:25:27 +00:00
BST 1998 Tony Gale
da0930717e update anon CVS info
Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtkfaq.sgml: update anon CVS info
1998-07-06 11:07:53 +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
Federico Mena Quintero
c2eb7c28fe Added GDK_HAVE_FULL_CROSSING_EVENT, since I seem to have erroneously added
1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
	I seem to have erroneously added it to gtkfeatures.h (not .h.in).
1998-07-03 22:39:22 +00:00
Manish Singh
24ca48fe78 Added GTK_HAVE_RELIEF_STYLE
-Yosh
1998-07-03 21:56:28 +00:00
Carsten Haitzler
5d37ea836c file theme2_window.c was initially added on branch themes. 1998-07-03 20:33:16 +00:00
Carsten Haitzler
9b5ef39404 file theme2_checkbutton.c was initially added on branch themes. 1998-07-03 20:33:14 +00:00
Carsten Haitzler
ca98134099 file d3_n.png was initially added on branch themes. 1998-07-03 20:23:36 +00:00
Carsten Haitzler
fc5df6bb7f file d2_n.png was initially added on branch themes. 1998-07-03 20:23:35 +00:00
Carsten Haitzler
188ea9b487 file d2_h.png was initially added on branch themes. 1998-07-03 20:23:34 +00:00
Carsten Haitzler
9dc1fd02b3 file d2_d.png was initially added on branch themes. 1998-07-03 20:23:33 +00:00
Carsten Haitzler
6a5a84b317 file d1_n.png was initially added on branch themes. 1998-07-03 20:23:32 +00:00
Carsten Haitzler
6d10b256ef file d1_h.png was initially added on branch themes. 1998-07-03 20:23:31 +00:00
Carsten Haitzler
8433a5afe5 file d1_d.png was initially added on branch themes. 1998-07-03 20:23:30 +00:00
Carsten Haitzler
65f993b4ac file b_out.png was initially added on branch themes. 1998-07-03 20:23:29 +00:00
Carsten Haitzler
0f3a3909d1 file b_in.png was initially added on branch themes. 1998-07-03 20:23:28 +00:00
Carsten Haitzler
d2cb5285d5 file b_full.png was initially added on branch themes. 1998-07-03 20:23:27 +00:00
Tim Janik
2e8e686cae temporary implementation of action signal "debug_msg"
Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"

        * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
        error that prevented signal to entry addition for signals with
        parameters.
1998-07-01 19:36:53 +00:00
Manish Singh
09de6fb1d4 fix for properly detecting shared lib support on SunPro cc (taken from
libtool 1.2.a)

-Yosh
1998-07-01 17:06:47 +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
79e1b1ab6f minor updates. 1998-06-30 20:31:00 +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
80b0b3ea05 ok, this enables the possibility for key-release bindings.
but nearly no widget really cares to set GDK_KEY_RELEASE_MASK,
which needs to be enabled in order for release bindings to work.

Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
        modifier as well.
        (gtk_accelerator_name): add "<Release>" to the accelerator name if
        neccessary.

        * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
        account.

        * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
        default handler for key-release events, which checks for activation
        of GDK_RELEASE_MASK key bindings.

        * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1998-06-30 08:20:45 +00:00
Tim Janik
bf44f089cd implemented default handler for key-release events, which checks for
Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
        default handler for key-release events, which checks for activation
        of GDK_RELEASE_MASK key bindings.

        * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1998-06-30 08:02:53 +00:00
Tim Janik
1d82cc2f2e GtkType and macro fixups. widget argument implementation:
Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkarrow.h: GtkType and macro fixups.
        * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
        "GtkArrow::shadow_type".
1998-06-29 11:41:46 +00:00
Elliot Lee
dedcbc9918 Added OBJECT type 1998-06-29 02:12:46 +00:00
Tim Janik
09423315a1 GtkType and macro fixups.
Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkalignment.h:
        * gtk/gtkbin.h: GtkType and macro fixups.

        * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
        implementation: GtkAlignment::xalign, GtkAlignment::yalign,
        GtkAlignment::xscale, GtkAlignment::yscale.
1998-06-28 10:07:37 +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
Manish Singh
e07f8bfc6f ChangeLog fun
-Yosh
1998-06-28 06:25:36 +00:00
Manish Singh
4b7bbd4434 use rand() instead of random() for portability
-Yosh
1998-06-28 06:24:49 +00:00
Manish Singh
28c7089077 use native Xlib XConvertCase if it's available
-Yosh
1998-06-28 05:44:14 +00:00
Tim Janik
f93afa9c75 compatibility function to provide XConvertCase() functionality from X11R6
Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
        XConvertCase() functionality from X11R6 on X11R5 systems.
1998-06-27 13:51:41 +00:00
Stefan Jeske
37460b2078 Added functions gdk_text_height, gdk_string_height, gdk_char_height to
Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>

	* gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
 	gdk_string_height, gdk_char_height to retrieve the exact
	height of a text.
1998-06-25 09:01:42 +00:00
BST 1998 Tony Gale
713cecba4c add section on GtkCList widget, contributed by Stefan Mars
Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: add section on GtkCList widget, contributed                                       by Stefan Mars <mars@lysator.liu.se>
        * examples/clist/clist.c examples/clist/Makefile: example code
          for GtkCList widget from the Tutorial
1998-06-25 08:57:29 +00:00
Stefan Jeske
e5e47e6879 fix for the compatibility fix 1998-06-25 07:43:27 +00:00
Tim Janik
faa1434735 do not avoid to queue for a resize if the container is not visible, we
Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
        if the container is not visible, we might be a toplevel! this holds
        for all other base container implementations as well, that are
        candidates to derive toplevels from. in general the resizing code will
        care about visibility itself.
        * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
        * gtk/gtkbox.c (gtk_box_remove): likewise.

        * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
        gtk_window_set_hints(), since we haven't calculated the new position
        yet.

        * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
        *mask are alway initialized in a sane way, regardless of the return
        value.
1998-06-24 17:15:05 +00:00
Tim Janik
11f5588755 changelog entry 1998-06-24 12:24:20 +00:00
Tim Janik
9860caa539 new function gtk_container_child_arg_set, similar to
Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
        to gtk_container_child_arg_setv, but takes a variable argument list.
        new function gtk_container_get_child_arg_type, which is needed by
        gtk_object_collect_args.

        * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
        take a function pointer to figure the argument type.
        adapted callers to pass gtk_object_get_arg_type.
        * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
        gtk_object_get_arg_type..

        * gtk/gtkpacker.h:
        * gtk/gtkpacker.c:
        (gtk_packer_reorder_child): new function to change the packing order
        of a child.
        (gtk_packer_size_request):
        (gtk_packer_size_allocate): take container->border_width into acount.

        * gtk/gtkpacker.c: implemented widget arguments:
        "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
        "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
        implemented child arguments:
        "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
        "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
        "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
        "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".

        * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
        not the alignment.

        * gtk/gtkeventbox.h:
        * gtk/gtkeventbox.c: GtkType and macro fixups.

        * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
        sensitivity of an entry.

        * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
        for insensitive base.

        * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
        widget state dependent.
        (gtk_entry_style_set): likewise.
        (gtk_entry_state_changed): set background color on state changes.
        (gtk_entry_draw_text): for non selected text, use state dependent
        colors.

        * gtk/gtktogglebutton.c: support for widget arguments
        "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
1998-06-24 12:22:23 +00:00
Stefan Jeske
14bd8cf9e5 Added compatibility code for 1.0.x-like parameters. Changed internal
* gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
code for 1.0.x-like parameters. Changed internal interface of
gtk_spin_button_real_spin. Several fixes to avoid emission of
"value_changed" where possible.
1998-06-24 07:59:05 +00:00
Tim Janik
dbce6083ef added a frame with radio buttons to select the resize_mode for the
Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
        to select the resize_mode for the idle-labels container.

        * gtk/gtkframe.h:
        * gtk/gtkframe.c: GtkType and macro corrections.

        * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
        support radio grouping.

Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
        unconditionally if resize_mode has changed.

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
        GTK_RESIZE_QUEUE on the scrolled window.
        (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.

Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.h:
        * gtk/gtkcontainer.c:
        (GTK_IS_RESIZE_CONTAINER): new macro to find out if
        a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
        (gtk_container_queue_resize): new function to queue a container for
        a *size* reallocation (doesn't affect its position, and thus its
        parent is left untouched usually).
        (gtk_container_get_resize_container): new function to retrive the next
        most resize container which is not itself queued for a resize.
        (gtk_container_idle_sizer): new function to carefully process the
        container_resize_queue since it can change during invokation of
        gtk_container_check_resize().
        (gtk_container_resize_children): total rework of this function to
        properly handle resize containers. makes a lot of assumptions whitch
        are stated in the comments.

        * gtk/gtkcontainer.c:
        (gtk_container_real_check_resize): only requeue ourselves if we are not
        a resize container.
        (gtk_container_clear_resize_widgets): care for automatic deletion of our
        resize_widgets list on size_allocate through a handler connection.

        * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
        focus and default widget of a window, so to take the burden from
        gtk_widget_unparent.

        * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
        to be clever, but actually messed up the resize_children logic and
        caused unneccessary allocations on its whole branch. besides this,
        it messed up the display by not invoking a redraw after the allocation.

        * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
        that it is the child again that is queued for a resize.
        (gtk_table_attach): likewise.
        (gtk_table_remove): likewise.
1998-06-24 06:25:14 +00:00
Manish Singh
00362c03f7 s/GkWidget/GtkWidget/
-Yosh
1998-06-24 05:23:19 +00:00
Miguel de Icaza
4c7408d9ea Export the gtk_entry_adjust_scroll. Required if you change the cursor
1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

        * gtk/gtkentry.h, gtk/gtkentry.c: Export the
        gtk_entry_adjust_scroll.  Required if you change the cursor
        position and want to sync it up with your code (Midnight Commander
        gtk front end needs this).

        * gtk/gtktable.c: Deal with tables that have size 0, 0.
1998-06-23 15:55:51 +00:00
BST 1998 Tony Gale
eab38fa264 new file to explain how the code examples should be extracted from the
Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>

        * examples/README.1ST: new file to explain how the
          code examples should be extracted from the tutorial.
1998-06-23 11:15:20 +00:00
Raja R Harinath
494e401a15 Restore lost/hidden ChangeLog entry. 1998-06-22 22:27:23 +00:00
Lars Hamann
1b5a1e1acb new CTree line style GTK_CTREE_LINES_TABBED 1998-06-22 17:00:21 +00:00
Raja R Harinath
e14c6c1d87 Remove $(srcdir) from, and clean up, the dependencies. Generate to
1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>

	* gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
	from, and clean up, the dependencies.  Generate to intermediate
	files to prevent problems with Ctrl-C.

	* gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.

Also commit readable/indented gtkmarshal.[ch].
1998-06-21 22:03:58 +00:00
Seth Alves
fdaecac622 removed extra comma at end of enum 1998-06-20 19:59:39 +00:00
Stefan Jeske
1ae617e324 - Bug fix for precision problem causing occasional double emission of
* gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
        - Bug fix for precision problem causing occasional double emission
	  of "value_changed" signal (hopefully works now).
        - API change (should be binary compatible) :
	  new enum GtkSpinType; modified gtk_spin_button_spin to use it.
	  Modified cursor example appropriately.
	  To spin by something other than step_/page_increment, use
	  gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
	- Made GTK_SHADOW_NONE the default. ;)
	- Fixed casting of GtkAdjustment* to GtkWidget* in
	  gtk_spin_button_value_changed.
1998-06-19 17:33:51 +00:00
Tim Janik
5c68ecbc0f fail silently for toplevels. if resize_mode changes to GTK_RESIZE_PARENT,
Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
        for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
        resize widget list before queuing the container for a new reize.
        (gtk_container_need_resize): changed return value to FALSE, since this
        used to indicate that no further resizes are needed.
        (gtk_container_set_arg):
        (gtk_container_get_arg):
        (gtk_container_class_init): implemented GtkContainer::resize_mode
        argument.

        (gtk_container_resize_children): when we walk up the tree of a resize
        widget we need to stop if we are the current parent.

        * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
        GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
        (gtk_widget_hide_all): retrive the toplevel widget from via
        gtk_widget_get_resize_container().
1998-06-19 06:56:15 +00:00
Owen Taylor
5c5a45f9b0 Only respond to selection with button 1. This allows context-sensitive
Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtklist.c (gtk_list_button_press): Only respond
	  to selection with button 1. This allows context-sensitive
	  menus to work correctly.
1998-06-19 03:12:19 +00:00
Tim Janik
3c90c2cd53 replaced some gtk_object_data_force_id with g_quark_from_static_string
Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelgroup.c:
        * gtk/gtkbindings.c:
        * gtk/gtkcontainer.c:
        * gtk/gtkitemfactory.c:
        * gtk/gtkobject.c:
        * gtk/gtksignal.c:
        * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
        g_quark_from_static_string calls to save memory.

        * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
        function _after_ the new data has been setup.
        minor changes to object data functions to feature the GQuark type.
1998-06-19 02:07:47 +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
Federico Mena Quintero
25bd56b995 Use pointer<->int conversion macros to avoid warnings.
1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.

	* gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
	g_return_val_if_fail, because the function *does* return a value.
1998-06-18 22:32:36 +00:00
Tim Janik
f83d57e91b yeppers, accelerator changes to fix the gimp. commit message dedicated to
yeppers, accelerator changes to fix the gimp.
commit message dedicated to sopwith ;)

Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccellabel.h:
        * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
        request the size of the accelerator portion of an accel label.
        (gtk_accel_label_size_request): don't request for the accelerators size.
        (gtk_accel_label_expose_event): only draw the accelerator if we got
        enough extra space.

        * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
        width from children.

        * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
        object (after removal has been requested) check if there is still an
        accelerator remaining to avoid adding two accelerators on an object.
        this can happen for locked accelerators (or accelerator-frozen widgets).
        (gtk_menu_size_request): feature childrens accelerator width in size
        requests.

        * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
        gtk_widget_freeze_accelerators() for dynamically created menu items.

        * gtk/gtksignal.h:
        * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
        which will return a handler_id > 0 if the specified function is pending
        for `signal_id'.

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
        a signal handler function to stop accelerator addition.
        added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
        which will prevent (undo) any accelerators from being added to or
        removed from a widget.
1998-06-18 03:22:09 +00:00
Stefan Jeske
85adae970a *** empty log message *** 1998-06-17 20:09:43 +00:00
Stefan Jeske
7cb2ce4d11 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
acceleration, new API gtk_spin_button_set_snap_to_ticks.
1998-06-17 20:07:31 +00:00
Tim Janik
7d0331a679 new function gdk_window_at_pointer() to retrive the current GdkWindow the
Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdk.h:
        * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
        the current GdkWindow the pointer is on if there is any.

        * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
        and one column, so we don't construction logic at all. changed a few
        (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
        unsigned int wraps.

        * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
        portion, added an additional check for parent != widget.

        * more GtkType and macro fixups.
1998-06-17 08:48:22 +00:00
Elliot Lee
7bb4d7d961 Fixed functions with no arguments 1998-06-17 05:12:27 +00:00
Federico Mena Quintero
ed1e531c36 Now accepts an extra "clip" parameter, which is the clipping rectangle to
1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
	"clip" parameter, which is the clipping rectangle to use.  This
	eliminates the extremely annoying flicker when exposing parts of
	the handlebox.
1998-06-17 03:34:22 +00:00
Manish Singh
b7f7f3d98d fix from TimJ for off-by-one error in table resizing
-Yosh
1998-06-16 21:09:24 +00:00
Stefan Jeske
673c79d7d1 TODO 1998-06-16 07:39:06 +00:00
Tim Janik
742d01908f boy! did i really modify that many files?
anyways, here go the child args and a lot of cleanups ;)
you wouldn't want me to put the ChangeLog entry in here, would you?
1998-06-16 05:20:05 +00:00
Owen Taylor
d36df18dee Moved font lists from the klass structure to a static structure in
Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
	lists from the klass structure to a static structure
	in gtkfontsel.c; cleans up global the namespace.

Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/makeenums.pl (parse_entries): Fix (untriggered)
	bug with /*< skip >*/ and remove warning.
1998-06-16 03:40:04 +00:00
Manish Singh
406fd3362c Added maintainer-rule autogened files
-Yosh
1998-06-16 01:17:43 +00:00
Owen Taylor
2ee01439f0 Made the gtkmarshal.* generation rules maintainer-only.
Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/Makefile.am: Made the gtkmarshal.* generation
	rules maintainer-only.

Really add makeenums.pl (this is getting to be a bad habit)
1998-06-16 00:13:04 +00:00
Owen Taylor
4079c878ca Actually add in the files... 1998-06-15 23:29:27 +00:00
Owen Taylor
48a9f44f31 gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h gtk/Makefile.am gtk/makenums.pl
Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
	  gtk/Makefile.am gtk/makenums.pl

	Removed out the G_ENUM/FLAGS mechanism in favor
	of a perl script that parses the standard headers
	(with occasional /*< nick=foo >*/ style overrides)
	and extracts the enumerations.

	  gtk/maketypes.awk: Small improvments to the
	  translation of names. (Avoid splitting gc into
	  g_c_.)

Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/Makefile.am gtk/gtk.h gtk/gtkfontsel.[ch] gtk/testgtk.c:
	Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget,
        and a simple example for testgtk.

Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkentry.c:
	- Restored gtk_entry_adjust_scroll to static
	- Changed text positioning code so that we always
	  display as large a portion of the text as possible.

Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c (gtk_text_finalize): Free internal
	structures of text widget. Also, unreference pixmaps
	when unrealizing.

Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkinputcommon.h (gdk_input_device_new): Change
	3.3.1 bug workaround to number keys starting at 1.

Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>

	* docs/gtk_tut.sgml: Fixed urls for complete example
	source for scribble+widget-writing examples.
1998-06-15 21:27:17 +00:00
Elliot Lee
e144ff2bb5 Redo (and complete) movement of all pointer types into pointer_data in the GtkArg union 1998-06-14 16:59:42 +00:00
Elliot Lee
f57e0ba8b1 Reformat two function prototypes for cosmetics 1998-06-14 16:50:48 +00:00
Tim Janik
c390a6ec47 reverting changes that depend on other code which i'm going to
commit later this night (so gtk at least compiles for people).
1998-06-14 15:02:05 +00:00
Tim Janik
b8368a54a2 heal gtk. ;) 1998-06-14 14:37:39 +00:00
Elliot Lee
208057b914 s/string_data/pointer_data/ as needed to match GtkArg
s/string_data/pointer_data/ as needed to match GtkArg
1998-06-14 07:58:02 +00:00
Owen Taylor
e17f31db8f Patch from Tom Bech <tomb@ii.uib.no>, to handle color specs of the form c
Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkpixmap.c (gdk_pixmap_extract_color):
	Patch from Tom Bech <tomb@ii.uib.no>, to handle color
	specs of the form c #abcdef [ more keys ] properly.
1998-06-13 15:51:34 +00:00
Stefan Jeske
2e5dda7c62 *** empty log message *** 1998-06-13 09:02:05 +00:00
Stefan Jeske
b39687aac8 New API to set the shadow type of the arrow panel. 1998-06-13 08:56:27 +00:00
Owen Taylor
92270f8620 Removed code for drawing the child in two places at once. Unfortunately,
Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
	code for drawing the child in two places at once. Unfortunately,
	not only does it not work anymore (because reparenting has
	been fixed), but it also triggers reparent/expose loops
	in some cases.

	* gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
	an unecessary unrealize.
1998-06-13 01:36:28 +00:00
Tim Janik
1dc1b050b2 renamed enum GtkAnchor and GtkSide to GtkAnchorType and GtkSideType, to be
Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkpacker.h:
        * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
        and GtkSideType, to be consistent with the rest of Gtk's enum
        definitions. wrapped the enum definitions with the G_ eunm wrappers.
        spelled out the GTK_ANCHOR_* enum values, since single letters don't
        work out corectly as nick-names (left the old values as aliases).
        some signdness corrections (border-width, spacing), could stand more.
1998-06-12 08:10:29 +00:00
CDT 1998 Shawn T. Amundson
cab220ee8b Added gtkpacker
Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
          Added gtkpacker

        * examples/packer/pack.c, examples/packer/Makefile: Added
          gtkpacker example
1998-06-12 00:49:11 +00:00
Dick Porter
d0ff2dbc79 Removed glib, since it's in its own module now. 1998-06-11 20:00:42 +00:00
Owen Taylor
dbcf64a3f2 Fixed broken list-removal code.
Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c (remove_cache_line): Fixed broken
	list-removal code.

	* gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
	Check bounds before deleting.
1998-06-11 17:52:12 +00:00
Owen Taylor
0895f5b669 Support ACLOCAL_FLAGS
Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>

	* autogen.sh: Support ACLOCAL_FLAGS
1998-06-11 03:19:39 +00:00
Manish Singh
07d3d46f08 #define GTK_HAVE_ACCEL_GROUP
-Yosh
1998-06-11 01:45:22 +00:00
Owen Taylor
7ffe514812 Added missing quotes.
Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk-config.in: Added missing quotes.
1998-06-11 00:52:24 +00:00
Raja R Harinath
e2fdd9e54f Renamed from G_COMPILED_WITH_DEBUGGING.
* acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
G_COMPILED_WITH_DEBUGGING.
1998-06-11 00:27:08 +00:00
Raja R Harinath
8d99ec411e Explain check better.
* configure.in (fd_set): Explain check better.

* acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
the version from which gtk+'s libtool forked.  Needed for people
who use post-1.2 alphas of libtool.
1998-06-11 00:12:59 +00:00
Raja R Harinath
122ca000b5 Remove last remaining file 1998-06-10 23:52:31 +00:00
Owen Taylor
7086e475e3 glib/* Moved to glib module
Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>

	* glib/* Moved to glib module

	* INSTALL Makefile.am acconfig.h autogen.sh configure.in
	  gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am

	  configuration changes for the above:

	  - Use AM_PATH_GLIB by default to find glib; also accept
	    a --with-glib option for using an uninstalled glib.

	  - Put --enable-debug information into config.h so
	    that we rebuild when it changes. (was in glibconfig.h)
1998-06-10 23:44:55 +00:00
Lars Hamann
6b61461a40 adapted clist pixmap clipping
* gtk/gtkctree.c (draw_row): adapted clist pixmap clipping

        * gtk/gtknotebook.h (struct _GtkNotebookClass):
        * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
        added missing argument (according to Joseph Coleman's bug report)

        * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
        function to fix notebook focus handling
1998-06-10 21:48:21 +00:00
Owen Taylor
344572dc71 Renamed g_const_pointer => gconstpointer. 1998-06-10 16:59:28 +00:00
Tim Janik
b70abe38c1 prevent gdk_init() from segfaulting when invoked with (NULL, NULL); (this
Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
        invoked with (NULL, NULL); (this worked sometime ago).

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: enum and flags type creation can now be done
        through gtk_type_register_enum() and gtk_type_register_flags(),
        which allow to specify the enum value arrays directly.
        the NULL terminated value arrays can be retrived through
        gtk_type_enum_get_values() and gtk_type_flags_get_values();
        (gtk_type_children_types): new function to query derived types.
1998-06-10 07:32:52 +00:00
Tim Janik
6430ad631a enum and flags type creation can now be done through
Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: enum and flags type creation can now be done
        through gtk_type_register_enum() and gtk_type_register_flags(),
        which allow to specify the enum value arrays directly.
        the NULL terminated value arrays can be retrived through
        gtk_type_enum_get_values() and gtk_type_flags_get_values();
1998-06-10 04:55:22 +00:00
Raja R Harinath
c486540935 Thinko... The ChangeLog entry still stands. 1998-06-10 02:15:50 +00:00
Raja R Harinath
602a038747 Add $(srcdir) where needed (in the rule), and removed it where not needed
1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>

	* gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Add $(srcdir)
	where needed (in the rule), and removed it where not needed
	(in the dependencies).
1998-06-10 02:10:23 +00:00
Raja R Harinath
d292dd9b27 Pass $srcdir in environment to genmarshal.pl. Look for `gtkmarshal.list'
1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>

	* gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
	environment to genmarshal.pl.
	* gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
1998-06-10 01:04:46 +00:00
Tim Janik
5ab6b7e020 more const pointer corrections. 1998-06-10 00:54:54 +00:00
Owen Taylor
2cabeeb1c3 Removed g_object_pointer_hash, which was just g_direct_hash.
Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkobject.c: Removed g_object_pointer_hash, which
	was just g_direct_hash.

Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in: x_libs=, not $x_libs=. Enough said.
          (Case only hit for --disable-xshm)

Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
	  when testing for X libraries, don't replace them. Because
	  the user might have specified the path to the X libraries
	  themself before running configure.

	* examples/**.c: Changed all gpointer * to gpointer

Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in (LDFLAGS): Bomb out with a moderately
	  helpful message if detection of X libraries fails.

Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>

  [ Combination of:
     gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
     gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]

	* gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
	  gtk/gtksignal.c gtk/gtktext.c:

	  Fixups for warnings from adding const to type of GHashFunc,
	  GCompareFunc

	* gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
	  ansi-warnings fixups.

Tue Jun  9 17:47:33 1998  Owen Taylor  <otaylor@gtk.org>

	* glib.h: Remove #error - HP/UX.

Sat May 23 19:00:01 1998  Owen Taylor  <otaylor@gtk.org>
  [ Combination of:
     gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
     gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]

	* glib.h ghash.c gstring.c gdataset.c gutils.c:
	- Added new typedef g_const_pointer; expunged all incorrect
	  uses of 'const gpointer'.
	- Fixed up warnings that that created,
	- Changed GHashFunc and GCompareFunc to take g_const_pointer
	  arguments. (Necessary, but will cause warnings in existing
	  code until fixed)
	- Added other new const in harmless positions.
1998-06-09 23:18:11 +00:00
Federico Mena Quintero
a1fe6d0337 Removed the fleur_cursor field. Now the cursor is created/destroyed on
1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
	fleur_cursor field.  Now the cursor is created/destroyed on demand
	by the routines that need it.

	* gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
	(gtk_handle_box_motion): The fleur cursor is created and destroyed
	only when needed.
1998-06-09 21:01:45 +00:00
Elliot Lee
aff37e7bea Fix for people using name mangling 1998-06-09 20:16:12 +00:00
Elliot Lee
c3ccc9b136 Just a convenience to parallel gtk-config
Just a convenience to parallel gtk-config
1998-06-09 20:10:48 +00:00
Manish Singh
bd1e56dd83 Warning cleanups.. cvsignore stuff
-Yosh
1998-06-09 10:33:56 +00:00
Tim Janik
cd34fdd047 renamed the newly created gtk_enum_get_values and gtk_enum_set_values to
Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
        gtk_enum_set_values to gtk_type_enum_get_values and
        gtk_type_enum_set_values respectively, since they are actually type
        system features.

        * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
        my last commit. ;)
1998-06-09 08:21:20 +00:00
Tim Janik
b377b2dc47 removed some bogus commas. 1998-06-09 07:14:34 +00:00
Tim Janik
a21d063ef8 new functions gtk_selection_data_copy and gtk_selection_data_free.
Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkselection.h:
        * gtk/gtkselection.c: new functions gtk_selection_data_copy and
        gtk_selection_data_free.

        * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
        for "selection_received", which was completely bogus.
        * other fixups to gtk_signal_new() calls all over the place.

        * gtk/gtktypebuiltins.h: types as variables (formerly macros).
        * gtk/gtktypebuiltins_vars.c: type variable implementations.
        * gtk/gtktypebuiltins_ids.c: array entries for builtin type
        declarations.
        * gtk/gtktypebuiltins_evals.c: enum value arrays.
        * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
        gtk.defs.
        * gtk/gtk.defs: generated file with scheme syntax for type definitions
        of gtk and gdk structures and enums.
        * gtk/gtktypeutils.h:
        * gtk/gtktypeutils.c: reworked type ids, so they are variables not
        macros anymore (this fixes binary incompatibility with new enum
        definitions).

        * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
        key bindings for this widget.
        * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
        handler.

        * gtk/gtkobject.h:
        * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
        again. new functions gtk_object_class_user_signal_new () and
        gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
        flag on the signal creation.
Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
1998-06-09 07:11:55 +00:00
Tim Janik
257c54a021 check for func in g_[s]list_insert_sorted and g_[s]list_find_custom 1998-06-08 04:09:21 +00:00
Tim Janik
207eecc424 wrapped enum definitions with glib macros.
Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>

        * gdk/gdkprivate.h:
        * gdk/gdktypes.h:
        * gtk/gtkprivate.h:
        * gtk/gtkwidget.h:
        * gtk/gtkobject.h: wrapped enum definitions with glib macros.

        * reworked enum value array generation code. gtk.defs is a generated
        file now.
1998-06-08 03:38:24 +00:00
Elliot Lee
1e32cc3d63 Start of marshalling centralization.
Start of marshalling centralization.

Please check this over for sanity. I think the perl script and Makefile might
need fixing up to allow builddir != srcdir

I will start converting all the widgets to use this scheme if no problems
arise.
1998-06-08 01:37:27 +00:00
Manish Singh
db0c8b158c hrm.. extra #pragma..
-Yosh
1998-06-07 23:43:00 +00:00
Manish Singh
c1665b1441 silly typo
-Yosh
1998-06-07 23:22:42 +00:00
Elliot Lee
a0d3a674d0 Added g_s?list_find_custom functions to allow user to specify a
Added g_s?list_find_custom functions to allow user to specify a
GCompareFunc to determine whether a node matches or not.

If you have a better idea for naming the functions, please, make it so! :)
1998-06-07 20:18:21 +00:00
Elliot Lee
8725269e0d Allow the user to pass --enable-mem-check and --enable-mem-profile at
Allow the user to pass --enable-mem-check and --enable-mem-profile at
compile time.
1998-06-07 17:37:15 +00:00
Tim Janik
8102e79daf feature check menu items in the compatibility code (this required me to
Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
        check menu items in the compatibility code (this required me to remove
        the "<check>" part from the menu item name, grrr).
1998-06-07 13:44:34 +00:00
Tim Janik
50a9ba1f26 further additions to fit the gimp's code. additions to the dumping code to
Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.h:
        * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
        additions to the dumping code to feature GtkPatternSpec.
        even found a bug to fix in the original code ;)
1998-06-07 12:22:45 +00:00
Marius Vollmer
e47f60d702 New prototypes. New functions.
* gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
* gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
1998-06-07 12:00:55 +00:00
Marius Vollmer
110dac34df *** empty log message *** 1998-06-07 12:00:26 +00:00
Tim Janik
210cb3f5a0 support different types of callbacks, to maintain existing code.
Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.h:
        * gtk/gtkitemfactory.c: support different types of callbacks, to
        maintain existing code.


... changes to the item factory to ease support of the gimp's code...
1998-06-07 07:52:26 +00:00
Tim Janik
cd8e439b9b remove these files, we got gtkaccelgroup.[ch] now. 1998-06-07 07:05:12 +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
Manish Singh
f522f36dd1 Commented out the MEM_PROFILE and MEM_CHECK from gmem.c, causing problems
with GdkImages.

Updates some .cvsignores

-Yosh
1998-06-06 21:16:57 +00:00
Elliot Lee
bcecbbd1be Add \n's on the end of g_prints in the mem profiling code.
Add \n's on the end of g_prints in the mem profiling code.
1998-06-05 21:00:15 +00:00
rhlabs
895acc9f97 Set package version to 1.0.4 in anticipation of upcoming release.
Dr Mike
1998-06-04 16:04:09 +00:00
BST 1998 Tony Gale
68935c790b New files to automagically extract code examples from the tutorial.
Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>

        * examples/extract.sh, examples/extract.awk:
          New files to automagically extract code examples from the
          tutorial.
1998-06-04 11:15:55 +00:00
Lars Hamann
7c8ae8a5f5 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER 1998-06-02 19:32:33 +00:00
BST 1998 Tony Gale
047e9fcf1a minor changes to support auto extraction of example code
Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: minor changes to support auto
          extraction of example code
1998-06-02 12:08:14 +00:00
Jay Painter
57967d9a98 Added function gtk_clist_swap to swap two rows in a clist; I also have
finally fixed pixmap clipping so pixmaps are always cliped to the row.
1998-06-02 02:51:46 +00:00
Tim Janik
88e84f52dd wrote a comment describing why a hash node's key should not also get
Mon Jun  1 04:43:27 1998  Tim Janik  <timj@gtk.org>

        * ghash.c (g_hash_table_insert): wrote a comment describing why
        a hash node's key should not also get replaced when overriding
        previous entries.

Tue May 26 18:30:06 1998  Tim Janik  <timj@gtk.org>

        * glib.h (g_string_sized_new): new function to controll the preallocated
        size of a GString.

        * glib.h (g_strreversed): new function to reverse a string.
1998-06-02 01:11:17 +00:00
BST 1998 Tony Gale
8a6a8c7bc3 Update of Italian Tutorial to Tutorial of 24th May, from Daniele Canazza
Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut_it.sgml: Update of Italian Tutorial
          to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
1998-06-01 11:53:08 +00:00
BST 1998 Tony Gale
7953813453 - new section on Events - change all delete_event callbacks to include a
Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
          - new section on Events
          - change all delete_event callbacks to include
            a GdkEvent parameter
          - clean up the formatting

        * examples - helloworld.c, helloworld2.c, notebook.c,
          packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
          rulers.c, table.c, wheelbarrow.c: change all delete_event
           callbacks to include a GdkEvent parameter.
1998-05-29 12:43:18 +00:00
Federico Mena Quintero
99fdc828eb New enumeration for the "mode" field of crossing events. (struct
1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
	field of crossing events.
	(struct _GdkEventCrossing): Added the following fields: time, x,
	y, x_root, y_root, mode, focus, state.

	* gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
	crossing event structure.

	* gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
	changes to the crossing event structure.
1998-05-27 02:01:40 +00:00
Radek Doulik
d6d54509d3 include gdkx.h always (for GDK_ROOT_WINDOW)
Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>

	* gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
1998-05-26 13:54:38 +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
BST 1998 Tony Gale
4a6a72fe6c - GtkTooltips, update to current API - change all 'gpointer *data' to
Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml:
           - GtkTooltips, update to current API
           - change all 'gpointer *data' to 'gpointer data'
           - other minor changes
1998-05-24 11:23:04 +00:00
Owen Taylor
23919bb08c Bombo out with a moderately helpful message if detection of X libraries
Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in (LDFLAGS): Bombo out with a moderately
	  helpful message if detection of X libraries fails.
1998-05-24 02:48:09 +00:00
Owen Taylor
53d06396b8 Locate child at (border_width,border_width), not
Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkeventbox.c (gtk_event_box_size_allocate):
        Locate child at (border_width,border_width), not
	(2*border_width,2*border_width). [ The border is _outside_
	widget->window ]

	* gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
	  functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
1998-05-23 21:55:40 +00:00
Arturo Espinosa
fdd65ddef3 Oops. Commited a file I should not have. Revert change 1998-05-22 23:48:02 +00:00
Miguel de Icaza
d0f3668232 Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be used in gnome-libs
1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
	used in gnome-libs
1998-05-22 23:43:03 +00:00
Elliot Lee
63596d22ae Fix size_allocate to pass on to the child even if child isn't visible.
Fix size_allocate to pass on to the child even if child isn't visible.
Also locate child at (border_width, border_width) not (0,0)
1998-05-22 21:33:44 +00:00
Owen Taylor
0e5ab967d5 Changed log 1998-05-22 07:09:15 +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
CEST 1998 Paolo Molaro
bf874e967e use GTK_TYPE_GDK_EVENT in (un)?select_row signal.
Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>

	* gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
	signal.
1998-05-22 06:55:20 +00:00
Elliot Lee
781ff62d7a clog ent for changes 1998-05-21 21:09:19 +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
aed9cf77fa Use pthread_attr_init() as a test function, since most of the rest of
Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in: Use pthread_attr_init() as a test function,
	since most of the rest of -lpthread is macros on DU4.

Mon May 18 22:14:39 1998  Owen Taylor  <otaylor@gtk.org>
(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch)

	* gutils.c: Restored a missing prototype for g_vsprintf.
1998-05-20 03:41:28 +00:00
Tim Janik
2abec112dc conditionally define NULL, FALSE and TRUE. (g_mem_chunk_create): new
Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org>

        * glib.h: conditionally define NULL, FALSE and TRUE.
        (g_mem_chunk_create): new convenience macro as a short hand for
        g_mem_chunk_new().
        (g_chunk_free): new convenience macro to be consistent with g_chunk_new.
1998-05-20 03:31:30 +00:00
Elliot Lee
eb3e74cae9 Add GDK_SUBSTRUCTURE_NOTIFY_MASK
Add GDK_SUBSTRUCTURE_NOTIFY_MASK

Fixed GDK_DESTROY handling WRT GnomeRootwin widget.
1998-05-19 22:33:24 +00:00
Elliot Lee
6a322e11b2 gdk_region_get_clipbox() lets you get a rectangle around the region.
gdk_region_get_clipbox() lets you get a rectangle around the region.
1998-05-19 16:17:00 +00:00
Paolo Molaro
4d3f6feb37 Tue, 19 May 1998 11:51:02 +0200 Paolo Molaro <lupus@debian.org>
* added generic functions for completion in glib.
	* used the above functions in the gtkcombo widget.
1998-05-19 10:17:31 +00:00
Elliot Lee
abce966642 entry for previous change 1998-05-18 22:36:05 +00:00
Elliot Lee
67baa4b4a6 Allow GTK_DEBUG=signals - VERY useful ;-)
Allow GTK_DEBUG=signals - VERY useful ;-)
1998-05-18 22:34:43 +00:00
Elliot Lee
75650b4e96 Forgotten entry for visibility_notify_event
Forgotten entry for visibility_notify_event
1998-05-18 16:23:29 +00:00
Tim Janik
c174981e0b changed "proximity-in-event", "drop-data-available-event",
Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
        "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
        to be of runtype GTK_RUN_LAST.

        * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
        "need-resize".

        * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
        "widget-selected".
1998-05-18 04:31:03 +00:00
Tim Janik
04a70261a4 provide usefull default specifications for identifier_spec and
Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org>

        * gscanner.c (g_scanner_unexp_token): provide usefull default
        specifications for identifier_spec and symbol_spec.

        * glib.h: new functions g_slist_nth_data and g_list_nth_data to return
        the data of the nth element in the list.
1998-05-17 11:35:55 +00:00
Tim Janik
9256ac8a62 quiet the compiler about uninitialized gc. 1998-05-16 07:31:06 +00:00
Tim Janik
5aa450f97b g_strdup() the text retrived from GtkEntry. only intercept the Tab key if
Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
        text retrived from GtkEntry. only intercept the Tab key if there
        was some text to complete.
1998-05-16 07:22:00 +00:00
Owen Taylor
dc93f21ffe Basic thread-awareness:
Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>

	Basic thread-awareness:

	* acconfig.h configure.in: New option --with-threads=[yes/posix/no]

	* gdk/Makefile.am gdk/gdkthreads.c: Added new functions
	gdk_threads_[init/enter/leave] for applications, plus
	gdk_threads_wake to wake the mainloop thread out of
	the select().

	* gtk/Makefile.am: gtk/testthreads.c: Test program for threads
1998-05-16 02:14:09 +00:00
Owen Taylor
457148333e Basic thread-awareness:
Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>

	Basic thread-awareness:

	* acconfig.h configure.in: New option --with-threads=[yes/posix/no]

	* gdk/Makefile.am gdk/gdkthreads.c: Added new functions
	gdk_threads_[init/enter/leave] for applications, plus
	gdk_threads_wake to wake the mainloop thread out of
	the select().

	* gtk/Makefile.am: gtk/testthreads.c: Test program for threads

Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/testgtk.c (list_clear): Account for the fact
	that gtk_list_clear_items is not inclusive. (Clears
	[start, end))
1998-05-16 02:13:12 +00:00
Manish Singh
123e299bcf ignore furry autogened files
-Yosh
1998-05-16 01:56:43 +00:00
Manish Singh
c71c5f6a9e bye bye autogenerated file
-Yosh
1998-05-15 23:07:59 +00:00
Tim Janik
a7c7158c7b removed sputious va_end(args) that for some reason didn't produce a
Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org>

        * gscanner.c (g_scanner_unexp_token): removed sputious va_end(args) that
        for some reason didn't produce a compiler wrning on my machine (is
        va_end undefined for i386?).
1998-05-15 22:25:38 +00:00
rhlabs
5ed260f03e Move to v1.1 1998-05-15 20:08:30 +00:00
rodo
d6c6ad105f include gdkkeysyms.h always
Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>

	* gdk/gdk.c: include gdkkeysyms.h always
1998-05-15 10:57:59 +00:00
rodo
3d6d886c6a replaced some snprintf with g_snprintf
Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz>

	* gscanner.c: replaced some snprintf with g_snprintf
1998-05-15 10:34:58 +00:00
Tim Janik
152ff34893 [binray incompatibility]
[binray incompatibility]


Fri May 15 00:56:59 1998  Tim Janik  <timj@gtk.org>

        * glib.h: further support for gcc function attributes: G_GNUC_FORMAT,
        G_GNUC_NORETURN and G_GNUC_CONST.

        * gscanner.c (g_scanner_stat_mode): changed stat() to lstat().
        (g_scanner_msg_handler): "\n" at end of line!
        (g_scanner_foreach_symbol): new function to iterate over the symbol
        table (GScanner does value-wrapping).

Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
        the visibility_notify_event method and changed method order.
1998-05-15 08:09:18 +00:00
Tim Janik
10e187f2f6 chagelog fixups (yea there are even bugs in the changelog entries, fear!) 1998-05-14 21:16:43 +00:00
Tim Janik
004f0982e1 typedef gint gboolean; this is needed to provide portability with
Thu May 14 04:14:12 1998  Tim Janik  <timj@gtk.org>

        * glib.h: typedef gint gboolean;
        this is needed to provide portability with big-endian platforms (e.g.
        try sizeof(bool) for c++ on big-endians - it's 4).
        this is also needed to maintain some_union.d_gint==some_union.d_gboolean.
        plus, gint to gboolean casts and vice versa need to be possible without
        loss.

Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
        freeing types.
        (gtk_type_set_chunk_alloc): new function to allow allocation of new
        types from a mem_chunk of certain size (n_chunks==0 indicates allocation
        thorugh g_malloc).

        * gtk/gtkobject.c (gtk_object_finalize): free an object through
        gtk_type_free().

        * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
        GtkButtons to 16.
        * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
        * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
1998-05-14 21:13:18 +00:00
4
344a271704 gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
1998-05-14    <sopwith@moebuis.labs.redhat.com>

        * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget

Can you say "binary incompatible"? :-)
1998-05-14 18:01:35 +00:00
Owen Taylor
b05a8405fe Code that compiles is nice... let's try again. 1998-05-13 05:23:26 +00:00
Owen Taylor
40a521703d A few more GPOINTER_TO_UINT fixes.
Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
	  GPOINTER_TO_UINT fixes.
1998-05-13 05:11:42 +00:00
Owen Taylor
4283c9de4f A few more GPOINTER_TO_UINT fixes.
Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktypeutils.c gtk/gtksignal.c: A few more
	  GPOINTER_TO_UINT fixes.

	* gtk/gtksignal.c: Include <string.h> for memset.

Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
	(Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)

	* gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
	Cleanups, comments and the ability to have rulers with
	a reversed direction.
1998-05-13 04:59:38 +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
c9e78a1094 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
Tue May 12 16:54:15 1998  Owen Taylor  <otaylor@gtk.org>
	(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)

	* glib.h gstring.c gmessages.c: Added some missing
	const to arguments.

	* gutils.c (g_strsignal.c): Added missing return statements.

Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
	(James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)

	* gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
	Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>

	* gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass

Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
	(From: Christopher James Lahey <clahey@umich.edu>)

	* gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
	  gtk/testgtk.c:

	Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
	(old style), or GTK_RELIEF_NONE - no relief in the NORMAL
	state. Added gtk_toolbar_{set,get}_button_relief, which set/get
	the default relief for the toolbars buttons. Added an
	toggle for the toolbar test in testgtk.c.
1998-05-12 21:30:52 +00:00
Manish Singh
fe6ef6c07a Add gmessages.c to Makefile
-Yosh
1998-05-12 10:04:05 +00:00
Owen Taylor
e0498db360 Rewritten and hopefully improved.
Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>

	* docs/gtk-config.1: Rewritten and hopefully improved.

Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>

	* docs/Makefile.am
	* docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
1998-05-12 04:26:26 +00:00
Owen Taylor
906b1feab3 Moved g_error, g_warning, g_message and g_print from gutils.c to new file
Mon May 11 21:11:54 1998  Owen Taylor  <otaylor@gtk.org>

	* gutils.c gmessages.c: Moved g_error, g_warning, g_message and
	g_print from gutils.c to new file gmessages.c, to avoid having to
	include <unistd.h> in gutils.c which was causing problems for the
	g_strsignal implementation on FreeBSD boxes.
1998-05-12 03:52:55 +00:00
Federico Mena Quintero
2fa59370f7 The commit to the stable branch is on its way...
1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkpreview.c (gtk_preview_realize): Create the window using
	GtkPreview's visual and colormap, otherwise things can BadMatch.

	* gtk/testgtk.c (create_color_preview):
	(create_gray_preview): Removed pushing/popping of visual/colormap
	now that GtkPreview does things correctly.

	* gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
	(gtk_color_selection_draw_wheel): Pick the style from the correct
	place (the colorsel->wheel_area widget) so that the GCs will match
	with where we are going to paint to.

	* gtk/testgtk.c (create_color_selection): Removed pushing/popping
	of visual/colormap now that GtkColorSelection does things the
	right way.
1998-05-12 03:15:45 +00:00
Owen Taylor
62f865ee09 changed log 1998-05-12 01:02:56 +00:00
Owen Taylor
962386fb82 Use the previously unused window->need_resize flag to mark if a window's
Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
	previously unused window->need_resize flag to mark if a window's
	descendents changed size while the window was not visible. In this
	case, when the window becomes visible, we reallocate everything,
	since we didn't keep track of what actually changed.

	(Fixes bug where changing the popdown strings of a
	combo to something of the same length caused them to
	blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
1998-05-12 01:02:22 +00:00
Tim Janik
075cb4320d [security audit by Alan Cox]
Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>

        [security audit by Alan Cox]

        * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
        exceed maximum assumed size.

        * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
        not exceed maximum assumed size.
        (gtk_menu_factory_remove): likewise.
        (gtk_menu_factory_find_recurse): likewise.
1998-05-12 00:34:28 +00:00
Tim Janik
f15bd558ab queue the idle_sizer with GTK_PRIORITY_INTERNAL - 1, so widgets get first
Tue May 12 00:21:33 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
        GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
        redrawn if that is still neccessary. don't allow queueing of already
        destructed objects.
        (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
        widgets which are in the queue can be destroyed savely, handle
        requeueing properly.
        (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
        widgets which are in the queue can be destroyed/unrealized savely.
1998-05-11 22:32:52 +00:00
BST 1998 Tony Gale
387379e6c4 add question on multi-threading, minor URL cleanups.
Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>

        * gtkfaq.sgml: add question on multi-threading,
          minor URL cleanups.
1998-05-11 17:01:11 +00:00
Tim Janik
ad137948b9 compilation fixups 1998-05-11 15:30:05 +00:00
Tim Janik
e8df8ce17b preserve automake CFLAGS.
Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>

        * configure.in (cflags_set): preserve automake CFLAGS.

        * Makefile.am: fully rename the created libraries to libgtk-1.1.la
        and libgdk-1.1.la. this means we need to change certain portions of
        the Makefile.am on major/minor version bumps.

        * ltmain.sh: the -release option is not required anymore.

        * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
        of the first argument to be of type GtkObject. unconditionally compile
        this function. removed __GNUC__ dependancy of the gtk_object_ref and
        gtk_object_unref macro wrappers for this function.

Mon May 11 09:53:43 1998  Tim Janik  <timj@gtk.org>

        * configure.in: preserve automake CFLAGS.

        * Makefile.am: fully rename the created library to libglib-1.1.la.
        this means we need to change certain portions of the Makefile.am on
        major/minor version bumps.

        * ltmain.sh: the -release option is not required anymore.

        * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to
        avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX,
        MIN, ABS and CLAMP, these macros might be screwed from other headers.
1998-05-11 08:31:16 +00:00
Tim Janik
01003779e9 new file, gdatasets implement the object data mechanism from GtkObject. a
Mon May 11 01:44:10 1998  Tim Janik  <timj@gtk.org>

        * gdataset.c: new file, gdatasets implement the object data
        mechanism from GtkObject. a generic data pointer is associated with
        a certain location and a key id.

Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.h:
        * gtk/gtkobject.c:
        (gtk_object_data_try_key):
        (gtk_object_data_force_id): these are now macros substituting the old
        functions. we just use the corresponding g_dataset_* functions for
        key->id associations. (this is to assure unique key<->id associations).
1998-05-11 00:48:44 +00:00
Stefan Jeske
cb12593d57 Started documentation of GtkCTree. 1998-05-10 17:05:39 +00:00
Tim Janik
218e61990c now what is this? whoi left a '>' in line 628??? 1998-05-10 07:55:48 +00:00
Tim Janik
86be352e82 bugfixes, cleanups and macro reduction, nothing major though ;) 1998-05-10 07:44:43 +00:00
Tim Janik
315affdfcb minor cleanups and merges 1998-05-10 05:19:00 +00:00
Owen Taylor
f75d8b0c23 Try to figure out if this is Digital Unix and we need -std1 to get the
Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in (LIBS): Try to figure out if this
	is Digital Unix and we need -std1 to get the
	right prototypes.

Sat May  9 20:08:12 1998  Owen Taylor  <otaylor@gtk.org>

	* glib/gmem.c: Experimentally restore GMemChunk
	to its primeval state - where mem areas are
	freed incrementally instead of searching the tree
	every time a mem area is completely empty. Also,
	always keep one mem chunk around. (Reduced calls
	to malloc() a lot, but doesn't really improve
	performance significiantly)

Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
	draw-queue when we are done.

	(gtk_widget_queue_draw/_queu_resize): Always return
	FALSE and avoid having two idles at the same time.

Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c: Various fixes to make sure cache
	lines are freed if line_start_cache doesn't point to the
	beginning of the cache.

Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>

	* style_set improvements for GtkText and GtkEntry

Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
	to speed things up and remove code duplication.

	Reintegrated buffer overflow patches, and added
	some extra paranoia.

Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdk.c (gdk_event_translate): A guint * was
	being passed where X expected a Keysym *, and
	keysyms are long's on Alpha Linux. This was causing
	segfaults in Xlib, apparently because of alignment.
	(Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)

Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
	set GDK_EXPOSURE_MASK for DrawingAreas

Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
	(superceded by RC file reparsing capabilities)

	* gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
	events. (Shouldn't be sent to the InputOnly leader, which
	it is now by gdk_event_send_clientmessage_toall

	* gtk/testgtk.c: Added extra button to rcfiles test
	to send out _GDK_READ_RCFILES events.

Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkselection.c (gtk_selection_clear): Fixed
	reversed conditionals that caused segfault on some
	platforms.

Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
	cast to GTK_OBJECT for gtk_object_ref.
1998-05-10 02:46:20 +00:00
BST 1998 Tony Gale
aab3106abd update of Italian tutorial translation from Daniele Canazza
Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>

        * docs/gtk_tut_it.sgml: update of Italian tutorial
          translation from Daniele Canazza <dcanazz@tin.it>
1998-05-09 15:35:18 +00:00
Tim Janik
9775962a96 new file used as template for new file to define macros indicating newly
Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkfeatures.h.in: new file used as template for
        * gtk/gtkfeatures.h: new file to define macros indicating newly
        introduced features, such as GTK_HAVE_SIGNAL_INIT.

        * gtk/gtksignal.c:
        (gtk_signal_emitv_by_name):
        (gtk_signal_emitv):
        new functions to emit signals with an already provided parameter set.
        (provided by Kenneth Albanowski <kjahds@kjahds.com>).
        (gtk_signal_real_emit): prototype changes, so this functions always
        gets its parameters and signal structure as arguments.
        (gtk_signal_emit): provide the signal structure and parameter list for
        gtk_signal_real_emit.
        (gtk_signal_emit_by_name): likewise.
1998-05-09 01:17:03 +00:00
Tim Janik
142c848308 reflect the presence of signal connections through unsetting
Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
        signal connections through unsetting GTK_CONNECTED.
        (gtk_signal_handler_insert): reflect the presence of signal connections
        through setting GTK_CONNECTED.
        (gtk_signal_real_emit): only check for handler emissions if the object
        has the GTK_CONNECTED flag set.
        (gtk_signal_handler_pending): don't check for pending handlers if the
        GTK_CONNECTED flag is not set for this object.

        * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
        a GtkObject has signal handler connections.

        * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
        set for this object call gtk_signal_handlers_destroy().

        * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
        multiple processing of macro args.

        * gtk/gtktypeutils.c:
        * gtk/gtkobject.c:
        * gtk/gtkwidget.c:
        * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
1998-05-08 23:20:48 +00:00
rhlabs
6e99903a4e Handle the -1.1 on libraries.
Is this really a good idea?  Isn't that what sonames are for?

-Marc
1998-05-07 18:33:29 +00:00
Tim Janik
1f455e53c0 asure that the type system has been initialized.
Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
                been initialized.
1998-05-07 17:08:58 +00:00
Tim Janik
2934f4f58c allocate object data chunks through a global object data structure list.
Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
                data chunks through a global object data structure list. unlink
                        object data before invoking its destroy function.
                                (gtk_object_finalize): slight modification to allow usage of object
                                        data during object finalization.
1998-05-07 11:12:57 +00:00
Tim Janik
8460f39363 speedups speedups speedups....
this one is actually noticable on widget destruction.

Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
        signal names, e.g. "signal-name" is now an alias for "signal_name".
        (gtk_signal_handler_new): allocate handlers through a global handler
        structure list, that's faster than memchunks.
        (gtk_emission_new): allocate emissions through a global emission
        structure list, that's faster than memchunks.
1998-05-07 09:23:50 +00:00
Tim Janik
8b667441a3 ooops, fogot this on my last commit... 1998-05-07 07:45:04 +00:00
Tim Janik
38fc79fcfd macros to facilitate the printf/scanf format argument checking of gcc.
Thu May  7 08:17:28 1998  Tim Janik  <timj@gtk.org>

        * glib.h (G_GNUC_PRINTF):
        (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument
        checking of gcc.

        * gstring.c: const corrections, string!=NULL checks at function entry.
        (g_string_down): new function for tolower(3) conversion.
        (g_string_up): new function for toupper(3) conversion.

        * gutils.c: const corrections.
        (g_strdown): g_string_down() counterpart.
        (g_strup): g_string_up() counterpart.

        * gscanner.c (g_scanner_unexp_token):
        (g_scanner_error):
        (g_scanner_warn): new functions to let a scanner put out warnings
        or errors, especially to react on unexpected tokens.

        * gslist.c:
        (g_slist_index): find out about about the position of a
        certain data pointer.
        (g_slist_position): find out about about the position of a
        certain node.

        * glist.c:
        (g_list_index): find out about about the position of a
        certain data pointer.
1998-05-07 07:38:21 +00:00
Tim Janik
39ff37dc74 postfix -lg* libraries with LT_RELEASE.
Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>

        * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.

        * ltmain.sh: added a new commandline flag -postfix similar to -release,
        but will immediately change the library name.

        * gdk/Makefile.am:
        * gtk/Makefile.am: specify -postfix and -version-info

        * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
        GTK_BINARY_AGE. calculate LT_* variables for libtool.
1998-05-07 04:04:15 +00:00
Federico Mena Quintero
91d3176504 Oops, missed this in the last commit. The commit to the stable branch is underway.
1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
	background (fg_set -> bg_set confusion).
1998-05-06 23:41:18 +00:00
Arturo Espinosa
513a06e966 ChangeLog 1998-05-06 23:38:10 +00:00
Stefan Jeske
1afc96a702 Removed code that caused an endless loop.
* gtk/testgtk.c (unselect_all): Removed code that caused an
	endless loop.
1998-05-06 08:22:31 +00:00
Tim Janik
518a8a9c4e reimplemented the signal storage system to use a linear array rather than
Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c: reimplemented the signal storage system to use a
        linear array rather than a hash table.
        be carefull *not* to keep any GtkSignal pointers across invokations
        of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
        general code cleanups, made all allocations through memchunks.
        (gtk_signal_lookup): we now do the lookup of signals through a key_id
        for the signal names to avoid multiple hashing of the signal name on
        lookups for the several hirarchy levels of an object.

Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
        checking for signal initialization in gtksignal.c.

        * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
        a long debugging period ;)

Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
        gtk_type_is_a().
        * gtk/gtktypeutils.c: reimplemented the type storage system to use a
        linear array rather than a hash table. it actually speeded up testgtk
        for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
        pointers across invokations of gtk_type_node_next_and_invalidate() and
        therefore gtk_type_unique()!

        * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
        inheritance of a class pointer.
        (GTK_OBJECT): modifications for speedups.
        (GTK_IS_OBJECT): likewise.
        (GTK_OBJECT_CLASS): likewise.
        (suggested by owen).

        * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.

        * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.

        * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
        since its derivation changed 4 month ago ;(. showed up with the unique
        type name checking code in gtk_type_unique().

        * random guint->GtkType and macro fixups.
1998-05-06 01:43:56 +00:00
Stefan Jeske
c3e04d86ec New function to wrap XSetDashes; modified gtkctree.c to use it.
* gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
	New function to wrap XSetDashes; modified gtkctree.c to use it.
1998-05-05 15:00:12 +00:00
Manish Singh
7d8df9e60a Feature request ;)
-Yosh
1998-05-05 07:45:59 +00:00
Federico Mena Quintero
12fd81efd2 Added $x_libs in the other_libraries field in the check for
1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* configure.in: Added $x_libs in the other_libraries field in the
	check for XShapeCombineMask.
1998-05-04 22:13:02 +00:00
rhlabs
abf4f510de Bump version to 1.0.1 in anticipation... 1998-05-04 18:25:37 +00:00
Stefan Jeske
a92832509d New function (just like gtk_clist_moveto).
* gtk/gtkctree.[ch] (gtk_ctree_scroll_to): New function (just like gtk_clist_moveto).
1998-05-04 09:40:35 +00:00
Owen Taylor
2780a82a0e One or two trivial changes from the gtk-1-0 branch. 1998-05-04 02:59:52 +00:00
Owen Taylor
d142827b34 Merges from the gtk-1-0 branch
Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>

	* docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
	"glibconfig.h" and another about writing another IRC
	client.

Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
	parameters to log are doubles. Digital Unix apparently
	is missing the argument in its prototype.

Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtklabel.c (gtk_label_state_changed): Don't
	force a clear until the widget is actually on
	screen.

Hopefully nothing else though CVS think there are a whole
bunch more changed files.
1998-05-04 02:10:36 +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
Tim Janik
c0b9232351 hmmmm, corrections? 1998-05-03 20:48:15 +00:00
Tim Janik
5c9af6b5aa new function to set the adjustments value without causing a current
Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
                to set the adjustments value without causing a current emission of
                        "value_changed" to be restarted.

                                * gtk/gtksignal.c: added new functions to retrive the number of
                                        existing emissions for a certain signal.
                                                (gtk_signal_n_emissions): new function.
                                                        (gtk_signal_n_emissions_by_name): new function.
1998-05-03 19:13:24 +00:00
Tim Janik
19bbe0557f new function to set the current focus_child of a container, does proper
Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
                set the current focus_child of a container, does proper referencing and
                        adjusts the vadjustment/hadjustment associated with the focus widget.

                                * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
                                        containers via gtk_container_set_focus_child.

                                                * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
                                                        where appropriate.

                                                                * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
                                                                        child since not every child removal goes through this function (this
                                                                                showed up after gtk_container_set_focus_child() started to reference the
                                                                                        focus_child of a container).

                                                                                                * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
                                                                                                        of a container from gtk_container_remove into this place.
1998-05-03 15:45:08 +00:00
Tim Janik
2ca03393f5 added new functions to operate on intermediate function pointers.
Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c: added new functions to operate on intermediate
                function pointers. implemented incremental blocking.
                        (gtk_signal_disconnect_by_func): new function.
                                (gtk_signal_handler_block_by_func): new function.
                                        (gtk_signal_handler_unblock_by_func): new function
1998-05-02 20:48:49 +00:00
Owen Taylor
864a386300 merging owen's bug fix
Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
                Always show the scrollbars when the policy is
                        GTK_POLICY_ALWAYS...
1998-05-02 19:01:33 +00:00
Tim Janik
d466bcb7a0 only emit "value_changed" if we really passed a new value.
Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
                "value_changed" if we really passed a new value.
                        (gtk_adjustment_changed): new function to emit the "changed" signal.
                                (gtk_adjustment_set_value): new function to emit the "value_changed"
                                        signal.
1998-05-02 18:35:23 +00:00
Tim Janik
998ac31096 do not just return if the combo-list is empty since that will cause the
Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
                the combo-list is empty since that will cause the combo to operate
                        on a non existing GtkList window.
                                (gtk_combo_get_pos): provide the combo list with a usfull default
                                        height if empty.
                                                (gtk_combo_popup_button_press): grab the focus.
                                                        (gtk_combo_activate): grab the focus.
1998-05-02 04:20:55 +00:00
Lars Hamann
67c79cda67 removed unneeded GtkCTree::draw_lines (gtk_ctree_get_node_info): New
* gtkctree.[ch]: removed unneeded GtkCTree::draw_lines
(gtk_ctree_get_node_info): New funtion to get data of ctree row.
(draw_row): changed drawing order of tree lines, draw triangles
in case of GTK_CTREE_LINES_NONE.
1998-05-01 23:45:18 +00:00
rhlabs
c924b9be6f <raster@redhat.com>
<raster@redhat.com>

AHA! more bugs in the get_visual and get_colormap stuff.. guarateed to barf
if the gdk window you are querying is gdk's own gdk_root_window :) Added
checks to see if this window is infact the root window.... :)

now ee doesnt barf if you set the image as the bg.. :)
1998-05-01 23:18:21 +00:00
Owen Taylor
b0a28fdadd Further changes to the way the window is popped up so that it will be
Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkcombo.c: Further changes to the way the window
	is popped up so that it will be compatible with
	auto-scrolling in the future.
1998-05-01 19:39:27 +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
Tim Janik
61554862e6 ctree import 1998-05-01 13:20:55 +00:00
Tim Janik
befef270ab prefixed all clist flags with GTK_ to avoid name clashes. redefined
Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.h:
                * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
                        clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
                                GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
                                        the GTK_ prefix (this solution involved less changes in the
                                                gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
                                                        the mem_chunk==NULL test in gtk_clist_construct. merged in changes
                                                                from lars & stefan to support the derivation of GtkCtree.

                                                                        * gtkctree.h:
                                                                                * gtkctree.c:
                                                                                        initial import of a tree widget derived from gtkclist, courtesy
                                                                                                of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
                                                                                                        it just damn rocks!


Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
        for us.
        (gtk_list_insert_items):
        (gtk_list_remove_items_internal):
        (gtk_list_clear_items):
        remove a possible pointer grab, we might get thrown into a loop
        otherwise.
        (gtk_list_button_press): grab the pointer *before* selecting the child,
        because selection of items may cause the lists children to change,
        resulting in a grab release.
        (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
        children.
        (gtk_list_shutdown): remove all children from the list.
        (gtk_real_list_unselect_child):
        (gtk_real_list_select_child): *always* put our internal structures into
        sane state *before* signal emisions (i.e. list->selection updates prior
        to gtk_list_item_[de]select() calls).

        * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
        focused child walks out of the window.
        removed CAN_FOCUS for the combo arrow's button since it doesn't react
        to keyboard events ("clicked" connection is missing).
1998-05-01 13:16:49 +00:00
Owen Taylor
ce46df0b4b changed log 1998-05-01 04:55:34 +00:00
Owen Taylor
005626bd4d Fix up getting colormap for FOREIGN windows to go along with Raster's fix
Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
	getting colormap for FOREIGN windows to go along with
	Raster's fix for visuals.
1998-05-01 04:55:13 +00:00
Owen Taylor
05bc6a5b36 Merged changes from gtk-1-0. Check ChangeLog for details. 1998-05-01 04:23:59 +00:00
rhlabs
e909f843f8 <raster@redhat.com>
<raster@redhat.com>

added 2 memebrs to struct _GdkWindowPrivate (at end) to paralell gtk 1.0
changes to keep the data structure the same size (otherwise harmless).
1998-04-30 23:57:15 +00:00
Owen Taylor
8850ce814d Allow the user to use the popup list like a menu.
Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkcombo.[ch]: Allow the user to use the popup list
	like a menu.

	* gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
	to gtkitem.c so dragging can also work in lists.

	* gtk/gtklist.[ch]: Track child enter events and use
	those to allow dragging the selection.

Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c: Try enabling background pixmaps for editable text
	widgets.  There is a bit of flashing, but not too bad. If you
	don't want the flashing, you can always not set a background
	pixmap.

Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c: Fixed a bug where the drawn level
	was being messed up when the text was scrolled
	during a deletion.
1998-04-30 15:18:19 +00:00
Miguel de Icaza
32e8dc45b0 Random debugging fixed this bug: There is no need to set the ExposureMask
1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_event_translate): Random debugging fixed this
	bug:  There is no need to set the ExposureMask in the XGrabPointer
	(this caused DnD programs to crash).
1998-04-29 00:51:55 +00:00
Elliot Lee
187dbc0ce7 Try adding "ExposureMask" to the event mask during a drag, so that things
Try adding "ExposureMask" to the event mask during a drag, so that things
get redrawn.
1998-04-28 23:21:36 +00:00
Elliot Lee
9556bba1ba Someone has to make SOME backwards incompatible changes sometime. I
Someone has to make SOME backwards incompatible changes sometime. I
switched around the prev & next pointers in GList.

not. (Would this change make any functional difference? Discuss in a five
page paper. :-)

Actually, added g_list_position() - inverse of g_list_nth()
1998-04-28 00:24:34 +00:00
Owen Taylor
5647eeecf3 merging changes from owen:
Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>

        * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
        that when we are running with a non-installed colormap,
        in 8-bit pseudo-color, we actually are using the system
        visual. (Fixes *Bad Match* errors on Digital Unix machines
        with multiple 8-bit pseudo-color visuals)

-r HEAD and -r gtk-1-0 are in sync now!
1998-04-24 01:03:32 +00:00
Tim Janik
3e3c14e9ef changed ref_count field to be of type guint. added check for ref_count>0;
Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
                field to be of type guint.
                        * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
                                ref_count>0;
                                        (gtk_accelerator_table_install): keep a per object list of accelerator
                                                tables that refer to this object.
                                                        (gtk_accelerator_table_remove): remove the accelerator table from the
                                                                per object list.
                                                                        (gtk_accelerator_table_clean): warn if there are any object references
                                                                                left in an accelerator table upon destruction.
                                                                                        (gtk_accelerator_tables_delete): new function to delete object
                                                                                                references from the accelerator tables associated with this object.

                                                                                                        * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
                                                                                                                GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
                                                                                                                        of an accelerator can be prevented by gtk_signal_emit_stop().
                                                                                                                                (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
                                                                                                                                        so there are no stale pointers in accelerator tables left.



this change is binary compatible, so just touch gtkaccelerator.h -r gtkwidget.h
1998-04-24 00:26:01 +00:00
Federico Mena Quintero
9546a9dc14 Remember whether the widget was visible before we unparent it.
1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
	visible before we unparent it.
1998-04-23 04:26:20 +00:00
Tim Janik
f83adda582 ts ts ts, GList structures have a ->prev field as well!!! 1998-04-22 12:11:26 +00:00
Tim Janik
0dc21c5690 prepend the running_timeouts list with the tmp_list link itself, not with
Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
                running_timeouts list with the tmp_list link itself, not with a new
                        GList structure pointing to our link. that would fill up memory and
                                causes the GList.data fields of the running_timeouts list to point to
                                        GList structures and not GtkTimeoutFunction structures which is a
                                                *really* bad thing.
                                                        (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
                                                                the above entry ;).
1998-04-22 02:20:50 +00:00
Tim Janik
57703d0170 new function ala gtk_radio_button_set_group. (gtk_radio_menu_item_init):
Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkradiomenuitem.h:
                * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
                        ala gtk_radio_button_set_group.
                                (gtk_radio_menu_item_init): assure that we always have at least a group
                                        that points to self.

                                                * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
                                                        added g_return_if_fail() statements.
                                                                (gtk_radio_button_init): assure that we always have at least a group
                                                                        that points to self.
1998-04-18 20:33:35 +00:00
Tim Janik
e3b303c212 nice to list ChangeLog.pre-1-0 in EXTRA_DIST isn't it? ;) 1998-04-17 01:10:37 +00:00
Tim Janik
9aab1c5e1b ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>

        * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
1998-04-17 01:07:36 +00:00
Tim Janik
c7c0e3d58d corrected a brace position (Damon Chaplin), which i got wrong when
Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
                (Damon Chaplin), which i got wrong when applying Damon's patch the last
                        time.
1998-04-15 04:00:45 +00:00
Miguel de Icaza
21bb83612d Fix the problem introduced by whoever thought that randomly changing ints
1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
	by whoever thought that randomly changing ints to unsigned int
	without reviewing the code was a good idea.  It is, btw not
	mentioned in the ChangeLog as usual, but I know it was not Elliot
	the culprit this time.
1998-04-15 02:15:36 +00:00
rhlabs
efd3aec503 file led_on2.xpm was initially added on branch themes. 1998-04-14 20:30:07 +00:00
rhlabs
d6084b0f36 file led_on1.xpm was initially added on branch themes. 1998-04-14 20:30:06 +00:00
rhlabs
c07afdb123 file led_off2.xpm was initially added on branch themes. 1998-04-14 20:30:05 +00:00
rhlabs
6f818654a0 file led_off1.xpm was initially added on branch themes. 1998-04-14 20:30:04 +00:00
rhlabs
af4350fc92 file btn3.xpm was initially added on branch themes. 1998-04-14 20:30:03 +00:00
rhlabs
d5b91db3ce file btn2.xpm was initially added on branch themes. 1998-04-14 20:30:02 +00:00
rhlabs
e093c42383 file btn1.xpm was initially added on branch themes. 1998-04-14 20:30:01 +00:00
rhlabs
e649afc0a8 file config was initially added on branch themes. 1998-04-14 20:30:00 +00:00
rhlabs
7aa5779181 file theme2_main.c was initially added on branch themes. 1998-04-14 20:29:59 +00:00
rhlabs
7cb8a11038 file theme2_button.c was initially added on branch themes. 1998-04-14 20:29:58 +00:00
rhlabs
09ea2ad7be file theme2.h was initially added on branch themes. 1998-04-14 20:29:57 +00:00
rhlabs
7be9418f30 file THEMES.README was initially added on branch themes. 1998-04-14 20:29:56 +00:00
rhlabs
d6b867723d file COMPILE_THEME2 was initially added on branch themes. 1998-04-14 20:29:54 +00:00
PDT 1998 Shawn T. Amundson
2b210ff47e Released GTK+ 1.0.0
Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.0.0
1998-04-14 02:22:39 +00:00
Owen Taylor
385164d6f9 Don't read the character past the end of the text.
Mon Apr 13 21:40:14 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktext.c (find_char_width): Don't read the
	character past the end of the text.

	* gtk/gtkrange.c (gtk_real_range_timer): If the mouse
	button has been released before the timer is activated,
	don't keep on scrolling.

	* gdk/gdk.c (gdk_event_translate): Filter subsequent configure
	events after we discard the first. Removed obsolete and
	sometimes very slow GdkOtherEvent. (Left in gdktypes.h
	with signal in GTK)
1998-04-14 01:39:40 +00:00
Owen Taylor
1bafe5a8e7 Updated package versions 1998-04-14 01:10:04 +00:00
Owen Taylor
52f719521a Minor additions and fixes 1998-04-14 01:09:25 +00:00
PDT 1998 Shawn T. Amundson
5c67089e7d update address info to gtk.org for ftp and web sites.
Mon Apr 13 18:03:54 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * README: update address info to gtk.org for ftp and web sites.
1998-04-14 01:05:16 +00:00
Federico Mena Quintero
af36f7765a New function; wrapper for XPolygonRegion().
1998-04-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdkregion.c (gdk_region_polygon): New function; wrapper for
	XPolygonRegion().

	* gdk/gdk.h: Added prototype for gdk_region_polygon().

	* gdk/gdktypes.h (GdkFillRule): New enum type of fill rule for polygons.
1998-04-14 00:49:06 +00:00
rhlabs
0b0524d397 file led_on2.xpm was initially added on branch themes. 1998-04-13 22:44:59 +00:00
rhlabs
4eaccda110 file led_on1.xpm was initially added on branch themes. 1998-04-13 22:44:58 +00:00
rhlabs
16bcc7bc6d file led_off2.xpm was initially added on branch themes. 1998-04-13 22:44:57 +00:00
rhlabs
26004d36fa file led_off1.xpm was initially added on branch themes. 1998-04-13 22:44:56 +00:00
rhlabs
0b31d8a9c4 file btn3.xpm was initially added on branch themes. 1998-04-13 22:44:55 +00:00
rhlabs
c2a843d8ed file btn2.xpm was initially added on branch themes. 1998-04-13 22:44:54 +00:00
rhlabs
ecb8751322 file btn1.xpm was initially added on branch themes. 1998-04-13 22:44:53 +00:00
rhlabs
d4a428d2e9 file config was initially added on branch themes. 1998-04-13 22:44:52 +00:00
Michael K. Johnson
1d6172102d removed duplicate call to gtk_widget_set_policy.
Mon Apr 13 15:04:26 1998  Michael K. Johnson <johnsonm@redhat.com>

        * gtk/testgtk.c (create_clist): removed duplicate call to
        gtk_widget_set_policy.
1998-04-13 19:09:00 +00:00
rhlabs
887540e646 Split out glib.
Why is CVS overwriting my locally modified files!  Argh..

-Marc <marc@redhat.com>
1998-04-13 17:36:45 +00:00
Tim Janik
18dfa1ae90 check for accelerator table to be != NULL.
Mon Apr 13 05:03:11 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_add_accelerator_table): check for
                accelerator table to be != NULL.
                        (gtk_window_remove_accelerator_table): likewise.
1998-04-13 04:42:11 +00:00
PDT 1998 Shawn T. Amundson
7ec269052d typo, gtk-1.0.0 should be gtk+-1.0.0 A little more intro on what gtk is...
Sun Apr 12 19:35:09 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * INSTALL: typo, gtk-1.0.0 should be gtk+-1.0.0
	* README: A little more intro on what gtk is...
1998-04-13 03:04:26 +00:00
Owen Taylor
a3ee7a9416 An old allocation error.
Sun Apr 12 22:43:22 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate):
	An old allocation error.

	* gtk/gtkviewport.c (gtk_viewport_add): Don't map
	when adding a not-VISIBLE widget to a VISIBLE
	viewport.
1998-04-13 02:45:25 +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
e6af5d49ae Set a flag so instead of clearing the area in advance. That looked
Sun Apr 12 20:09:40 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtklabel.[ch] (gtk_label_expose): Set a flag so
	instead of clearing the area in advance. That looked
	_really_ bad.

	* gtk/gtkcontainer.c (gtk_container_class_init): Changed
	"focus" to RUN_LAST.

	* gtk/gtkentry.c (gtk_entry_realize): Fixed place
	where allocation was used where requisition was meant.
	(Found by David J N Begley <david@avarice.nepean.uws.edu.au>)

	* gtk/gtkwindow.c (gtk_window_set_default): Fixed
	assertion in when setting default to NULL>
	("Damon Chaplin" <DAChaplin@email.msn.com>)

	* gtk/gtkwidget.c (gtk_widget_unparent): Unset the
	default widget on the toplevel, if necessary.

Sun Apr 12 02:04:21 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkpreview.c: Removed unecessary and harmful
	htons/ntohs when storing properties. (X does the byte
	swapping itself)
1998-04-13 00:20:17 +00:00
Owen Taylor
0dfc14aa8b Removed incorrect part of assertion that was causing failures for
Sat Apr 11 02:01:31 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktext.c (scroll_down): Removed incorrect part of
	assertion that was causing failures for scrolling a single
	line very short text widget.
1998-04-11 06:06:51 +00:00
Owen Taylor
6114e5b813 Fixed a sign problem (typedef gint guint!). Added some checks to make sure
Sat Apr 11 01:41:55 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktext.c (expose_text): Fixed a sign problem
	(typedef gint guint!). Added some checks to make sure things
	are positive.
1998-04-11 05:50:16 +00:00
Tim Janik
9c585e9210 don't shut down the tooltip on expose events.
Sat Apr 11 05:51:22 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtktooltips.c (gtk_tooltips_event_handler): don't shut down the
                tooltip on expose events.

                        * gtk/testgtk.c (create_progress_bar): add an example tooltip.
1998-04-11 03:54:34 +00:00
Owen Taylor
0e3d507006 Extended for the 1.0 release. Eliminated the "before 1.0" section
Fri Apr 10 00:10:16 1998  Owen Taylor  <owt1@cornell.edu>

	* README/INSTALL: Extended for the 1.0 release.
  	* TODO:           Eliminated the "before 1.0" section
1998-04-10 04:32:15 +00:00
PDT 1998 Shawn T. Amundson
1cf5800665 changes for 1.0.0 release.
Thu Apr  9 19:31:51 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * AUTHORS NEWS README configure.in gtk+.spec glib/configure.in:
	  changes for 1.0.0 release.
1998-04-10 02:33:54 +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
26df647a0f (Found by Mattias.Gronlund" <Mattias.Gronlund@sa.erisoft.se>)
Thu Apr  9 14:24:35 1998  Owen Taylor  <owt1@cornell.edu>

	(Found by Mattias.Gronlund" <Mattias.Gronlund@sa.erisoft.se>)

	* gtk/gtkcurve.c (gtk_curve_interpolate): Added a
	missing g_free.

	* gtk/gtkcurve.c (gtk_curve_graph_events): Limits
	were off by one, resulting in writing past array
	bounds. Removed some unused code.

	* gdk/gdk.c (gdk_dnd_drag_begin): The event structure
	used for gdk_event_put should be a GdkEvent, not a
	subtype, since it will all be copied.

	* gtk/gtkcolorsel.c: Added a unrealize handler that
	unref's the GC's that were created.

	* gtk/testgtk.c (clist_warning_test): ref and sink
	child because it may never be added to anything.
1998-04-09 19:12:12 +00:00
Elliot Lee
ad7dc0e87f When setting up the drag cursor as a shaped window, make sure to hide the previous drag shaped windows. 1998-04-09 03:33:24 +00:00
Elliot Lee
2a2323d64e Combobulator fixes..... ....
Combobulator fixes.....
....

.....


......



.......



........

April fools! ;-)
1998-04-09 02:55:46 +00:00
Owen Taylor
3a1eebe683 Removed unsed variables (gtk-jbuhler-980408-0)
Wed Apr  8 20:50:02 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkwindow.c (gtk_window_set_hints): Removed unsed
	variables (gtk-jbuhler-980408-0)
1998-04-09 00:50:20 +00:00
Owen Taylor
520fd17eca Make sure widgets get removed from the resize queue before the connection
Wed Apr  8 17:27:40 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkwidget.c (gtk_widget_unparent): Make sure
	widgets get removed from the resize queue before the
	connection between them and the resize queue is broken
	by unparenting their parent.
1998-04-08 21:40:45 +00:00
Miguel de Icaza
09d32399ab During drag and drop, set the event mask at ButtonPress time to include
1998-04-08  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_event_translate): During drag and drop, set the
	event mask at ButtonPress time to include ButtonPressMask and
	ButtonReleaseMask, otherwise, if the button is released, and we
	get a LeaveNotify event, it still thinks we are doing a drag.
1998-04-08 19:46:09 +00:00
PDT 1998 Shawn T. Amundson
c492bd10e8 Released GTK+ 0.99.10
Tue Apr  7 22:45:37 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 0.99.10
1998-04-08 05:47:03 +00:00
Owen Taylor
0d1eb423a1 Handle border width correctly on realize after allocate.
Wed Apr  8 01:33:58 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkviewport.c (gtk_viewport_realize): Handle border
	width correctly on realize after allocate.
1998-04-08 05:41:40 +00:00
Owen Taylor
55f36bac3a Fix to dial test allocation. Make wheelbarrow not flash window
before setting shape mask.
1998-04-08 05:28:56 +00:00
Owen Taylor
3d19b7ce55 Changes for GTK+ 0.99.10
Tue Apr  7 23:06:00 1998  Owen Taylor  <owt1@cornell.edu>

	* Changes for GTK+ 0.99.10

	* examples/find-examples.sh: Script to find all the
	files we need to distribute from the examples directory.
1998-04-08 04:07:01 +00:00
Tim Janik
2ab408a700 really remove g_direct_compare() (this includes its declaration ;). 1998-04-08 00:51:05 +00:00
Owen Taylor
1c77b5f926 Removed, because that's what a NULL comparison function means. And it
Tue Apr  7 19:36:48 1998  Owen Taylor  <owt1@cornell.edu>

	* gutils.c (g_direct_compare): Removed, because that's what
	a NULL comparison function means. And it wasn't 64 bit safe.

Tue Apr  7 19:14:03 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdkpixmap.c: Added maximum field widths to prevent
	possible '%s' scanf overflows. Replaced scanf("%c")
	with getc(), Don't interpret /*/ as a full comment. Use
	g_realloc/g_new.

	* gtk/gtkwidget.h gtk/gtkprivate.h: Changed all flag
	tests to check for ((GTK_WIDGET_FLAGS(widget) & FLAG) != 0)
	instead of (GTK_WIDGET_FLAGS(widget) & FLAG)

	* gtk/gtkfilesel.c: Use getwd() instead of getcwd() on
	SunOS, because getcwd() hangs up in a wait4().
	(Found by David Monniaux <monniaux@clipper.ens.fr>)

	- Check device/inode/mtime not just inode/mtime, when
	caching scanned directories.
	(From: scottk@ig.utexas.edu (Scott Kempf))

	* gdk/gdkpixmap.c: Check for 0 width/height when
	creating pixmaps.

	* gtk/*.c: Global substitution of recently introduced
	"MAX (0," for allocations to "MAX (1,", since
	creating a backing pixmap with a zero width or height
	fails.

	* gdk/gdkwindow.c (gdk_window_new): Don't set all the
	WM properties for child windows. Don't set the base
	size, since the value we set will be taken as a minimum
	size.
1998-04-07 23:59:25 +00:00
Tim Janik
13de9dc34f don't take '\n' into account for size computation (Damon Chaplin).
Wed Apr  8 00:00:48 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtklabel.c (gtk_label_expose): don't take '\n' into account for
                size computation (Damon Chaplin).

                        * gtk/gtkvscale.c (gtk_vscale_draw_value): adjusted static snprintf()
                                buffer size to 32 characters (Damon Chaplin).
                                        * gtk/gtkhscale.c (gtk_hscale_draw_value): likewise.

                                                * gtk/gtkmain.c (gtk_main_iteration_do): gdk_flush() the X-queue if
                                                        iteration_done==TRUE since we will most likely not get invoked again
                                                                (Marius Vollmer).
1998-04-07 23:29:04 +00:00
Elliot Lee
6788abaa48 added g_direct_hash and g_direct_compare functions, since I happen to use them in a *lot* of places 1998-04-07 22:33:20 +00:00
Elliot Lee
39a05c0b55 gtk_button_remove(): When removing a child widget from a button, we don't
gtk_button_remove():
	When removing a child widget from a button, we don't want to check
	the child's visibility after removal (for the purpose of knowing
	whether a queue_resize is needed), we want to check it *before*,
	because the child may be destroyed during the
	gtk_widget_unparent()

	The diff is clearer than this stupid log message. :)
1998-04-07 19:51:06 +00:00
Owen Taylor
8051b9d2bc Set the window hints on every map so that GTK_WIN_POS_MOUSE works
Mon Apr  6 23:48:29 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkwindow.c (gtk_window_realize): Set the
	window hints on every map so that GTK_WIN_POS_MOUSE
	works correctly.
1998-04-07 04:17:27 +00:00
Federico Mena Quintero
30533f0397 Added function to set the homogeneous flag of the table (needed by derived
1998-04-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtktable.h:
	* gtk/gtktable.c (gtk_table_set_homogeneous): Added function to
	set the homogeneous flag of the table (needed by derived widgets
	and such).

1998-04-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkradiobutton.h: Add prototype for gtk_radio_button_new_with_label_from_widget.
1998-04-06 22:33:32 +00:00
BST 1998 Tony Gale
01c3cd84f5 more on GIMP (et al) configure problems.
Mon Apr  6 18:48:49 BST 1998 Tony Gale  <gale@gtk.org>

        * docs/gtkfaq.sgml: more on GIMP (et al) configure
          problems.
1998-04-06 17:53:42 +00:00
Tim Janik
49efbf9b1d fixed a bug that caused floats of the format ".xxx" to be parsed as "xxx".
Mon Apr  6 18:43:25 1998  Tim Janik  <timj@gtk.org>

        * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats
                of the format ".xxx" to be parsed as "xxx".
1998-04-06 17:12:31 +00:00
Owen Taylor
0f9fe89727 Take border in account properly.
Mon Apr  6 08:05:23 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkbutton.c (gtk_button_paint): Take border in
	account properly.

	* gtk/gtktext.c (gtk_text_realize): Don't recompute
	geometry when creating with initial 1x1 geometry,
	since our calculations can't handle that. Leave
	text->line_start_cache NULL as sign we don't have
	a real geometry yet.

	* gtk/gtkentry.c (gtk_entry_motion_notify): Use the x
	value we get from gdk_window_get_pointer, not from
	event->x - since we always specify OwnerGrabButtonMask
	(why???), event->x can refer to another window.
1998-04-06 12:59:06 +00:00
BST 1998 Tony Gale
d7aa6a88fb Change a missed "delete_event" return value description from TRUE to
Mon Apr  6 08:08:49 BST 1998  Tony Gale <gale@gtk.org>

        * docs/gtk_tut.sgml examples/helloworld/helloworld.c:
          Change a missed "delete_event" return value description
          from TRUE to FALSE.
1998-04-06 08:13:48 +00:00
Tony Gale
c4089778fb Mon Apr 6 08:08:49 BST 1998 Tony Gale <gale@gtk.org
* docs/gtk_tut.sgml examples/helloworld/helloworld.c:
          Change a missed "delete_event" return value description
          from TRUE to FALSE.
1998-04-06 08:12:46 +00:00
Owen Taylor
61ca241924 Make tab key move in reading order (left-to-right top to bottom) - which
Mon Apr  6 00:28:28 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkcontainer.c (gtk_container_focus_tab): Make
	tab key move in reading order (left-to-right top
	to bottom) - which might have been the original intended
	behavior modulo sorting bugs.

	* gtk-config.in: Never output -I/usr/include from --cflags
1998-04-06 04:31:15 +00:00
Owen Taylor
79d880ccb7 Fixed bug where right justified menu would overlap last left justified
Sun Apr  5 21:47:12 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmenubar.c: Fixed bug where right justified
	menu would overlap last left justified item.
1998-04-06 02:00:48 +00:00
Owen Taylor
20fee708a3 Fixed assignment of adjustment->value to negative values. Moved a few
Sun Apr  5 19:30:23 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkclist.c: Fixed assignment of adjustment->value
	to negative values. Moved a few other allocation type things
	around in ways that may or may matter. Fixed some allocation
	errors (scrollbars were overlapping main window).

	* gtk/gtkbutton.c (gtk_real_button_released): Small hack to keep
	button labels from vanishing when the invoked operation blocks.

	* gtk/gtkbox.c (gtk_box_remove): Assigning GTK_WIDGET_VISIBLE (widget)
	to a gboolean (char) is _bad_. GTK_VISIBLE == 256.
1998-04-05 23:30:26 +00:00
Owen Taylor
1a099c2ced Reverted broken implementation of removing the current timeout/idle.
Sun Apr  5 15:08:25 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmain.c: Reverted broken implementation of removing
	the current timeout/idle. Substituted a (hopefully) functional one.
1998-04-05 19:23:38 +00:00
Tim Janik
ab7989217a take expired timeouts into account, otherwise things like e.g.
Sun Apr  5 09:35:55 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_events_pending): take expired timeouts into
                account, otherwise things like e.g. spin-buttons don't work.
                        also, count gtk_main_quit() as an event.
1998-04-05 09:18:08 +00:00
Tim Janik
6e28c40061 fixed panel allocation and stacking order, fixed the base class
Sun Apr  5 08:03:01 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkspinbutton.c: fixed panel allocation and stacking order,
                fixed the base class realization.

                        * gtk/gtkmisc.c: implemented widget arguments.

                                * gtk/gtkentry.c: fixes in _realize to behave similar to
                                        _size_allocate.
1998-04-05 06:58:29 +00:00
Tony Gale
9a5ad5d44e Tony Gale <gale@gtk.org>
* remember to change the date
1998-04-04 11:48:18 +00:00
BST 1998 Tony Gale
e19f939b53 subsections on Aspect Frames and Paned widgets.
Sat Apr  4 12:23:23 BST 1998  Tony Gale  <gale@gtk.org>

        * docs/gtk_tut.sgml: (gtk-crichton-980403-0) subsections on
          Aspect Frames and Paned widgets.

        * examples/paned examples/aspectframe: new examples
1998-04-04 11:31:51 +00:00
Owen Taylor
977b13d37f Test for need to recompute geometry with GTK_WIDGET_REALIZED(), not
Fri Apr  3 23:15:55 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktext.c: Test for need to recompute geometry with
	GTK_WIDGET_REALIZED(), not GTK_WIDGET_DRAWABLE().
1998-04-04 04:21:26 +00:00
Federico Mena Quintero
bfd68b4357 New function to draw a nifty "textured metal" frame. Could be useful in
1998-04-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkhandlebox.c (draw_textured_frame): New function to draw a
	nifty "textured metal" frame.  Could be useful in gtkstyle.c, maybe.
	(gtk_handle_box_paint): Paint a handle that does not make you puke
	when you look at it.
1998-04-04 03:06:07 +00:00
Owen Taylor
71824a2cd5 Call recompute_geometry() upon realization, since it can't be done in the
Fri Apr  3 21:03:38 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktext.c (gtk_text_realize): Call recompute_geometry()
	upon realization, since it can't be done in the previous
	size_allocate.
1998-04-04 02:04:50 +00:00
Owen Taylor
e2ae4aec47 Make debug string parsine case-insensitive
Fri Apr  3 20:36:35 1998  Owen Taylor  <owt1@cornell.edu>

	* gutils.c (g_parse_debug_string): Make debug string
	parsine case-insensitive

Fri Apr  3 20:36:52 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdk.c gtk/gtkmain.c: Accept debug options
	in the form --g[td]k[-no]-debug=xxx as well
1998-04-04 01:56:54 +00:00
Manish Singh
59d586e2ff corrected possible overrun when inserting into GStrings
-Yosh
1998-04-04 01:20:45 +00:00
Owen Taylor
07a8601adf Removed literal german from strings to appease SGI compiler.
Fri Apr  3 18:05:45 1998  Owen Taylor  <owt1@cornell.edu>

	* testglib.c: Removed literal german from strings
	to appease SGI compiler.
1998-04-04 00:57:36 +00:00
Owen Taylor
b1446447fc Added flags --prefix[=dir] and --exec-prefix[=DIR] which allow querying
Fri Apr  3 18:33:47 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk-config.in: Added flags --prefix[=dir] and
	--exec-prefix[=DIR] which allow querying and overriding the
	configured-in prefix and exec-prefix.

	* gtk.m4: Added configure flags --with-gtk-prefix=
	and --with-gtk-exec-prefix= to set the --prefix and
	--exec-prefix argumetns to gtk.m4
1998-04-04 00:12:58 +00:00
Owen Taylor
308adaa6db More extensive debugging output
Fri Apr  3 17:14:55 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdk.c: More extensive debugging output
1998-04-03 23:21:18 +00:00
Owen Taylor
32cd050cfe More extensive debugging output
Fri Apr  3 17:14:55 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdk.c: More extensive debugging output

	* gtk/gtkalignment.c gtk/gtkbutton.c gtk/gtkcheckbutton.c
	  gtk/gtkclist.c gtk/gtkeventbox.c gtk/gtkhandlebox.c
	  gtk/gtk[hv]box.c gtk/gtk[hv]paned.c gtk/gtklist.c
	  gtk/gtkmenu.c gtk/gtkmenubar.c gtk/gtkmenuitem.c
	  gtk/gtknotebook.c gtk/gtktable.c gtk/gtktree.c
	  gtk/gtktreeitem.c gtk/gtkviewport.c

	Avoid assigning negative values to unsigned allocation.width and
	height

	* gtk/gtkwindow.c:

	Instead of realizing the widget, then size allocating, (resulting
	in XMoveResizeWindows for all children, do the size allocation
	first, then realize.

	In gtk_real_window_move_resize, combine move and resize
	into a single GDK/X call when possible.

	* gtk/gtkclist.c gtk/gtkdrawingarea.c:

	Remove assumption that the widget will be size allocated _after_
	it is realized.

	* gtk/gtklist.c (gtk_list_motion_notify): Removed useless
	debugging message.
1998-04-03 23:17:16 +00:00
Owen Taylor
740b70ea0c changes to follow 1998-04-03 23:06:26 +00:00
BST 1998 Tony Gale
4268cd7312 add correct dependencies
Thu Apr  2 17:30:04 BST 1998 Tony Gale <gale@gtk.org>

        * examples/gtkdial/Makefile,
          examples/menu/Makefile,
          examples/tictactoe/Makefile : add correct dependencies
1998-04-02 15:33:36 +00:00
Tony Gale
5d81d2ab28 Tony Gale <gale@gtk.org>
Change the date - which I forgot to do earlier
1998-04-02 13:41:46 +00:00
BST 1998 Tony Gale
68bc2c51db add question on failing GIMP configure
Thu Apr  2 13:04:37 BST 1998 Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: add question on failing GIMP configure
1998-04-02 12:06:53 +00:00
Elliot Lee
acb95ed9da a little more debugging code. 1998-04-01 19:46:06 +00:00
Shawn Amundson
c36ca76bb8 Tue Mar 31 15:41:57 PST 1998 Shawn T. Amundson
* Makefile.am:
	* examples/*: added the rest of the tutorial examples
1998-03-31 23:43:49 +00:00
Tim Janik
30f22e0208 forgot to set the initial `0' cursor.
Tue Mar 31 06:37:16 1998  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c (create_cursors): forgot to set the initial `0' cursor.
1998-03-31 04:39:57 +00:00
Arturo Espinosa
4e01061296 Remove unused variable -mig 1998-03-31 03:16:34 +00:00
Miguel de Icaza
2be5abf4ed First fix: Move the window first, display it after (this removes one of
1998-03-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdk/gdkdnd.c (gdk_dnd_display_drag_cursor): First fix: Move the
	window first, display it after (this removes one of the annoying
	flashing effects).
1998-03-31 03:16:09 +00:00
Owen Taylor
f59f2039c0 Add a "style_set" callback, so the font can be changed at run time.
Mon Mar 30 21:29:43 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkentry.c: Add a "style_set" callback, so the
	font can be changed at run time. (needed for GIMP text
	tool)
1998-03-31 02:36:51 +00:00
Tim Janik
a20f83d9a9 show the menu_label unconditionally (even if it is not a default label).
Tue Mar 31 01:17:23 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtknotebook.c (gtk_notebook_menu_item_create): show the menu_label
                unconditionally (even if it is not a default label).
                        (gtk_notebook_update_labels): if we have a tab_label, then use its label
                                as the default menu_label.
1998-03-31 00:38:59 +00:00
Owen Taylor
4bf5d761bc Improved main loop test. (Quits main loop properly, makes it more obvious
Mon Mar 30 16:35:57 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/testgtk.c: Improved main loop test. (Quits main
	loop properly, makes it more obvious to the user
	what is going on)

	* gtk/gtkwidget.c (gtk_widget_unparent): Reset the
	allocation _after_ clearing the window.

	* configure.in: If can't find XShmAttach in Xext, check
	in XextSam (for AIX).

	* gtk/gtkmain.c (gtk_events_pending): Remember, small
	numbers are _high_ priority for idle queues.

	* gtk/gtkmain.c (gtk_handle_current_timeouts): Allow
	removing the currently running timeout.

	* gtk/testgtk.c (timeout_test): Use the right prototype
	for callback.
1998-03-30 23:04:51 +00:00
Tim Janik
8eb7761e72 removed this function, it was unneeded and not exported.
Mon Mar 30 21:40:21 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.c (gtk_clist_row_from_ypixel): removed this function,
                it was unneeded and not exported.

                        * gtk/gtkwidget.c (gtk_widget_ref) (gtk_widget_unref): don't check-cast
                                the widgets to volatile GtkObjects (which was there for debugging
                                        purposes only). these functions should probably be macros, but that
                                                would break binary compatibility again, sigh.
                                                        (gtk_widget_destroy): removed superfluous check-casts, since the
                                                                neccessary checks are done in gtk_object_destroy anyways. this should
                                                                        be a macro as well but stays as a function for the above reasoonings.
1998-03-30 20:03:36 +00:00
BST 1998 Tony Gale
c05d6f2d12 reflect the change of meaning of the delete_event return value
Mon Mar 30 17:21:27 BST 1998 Tony Gale  <gale@gimp.org>

        * docs/gtk_tut.sgml: reflect the change of meaning
          of the delete_event return value
1998-03-30 16:24:42 +00:00
Tony Gale
f553b79b70 Sun Mar 29 22:25:22 BST 1998 Tony Gale <gale@gimp.org> * docs/gtk_tut.sgml: more on the Text widget,
update the tictactoe example to the current code
1998-03-29 21:28:54 +00:00
BST 1998 Tony Gale
4098ac22ff more on the Text widget, update the tictactoe example to the current code
Sun Mar 29 22:25:22 BST 1998 Tony Gale  <gale@gimp.org>
	* docs/gtk_tut.sgml: more on the Text widget,
	  update the tictactoe example to the current code
1998-03-29 21:27:43 +00:00
Tim Janik
2f5621e566 Added wrapping capabilities to GtkSpinButton. New function :
Sun Mar 29 22:29:00 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
                Added wrapping capabilities to GtkSpinButton. New function :
                        gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
1998-03-29 20:40:10 +00:00
Owen Taylor
93e1585614 Disconnect from combo->entry, not combo. (From: Daniel Skarda
Sat Mar 28 21:18:42 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkcombo.c (gtk_combo_disable_activate):
	Disconnect from combo->entry, not combo.
	(From: Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>)

	* gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpm): Deal
	better with xpm's with bad colors in them.

Plus, 3rd attempt to commit gtklabel changes
1998-03-29 02:44:43 +00:00
Owen Taylor
5b3cc69b43 Don't call XTranslateCoordinates on a destroyed window. (Why do we do
Fri Mar 27 21:01:17 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdk.c (gdk_event_translate): Don't call
	XTranslateCoordinates on a destroyed window. (Why do we
	do event processing at all on destroyed windows when we
	throw out the results?)

	* gtk/gtklabel.c: Clear the background when changing style/
	state.
1998-03-28 02:08:27 +00:00
PST 1998 Shawn T. Amundson
7033e33822 Released GTK+ 0.99.9
Fri Mar 27 16:35:00 PST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 0.99.9

	* examples: added a couple more, fixed some Makefiles
1998-03-28 01:01:54 +00:00
Owen Taylor
b2c30ad95d Don't clear the window on an expose event. On draws, just clear the
Fri Mar 27 17:58:41 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkhandlebox.c (gtk_handle_box_paint): Don't clear
	the window on an expose event. On draws, just clear the
	portion we are redrawing.

	* gdk/gdkfont.c (gdk_fontset_load): Corrected calculation
	of fontset ascent/descent.

	* gtk/gtkwidget.[ch]: Added new function to show a toplevel
	window and wait for it to be mapped, gtk_window_show_now ()
1998-03-28 00:10:49 +00:00
Owen Taylor
f2cfc17be8 Missed one 1998-03-27 17:24:04 +00:00
PST 1998 Shawn T. Amundson
186a0455be some stuff for doing plain text and postscript
Fri Mar 27 08:51:17 PST 1998 Shawn T. Amundson <amundson@gtk.org>

        * docs/Makefile.sgml: some stuff for doing plain text and
	          postscript
1998-03-27 16:53:14 +00:00
Owen Taylor
e0ea1f0c14 If the widget is _not_ a descendant of a Window widget, propagate key
Fri Mar 27 00:13:18 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmain.c (gtk_propagate_event): If the widget is _not_
	a descendant of a Window widget, propagate key presses like
	other events.

	* gtk/gtkentry.c gtk/gtktext.c: Ignore multiple simultaneous
	button presses instead of treating subsequent presses as
	release/press pairs for tablet compatibility.

	* configure.in config.h.in: Removed inline checks, because they
	are duplicated in glib.

	* gtk/gtkwidget.c (gtk_widget_draw): When gtk_widget_draw ()
	occurs with queued draw already in place, redraw _entire_
	widget. (Pointed out by Tim Janik)
1998-03-27 05:17:11 +00:00
Tim Janik
11f79ebe18 make a clear distinction between key press/release events, which will be
Thu Mar 26 23:12:54 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_propagate_event): make a clear distinction between
                key press/release events, which will be sent to a widgets toplevel
                        ancestor and be forwarded from there, and all other events that need to
                                get propagated up the widget tree (pointed out by Owen Taylor).
1998-03-26 22:18:56 +00:00
Tim Janik
c2906f2bea always display the correct active state.
Thu Mar 26 21:37:57 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): always
                display the correct active state.

                        * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): always
                                display the correct active state.

                                        * gtk/gtkwidget.c (gtk_widget_set_arg): CAN_FOCUS and CAN_DEFAULT flag
                                                changes need to queue a resize.

                                                        * gtk/gtkbutton.c (gtk_button_paint): take border_width into
                                                                consideration for restrict area.

                                                                        * gtk/gtktogglebutton.c (gtk_toggle_button_class_init): enable the
                                                                                draw_default member of GtkButton, otherwise the diplay is messed up
                                                                                        for CAN_DEFAULT toggles.
                                                                                                (gtk_toggle_button_draw_focus): always display whether the toggle button
                                                                                                        is active or not.

                                                                                                                * gtk/gtkwidget.c (gtk_widget_set_state):
                                                                                                                        (gtk_widget_set_sensitive):
                                                                                                                                (gtk_widget_set_parent):
                                                                                                                                        (gtk_widget_propagate_state): take into consideration, whether we really
                                                                                                                                                want to change childrens states, or just restauration of old states.
1998-03-26 21:57:45 +00:00
Owen Taylor
a74e338517 When gtk_widget_draw() is called on a REDRAW_PENDING widget, draw it and
Thu Mar 26 15:33:50 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkwidget.c: When gtk_widget_draw() is called on a
	REDRAW_PENDING widget, draw it and remove it from the
	queue instead of doing nothing.

	* gtk/Makefile.am gdk/Makefile.am: Switch order of includes
	directories, to make doubly sure that wrong glibconfig.h
	isn't used. (See also glib/ChangeLog)

	* gtk/gtkentry.c (gtk_entry_draw_focus): Don't draw the
	cursor unless the entry is editable.

	(From: Stefan Jeske <jeske@braunschweig.netsurf.de>)
1998-03-26 20:57:29 +00:00
Tim Janik
d38e339ebb do not propagate unhandled key events on widgets with parent==NULL twice.
Thu Mar 26 08:31:58 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkmain.c (gtk_propagate_event): do not propagate unhandled key
                events on widgets with parent==NULL twice.
1998-03-26 07:47:04 +00:00
Tim Janik
b47085512c removed a leftover g_print() call
-timj
1998-03-25 03:33:15 +00:00
Tim Janik
cb98231c7d implemented new flag shrink_on_detach (TRUE by default) which will cause
Tue Mar 24 14:59:50 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkhandlebox.h:
                * gtk/gtkhandlebox.c: implemented new flag shrink_on_detach (TRUE by
                        default) which will cause the handle boxes requisition to collapse in
                                case the child is already detached.


                                removed duplicate ChangeLog entry from owen.
1998-03-24 14:04:07 +00:00
Jay Painter
36e83663cf Quick fix for size allocation -- needs more work overall 1998-03-24 08:52:41 +00:00
Owen Taylor
102b1de4b4 Use reversed arrow for menus ala Motif (and fix Options menus, which had X
Tue Mar 24 00:17:42 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkcombo.c gtk/gtkmenu.c: Use reversed arrow for
	menus ala Motif (and fix Options menus, which had X cursor
	before), and show normal arrow when inside ComboBox.

	* gtk/gtkfilesel.c: Various memory leaks removed, as
	pointed out by Mattias.Gronlund" <Mattias.Gronlund@sa.erisoft.se>

	* docs/gtk_tut.sgml: Change compiling explaination
	to refer to gtk-config.
	(From: johannes@nada.kth.se (Johannes Keukelaar))
1998-03-24 05:27:00 +00:00
Federico Mena Quintero
d362159181 Fixed xthickness -> ythickness typo.
1998-03-23  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkclist.c (gtk_clist_size_allocate): Fixed xthickness ->
	ythickness typo.
1998-03-24 05:17:01 +00:00
Ben Gertzfield
9b7fd1bbe5 Removed debian/files for real 1998-03-24 04:42:55 +00:00
Ben Gertzfield
9457fe86d4 Removed *.files, artifacts of the build process 1998-03-24 04:42:21 +00:00
Ben Gertzfield
13fa9d3819 Added debian/* files for ease in automatic building of Debian packages 1998-03-24 04:02:49 +00:00
Ben Gertzfield
3f5c7acc33 Added gtk/testgtk.1 man page for testgtk 1998-03-24 04:01:21 +00:00
Tim Janik
7de464ffe8 save the widgets visibility flag for evaluation after the widget got
* gtk/gtkbox.c (gtk_box_remove): save the widgets visibility flag for
                evaluation after the widget got destroyed, discovered by Johannes
                        Keukelaar <johannes@nada.kth.se>.
1998-03-24 03:34:38 +00:00
Federico Mena Quintero
c88afb81f9 Select the row which got its data changed, and not (0, 0).
1998-03-23  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkclist.c (gtk_clist_set_row_data_full): Select the row
	which got its data changed, and not (0, 0).
1998-03-24 03:09:59 +00:00
Owen Taylor
34e324ca70 /home/otaylor/commit 1998-03-24 01:43:21 +00:00
Tim Janik
7bd32a06cf check for text!=NULL. (gtk_entry_prepend_text): likewise. some else picky
Mon Mar 23 15:26:25 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkentry.c (gtk_entry_append_text): check for text!=NULL.
                (gtk_entry_prepend_text): likewise.
                        some else picky indentation fixes.
1998-03-23 14:50:58 +00:00
Owen Taylor
ba0b7257a7 Added note about word wrapping. 1998-03-23 06:48:22 +00:00
CST 1998 Shawn T. Amundson
690e34968a added this directory with stuff from the tutorial, updated to compile and
Mon Mar 23 12:03:03 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * examples/: added this directory with stuff from
          the tutorial, updated to compile and work with recent
          changes
1998-03-23 06:36:09 +00:00
Owen Taylor
923f3f6992 Added optional word wrap, controlled by new function
Mon Mar 23 01:04:51 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtktext.[ch] testgtk.c: Added optional word wrap, controlled
	  by new function gtk_text_set_word_wrap; and a check button
	  in the Text test.

	* gtk/gtktext.c: First line wasn't getting updated
	properly when selection was removed.
1998-03-23 06:27:31 +00:00
Owen Taylor
f0f650948a Fixed some problems with !gtk_use_mb introduced in the last change.
Sun Mar 22 23:33:50 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkentry.c (gtk_entry_insert_text): Fixed some
	  problems with !gtk_use_mb introduced in the last change.
1998-03-23 04:33:59 +00:00
Owen Taylor
03a7c4551b Fix so children don't get bogus draws.
Sun Mar 22 21:00:43 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkpaned.c: Fix so children don't get bogus draws.
1998-03-23 03:48:45 +00:00
Tim Janik
6b411f4b47 leave container_class->add and container_class->remove untouched if we
Mon Mar 23 01:08:30 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkclist.c (gtk_clist_class_init): leave container_class->add and
                container_class->remove untouched if we don't implement them.

                        * gtk/gtkcontainer.c (gtk_container_class_init): add missing NULL
                                initialization for the class method (*foreach). implement a default
                                        handler to output a warning for (*add) and (*remove).
1998-03-23 03:31:11 +00:00
Jay Painter
b78286eab5 fixed sending null strings to gdk_string_width 1998-03-23 01:08:03 +00:00
Owen Taylor
dac3ffed60 Fixes to allow GTK to work with colormaps that aren't 256 entries long.
Sun Mar 22 19:01:36 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdkcolor.c: Fixes to allow GTK to work with colormaps
	  that aren't 256 entries long. (colormap->colors is
	  now dynamically allocated)
1998-03-23 00:16:13 +00:00
Owen Taylor
16aa9c1964 fixes to locale checks
Sun Mar 22 16:25:46 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmain.c (gtk_init): fixes to locale checks

	* gtk/testgtk.c (create_dnd): Create the dnd icons separately
	  to avoid strange interactions with shapes demo.

	* gtk/gtkentry.[ch]:
	  - Limit the length of the text to 2048 to prevent long delays
	  - Fix problems with buffer overruns
	  - Draw only the onscreen portion of the text to prevent wrapping
	    of shorts in the X drawing code.
	  - Keep track of character positions and x-offsets to speed
	    up algorithms.
1998-03-22 21:31:10 +00:00
CST 1998 Shawn T. Amundson
ac05ab301d use button_box for buttons
Sun Mar 22 11:37:51 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * gtk/gtkcolorsel.c:
        * gtk/gtkfilesel.c: use button_box for buttons
1998-03-22 16:59:59 +00:00
Tim Janik
de26d9af9b forgot the ChangeLog ;(((
-timj
1998-03-22 02:37:28 +00:00
Owen Taylor
8cff9d3307 Don't respond to drops when grab is in effect. (workaround)
Sat Mar 21 19:07:01 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/testgtk.c (dnd_drop): Don't respond to drops when
	  grab is in effect. (workaround)

	* gdk/gdkfont.c (gdk_fontset_load): More details on
	  error messages.

	* gdk/gdk.c: Translate va_list to XVaNestedList instead
	  of just casting it.

	* gtk/gtkmain.c: Make temporary copy of string returned by
	  setlocale, since it may be changed by subsequent calls.
1998-03-22 00:07:53 +00:00
Tim Janik
995d97b001 major overhaul of the code, fixed all known bugs (hopefully ;).
Sat Mar 21 22:54:31 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkhandlebox.h:
        * gtk/gtkhandlebox.c: major overhaul of the code, fixed all
        known bugs (hopefully ;).

Sat Mar 20 15:33:17 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_real_show): queue the resize for the
        parent.

Thu Mar 19 02:00:50 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_unrealize): unset flags after emission,
        especially GTK_MAPPED, since that might not have been taken care of
        by an UNMAP emission.
1998-03-21 22:11:26 +00:00
CET 1998 Paolo Molaro
a7960ed953 gtk/gtkcombo.[ch] "activate" signal can be disabled now
Sat Mar 21 10:39:02 CET 1998 Paolo Molaro <lupus@debian.org>

	* gtk/gtkcombo.[ch] "activate" signal can be disabled now
1998-03-21 09:45:03 +00:00
Radek Doulik
0328873baf changed packing in toolbar elements, so texts are always at the bottom
Fri Mar 20 20:49:33 1998  Radek Doulik  <rodo@aquarius>

        * gtk/gtktoolbar.c (gtk_toolbar_insert_element): changed packing
        in toolbar elements, so texts are always at the bottom
1998-03-21 07:46:04 +00:00
rhlabs
babfb28c3c syntax
-Marc
1998-03-20 16:03:21 +00:00
PST 1998 Shawn T. Amundson
8a544b8912 Released GTK+ 0.99.8
Thu Mar 19 16:40:47 PST 1998 Shawn T. Amundson <amundson@gimp.org>

        * Released GTK+ 0.99.8
1998-03-20 01:37:14 +00:00
CST 1998 Shawn T. Amundson
75a00da8d1 the Solaris ltconfig patch from draco
Thu Mar 19 16:28:48 CST 1998 Shawn T. Amundson <amundson@gimp.org>

        * the Solaris ltconfig patch from draco
1998-03-19 22:35:51 +00:00
Manish Singh
38614a78b6 Reverted garray change, and fixed the g_rarray_truncate bug with length.
Can we be one big happy g* family now? :)

-Yosh
1998-03-19 07:17:10 +00:00
Elliot Lee
b44ec526b6 revert stupid part of revert, doh doh doh 1998-03-19 03:46:02 +00:00
Elliot Lee
177354df02 revert gboolean change until we work out the details of exactly why it needs to be an int 1998-03-19 03:28:37 +00:00
Manish Singh
2a2fff763d #define M_PI if it isn't already initialize transparent properly, to make
* gtk/gtkcolorsel.c: #define M_PI if it isn't already
* gtk/testgtk.c: initialize transparent properly, to make purify happy

-Yosh
1998-03-19 01:07:48 +00:00
Tim Janik
3c03a6787d perform the neccessary checks on funtion begin. use the scrolled_window
Thu Mar 19 00:37:44 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_construct): perform the
                neccessary checks on funtion begin. use the scrolled_window that got
                        passed to this function, and not a new one.
1998-03-18 23:49:36 +00:00
Owen Taylor
f9739e8343 ( From: James Henstridge <james@daa.com.au> )
Wed Mar 18 11:09:10 1998  Owen Taylor  <owt1@cornell.edu>
	( From: James Henstridge <james@daa.com.au> )

	* gtk/gtkclist.c: Don't remove, then destroy labels in
	  gtk_clist_set_column_[*], just remove them.

	* gtk/gtkmain.c (gtk_invoke_timeout_function): call
	  marshal when appropriate, not function.

Tue Mar 17 14:15:07 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/testgtk.c (create_main_window): Alphabetize tests

	* gtk/gtk[hv]paned.c: Change division on resize if
	  necessary to keep handle visible.

	* gtk/gtkgamma.c gtk/gtkcurve.c: Moved initialization into
	  _init() functions.

	* gtk/gtkscrolledwindow.c: Added missing _construct()
	  functions.
1998-03-18 21:11:04 +00:00
CET 1998 Paolo Molaro
85d4cd0f43 checked in gtk_entry_set_max_length (it truncates the texts if it's
Wed Mar 18 17:38:25 CET 1998	Paolo Molaro <lupus@debian.org>

	* gtk/gtkentry.[ch]: checked in gtk_entry_set_max_length
	(it truncates the texts if it's longer, now)
1998-03-18 15:41:03 +00:00
Tim Janik
e648c2d68f use the resize queue.
Wed Mar 18 02:06:52 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c (gtk_container_border_width): use the resize queue.

                * gtk/gtkwindow.c (gtk_window_set_arg): gtk_window_set_hints() after
                        setting certain arguments, so they actually take affect.
                                (gtk_window_set_policy): likewise.
1998-03-18 02:05:27 +00:00
Manish Singh
467e4e73c1 Rewrite of GArray gboolean type changed to int
Rewrite of GArray
gboolean type changed to int

-Yosh
1998-03-18 00:08:31 +00:00
Radek Doulik
b141619b50 test if clist->title_window exists before showing it,
Wed Mar 18 01:07:11 1998  Radek Doulik  <rodo@aquarius>

	* gtk/gtkclist.c (gtk_clist_column_titles_show): test if
	clist->title_window exists before showing it,
	gtk_clist_column_titles_hide also fixed
1998-03-17 23:21:17 +00:00
Tim Janik
3f04c019cd return real boolean values not just numbers.
Tue Mar 17 22:45:39 1998  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_get_arg): return real boolean values
                not just numbers.

                        * gtk/gtktogglebutton.c (gtk_toggle_button_set_state): check
                                state for != 0, otherwise we get strange results.
1998-03-17 23:07:30 +00:00
Elliot Lee
3872c32d4a Doh. commit caught this accidentally. Can we put these #defines into a .h file that isnt in CVS so people can test things without killing the world? :) 1998-03-17 21:13:22 +00:00
Elliot Lee
df0b05ef2b Make Gtk compile: Fix GTK_NOTE definition for no debugging, and make gtk_use_mb defined whether or not debugging is enabled 1998-03-17 19:55:33 +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
Tim Janik
a783d668f1 changed some debugging messages to be prefixed by "Gdk:".
Tue Mar 17 16:19:47 1998  Tim Janik  <timj@gimp.org>

        * gdk/gdk.c:
                * gdk/gdkvisual.c: changed some debugging messages to be prefixed
                        by "Gdk:".

                                * gtk/gtkwidget.c (gtk_widget_real_draw): applied
                                        gtk-shige-980317-0.patch.gz to set all event fields, but modified
                                                the event.send_event field to be set to TRUE, since the event is not
                                                        really comming from the server.

                                                                * gtk/gtkwindow.c (gtk_window_init): applied gtk-ograf-980317-1.patch.gz
                                                                        which cares about an initial setting of program name and program class.

                                                                                * gdk/gdk.c (gdk_init): applied gtk-ograf-980317-0.patch.gz, which
                                                                                        strips leading pathnames from gdk_progname.
1998-03-17 18:29:07 +00:00
Tim Janik
a6e2c24b60 fixed a bug about drawing GTK_ARROW_LEFT, correction from Damon Chaplin
Tue Mar 17 12:36:35 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkstyle.c (gtk_default_draw_arrow): fixed a bug about drawing
                GTK_ARROW_LEFT, correction from Damon Chaplin <DAChaplin@email.msn.com>.
1998-03-17 15:13:17 +00:00
Miguel de Icaza
8a0d67391c Use StructureNotifyMaskMask as the mask, as this enables an application
Tue Mar 17 02:02:02 1998  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_dnd_drag_leave): Use StructureNotifyMaskMask as
	the mask, as this enables an application listening to those events
	to catch the root events.  Thanks to Maciej for pointing us in the
	right direction.
	(gdk_dnd_drag_enter): Likewise.
	(gdk_dnd_drag_leave): Likewise.
	* gdk/gdkwindow.c (gdk_window_dnd_data_set): Likewise.
1998-03-17 07:54:57 +00:00
Federico Mena
63955ec2e2 Use signed integers so that testing will not fail for windows that are
Mon Mar 16 22:31:02 1998  Federico Mena  <federico@nuclecu.unam.mx>

	* gdk/gdkwindow.c (gdk_window_xid_at): Use signed integers so that
	testing will not fail for windows that are off-screen.

	(gdk_window_xid_at_coords): Only considers visible windows.
1998-03-17 04:20:47 +00:00
Tim Janik
077b5109a4 exported gtk_spin_button_spin since it is used in testgtk, and besides
Tue Mar 17 03:56:13 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkspinbutton.h: exported gtk_spin_button_spin since it is
                used in testgtk, and besides that.

                        * gtk/testgtk.c: created a new "test" cursors, which showes different
                                types of GdkCursors and is a very simple example at using the drawing
                                        area.

                                        Tue Mar 17 03:56:13 1998  Tim Janik  <timj@gimp.org>

                                                * gtk/gtkspinbutton.h: exported gtk_spin_button_spin since it is
                                                        used in testgtk, and besides that.

                                                                * gtk/testgtk.c: created a new "test" cursors, which showes different
                                                                        types of GdkCursors and is a very simple example at using the drawing
                                                                                area.
1998-03-17 03:16:11 +00:00
GMT 1998 Tony Gale
444c9529db - new question on modal windows - new question on updating progressbars -
Mon Mar 16 18:19:31 GMT 1998 Tony Gale  <gale@gimp.org>
        * docs/gtkfaq.sgml:
            - new question on modal windows
            - new question on updating progressbars
            - update all the links to gtk.org
1998-03-16 18:27:27 +00:00
Tim Janik
600eaaea09 just fix an old entry
-timj
1998-03-16 17:47:17 +00:00
GMT 1998 Tony Gale
60c008eb99 - New subsection on colourselection from Tom Bech <tomb@ii.uib.no> - Moved
Mon Mar 16 09:15:03 GMT 1998 Tony Gale  <gale@gimp.org>

        * docs/gtk_tut.sgml:
            - New subsection on colourselection from Tom Bech <tomb@ii.uib.no>
            - Moved fileselection text to Miscallaneous Widgets section
            - Started new section on the Text widget
            - Removed Viewport, Paned, HPaned and VPaned from list of
              NO_WINDOW widgets.
1998-03-16 09:25:13 +00:00
Owen Taylor
27c086bd95 Added trailing newline, hopefully will fix the problem with esac
Mon Mar 16 01:33:36 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk-config.in: Added trailing newline, hopefully will
	  fix the problem with esac disappearing.

	* gtk/Makefile.am (test-debug): Improved test targets
	  will work with --enable-shared
    	    [From:  Raja R Harinath  <harinath@cs.umn.edu>]

  	* gtk.m4: Not all shells understand $(...).  Use `...` instead.
    	    [From:  Raja R Harinath  <harinath@cs.umn.edu>]
	- use AM_PATH_PROG instead of AM_CHECK_PROG, so the user
	  can specify programs not in their path.

	* Makefile.am: added gtk.m4 to EXTRA_DIST
1998-03-16 06:36:05 +00:00
Tim Janik
c91f2c0cfa removed GRAB_EXCLUSIVE again, just disable modal event delivery for
Sun Mar 15 23:44:10 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkwidget.h:
                * gtk/gtkmenushell.c:
                        * gtk/gtkmenu.c:
                                * gtk/gtkmain.c: removed GRAB_EXCLUSIVE again, just disable modal
                                        event delivery for insensitive children.
1998-03-15 22:49:50 +00:00
rhlabs
3f4411ed52 Added lib/glib to file list.
-Marc
1998-03-15 22:25:11 +00:00
rhlabs
f8170cbd7c Added -k to SMP make line.
-Marc
1998-03-15 22:07:10 +00:00
rhlabs
8ecd7ef5ae Add bin/* to file list.
-Marc
1998-03-15 22:01:39 +00:00
Tim Janik
0ac28d23a4 for now reverted the last change, since it broke click-select-click menus
Sun Mar 15 22:44:33 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkmenushell.c (gtk_menu_shell_button_release): for now reverted
                the last change, since it broke click-select-click menus for gimp.
1998-03-15 21:46:03 +00:00
rhlabs
ced74f4435 Added aclocal stuff.
-Marc
1998-03-15 21:29:10 +00:00
Tim Janik
16c6ee03ae removed the ugly check whether we need gtk_widget_destroy or
Sun Mar 15 20:13:42 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkmain.c (gtk_quit_destructor): removed the ugly check whether
                we need gtk_widget_destroy or gtk_object_destroy. these functions are
                        by no means allowed to act differently!

                                * gtk/gtkmisc.c (gtk_misc_set_alignment): check for _DRAWABLE instead
                                        of _VISIBLE to operate on widget->window.
                                                (gtk_misc_set_padding): likewise.

                                                        * gtk/gtkwidget.c: slightly reordered object arguments.

                                                                * gtk/gtkobject.c (gtk_object_setv):
                                                                        * gtk/gtkobject.c (gtk_object_getv):
                                                                                operator `!' has precedence over `&'.
1998-03-15 21:14:28 +00:00
Tim Janik
eac28852ed notebook fix from lars.
-timj
1998-03-15 13:40:15 +00:00
Tim Janik
f87ee7e51a added new flag GTK_EXCLUSIVE_GRAB. allow exclusive grabs.
Sun Mar 15 13:25:28 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkwidget.h: added new flag GTK_EXCLUSIVE_GRAB.
                * gtk/gtkmain.c: allow exclusive grabs.

                        * gtk/gtkmenu.c: grab exclusively.
                                * gtk/gtkmenushell.c: grab exclusively.

                                        * gtk/gtkmenushell.c: don't activate insensitive menu items when
                                                in click-selects mode.

                                                        * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): activate submenus
                                                                on popup.

                                                                        * gtk/gtkmenushell.c (gtk_menu_shell_button_release): don't take
                                                                                *additional* button presses into account.

                                                                                        * gtk/gtkmenushell.c (gtk_menu_shell_button_press): don't take
                                                                                                foreign button releases into account.


oh boy, please check this out people, hope i covered all cases.
1998-03-15 13:33:54 +00:00
Tim Janik
9ce0cb6037 changed run type of GtkTipsQuery::widget_entered to GTK_RUN_LAST, so it
Sun Mar 15 08:27:06 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtktipsquery.c (gtk_tips_query_set_labels): changed run type
                of GtkTipsQuery::widget_entered to GTK_RUN_LAST, so it can be overidden
                        by the user.
1998-03-15 08:53:59 +00:00
Tim Janik
85764dad33 small fix by Assar Westerlund <assar@sics.se>.
Sun Mar 15 08:27:06 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkwindow.c (gtk_window_configure_event): small fix by
                Assar Westerlund <assar@sics.se>.
1998-03-15 07:58:10 +00:00
Tim Janik
9addd8da2c don't cast a NULL pointer.
Sun Mar 15 08:27:06 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkmenu.c (gtk_menu_key_press): don't cast a NULL pointer.
1998-03-15 07:33:13 +00:00
Tim Janik
bfc969f697 updates -timj
updates
-timj
1998-03-15 03:56:32 +00:00
PST 1998 Shawn T. Amundson
e8a447e002 Released 0.99.7
Sat Mar 14 19:36:16 PST 1998 Shawn T. Amundson <amundson@gimp.org>

        * Released 0.99.7
1998-03-15 03:46:29 +00:00
Owen Taylor
8fa6f19aa2 added gtk.m4 to EXTRA_DIST
Sat Mar 14 20:29:34 1998  Owen Taylor  <owt1@cornell.edu>

	* Makefile.am: added gtk.m4 to EXTRA_DIST
1998-03-15 01:48:20 +00:00
Owen Taylor
85dd78b7d8 Fixed reversed conditional, so checks against supplied version.
Sat Mar 14 20:07:45 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk.m4: Fixed reversed conditional, so checks against
	  supplied version.
1998-03-15 01:15:34 +00:00
Tim Janik
bc8e40387b fixed a bug with invoking the quit handlers that could cause them to be
Sat Mar 14 10:10:46 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkmain.c (gtk_main): fixed a bug with invoking the quit handlers
                that could cause them to be removed wihout being invoked.
1998-03-14 23:47:48 +00:00
Owen Taylor
566a13a6c0 Makefile.am fixes minor fix to gdkwindow.c -owt
Makefile.am fixes
minor fix to gdkwindow.c
                                        -owt
1998-03-14 23:14:58 +00:00
PST 1998 Shawn T. Amundson
9280285954 Released 0.99.6
Sat Mar 14 14:36:40 PST 1998 Shawn T. Amundson <amundson@gimp.org>

        * Released 0.99.6

        * gdk/gtk_tut.sgml:
        * gdk/gtk_tut_it.sgml: fixed Ian Main's e-mail address
1998-03-14 22:41:34 +00:00
Owen Taylor
135cdd43a9 Some cleanups of signedness warnings
Sat Mar 14 13:26:09 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkentry.c gtk/gtktext.c: Some cleanups of signedness
          warnings

	* gtk/gtkhandlebox.h: Changed gint ... : 1 to guint ... : 1
1998-03-14 18:33:41 +00:00
Federico Mena Quintero
6e7f4a99e9 Moved the gtk_signal_connect of the specified callback into the big
1998-03-14  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtktoolbar.c (gtk_toolbar_insert_element): Moved the
	gtk_signal_connect of the specified callback into the big switch()
	for buttons.  We don't want to connect to the "clicked" signal of
	a custom widget or a space element, because it may not have one.
	(gtk_toolbar_insert_element): Extra sanity check; if the type is
	GTK_TOOLBAR_CHILD_WIDGET, then the specified widget must not be NULL.
1998-03-14 16:09:36 +00:00
Manish Singh
cfd3a51369 Fixed a bashism (a bash 2.0ism at that) in the gtk.m4 tests
-Yosh
1998-03-14 10:57:18 +00:00
Owen Taylor
ab4fed04fe Documentation about gtk-config and AM_PATH_GTK 1998-03-14 09:52:03 +00:00
Tim Janik
c86bf9bae2 refuse to allocate with a greater height than requested.
Sat Mar 14 08:29:56 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkhandlebox.c (gtk_handle_box_size_allocate): refuse to allocate
                with a greater height than requested.
                        (gtk_handle_box_remove): clean up if the child is detached.

                                * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): don't take invisible
                                        children into account.
1998-03-14 08:15:23 +00:00
Owen Taylor
b8e7ea1f11 Fixed misplaced 'else.' -owt 1998-03-14 07:29:32 +00:00
Owen Taylor
54a9eb416d Don't leave NULL's in argv.
Sat Mar 14 02:12:44 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkmain.c gdk/gdk.c: Don't leave NULL's in argv.
1998-03-14 07:16:36 +00:00
Owen Taylor
f9ad283402 Moved glibconfig.h to $pkglibdir/include. Update to libtool-1.1.
Sat Mar 14 01:36:51 1998  Owen Taylor  <owt1@cornell.edu>

Moved glibconfig.h to $pkglibdir/include. Update to libtool-1.1.
1998-03-14 06:42:39 +00:00
Tim Janik
8cde2c5c21 gpointer gtk_object_get_user_data (GtkObject *object) { if
gpointer
gtk_object_get_user_data (GtkObject *object)
{
  if (user_data_key_id)
-    gtk_object_get_data_by_id (object, user_data_key_id);
+    return gtk_object_get_data_by_id (object, user_data_key_id);

  return NULL;
}

boy oh boy, that was a *neat* one ;)
-timj
1998-03-14 06:22:28 +00:00
Owen Taylor
bc98ea9ce1 Don't resize windows when request is rejected by WM. Only use the resize
Sat Mar 14 00:03:34 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkwindow.c:
          Don't resize windows when request is rejected by WM.
	  Only use the resize count to guess whether a Configure
	  event was a rejection by the WM, or a move.

	* gdk/gdk.c gdk/gdktypes.h:
	  - Don't XDestroyWindow foreign windows (If they're a child of
	  one of our windows, reparent them to root and send them a WM
	  delete event, otherwise, just delete the GTK structure.)
	  Handle notification of their deletion properly.
          (Made foreign windows a seperate window type to do this)

	* gtk/gtkobject.c (gtk_object_set_data_full):
	  Call the DestroyNotify when replacing the object data.
1998-03-14 05:15:16 +00:00
Tim Janik
294cfcdb22 make use of *_by_id() functions for handler key.
Sat Mar 14 02:03:13 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtksignal.c: make use of *_by_id() functions for handler key.

        * gtk/gtkwidget.c: make use of *_by_id() functions for a bunch of keys.
        (gtk_widget_shutdown): new function to perform pre-destruction shutdown
        of the widget.
        (gtk_widget_unparent): call gtk_widget_set_parent_window(widget,NULL)

        * gtk/gtkobject.h:
        * gtk/gtkobject.c: GtkObject destruction is now split into an internally
        used shutdown class method and the usual GtkObject::destroy signal
        emission. this allowes for class based shutdown functionality prior
        to actuall object destruction.
        added *_by_id() counterparts for gtk_object_data_* functions, meant for
        internal use only.

        * gtk/gtkmain.c (gtk_quit_add_destroy): new function which will destroy
        a GtkObject once gtk_main() of a certain level finishes. it is save to
        destroy the object prior to that, gtk_quit_add_destroy will only destroy
        objects that are still existing.
1998-03-14 04:43:14 +00:00
Federico Mena Quintero
3ef2c37a83 Now we return a GtkVisibility value, instead of a simple boolean. Also,
1998-03-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkclist.c (gtk_clist_row_is_visible): Now we return a
	GtkVisibility value, instead of a simple boolean.  Also, changed
	all the functions that expected a boolean value to use
	"!= GTK_VISIBILITY_NONE".

	* gtk/gtkclist.h: Changed prototype for gtk_clist_row_is_visible().

	* gtk/gtkenums.h (enum): Added GtkVisibility enum.
1998-03-14 00:07:36 +00:00
rhlabs
78290be1c0 Initial commit of spec file.
-Marc <marc@redhat.com>
1998-03-13 20:20:38 +00:00
PST 1998 Shawn T. Amundson
c31eb969ba added graphics, update tutorials appropriately
Fri Mar 13 11:23:55 PST 1998 Shawn T. Amundson <amundson@gimp.org>

        * docs/gtk_tut.sgml:
        * docs/gtk_tut_it.sgml:
        * docs/gtk_tut_packbox1.gif:
        * docs/gtk_tut_packbox2.gif:
        * docs/gtk_tut_table.gif: added graphics, update tutorials
          appropriately
1998-03-13 19:26:59 +00:00
rhlabs
68fcbef5a1 Fixes to compile cleanly. I hope they are correct...
-Marc <marc@redhat.com>
1998-03-13 19:18:13 +00:00
Tim Janik
cc4dc8339d fix popup calculations (removal of FIXMEs), changes from Lars Hamann.
Fri Mar 13 18:25:07 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkcombo.c: fix popup calculations (removal
        of FIXMEs), changes from Lars Hamann.

Fri Mar 13 10:25:16 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkwidget.h:
        * gtk/gtkwidget.c: renamed gtk_widget_delete_hides to
        gtk_widget_hide_on_delete at owens request, and because the
        new name is much more descriptive.
1998-03-13 17:45:16 +00:00
GMT 1998 Tony Gale
c57f1e318e docs/gtkfaq.sgml: fix the spelling of Helge Hess's name
Fri Mar 13 17:33:56 GMT 1998 Tony Gale <gale@gimp.org>

        docs/gtkfaq.sgml: fix the spelling of Helge Hess's name
1998-03-13 17:37:18 +00:00
GMT 199 Tony Gale
bd9ddcb231 update links to documentation and remove question on whats needs to be
Fri Mar 13 09:40:17 GMT 199 Tony Gale  <gale@gimp.org>

        * docs/gtkfaq.sgml: update links to documentation and
          remove question on whats needs to be done before 1.0
1998-03-13 09:43:20 +00:00
George Lebl
6acde3e1ce Set the column width of the clists to the longest string length so that
Fri Mar 13 01:17:44 1998  George Lebl  <jirka@5z.com>

        * gtk/gtkfilesel.c: Set the column width of the clists
          to the longest string length so that the bottom scrollbar
          appears when you get some long files in the list
1998-03-13 09:19:03 +00:00
Owen Taylor
3832600822 Removed gtk+-xconfig added gtk-config 1998-03-13 01:52:51 +00:00
Tim Janik
fa107ded2a fresh news today ;) -timj
fresh news today ;)
-timj
1998-03-13 01:34:22 +00:00
Federico Mena Quintero
8eb77dfea2 fix one missing quote.
1998-03-12  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* docs/gtk_tut.sgml: fix one missing quote.
1998-03-12 23:45:37 +00:00
Owen Taylor
9c8ed97e83 logged change. 1998-03-12 23:27:18 +00:00
Owen Taylor
c8e5c809ed Added a new mechanism for GTK-dependent programs to find out about the
Thu Mar 12 18:01:03 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk.m4 gtk-config.in Makefile.am configure.in:
	  Added a new mechanism for GTK-dependent programs to
	  find out about the installed GTK. (Does not remove
	  any current functionality)

	* gtk+-xconfig.in: Was no longer used for anything.
1998-03-12 23:23:43 +00:00
Tim Janik
9b4919dcb8 yeah, yeah, i broke this file with my last commit unintentionally.
-timj
1998-03-12 22:13:54 +00:00
Tim Janik
96a7435911 return TRUE for GtkWidget::delete_event to avoid destruction of our float
Thu Mar 12 20:17:47 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkhandlebox.c (gtk_handle_box_delete_float): return TRUE for
        GtkWidget::delete_event to avoid destruction of our float window.

        * gtk/gtkmain.c (gtk_main_iteration_do): GDK_DELETE will destroy a
        widget if the last handler returned FALSE or there was none connected.

        * gtk/testgtk.c: adapted all delete_event/destroy case that were affected.

        * gtk/gtkwidget.c (gtk_widget_delete_hides): new function that will hide
        a widget and return TRUE to avoid window deletion if
        connected to GtkWIdget::delete_event.
1998-03-12 21:54:39 +00:00
PST 1998 Shawn T. Amundson
7c698ad46c Changed name of GTK to the GIMP Toolkit
Thu Mar 12 11:51:33 PST 1998 Shawn T. Amundson <amundson@gimp.org>

        * docs/gtk.texi: Changed name of GTK to the GIMP Toolkit
1998-03-12 19:53:51 +00:00
Russell Nelson
9a9070c26d new_pixmap wasn't using its filename argument. Add descriptions
Wed Mar 11 22:52:57 1998  Russell Nelson <nelson@crynwr.com>

	* gtk/gtktest.c: new_pixmap wasn't using its filename argument.
	* docs/gtk.texi: Add descriptions
1998-03-12 18:57:46 +00:00
Elliot Lee
aebd3d2df2 Make gcc give printf format warnings for g_string_sprintf() and other
Make gcc give printf format warnings for g_string_sprintf() and other
vararg printf functions.
1998-03-12 18:28:49 +00:00
PST 1998 Shawn T. Amundson
affaf4f9d2 I just remembered this commit failed before because
of problems with the cvs server... connection timed out.

Wed Mar 11 14:36:48 PST 1998 Shawn T. Amundson <amundson@gimp.org>

        * gtk/docs/: added tutorial, changed some files around to
          make more sense.
1998-03-12 18:23:11 +00:00
Tim Janik
4f3495f955 changed handler tags to be of type guint, reflecting the internal tag
Thu Mar 12 10:49:38 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkmain.h:
        * gtk/gtkmain.c: changed handler tags to be of type guint, reflecting
        the internal tag handling.

        * gtk/gtkcurve.h: macro fixups.
1998-03-12 18:00:45 +00:00
Tim Janik
d19d3c5dca fetch the inintial value of attributes.event_mask from
Thu Mar 12 08:55:34 1998  Tim Janik  <timj@gimp.org>

        * gtkitem.c:
        * gtktree.c:
        * gtklist.c: fetch the inintial value of attributes.event_mask from
        gtk_widget_get_events (widget) (pointed out by Damon Chaplin
        <DAChaplin@email.msn.com>).
1998-03-12 09:14:03 +00:00
Tim Janik
a8afd462c0 applied gtk-shige-980311-0.patch.gz, which removes the erronerous
Thu Mar 12 07:43:33 1998  Tim Janik  <timj@gimp.org>

        * gdk/gdk.h:
        * gdk/gdkvisual.c: applied gtk-shige-980311-0.patch.gz, which removes
        the erronerous gdk_query_visuals() function in favour of
        gdk_list_visuals() which does a correct job.

        * gtk/gtkcontainer.h: applied gtk-draco-980311-0.patch.gz which fixes
        a class cast check.

        * gtk/gtkspinbutton.c: applied gtk-hamann_jeske-980312-0.patch.gz about
        '+' sign acceptance.

        * gtk/gtknotebook.c: applied gtk-hamann_jeske-980311-1.patch.gz which
        cares about delayed tab label creation.
1998-03-12 07:28:41 +00:00
Elliot Lee
093dfedf74 Bug fixes/improvements to the motion event eating for Dnd 1998-03-11 23:12:25 +00:00
Owen Taylor
48a15b7349 Various minor cleanups related to -W
Tue Mar 10 23:02:42 1998  Owen Taylor  <owt1@cornell.edu>

	* gdk/gdkdnd.c gtk/gtkclist.c gtk/gtksignal.c gtk/testgtk.c:
	  Various minor cleanups related to -W
1998-03-11 22:49:40 +00:00
rhlabs
59436967d5 <raster@redhat.com>
<raster@redhat.com>

fixed motiong drag to remove lag - ie no lagging of icons behind mouse when
doing DND. :)
1998-03-11 22:35:32 +00:00
rhlabs
c5327ecc31 <raster@redhat.com>
<raster@redhat.com>

added bolleean to gdk_window_xid_at_coords for excluding children fo
excluded windows
1998-03-11 22:24:54 +00:00
Elliot Lee
617a879dfe I did a topdir/ChangeLog entry, why should I put anything in here? :) 1998-03-11 21:55:06 +00:00
rhlabs
b7a6cd6750 <raster@redhat.com>
<raster@redhat.com>

final fixes to STUPId comparison of types of loop end - i missed the
unsigned bit! i will NEVEr use unsigned ints ever again!
1998-03-11 21:44:22 +00:00
Jay Painter
ffc1084029 Fixed file selector 1998-03-11 07:59:46 +00:00
Tim Janik
5724801800 applied gtk-hamann_jeske-980311-0.patch.gz.
Wed Mar 11 07:10:11 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtkspinbutton.h:
        * gtk/gtkspinbutton.c: applied gtk-hamann_jeske-980311-0.patch.gz.
1998-03-11 06:11:52 +00:00
Tim Janik
309d7377e7 applied gtk-bolliet-980310-0.patch.gz which adds more checks and
Wed Mar 11 04:35:06 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtklist.c:
        * gtk/gtktree.h:
        * gtk/gtktree.c:
        * gtk/gtktreeitem.h:
        * gtk/gtktreeitem.c: applied gtk-bolliet-980310-0.patch.gz which adds
        more checks and implements gtk_tree_clear_items. made a bunch of style
        and indentation fixes.
1998-03-11 04:05:15 +00:00
Tim Janik
2ff460a6c8 code and structure clean ups. fixed the tooltips flickering bug.
Wed Mar 11 03:35:17 1998  Tim Janik  <timj@gimp.org>

        * gtk/gtktooltips.h:
        * gtk/gtktooltips.c: code and structure clean ups. fixed the
        tooltips flickering bug.
1998-03-11 02:41:15 +00:00
Owen Taylor
3573f8b5f3 Chain to the parent finalize handler. (from: "Mattias.Gronlund"
Tue Mar 10 19:55:13 1998  Owen Taylor  <owt1@cornell.edu>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_finalize):
	  Chain to the parent finalize handler.
          (from: "Mattias.Gronlund" <Mattias.Gronlund@sa.erisoft.se>)
1998-03-11 00:59:33 +00:00
rhlabs
e583ab045f file theme_main.c was initially added on branch themes. 1998-03-10 23:54:34 +00:00
rhlabs
3d7c2d6634 file theme_led_on2.xpm was initially added on branch themes. 1998-03-10 23:54:33 +00:00
rhlabs
47933b73db file theme_led_on1.xpm was initially added on branch themes. 1998-03-10 23:54:32 +00:00
rhlabs
1432078569 file theme_led_off2.xpm was initially added on branch themes. 1998-03-10 23:54:31 +00:00
rhlabs
6cfdaaa740 file theme_led_off1.xpm was initially added on branch themes. 1998-03-10 23:54:30 +00:00
rhlabs
d94b21a8df file theme_button2.xpm was initially added on branch themes. 1998-03-10 23:54:29 +00:00
rhlabs
cfda5f0035 file theme_button.xpm was initially added on branch themes. 1998-03-10 23:54:28 +00:00
rhlabs
5d6fe2d05f file theme_button.c was initially added on branch themes. 1998-03-10 23:54:26 +00:00
rhlabs
fb66cb05df file theme_btn3.xpm was initially added on branch themes. 1998-03-10 23:54:25 +00:00
rhlabs
5d5bbd1a21 file theme_btn2.xpm was initially added on branch themes. 1998-03-10 23:54:24 +00:00
rhlabs
c45ab2b2d6 file theme_btn1.xpm was initially added on branch themes. 1998-03-10 23:54:23 +00:00
rhlabs
4a4f0aedf3 file theme2_main.c was initially added on branch themes. 1998-03-10 23:54:22 +00:00
rhlabs
db51126e3b file theme2_button.c was initially added on branch themes. 1998-03-10 23:54:21 +00:00
rhlabs
2737494599 file THEMES.README was initially added on branch themes. 1998-03-10 23:54:14 +00:00
rhlabs
e9e7e4c86b file COMPILE_THEME2 was initially added on branch themes. 1998-03-10 23:54:12 +00:00
rhlabs
7f17ced74b file COMPILE_THEME was initially added on branch themes. 1998-03-10 23:54:11 +00:00
Elliot Lee
8f8b0f68ff Add gtk_entry_set_max_length() 1998-03-10 23:32:36 +00:00
Tim Janik
f9e5e12bcc removed a trailing GTK_TYPE_WIDGET for the need_resize signal.
-timj
quartic: this didn't show up in release_1_0 for some reason
1998-03-10 23:04:26 +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
Elliot Lee
120df3b8b7 DnD bugfixes (hopefully :). Rasters code is still buggy, methinks - try the dnd in testgtk 1998-03-10 21:57:05 +00:00
Federico Mena Quintero
fabfc17d93 Replace GXor by GXxor. Seems to have been a typo.
1998-03-10  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdkgc.c (gdk_gc_set_function): Replace GXor by GXxor.  Seems
	to have been a typo.
1998-03-10 19:13:50 +00:00
rhlabs
4db2561dd5 <raster@redhat.com>
<raster@redhat.com>

fixed minor buglets in window tree walker.
1998-03-10 06:14:59 +00:00
612 changed files with 320874 additions and 98740 deletions

View File

@@ -1,6 +1,7 @@
*.lo
config.log
config.h
config.h.in
libtool
config.status
stamp-h
@@ -8,6 +9,11 @@ Makefile
Makefile.in
aclocal.m4
configure
gtk+.xconfig
gtk-config
config.cache
ABOUT-NLS
intl
stamp-h.in
gtk+.spec
gdk.pc
gtk+.pc

35
AUTHORS
View File

@@ -1,3 +1,32 @@
Peter Mattis (petm@xcf.berkeley.edu)
Spencer Kimball (spencer@xcf.berkeley.edu)
Josh MacDonald (jmacd@xcf.berkeley.edu)
Original Authors
----------------
Peter Mattis <petm@xcf.berkeley.edu>
Spencer Kimball <spencer@xcf.berkeley.edu>
Josh MacDonald <jmacd@xcf.berkeley.edu>
Please do not mail the original authors asking questions about this
version of GTK+.
The GTK+ Team (in alphabetical order)
-------------------------------------
Shawn T. Amundson <amundson@gtk.org>
Jerome Bolliet <bolliet@gtk.org>
Damon Chaplin <damon@gtk.org>
Tony Gale <gale@gtk.org>
Jeff Garzik <jgarzik@gtk.org>
Lars Hamann <lars@gtk.org>
Raja R Harinath <harinath@gtk.org>
Carsten Haitzler <raster@gtk.org>
Tim Janik <timj@gtk.org>
Stefan Jeske <stefan@gtk.org>
Elliot Lee <sopwith@gtk.org>
Raph Levien <raph@gtk.org>
Ian Main <imain@gtk.org>
Federico Mena <quartic@gtk.org>
Paolo Molaro <lupus@gtk.org>
Jay Painter <jpaint@gtk.org>
Manish Singh <manish@gtk.org>
Owen Taylor <otaylor@gtk.org>
There are many others who have contributed patches; we thank them,
GTK+ is much better because of them.

View File

@@ -2,7 +2,7 @@
Version 2, June 1991
Copyright (C) 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -436,7 +436,7 @@ DAMAGES.
END OF TERMS AND CONDITIONS
Appendix: How to Apply These Terms to Your New Libraries
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
@@ -463,8 +463,9 @@ convey the exclusion of warranty; and each file should have at least the
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307 USA.
Also add information on how to contact you by electronic and paper mail.

15483
ChangeLog

File diff suppressed because it is too large Load Diff

4961
ChangeLog.pre-1-0 Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

47
HACKING
View File

@@ -1,30 +1,35 @@
If you want to hack on the Gtk+ project, it will make you life easier
to have the following packages installed:
- GNU autoconf 2.12
- GNU automake 1.2d
Available in ftp://ftp.cygnus.com/pub/tromey
- GNU libtool 1.0h
Available in ftp://alpha.gnu.org/gnu/
- GNU autoconf 2.13
- GNU automake 1.4
(Beta releases are at ftp://ftp.cygnus.com/pub/tromey)
- GNU libtool 1.2d
- indent (GNU indent 1.9.1 is known good)
- GNU gettext 10.35
Available in ftp://alpha.gnu.org/gnu
These should be available by ftp from prep.ai.mit.edu or any of the
These should be available by ftp from ftp.gnu.org or any of the
fine GNU mirrors. Beta software can be found at alpha.gnu.org.
If you are accessing gtk+ via CVS, then you will need to take several
steps to get it to compile. You can do all these steps at once
by running:
In order to get CVS gtk+ installed on your system, you need to have
the most recent CVS version of glib installed as well.
The installation process of glib is similar to that of gtk+, but
needs to be fulfilled prior to installation of gtk+.
To compile a CVS version of gtk+ on your system, you will need to take
several steps to setup the tree for compilation. You can do all these
steps at once by running:
cvsroot/gtk+# ./autogen.sh
Basically this does the following for you:
cvsroot/gtk+# aclocal; automake; autoconf
cvsroot/gtk+/glib# aclocal; automake; autoconf
The above commands create the "configure" script. Now you
can run the configure script in cvsroot/gtk+ to create all
the Makefiles. You only need to call "configure" in cvsroot/gtk+
as the one in glib will be invoked automatically.
the Makefiles.
Before running autogen.sh or configure, make sure you have libtool
in your path.
@@ -34,17 +39,17 @@ options like --prefix=/usr to configure you can give those options
to autogen.sh and they will be passed on to configure.
If at all possible, please use CVS to get the latest development version of
gtk+. You can do the following to get gtk+ from cvs:
gtk+ and glib. You can do the following to get glib and gtk+ from cvs:
$ export CVSROOT=':pserver:anonymous@cvs.gimp.org:/debian/home/gnomecvs'
$ export CVSROOT=':pserver:anonymous@cvs.gnome.org:/cvs/gnome'
$ cvs login
(there is no password, just hit return)
$ cvs -z9 checkout gtk+
$ cvs -z3 checkout glib
$ cvs -z3 checkout gtk+
For information about submitting patches and commiting changes
to CVS, see the README and README.cvs-commits files. In particular,
don't, under any circumstances, commit anything to CVS before
reading and understanding README.cvs-commmits.
Please submit patches to the gtk-list@redhat.com mailing list (you must
subscribe before you post, e-mail gtk-list-request@redhat.com with a
subject of "subscribe"). All kinds of contributions are accepted.
Patches that you wish to go into the distribution should also be uploaded
to ftp://ftp.gimp.org/incoming. Follow the rules there for naming your
patches.

220
INSTALL
View File

@@ -1,36 +1,218 @@
The 'configure' script can be given a number of options to
enable and disable various features. For a complete list,
type:
Prerequisites
=============
GTK+ requires the GLIB library, available at the same location as
you got this package.
Simple install procedure
========================
% gzip -cd gtk+-1.2.10.tar.gz | tar xvf - # unpack the sources
% cd gtk+-1.2.10 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
[ Become root if necessary ]
% rm -rf /install-prefix/include/gtk /install-prefix/include/gdk
% make install # install GTK
Special note for GTK+-1.2.9
===========================
Between GTK+-1.2.8 and GTK+-1.2.9, the include files for GTK+
have been moved to $(includedir)/gtk-1-2/ to allow parallel installations
of GTK+-1.2 and GTK+-2.0 to work correctly. If you are installing
on top of an old installation of GTK+, you should remove the directories:
$(includedir)/gtk/
$(includedir)/gdk/
Before running 'make install'
The Nitty-Gritty
================
The 'configure' script can be given a number of options to enable
and disable various features. For a complete list, type:
./configure --help
A few of the more important ones:
* --prefix=PREFIX install architecture-independent files in PREFIX
[ Defaults to /usr/local ]
* --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[ Defaults to the value given to --prefix ]
* --with-xinput=[no/gxi/xfree] support XInput [default=no]
The --with-xinput flag specifies whether to compile with support
for the XInput extension (mainly used for graphics tablets), and
which form of support to use:
no : no support
xfree : Use special features in the Wacom drivers in XFree86 3.3.1
and later.
gxi : Use generic XInput support (not recommended)
The XInput support is not known to work with any other XServer than
XFree86. For more information about XInput, see:
http://www.gtk.org/~otaylor/xinput/howto/index.html
http://www.lepied.com/xfree86/
* --disable-nls do not use Native Language Support
If this flag is not specified, GTK+ will try to find
and use the gettext() set of functions to provide translations
of the strings in the standard dialogs into the
user's native language.
* --enable-xim support XIM [default=yes]
Specifying --disable-xim will disable support for entering
internationalized text using X Input Methods. This will give
some slight savings in speed and memory use and might be necessary
internationalized text using X Input Methods. This will give some
slight savings in speed and memory use and might be necessary
with older versions of X.
* --with-locale=LOCALE locale name you want to use
* --with-locale=LOCALE locale name you want to use
The --with-locale options is used to determine if your operating
system has support for the locale you will be using. If not, X's built
in locale support will be used.
system has support for the locale you will be using. If not, X's
built in locale support will be used.
Because of bugs in autoconf, it is necessary to specify this option
even if your LANG environment variable is correctly set.
Because of bugs in autoconf, it is necessary to specify this
option even if your LANG environment variable is correctly set.
This option does not determine which locale GTK will use at
runtime. That will be determined from the usual environment variables.
If you will be using multiple locales with GTK, specify the one
for which your operating system has the worst support for the
--with-locale option.
runtime. That will be determined from the usual environment
variables. If you will be using multiple locales with GTK,
specify the one for which your operating system has the worst
support for the --with-locale option.
* --with-native-locale=[yes/no] Use native locale support
If set, GTK+ will use your C library's native locale support,
instead of making conversions between wide characters and
multibyte-strings by going through Xlib's property-conversion
functions. Specifying this flag can speed up some operations
involving text by between 5 and 20 times.
This defaults to no, because it has not extensively been
tested for portability, but should be safe on most modern
systems.
Note for using XIM support with kinput2
---------------------------------------
Options can be given to the compiler and linker by setting
environment variables before running configure. A few of the more
important ones:
There is a bug in older versions of kinput2 that will cause
GTK to hang when destroying a text entry. The latest versions
of kinput is available from:
CC : The C compiler to use
CPPFLAGS : Flags for the C preprocesser such as -I and -D
CFLAGS : C compiler flags
The most important use of this is to set the
optimization/debugging flags. For instance, to compile with no
debugging information at all, run configure as:
CFLAGS=-O2 ./configure # Bourne compatible shells (sh/bash/zsh)
or,
setenv CFLAGS -O2 ; ./configure # csh and variants
Native-Language Support and gettext()
=====================================
To provide native-language support (NLS) GTK+ uses the
gettext() set of functions. These functions are found
in the C library on many systems, such as the Solaris
C library and the GNU C Library, version 2.
If your C library does not provide the necessary functionality,
you may wish to install the GNU gettext package. You'll
need version 0.10.35 or better. Version 0.10.35 is
available from ftp://alpha.gnu.org/pub/gnu
Generally, GTK+ will properly detect what is installed
on your system and enable or disable NLS as appropriate.
However, in rare cases, it may be necessary to disable
NLS manually to get GTK+ to compile. You can do this
by specifying the --disable-nls flag when configuring
GTK+.
Using an uninstalled copy of GLIB [ Unsupported ]
=================================================
You can compile GTK+ against a copy of GLIB that you have not
yet installed. To do this, give the --with-glib=DIR options
to ./configure. For instance:
./configure --with-glib=../glib-1.2.10
This, however, will not work if you built GLIB with different
source and build directories.
It is recommended that you install GLIB before compiling
GTK+. The --with-glib option is not regularly tested
and may not function correctly. In addition,
inter-library dependencies won't be generated when
using --with-glib=.
Installation directories
========================
The location of the installed files is determined by the --prefix
and --exec-prefix options given to configure. There are also more
detailed flags to control individual directories. However, the
use of these flags is not tested.
One particular detail to note, is that the architecture-dependent
include file glibconfig.h is installed in:
$exec_pref/lib/glib/include/
if you have a version in $prefix/include, this is out of date
and should be deleted.
A shell script gtk-config is created during the configure
process, and installed in the bin/ directory
($exec_prefix/bin). This is used to determine the location of GTK
when building applications. If you move GTK after installation,
it will be necessary to edit this file.
For complete details, see the file docs/gtk-config.txt
Notes for using XIM support for Japanese input
==============================================
* There is a bug in older versions of kinput2 that will cause GTK+
to hang when destroying a text entry. The latest versions of
kinput is available from:
ftp://ftp.sra.co.jp/pub/x11/kinput2
* The locale information file for the ja_JP EUC locale
distributed with some recent versions of X11 specifies to use the
C library multibyte functions. Unless your C library has support
for Japanese locales, this is incorrect, and will cause problems
for GTK's internationalization.
(In particular, this occurs with GNU libc 2.0 in which
the multibyte functions always translate to and from UTF-8; but
the problem may occur for other C libraries, and other operating
systems as well.)
To fix this, change the line:
use_stdc_env True
to
use_stdc_env False
in the file /usr/X11R6/lib/X11/locale/ja_JP/XLC_LOCALE.

218
INSTALL.in Normal file
View File

@@ -0,0 +1,218 @@
Prerequisites
=============
GTK+ requires the GLIB library, available at the same location as
you got this package.
Simple install procedure
========================
% gzip -cd gtk+-@GTK_VERSION@.tar.gz | tar xvf - # unpack the sources
% cd gtk+-@GTK_VERSION@ # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
[ Become root if necessary ]
% rm -rf /install-prefix/include/gtk /install-prefix/include/gdk
% make install # install GTK
Special note for GTK+-1.2.9
===========================
Between GTK+-1.2.8 and GTK+-1.2.9, the include files for GTK+
have been moved to $(includedir)/gtk-1-2/ to allow parallel installations
of GTK+-1.2 and GTK+-2.0 to work correctly. If you are installing
on top of an old installation of GTK+, you should remove the directories:
$(includedir)/gtk/
$(includedir)/gdk/
Before running 'make install'
The Nitty-Gritty
================
The 'configure' script can be given a number of options to enable
and disable various features. For a complete list, type:
./configure --help
A few of the more important ones:
* --prefix=PREFIX install architecture-independent files in PREFIX
[ Defaults to /usr/local ]
* --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[ Defaults to the value given to --prefix ]
* --with-xinput=[no/gxi/xfree] support XInput [default=no]
The --with-xinput flag specifies whether to compile with support
for the XInput extension (mainly used for graphics tablets), and
which form of support to use:
no : no support
xfree : Use special features in the Wacom drivers in XFree86 3.3.1
and later.
gxi : Use generic XInput support (not recommended)
The XInput support is not known to work with any other XServer than
XFree86. For more information about XInput, see:
http://www.gtk.org/~otaylor/xinput/howto/index.html
http://www.lepied.com/xfree86/
* --disable-nls do not use Native Language Support
If this flag is not specified, GTK+ will try to find
and use the gettext() set of functions to provide translations
of the strings in the standard dialogs into the
user's native language.
* --enable-xim support XIM [default=yes]
Specifying --disable-xim will disable support for entering
internationalized text using X Input Methods. This will give some
slight savings in speed and memory use and might be necessary
with older versions of X.
* --with-locale=LOCALE locale name you want to use
The --with-locale options is used to determine if your operating
system has support for the locale you will be using. If not, X's
built in locale support will be used.
Because of bugs in autoconf, it is necessary to specify this
option even if your LANG environment variable is correctly set.
This option does not determine which locale GTK will use at
runtime. That will be determined from the usual environment
variables. If you will be using multiple locales with GTK,
specify the one for which your operating system has the worst
support for the --with-locale option.
* --with-native-locale=[yes/no] Use native locale support
If set, GTK+ will use your C library's native locale support,
instead of making conversions between wide characters and
multibyte-strings by going through Xlib's property-conversion
functions. Specifying this flag can speed up some operations
involving text by between 5 and 20 times.
This defaults to no, because it has not extensively been
tested for portability, but should be safe on most modern
systems.
Options can be given to the compiler and linker by setting
environment variables before running configure. A few of the more
important ones:
CC : The C compiler to use
CPPFLAGS : Flags for the C preprocesser such as -I and -D
CFLAGS : C compiler flags
The most important use of this is to set the
optimization/debugging flags. For instance, to compile with no
debugging information at all, run configure as:
CFLAGS=-O2 ./configure # Bourne compatible shells (sh/bash/zsh)
or,
setenv CFLAGS -O2 ; ./configure # csh and variants
Native-Language Support and gettext()
=====================================
To provide native-language support (NLS) GTK+ uses the
gettext() set of functions. These functions are found
in the C library on many systems, such as the Solaris
C library and the GNU C Library, version 2.
If your C library does not provide the necessary functionality,
you may wish to install the GNU gettext package. You'll
need version 0.10.35 or better. Version 0.10.35 is
available from ftp://alpha.gnu.org/pub/gnu
Generally, GTK+ will properly detect what is installed
on your system and enable or disable NLS as appropriate.
However, in rare cases, it may be necessary to disable
NLS manually to get GTK+ to compile. You can do this
by specifying the --disable-nls flag when configuring
GTK+.
Using an uninstalled copy of GLIB [ Unsupported ]
=================================================
You can compile GTK+ against a copy of GLIB that you have not
yet installed. To do this, give the --with-glib=DIR options
to ./configure. For instance:
./configure --with-glib=../glib-@GTK_VERSION@
This, however, will not work if you built GLIB with different
source and build directories.
It is recommended that you install GLIB before compiling
GTK+. The --with-glib option is not regularly tested
and may not function correctly. In addition,
inter-library dependencies won't be generated when
using --with-glib=.
Installation directories
========================
The location of the installed files is determined by the --prefix
and --exec-prefix options given to configure. There are also more
detailed flags to control individual directories. However, the
use of these flags is not tested.
One particular detail to note, is that the architecture-dependent
include file glibconfig.h is installed in:
$exec_pref/lib/glib/include/
if you have a version in $prefix/include, this is out of date
and should be deleted.
A shell script gtk-config is created during the configure
process, and installed in the bin/ directory
($exec_prefix/bin). This is used to determine the location of GTK
when building applications. If you move GTK after installation,
it will be necessary to edit this file.
For complete details, see the file docs/gtk-config.txt
Notes for using XIM support for Japanese input
==============================================
* There is a bug in older versions of kinput2 that will cause GTK+
to hang when destroying a text entry. The latest versions of
kinput is available from:
ftp://ftp.sra.co.jp/pub/x11/kinput2
* The locale information file for the ja_JP EUC locale
distributed with some recent versions of X11 specifies to use the
C library multibyte functions. Unless your C library has support
for Japanese locales, this is incorrect, and will cause problems
for GTK's internationalization.
(In particular, this occurs with GNU libc 2.0 in which
the multibyte functions always translate to and from UTF-8; but
the problem may occur for other C libraries, and other operating
systems as well.)
To fix this, change the line:
use_stdc_env True
to
use_stdc_env False
in the file /usr/X11R6/lib/X11/locale/ja_JP/XLC_LOCALE.

1
MAINTAINERS Normal file
View File

@@ -0,0 +1 @@
Email: gtk-bugs@gimp.org

View File

@@ -1,14 +1,122 @@
## Process this file with automake to produce Makefile.in
## Makefile.am for GTK+
SRC_SUBDIRS = glib gdk gtk
SUBDIRS = $(SRC_SUBDIRS) docs
SRC_SUBDIRS = gdk gtk
SUBDIRS = po $(SRC_SUBDIRS) docs
bin_SCRIPTS = gtk-config
# require automake 1.4
AUTOMAKE_OPTIONS = 1.4
EXTRA_DIST = \
gtk+.prj \
HACKING \
gtk+.spec.in \
gtk.m4 \
makecopyright \
TODO
TODO \
NEWS.pre-1-0 \
ChangeLog.pre-1-0 \
README.cvs-commits \
intl/libgettext.h \
intl/po2tbl.sed.in \
examples/aspectframe/Makefile \
examples/aspectframe/aspectframe.c \
examples/Makefile \
examples/README.1ST \
examples/extract.awk \
examples/extract.sh \
examples/base/Makefile \
examples/base/base.c \
examples/buttons/Makefile \
examples/buttons/buttons.c \
examples/buttons/info.xpm \
examples/calendar/Makefile \
examples/calendar/calendar.c \
examples/clist/Makefile \
examples/clist/clist.c \
examples/entry/Makefile \
examples/entry/entry.c \
examples/eventbox/Makefile \
examples/eventbox/eventbox.c \
examples/filesel/Makefile \
examples/filesel/filesel.c \
examples/gtkdial/Makefile \
examples/gtkdial/dial_test.c \
examples/gtkdial/gtkdial.c \
examples/gtkdial/gtkdial.h \
examples/helloworld/Makefile \
examples/helloworld/helloworld.c \
examples/helloworld2/Makefile \
examples/helloworld2/helloworld2.c \
examples/list/Makefile \
examples/list/list.c \
examples/menu/Makefile \
examples/menu/menu.c \
examples/menu/itemfactory.c \
examples/notebook/Makefile \
examples/notebook/notebook.c \
examples/packbox/Makefile \
examples/packbox/packbox.c \
examples/packer/Makefile \
examples/packer/pack.c \
examples/paned/Makefile \
examples/paned/paned.c \
examples/pixmap/Makefile \
examples/pixmap/pixmap.c \
examples/progressbar/Makefile \
examples/progressbar/progressbar.c \
examples/radiobuttons/Makefile \
examples/radiobuttons/radiobuttons.c \
examples/rangewidgets/Makefile \
examples/rangewidgets/rangewidgets.c \
examples/rulers/Makefile \
examples/rulers/rulers.c \
examples/scribble-simple/Makefile \
examples/scribble-simple/scribble-simple.c \
examples/scrolledwin/Makefile \
examples/scrolledwin/scrolledwin.c \
examples/selection/Makefile \
examples/selection/gettargets.c \
examples/selection/setselection.c \
examples/statusbar/Makefile \
examples/statusbar/statusbar.c \
examples/table/Makefile \
examples/table/table.c \
examples/text/Makefile \
examples/text/text.c \
examples/tictactoe/Makefile \
examples/tictactoe/tictactoe.c \
examples/tictactoe/tictactoe.h \
examples/tictactoe/ttt_test.c \
examples/tree/Makefile \
examples/tree/tree.c \
examples/wheelbarrow/Makefile \
examples/wheelbarrow/wheelbarrow.c \
examples/fixed/fixed.c \
examples/fixed/Makefile \
examples/frame/frame.c \
examples/frame/Makefile \
examples/spinbutton/spinbutton.c \
examples/spinbutton/Makefile \
examples/find-examples.sh \
gdk.pc.in gtk+.pc.in
.PHONY: files populate checkin release
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA= gdk.pc gtk+.pc
dist-hook: gtk+.spec
if test -e $(srcdir)/INSTALL.in && test -e $(srcdir)/README.in ; then \
CONFIG_FILES="INSTALL:$(srcdir)/INSTALL.in README:$(srcdir)/README.in" \
CONFIG_HEADERS= \
$(SHELL) config.status \
&& cp INSTALL README $(distdir) ; \
fi \
&& cp gtk+.spec $(distdir)
m4datadir = $(datadir)/aclocal
m4data_DATA = gtk.m4
.PHONY: files release sanity snapshot
files:
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
@@ -21,13 +129,13 @@ files:
done; \
done
populate:
@echo "populating project"
@files=`$(MAKE) files | grep -v "make\[[1-9]\]"`; prcs populate -d gtk+.prj $$files
checkin: populate
@echo "checking in project"
@prcs checkin
release:
rm -rf .deps */.deps
$(MAKE) distcheck
sanity:
./sanity_check $(VERSION)
snapshot:
$(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`

View File

@@ -1,353 +0,0 @@
# Makefile.in generated automatically by automake 1.2c from Makefile.am
# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = /bin/sh
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = true
PRE_INSTALL = true
POST_INSTALL = true
NORMAL_UNINSTALL = true
PRE_UNINSTALL = true
POST_UNINSTALL = true
host_alias = @host_alias@
host_triplet = @host@
CC = @CC@
CPP = @CPP@
LD = @LD@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NM = @NM@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
VERSION = @VERSION@
x_cflags = @x_cflags@
x_includes = @x_includes@
x_ldflags = @x_ldflags@
x_libs = @x_libs@
xinput_progs = @xinput_progs@
SRC_SUBDIRS = glib gdk gtk
SUBDIRS = $(SRC_SUBDIRS) docs
EXTRA_DIST = gtk+.prj makecopyright TODO REFCOUNTING BUGS
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = gtk+.xconfig
DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \
Makefile.in NEWS TODO acconfig.h aclocal.m4 config.guess config.h.in \
config.sub configure configure.in gtk+.xconfig.in install-sh ltconfig \
ltmain.sh missing mkinstalldirs stamp-h.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP = --best
default: all
.SUFFIXES:
$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
$(ACLOCAL_M4): @MAINT@ configure.in
cd $(srcdir) && $(ACLOCAL)
config.status: $(srcdir)/configure
$(SHELL) ./config.status --recheck
$(srcdir)/configure: @MAINT@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
cd $(srcdir) && $(AUTOCONF)
config.h: stamp-h
@:
stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES= CONFIG_HEADERS=config.h \
$(SHELL) ./config.status
@echo timestamp > stamp-h
$(srcdir)/config.h.in: @MAINT@$(srcdir)/stamp-h.in
$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
cd $(top_srcdir) && $(AUTOHEADER)
@echo timestamp > $(srcdir)/stamp-h.in
mostlyclean-hdr:
clean-hdr:
distclean-hdr:
-rm -f config.h
maintainer-clean-hdr:
gtk+.xconfig: $(top_builddir)/config.status gtk+.xconfig.in
cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
@SET_MAKE@
all-recursive install-data-recursive install-exec-recursive \
installdirs-recursive install-recursive uninstall-recursive \
check-recursive installcheck-recursive info-recursive dvi-recursive:
@set fnord $(MAKEFLAGS); amf=$$2; \
for subdir in $(SUBDIRS); do \
target=`echo $@ | sed s/-recursive//`; \
echo "Making $$target in $$subdir"; \
(cd $$subdir && $(MAKE) $$target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $(MAKEFLAGS); amf=$$2; \
rev=''; for subdir in $(SUBDIRS); do rev="$$subdir $$rev"; done; \
for subdir in $$rev; do \
target=`echo $@ | sed s/-recursive//`; \
echo "Making $$target in $$subdir"; \
(cd $$subdir && $(MAKE) $$target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
(cd $$subdir && $(MAKE) tags); \
done
tags: TAGS
ID: $(HEADERS) $(SOURCES)
here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS)
TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES)
tags=; \
here=`pwd`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
done; \
test -z "$(ETAGS_ARGS)config.h.in$(SOURCES)$(HEADERS)$$tags" \
|| (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $(SOURCES) $(HEADERS) -o $$here/TAGS)
mostlyclean-tags:
clean-tags:
distclean-tags:
-rm -f TAGS ID
maintainer-clean-tags:
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
-rm -rf $(distdir)
GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz
mkdir $(distdir)/=build
mkdir $(distdir)/=inst
dc_install_base=`cd $(distdir)/=inst && pwd`; \
cd $(distdir)/=build \
&& ../configure --srcdir=.. --prefix=$$dc_install_base \
&& $(MAKE) \
&& $(MAKE) dvi \
&& $(MAKE) check \
&& $(MAKE) install \
&& $(MAKE) installcheck \
&& $(MAKE) dist
-rm -rf $(distdir)
@echo "========================"; \
echo "$(distdir).tar.gz is ready for distribution"; \
echo "========================"
dist: distdir
-chmod -R a+r $(distdir)
GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir)
-rm -rf $(distdir)
dist-all: distdir
-chmod -R a+r $(distdir)
GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir)
-rm -rf $(distdir)
distdir: $(DISTFILES)
-rm -rf $(distdir)
mkdir $(distdir)
-chmod 777 $(distdir)
here=`cd $(top_builddir) && pwd`; \
top_distdir=`cd $(distdir) && pwd`; \
distdir=`cd $(distdir) && pwd`; \
cd $(top_srcdir) \
&& $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile
@for file in $(DISTFILES); do \
d=$(srcdir); \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file; \
done
for subdir in $(SUBDIRS); do \
test -d $(distdir)/$$subdir \
|| mkdir $(distdir)/$$subdir \
|| exit 1; \
chmod 777 $(distdir)/$$subdir; \
(cd $$subdir && $(MAKE) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
|| exit 1; \
done
info: info-recursive
dvi: dvi-recursive
check: all-am
$(MAKE) check-recursive
installcheck: installcheck-recursive
all-recursive-am: config.h
$(MAKE) all-recursive
all-am: Makefile config.h
install-exec: install-exec-recursive
@$(NORMAL_INSTALL)
install-data: install-data-recursive
@$(NORMAL_INSTALL)
install: install-recursive
@:
uninstall: uninstall-recursive
all: all-recursive-am all-am
install-strip:
$(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
installdirs: installdirs-recursive
mostlyclean-generic:
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f Makefile $(DISTCLEANFILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
mostlyclean-am: mostlyclean-hdr mostlyclean-tags mostlyclean-generic
clean-am: clean-hdr clean-tags clean-generic mostlyclean-am
distclean-am: distclean-hdr distclean-tags distclean-generic clean-am
maintainer-clean-am: maintainer-clean-hdr maintainer-clean-tags \
maintainer-clean-generic distclean-am
mostlyclean: mostlyclean-recursive mostlyclean-am
clean: clean-recursive clean-am
distclean: distclean-recursive distclean-am
-rm -f config.status
-rm -f libtool
maintainer-clean: maintainer-clean-recursive maintainer-clean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
-rm -f config.status
.PHONY: default mostlyclean-hdr distclean-hdr clean-hdr \
maintainer-clean-hdr install-data-recursive uninstall-data-recursive \
install-exec-recursive uninstall-exec-recursive installdirs-recursive \
uninstalldirs-recursive all-recursive check-recursive \
installcheck-recursive info-recursive dvi-recursive \
mostlyclean-recursive distclean-recursive clean-recursive \
maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
distclean-tags clean-tags maintainer-clean-tags distdir info dvi \
installcheck all-recursive-am all-am install-exec install-data install \
uninstall all installdirs mostlyclean-generic distclean-generic \
clean-generic maintainer-clean-generic clean mostlyclean distclean \
maintainer-clean
.PHONY: files populate checkin release
files:
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
echo $$p; \
done
@for subdir in $(SUBDIRS); do \
files=`cd $$subdir; $(MAKE) files | grep -v "make\[[1-9]\]"`; \
for file in $$files; do \
echo $$subdir/$$file; \
done; \
done
populate:
@echo "populating project"
@files=`$(MAKE) files | grep -v "make\[[1-9]\]"`; prcs populate -d gtk+.prj $$files
checkin: populate
@echo "checking in project"
@prcs checkin
release:
$(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

528
NEWS
View File

@@ -1,77 +1,463 @@
Overview of Fixes in GTK+ 0.99.5:
Overview of Changes in GTK+ 1.2.10:
* Signal signedness and naming corrections
* rc/style fixes
* text, entry widget fixes
* gtkeditable fixes
* scrollbar flickering fixed
* check casts are more descriptive
* DND fixes
* FAQ updates
* Fix focus drawing with no window manager
* Fix cut-and-paste with no current event
* Fix compilation using --with-xinput=gxi
* Fix problem with cut-and-paste and KOI8-R
* Fix rare problem with enter events and menus
* Fix problem with --with-native-locale and GNU libc-2.1
* Further fixes for using fonts, not fontsets, with non iso-8859-1.
* Fix problem with dropping onto internal children, such as CList buttons
* Translation updates
Overview of Changes in GTK+ 1.2.9:
* Move include files into a gtk-1-2/ subdir to support parallel
installation with GTK+-2.0. If you are installing from source
on top of a previous version, you should to remove $(includedir)/gdk/
and $(includedir)/gtk/ manually before installing the new version.
* Improved submenu navigation.
* Other small useability improvements for menus, scrollbars, etc.
* Patch enabling themes with better appearance by making some
geometry parameters settable.
* Changes so that using fonts (as well as fontsets) for
non-iso-8859-1 locales will work.
* New --with-native-locale configure option for faster string
handling on systems with non-broken locale support.
* Refuse to initialize GTK+ when setuid (http://www.gtk.org/setuid.html)
* Change to make GdkRGB use less SHM segments.
* Addition of .pc files
* Many bug fixes
(#50834, #50892, #13447, #50857, #1923, #50934, #3123, #51163,
#50492, #51026, #1704, #51039, #2682, #50964, #50926, #50686,
#50678, #50511, #8170, #567, #424, #1290, #4524, #8041, #8002,
#7302, #11008, #34218, #12074, #12072, #9656, #10316, #14082,
#13941, #13432, #7841, #6739, #8079, #28842, #50290, #50337,
#6510, #15282, #11887, #18648, #26545, and others)
Overview of Changes in GTK+ 1.2.8:
* GNU Make 3.79 bug workaround
* FAQ and tutorial updates and improvements
* Miscellaneous bug fixes: CList, Calendar, rc-files, FontSelection
Overview of Changes in GTK+ 1.2.7:
* More header cleanups.
* Fixed activation bug for insensitive widgets.
* Locale fixes to RC file parsing code.
* Miscellaneous bugfixes for Item Factory, CList, CTree, X Selections,
HScale, VScale, Pixmap, Viewport, OptionMenu, Entry and Notebook.
* Upgrade to libtool 1.3.4.
Overview of Changes in GTK+ 1.2.6:
* container queue_resize fixes
* gtk[vh]scale: minor fixups
* rename idle to idle_id in testgtk to avoid conflicts with
broken libs
* More consistant naming of gtkrc files
* Added language support: ro, uk
Overview of Changes in GTK+ 1.2.5:
* more GtkCTree and GtkWindow bug fixes.
* more redraw/resize queue fixes, better expose event
discarding code.
* more miscellaneous bugs fixed
* new configure.in option --disable-rebuilds to completely disable
rebuilds of autogenerated sources.
* check for 5.002 now, to avoid failing autogeneration build rules due
to old perl versions.
* fonts (and fontsets) are cached now.
* more autogeneration make rules and dependancy fixups, we should be
save with autogeneration up to make -j12 now ;)
* new window position GTK_WIN_POS_CENTER_ALWAYS, which will recenter the
GtkWindow on every size change.
* major rework of window manager hints handling code, fixed a bunch of
races with the new resizing code.
* the new wm hints and resizing code is absolutely perfect and bug free now,
it only lacks testing ;)
* fixed up various rc style memory prolems.
* gtk_widget_modify_style() now properly changes the style of realized widgets
and references the style passed into it. if people worked around this bug,
this will introduce a slight memory leak in their code.
The code should typically look like:
GtkRcStyle *rc_style = gtk_rc_style_new ();
[...]
gtk_widget_modify_style (widget, rc_style);
gtk_rc_style_unref (rc_style);
* fix problems with positioning menus offscreen.
* GtkText fixes for some crashes and drawing errors.
* Better handling for unexpected window destroys in GDK and GTK+.
This should make it possible to use a GtkPlug and catch the
case where its parent socket is randomly killed.
* FAQ updates.
* FileSelection i18n patches, RadioButton fixups.
* many translation improvements.
* miscellaneous other bugs fixed.
Overview of Changes in GTK+ 1.2.4:
* DnD improvements (drags can be canceled with Esc now).
* suppressed configure event reordering in Gdk.
* rewrite of Gtk's configure event handling.
* major improvements for the object argument system (Elena Devdariani).
* major bugfixes for threading, GtkNotebook, GtkItemFactory, GtkCList and
GtkCTree.
* tutorial/FAQ updates, new file generation.txt on autogenerated sources.
* configure's --with-glib= is "officially" unsupported.
* upgrade to libtool 1.3.3.
* various buglets fixed.
Overview of Changes in GTK+ 1.2.3:
* Upgrade to libtool 1.3
* Check for dgettext (for systems with old versions of GNU Gettext)
* Many bug fixes (see ChangeLog for details)
Overview of Changes in GTK+ 1.2.2:
* Improved Dnd behaviour with Motif applications.
* Bug fixes for the Gtk selection code.
* Minor bug fixes to the Gdk Atom cache and Dnd code (with --display option).
* Bug fixes and leak plugs for the Gdk IM code.
* Added gtk_object_get() facility to retrive object arguments easily.
The var args list expects ("arg-name", &value) pairs.
* Fixed mapping for GdkInputCondition<->GIOCondition, this should fix
problems where closed pipes were no longer signalling GDK_INPUT_READ on
systems with a native poll().
* Some cleanups to GtkLabel's memory allocation code (shouldn't leak memory
anymore).
* We don't attempt to lookup xpm color "None" anymore, this should prevent
eXodus (commercial X windows server) from popping up a color dialog every
time a transparent pixmap is created.
* Fixed bug where Gtk timout/idle handlers would execute without the global
Gdk lock being held.
* Other minor bug fixes.
Overview of Changes in GTK+ 1.2.1:
* Many Bug fixes have been applied to the menu and accelerator code.
* GtkItemFactory can "adopt" foreign menu items now and manage their
accelerator installation. This is often required to get GtkItemFactory
like accelerator propagation between different windows with the same
menu heirarchy and for centralized parsing and saving of accelerators.
* GtkCList/GtkCTree buttons should always display correctly now.
* Miscellaneous other bug fixes.
What's New in GTK+ 1.2.0 (since 1.0.x):
* New widgets: GtkFontSelector, GtkPacker, GtkItemFactory, GtkCTree,
GtkInvisible, GtkCalendar, GtkLayout, GtkPlug, GtkSocket
* Many new features and robustness for existing widgets
* Theme support
* New DND implementation
* Internationalization of standard dialogs
* New key binding system
* Tearoff menus and menu accelerators
* Wide character support for entry and text
* Resizing code has been overhauled
* Queued redraws of partial areas
* Far better support for object arguments
* Speed optimizations
* Runtime loading of dynamic modules
* Support for GLib log domains
* Tutorial improvements
* A bug fix or two
Overview of Changes in GTK+ 1.1.16:
* Major fixes and improvements for handlebox
* A change to the way widget->requisition works. Now,
widget->requisition is always what the widget requested,
unmodified by the usize. See Changes-1.2.txt for details.
This correct various bugs with gtk_widget_set_usize().
* Fixes for XIM on X11R5 systems
* Don't allow cut-and-paste of text in password-style entries
* --enable-debug is now on by default for the development releaes.
(When compiling for "production", use --enable-debug=minimum)
* Handle systems where Helvetica is not present more gracefully
* Fixes for memory leaks
* CList and CTree fixes
* Bug fixes for drawing problems.
* Miscellaneous bug fixes to GtkLabel, GtkCList, GtkCTree,
GtkColorsel, Focusing, DND
* Tutorial improvements
Overview of Changes in GTK+ 1.1.15:
* Tutorial Updates
* Added --libs gthread to gtk-config
* Bug fixes
Overview of Changes in GTK+ 0.99.4:
What is new in GTK+ 1.1.14:
* Reference counting revolution integrated.
Refer to docs/refcounting.txt on this issue.
* Implementation of a decent debugging system, you would want
to export GTK_DEBUG=objects if you are going to develop gtk applications,
refer to docs/debugging.txt for further information.
* Additions on the signal code for querying information about certain signals,
and pending handlers of signals.
* Support for user signals, and major changes to internal signal handler
handling for proper signal removal and invokation of after signals.
* Additional signals for various widgets e.g, GtkHandleBox::child_attached,
GtkHandleBox::child_detached, GtkWidget::style_set, GtkWidget::parent_set.
* GtkTooltips became a true descendant of GtkObject via derivation from
GtkData and facilitates an extra tip string which can be used as e.g. an
index into context help.
* Split up of the widget/object flags into a private and a public portion,
consult docs/widget_system.txt on this.
* Support for hot keys on gtk programs via gtk_key_snooper_install().
* Reimplementation of the *_interp functions as *_full functions to provide
simple callback functions as well.
* Idle functions are now prioritized.
* Many enhancements to GtkNotebook.
* New widget GtkSpinButton, check out testgtk.
* New widget GtkTipsQuery for letting the user query tooltips of widgets.
* Addition of GtkEditable base widget to encapsulate selection and
clipboard handling. (GtkEntry and GtkText use this)
* Text widget more complete.
* Additions to GtkStatusBar to make it complete.
* Gdk now supports regions.
* Access masks for widget arguments (GTK_ARG_READABLE/GTK_ARG_WRITABLE).
* Function replacements:
g_string_hash() -> g_str_hash()
g_string_equal() -> g_str_equal()
gtk_tooltips_set_tips() -> gtk_tooltips_set_tip()
* Support for quit handlers in gtk_main().
* Motif window mangaer hints support.
* Widget arguments are now flagged for readability/writability.
* Additions to documentation.
* Various FAQ updates. (FAQ now included)
* Clean ups and many many bug fixes by a lot of people all over the place.
* New, long and descriptive ChangeLog entries for bored readers ;)
* Additions to docs/Changes-1.2.txt
* Just warn when loading theme engine fails
* CLAMP GtkScale digits to a meaningful range
* GTK_LOCALDIR is now defined in a better fashion
* New functions (feature freeze, we know...):
gtk_menu_set_title()
gtk_toggle_button_get_active()
* Some locale fixups in gtkrc code
* Fixes to make gtk_radio_button_set_group() keep only
one radio button in the group active
* Foreign windows are now always treated as viewable; this fixes
a problem where updating didn't occure properly in GtkPlug
* DND fixes for 64 bit architectures, and for specifying operations
with modifier keys.
* Major revisions to GtkLayout: avoid having to create window
for NO_WINDOW children, adjust allocations of children as
scrolled so queued draws work, and a resize is queued instead
of allocating directly in a put() or move()
Overview of Changes in GTK+ 0.99.3:
What is new in GTK+ 1.1.13:
* Filesel enhancement / stability changes
* New widget, gtkcombo
* Widgets in the toolbar do not get the focus
* New widget, gtkstatusbar (still in-progress)
* g_string_equal renamed g_str_equal
* g_string_hash renamed g_str_hash
* new gtkbox functions to allow modification of the child
linkage after the widget tree is setup
* gtk_*_get_arg() and gtk_*_set_arg() fixes and implementations
* DND changes/fixes
* Entry widget now has set_max_length function
* Handlebox widget changes/fixes
* Some work on text widget (still in-progress)
* Now the toolbar supports arbitrary widgets as well
* CList has resizable columns again
* CList now looks consistant with scrolled windows
* Remove flickering from entry widget
* Added switch_page signal to notebook widget
* Documentation additions
* Other bug fixes...
* Dnd and selection bug fixes and memory purification.
* Widget sensitivity fixups.
* Tooltips windows are now named "gtk-tooltips" so rc file rules
can match tooltips windows. Fixed interaction of tooltips and NO_WINDOW
widgets.
* Spin buttons now update their values upon value retrival.
* Overhaul of the resizing vs. redrawing logic to reduce redrawing needs
a lot. Gtk makes full use of the draw_area coalescing code now, which
got minorly improved as well.
* Containers map their Gdk windows after their children now to reduce
expose event generation.
* Gdk event queue fixups, this solves the double-click problems people were
recently having.
* Account for the fact that GSource's are only properly reentrant from
within dispatch(), thus we don't do Gdk event processing from within
check() or prepare() anymore.
* Rc files feature a bg_pixmap value of "<none>" now.
* Improved session management support in Gdk.
* Automatic disabling of NLS if no gettext is found should work now.
* Removed deprecated functions, docs/Changes-1.2.txt gives an overview.
* Gtk+ development now requires GNU autoconf 2.13, GNU automake 1.4
and GNU libtool 1.2d.
* More bug fixes all over the place.
What is new in GTK+ 1.1.12:
* Korean translation added
* Fixed memory leaks
* A few other bug fixes
What is new in GTK+ 1.1.11:
* Dutch, Japanese, Swedish, Polish, and Norwegian translations
* Removed deprecated _interp variants: gtk_container_foreach_interp,
gtk_idle_add_interp, gtk_timeout_add_interp, gtk_signal_connect_interp
* Lots of cast corrections
* Many fixes
What is new in GTK+ 1.1.9:
* Check for broken glibc 2.0 mb functions and avoid them
* Label and Entry display fixes
* Move main thread back to GDK, for locking when translating events
* Bug fixes
What is new in GTK+ 1.1.8:
* Added support for gettext and the localization of the standard
dialogs.
* Added line-wrapping for the label, and JUSTIFY_FILL
* Support reordering via drag and drop in CList and CTree.
* Replaced GtkDrawWindow widget with a GTK_USER_DRAW flag
* Extended gtkpaned API to support minimum sizes and proportional
resizing.
* Changed the handling of shared memory segments so as to
remove the need for GTK+ to set up signal handlers.
* Re-implemented event loop in terms of the event loop
that has been added to GLib 1.1.8
* Added 'grab_focus' signal to allow keyboard accelerators
for entries.
* Load locale specific RC files if present.
* Bug fixes.
What is new in GTK+ 1.1.7:
* Fixed memory mis-allocation in default files code
* Various event handling fixes
* Wide character support for entry and text
* Destroy widgets _after_ propagating unrealize signals through
widget heirarchy
* Only build XIM-support if available
* Tutorial and examples updates
* Added gtk_drag_source_unset()
What is new in GTK+ 1.1.6:
* The signal system now features emission hooks whith special semantics,
refer to the ChangeLog for this.
* Minor? speedups and memory reductions to the emission handling of the
signal system.
* _interp() function variants are deprecated now. the corresponding *_full()
variants are provided for a long time now.
* Dnd abort timeout increased to 10 minutes.
* GtkScrolledWindow inherits from GtkBin now.
* GTK_POLICY_NEVER is implemented for scrolled windows now.
* Lots of API clean ups.
* Incremental freezing abilities.
* Integrated widgets from the GNOME tree: GtkLayout, GtkPlug and GtkSocket.
* New window functions for transient relationship, default size, and
geometry hints
* Default rc files are now read in (<sysconfdir/etc/gtkrc and ~/.gtkrc)
GTK_RC_FILES environment variable and functions are provided to configure
this behavior
* Read doc/Changes-1.2.txt to properly adapt your code.
* Bug Fixes.
What is new in GTK+ 1.1.5:
* Theme integration
* Widget style modification is now handled through GtkRcStyles
* GtkPixmaps now grey out pixmaps when insensitive
* Notebook enhancements
* Shadow configurability for menubars and handleboxes
* DND enhancements
* gtkfilesel now supports automounters better
* Implementation of expose compression
* Queued redraws of partial areas
* Scrolledwindow (+Viewport) source incompatibilities, children that are added
to a scrolled window don't get an automatic viewport anymore. a convenience
function gtk_scrolled_window_add_with_viewport() is suplied for this task
* Deprecated functions will now issue a message, informing the programmer about
the use of this function. These functions will get removed in future versions
* Non-functional functions got removed entirely
* gtk_widget_new() and gtk_object_new() will now auto-construct new objects.
A new function gtk_object_default_construct() is provided now which should
be called after every gtk_type_new() to perfom the auto-construction
* Improved argument support of several widgets
* Bug Fixes
What is new in GTK+ 1.1.3:
* GtkCList/GtkCTree now have the ability to:
- hide/show individual columns
- disable/enable column resizing
- set min and max for column widths
- set expander style of the ctree
- set/get row and cell styles
- set spacing between tree expander and cell contents in ctree
- toggle auto_resize for columns
* Must enhanced DND support, removed old DND code
* Idle functions are now implemented via GHook, giving a slight speed
improvement
* An environment variable GTK_MODULES which takes a colon seperated
list of module names GTK+ will now automatically load at gtk_init() startup
* GtkFontSel now has support for an extra 'base' filter
* New function gdk_window_set_root_origin to get the real geometry taking
into account window manager offsets
* New function gtk_text_set_line_wrap to toggle line wrapping
* New function gtk_widget_add_events which safely adds additional
events to a widget's event mask
* New function gdk_event_get_time to get the timestamp from a generic
event
* New widget GtkCalendar
* New widget GtkInvisible - InputOnly offscreen windows used for reliable
pointer grabs and selection handling in DND code
* New functions gtk_object_remove_no_notify[_by_id] to remove a certain
data portion without invokation of its destroy notifier
* gtk_spin_button_construct is now deprecated, use gtk_spin_button_configure
instead
* gtk_clist_set_border is now deprecated, use gtk_clist_set_shadow_type
instead
* Removed functions gtk_object_set_data_destroy[_by_id]
* Documentation additions/updates
* HTML and plain text files are now included in the distribution
* Bug fixes, typeness corrections, and general fixups
What is new in GTK+ 1.1.2:
* Gtk+ is now featuring runtime loading of dynamic modules via the
--gtk-modules= command line switch. such modules have to export a
G_MODULE_EXPORT void gtk_module_init (gint *argc, gchar ***argv);
function which will be invoked to initialize the module. since such
modules may create new widget types, they are always resident.
* The tutorial has been updated again.
* Changes to menus including tearoff menus and accelerators.
* Better support for modal dialogs.
* Removed CAN_FOCUS by default from scrollbars and button children of toolbar.
* More improvements and fixes for GtkCList and GtkCTree (i.e. row sorting).
* GtkCTree rows can be unselectable now.
* The GtkCTree API has undergone major renames (see ChangeLog entry from Lars
Hamann on Tue Aug 18 00:29:13 1998).
* A bunch of varargs functions changed to get va_lists working on systems that
implement va_lists as arrays.
* Improvements to the gdkrgb code.
* Improvements to Gdk color handling so we greatly reduce server traffic and
don't leak colors anymore.
* Improved internal widget tree iterators (the GtkContainer::foreach signal
vanished because of this).
* Option menus can have the keyboard focus now.
* More fixups to the text widget.
* GtkFileSelection should behave much more nicely in combination with AFS now.
* Support for label underlining.
* Support for GLib 1.1.3 log domains.
* Documentation improvements.
* Configuration fixes on various platforms.
* Miscellaneous fixes to XInput support.
* Build with shared library dependencies on Linux
* Fix for a major bug in the type systems memory allocation code that could
cause random crashes.
* Libtool update to version 1.2b.
* Lots of bugfixes and cleanups again ;)
What is new in GTK+ 1.1.1:
* Tutorial updates and additions.
* Key binding support for GtkListItems and GtkList.
* Extended selection mode and autoscrolling for GtkLists.
* A GtkCtree now operates on GtkCTreeNode* structures rather than GList*.
* GtkCTreeNodes can now be created from GNode trees.
* Bug fixes for GtkNotebook, GtkCList, GtkCombo and GdkWindow reparentation.
What is new in GTK+ 1.1.0:
* New widget GtkFontSelector.
* New featurefull progress bar.
* New container widget GtkPacker.
* New object GtkItemFactory, GtkMenuFactory is deprecated.
* New key binding system, configurable via rcfiles, similar to styles.
* New widget GtkCTree with drag selections and keyboard movement and
and horizontal scrolling. Features also implemented for GtkCList.
* Significant speedups to widget creation and destruction through caching
colormap and visual queries to the XServer.
* Speedups for type creation and especially gtk_type_is_a() checks.
* Speedups in signal lookup, creation and emissions and connection handling.
* Minor speedups with object data allocation and destruction.
* Additions to the signal handling API (e.g. *_emitv).
* Support for rc-file reparsing.
* Resizing logic is now implemented on container widget basis, rather than
for toplevel GtkWindows only.
* Buttons support relief styles now.
* Some widgets are now allocated through memchunks to behave more memory wise.
* Newly included file gtkfeatures.h which defines compatibility macros to
test for certain API features upon program compilation.
* Child arguments support for container widgets.
* Far better support for object arguments, revamp of the underlying
mechanism for speed and reusability. Child/object arguments don't
need to be preceeded by the "GtkType::" portion anymore.
* Removed GtkAcceleratorTable in favour of GtkAccelGroup, accelerator display
is now performed by a new widget GtkAccelLabel.
* Overhaul of the resizing code. Resizing behaviour can now be specified
on GtkContainer basis, so the underlying algorithm isn't only available
for GtkWindows.
* GtkTables are now fully resizable.
* The GtkType system now supports an additional base class initialization
function.
* GtkStyles and key bindings can now be looked up depending on the base
types of a widget, through a new keyword `class' in rc files.
* GtkButton derives from GtkBin (finally).
* More descriptive error messages on rc parsing.
* Runtime information is available to query enum/flag definition values.
* Upgrade to libtool-1.2
* Legions of bug fixes, memory leaks, segfaults, of-by-something errors...
including those that already went into the 1.0.x branch.
* A big bunch of features and cosmetic fixups that just got lost in
the masses of changes.

124
NEWS.pre-1-0 Normal file
View File

@@ -0,0 +1,124 @@
Overview of Changes in GTK+ 1.0.0:
* A few bug fixes.
Overview of Changes in GTK+ 0.99.10:
* Lots of bug fixes
* Documentation improvements
* Better looking handlebox
* A few convenience functions
Overview of Changes in GTK+ 0.99.9:
* Added examples directory, even more examples soon
* Added optional word wrap to gtktext
* Changes to gtkhandlebox
* Lots of bug fixes
Overview of Changes in GTK+ 0.99.8:
* Compilation and configuration fixes
* DND Fixes
* New test in testgtk: cursors
* Tutorial updates/additions
* Few more FAQ additions
* More prep for 1.0
Overview of Changes in GTK+ 0.99.7:
* This release is mainly because 0.99.6 did not compile completely
due to a missing file.
* Fixes to Gtk's quit handlers.
Overview of Changes in GTK+ 0.99.6:
* Intermediate release to become 1.0.
* More signedness corrections for handler functions in gtkmain.h.
* Semantics of GtkWidget::delete_event changed.
* Documentation updates.
* Inclusion of Gtk tutorial.
* Implementation of a new shutdown method for GtkObject's executed prior to
actual destruction. WARNING: this breaks binary compatibility, programs using
Gtk need to be recompiled.
* Clean ups due to compiler warnings.
* Various widget fixes.
Overview of Fixes in GTK+ 0.99.5:
* Signal signedness and naming corrections
* rc/style fixes
* text, entry widget fixes
* gtkeditable fixes
* scrollbar flickering fixed
* check casts are more descriptive
* DND fixes
* FAQ updates
* Bug fixes
Overview of Changes in GTK+ 0.99.4:
* Reference counting revolution integrated.
Refer to docs/refcounting.txt on this issue.
* Implementation of a decent debugging system, you would want
to export GTK_DEBUG=objects if you are going to develop gtk applications,
refer to docs/debugging.txt for further information.
* Additions on the signal code for querying information about certain signals,
and pending handlers of signals.
* Support for user signals, and major changes to internal signal handler
handling for proper signal removal and invokation of after signals.
* Additional signals for various widgets e.g, GtkHandleBox::child_attached,
GtkHandleBox::child_detached, GtkWidget::style_set, GtkWidget::parent_set.
* GtkTooltips became a true descendant of GtkObject via derivation from
GtkData and facilitates an extra tip string which can be used as e.g. an
index into context help.
* Split up of the widget/object flags into a private and a public portion,
consult docs/widget_system.txt on this.
* Support for hot keys on gtk programs via gtk_key_snooper_install().
* Reimplementation of the *_interp functions as *_full functions to provide
simple callback functions as well.
* Idle functions are now prioritized.
* Many enhancements to GtkNotebook.
* New widget GtkSpinButton, check out testgtk.
* New widget GtkTipsQuery for letting the user query tooltips of widgets.
* Addition of GtkEditable base widget to encapsulate selection and
clipboard handling. (GtkEntry and GtkText use this)
* Text widget more complete.
* Additions to GtkStatusBar to make it complete.
* Gdk now supports regions.
* Access masks for widget arguments (GTK_ARG_READABLE/GTK_ARG_WRITABLE).
* Function replacements:
g_string_hash() -> g_str_hash()
g_string_equal() -> g_str_equal()
gtk_tooltips_set_tips() -> gtk_tooltips_set_tip()
* Support for quit handlers in gtk_main().
* Motif window mangaer hints support.
* Widget arguments are now flagged for readability/writability.
* Additions to documentation.
* Various FAQ updates. (FAQ now included)
* Clean ups and many many bug fixes by a lot of people all over the place.
* New, long and descriptive ChangeLog entries for bored readers ;)
Overview of Changes in GTK+ 0.99.3:
* Filesel enhancement / stability changes
* New widget, gtkcombo
* Widgets in the toolbar do not get the focus
* New widget, gtkstatusbar (still in-progress)
* g_string_equal renamed g_str_equal
* g_string_hash renamed g_str_hash
* new gtkbox functions to allow modification of the child
linkage after the widget tree is setup
* gtk_*_get_arg() and gtk_*_set_arg() fixes and implementations
* DND changes/fixes
* Entry widget now has set_max_length function
* Handlebox widget changes/fixes
* Some work on text widget (still in-progress)
* Now the toolbar supports arbitrary widgets as well
* CList has resizable columns again
* CList now looks consistant with scrolled windows
* Remove flickering from entry widget
* Added switch_page signal to notebook widget
* Documentation additions
* Other bug fixes...

74
README
View File

@@ -1,18 +1,72 @@
General Information
===================
This is GTK+ version 0.99.5. GTK, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces.
This is GTK+ version 1.2.10. GTK+, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces for the X Window
System. It is designed to be small, efficient, and flexible. GTK+ is
written in C with a very object-oriented approach.
The official ftp site is:
ftp://ftp.gimp.org/pub/gtk
ftp://ftp.gtk.org/pub/gtk
The official web site is:
http://www.gimp.org/gtk
http://www.gtk.org/
Patches can be uploaded to:
ftp://ftp.gimp.org/incoming
Information about mailing lists can be found at
http://www.gtk.org/mailinglists.html
A mailing list is located at:
gtk-list@redhat.com
Installation
============
To subscribe: mail -s subscribe gtk-list-request@redhat.com < /dev/null
(Send mail to gtk-list-request@redhat.com with the subject "subscribe")
See the file 'INSTALL'
How to report bugs
==================
Bugs should be reported to the GNOME bug tracking system.
(http://bugzilla.gnome.org, product gtk+.) You will need
to create an account for yourself.
In the bug report please include:
* Information about your system. For instance:
- What operating system and version
- What version of X
- For Linux, what version of the C library
And anything else you think is relevant.
* How to reproduce the bug.
If you can reproduce it with the testgtk program that is built
in the gtk/ subdirectory, that will be most convenient. Otherwise,
please include a short test program that exhibits the behavior.
As a last resort, you can also provide a pointer to a larger piece
of software that can be downloaded.
* If the bug was a crash, the exact text that was printed out
when the crash occured.
* Further information such as stack traces may be useful, but
is not necessary. If you do send a stack trace, and the error
is an X error, it will be more useful if the stacktrace
is produced running the test program with the --sync command
line option.
Patches
=======
Patches should also be submitted to bugzilla.gnome.org. If the
patch fixes an existing bug, add the patch as an attachment
to that bug report.
Otherwise, enter a new bug report that describes the patch,
and attach the patch to that bug report.
Bug reports containing patches should include the PATCH keyword
in their keyword fields. If the patch adds to or changes the GTK
programming interface, the API keyword should also be included.
Patches should be in unified diff form. (The -u option to GNU
diff.)

63
README.cvs-commits Normal file
View File

@@ -0,0 +1,63 @@
GTK+ is part of the GNOME CVS repository. At the current time, any
person with write access to the GNOME repository, can make changes to
GTK+. This is a good thing, in that it encourages many people to work
on GTK+, and progress can be made quickly. However, GTK+ is a fairly
large and complicated package that many other things depend on, so to
avoid unnecessary breakage, and to take advantage of the knowledge
about GTK+ that has been built up over the last 18 months, we'd like
to ask people commiting to GTK+ to follow a few rules:
0) Ask first. If your changes are major, or could possibly break existing
code, you should always ask. If your change is minor and you've
been working on GTK+ for a while it probably isn't necessary
to ask. But when in doubt, ask. Even if your change is correct,
somebody may know a better way to do things.
If you are making changes to GTK+, you should be subscribed
to gtk-devel-list@redhat.com. (Subscription address:
gtk-devel-list-request@redhat.com.) This is a good place to ask
about intended changes.
If you just want to make a trivial change, and don't want to subscribe,
you can also mail gtk-bugs@gtk.org. Or, alternatively, you can look in
the ChangeLog for somebody who has been making changes to the file
you want to change and email them.
#gimp on byxnet (irc.gimp.org, irc2.gimp.org, irc3.gimp.org,
irc.germany.gimp.org...)s also a good place to find GTK+ developers to
discuss changes with, however, email to gtk-devel-list is the most
certain and preferred method.
1) Ask _first_.
2) There must be a ChangeLog for every commit. (If you discover that
you only committed half the files you meant to and need to fix that
up, or something, you don't need a new ChangeLog entry. But in general,
ChangeLog entries are mandatory.) Changes with out ChangeLog entries
will be reverted.
3) There _must_ be a ChangeLog for every commit.
Notes:
* If you are going to be changing many files in an experimental fashion,
it probably is a good idea to create a separate branch for your changes.
* The ChangeLog entries should preferrably match in date format
with the existing entries. You can set how emacs does this
by using customize mode:
- M-x customize
- set Programming/Tools/ChangeLog/Add Log Time Format to
'Old Format'
Or, set the add-log-time-format to 'current-time-string in
your .emacs file.
Owen Taylor
13 Aug 1998

72
README.in Normal file
View File

@@ -0,0 +1,72 @@
General Information
===================
This is GTK+ version @GTK_VERSION@. GTK+, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces for the X Window
System. It is designed to be small, efficient, and flexible. GTK+ is
written in C with a very object-oriented approach.
The official ftp site is:
ftp://ftp.gtk.org/pub/gtk
The official web site is:
http://www.gtk.org/
Information about mailing lists can be found at
http://www.gtk.org/mailinglists.html
Installation
============
See the file 'INSTALL'
How to report bugs
==================
Bugs should be reported to the GNOME bug tracking system.
(http://bugzilla.gnome.org, product gtk+.) You will need
to create an account for yourself.
In the bug report please include:
* Information about your system. For instance:
- What operating system and version
- What version of X
- For Linux, what version of the C library
And anything else you think is relevant.
* How to reproduce the bug.
If you can reproduce it with the testgtk program that is built
in the gtk/ subdirectory, that will be most convenient. Otherwise,
please include a short test program that exhibits the behavior.
As a last resort, you can also provide a pointer to a larger piece
of software that can be downloaded.
* If the bug was a crash, the exact text that was printed out
when the crash occured.
* Further information such as stack traces may be useful, but
is not necessary. If you do send a stack trace, and the error
is an X error, it will be more useful if the stacktrace
is produced running the test program with the --sync command
line option.
Patches
=======
Patches should also be submitted to bugzilla.gnome.org. If the
patch fixes an existing bug, add the patch as an attachment
to that bug report.
Otherwise, enter a new bug report that describes the patch,
and attach the patch to that bug report.
Bug reports containing patches should include the PATCH keyword
in their keyword fields. If the patch adds to or changes the GTK
programming interface, the API keyword should also be included.
Patches should be in unified diff form. (The -u option to GNU
diff.)

271
TODO
View File

@@ -1,139 +1,26 @@
TODO BEFORE GTK 1.0
-------------------
Bugs:
* pasting into a GtkEntry that already has a very long string,
causes the app to hang.
Outstanding items:
* focus handling for GtkOptionMenu (needs the previous)
* implement gtk_default_draw_oval and other missing things in gtkstyle.c.
* Vertical scrollbar: the expose event looks hosed and is causing
quite a bit of flickering
Actually this affects both scrollbar implementation, you can best
tell if you run the application with --sync (timj)
* signal parameters don't seem to get refreshed on recursive invokations
of GTK_NO_RECURSE signals, which causes the restarted emissions to loose
their actual point, i.e. parameter changes on the restarted emission,
needs further investigation.
* Widget redrawing when the window resizes sometimes messes up.
GtkLabels sometimes redraw without clearing up the underlying background on
window resizes.
* Are there still some GtkCList changes outstanding? (Jay Painter)
GtkCList is derived from GtkContainer but doesn't implement the
need_resize, focus, add and remove methods from containers.
it should at least issue a warning upon invokation of not supported
member functions.
* GtkTree and GtkList should express in their *_add implementations,
that they expect GtkListItems/GtkTreeItems as children. Similar
things might apply to other containers.
* delay dnd settings to take effect once a widget is realized, this is
to avoid force realizations. i think this goes along with owens dnd
changes?
-timj
The way DND data types are set in GtkWidget really needs to be fixed.
This is pretty high on my priority list, and I'll get to it as soon as
the column list widget is done. The correct way dnd data needs to be set
is to have a additional keyed data type with GtkWidget, which is applied to
the widget's window upon realize.
There also needs to be a way to set dnd-data on widget windows which are
not the main window (for widgets that create more than one window).
-Jay Painter
DnD seems to work for me, but yes, there needs to be some sort of
gtk_widget layer that makes it easier... Also, adding support for drop
zones might be nice.
-Elliot
This one is reproducabel for me:
testgtk --sync
popup colorselection
drag/drop works
start up preview color
drag works but not dropping
end preview color
drag/drop works
start up prewiev color
segfault in malloc
-timj
* Change bitfields to guints from enums for C++ ?
* Force paned window handle to be kept on screen
Additions:
* widgets which are redrawn because of a gtk_widget_draw(,NULL) should
be removed from the redraw queue.
* GScanner: it might be good to ues stdio and getch() instead of 1-character
reads. so one can take advantage of buffering. Currently each read() takes
a separate syscall.
* implement gtk_default_draw_oval
* Lists should scroll to center the recently selected item if it isn't
visible.
* enforce invariants on *_RESIZE* and *_REDRAW* flags.
* asure that child widgets are really get gtk_widget_destroy()ed in their
parents destroy handler, and not just unparented or somesuch.
* GtkToolTips:
allocate GtkTooltipsData from memchunks
look into incorporation of outdated/gtk-dairiki-971208-[01].patch.gz
* GtkToolTips: allocate GtkTooltipsData from memchunks
* Make widget attributes configurable after the widget is created (timj).
* Change gtk_widget_propagate_default_style() mechanism to
void gtk_rc_string_export (const gchar *rc_additions,
gboolean override_rc_styles);
* Configure events for windows that no longer exist fail in
XTranslateCoordinates
TODO AFTER GTK 1.0
------------------
* Make all widget attributes configurable after the widget is created (timj).
* Seperate GtkObject and signaling system from Gdk dependancies?
* move *_input_add (wrappers for select(2)) mechanism into glib.
* Make sure a widget added to a list is a list item and a widget added
to a menu is a menu item, etc. GTK_BASIC was a first attempt at this,
but it fails with subsequent container_add()s. maybe have another
GTK_PARENT_BASIC (similar to GTK_PARENT_SENSITIVE) flag, to prevent
tree iterations upon every container addition.
* gdk_expose_compress: ala-Xt, this would really help for opaque moves and
such
* Entry should have a password mode (and it should show stars
for user feedback).
* More dialogs: Print, GtkFontSelector, maybe others...
* Multiple document interface (MDI)?
* Support another widget style? Should be possible using GtkStyle's, but
there may be some work needed to remove any style dependencies in widget
code. Maybe GtkStyle's should have 'draw_push_button', 'draw_check_button',
etc, functions to draw the various widgets.
This will be covered by upcoming themability, raster is working on it.
* Radio buttons need to display CAN/HAS_DEFAULT correctly, if draw_inidicator
is TRUE. (Radio buttons do not need to CAN_DEFAULT! OWT)
* More dialogs: Print, maybe others...
* make the gtk_main callbacks consistent in their add/remove behaviour.
* More work on Documentation
* Check return values on all calls to XIC[Get/Set]Values
* Rewrite the interface to the i18n stuff so GTK widgets don't need to
retrieve X values, and so they don't have to know the value of the
XNxxx character constants.
* The "-geometry" option should be supported
* The "--geometry" option should be supported
- Having gdk_init() parse the geometry option. (putting it into
GDK means you can use XParseGeometry() without wrapping it)
@@ -155,16 +42,42 @@ TODO AFTER GTK 1.0
( You'd have to extend gdk_window_set_hints to accept the
window gravity option to get it right. )
* Text/Edit widget: (some of these might be bugs that should be fixed now)
* Allow moving the separator for paned widgets by dragging
it directly instead of using the handle.
* Check into XAddConnectionWatch - is this needed for XIM?
* Places where a _full variant is needed:
gtk_init_add
gtk_menu_popup
gtk_toolbar_prepend_element
gtk_toolbar_insert_element
* Try to rationally deal with someone else deleting one of our
windows??? This would mean keeping track of our window heirarchy
ourselves, for one thing, and will never be safe, because of
race conditions.
* Should all the default handlers really return FALSE? This can
cause confusing presses to be sent to containers that actually
want to get events on themselves.
* The menu code should skip separators during keyboard navigation,
whether they are sensitive or insensitive.
* OwnerButtonPressGrab needs to go!
Text/Edit widget:
Bugs:
- Who knows?
- Really big font (150 pt), plus lots of editing caused segfault
Improvements:
- Unify the key binding support in some fashion between the
Entry and Text widget widgets (???)
Entry and Text widget widgets, use GtkBindings for this.
- Figure out a way not to recompute the geometry on insertions/deletions
which are large, but not a significant fraction of the
@@ -200,30 +113,88 @@ TODO AFTER GTK 1.0
appearance on exposes. But this would require using another
window to get the origins.
? Allow moving the separator for paned widgets by dragging
it directly instead of using the handle.
- In word wrap mode, break:
? Mark public use of gtk_tree_remove_item as deprecated - it should be used
as:
gtk_container_remove (GTK_CONTAINER(tree), widget);
aaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
* Standardize that all strings should be passed as gchar *, not
guchar *. But what about non-string data? (gdk_property_change,
gtk_selection_data_set) X makes these sort of things guchar...
as:
| Maximum column
aaaaaaaaaaa bbbbbbbbbbb|
bbbbbbbbbbbbbbbbbbbbbbb|
bbbbbbbbb |
* Check into XAddConnectionWatch - is this needed for XIM?
Instead of:
|
aaaaaaaaaaa |
bbbbbbbbbbbbbbbbbbbbbbb|
bbbbbbbbbbbbbbbbbbbb |
* Places where a _full variant is needed:
- Blinking cursor
gtk_clist_set_row_data
gtk_init_add
gtk_menu_popup
gtk_toolbar_prepend_element
gtk_toolbar_insert_element
gtk_widget_dnd_data_set (should be guchar * with a copy?
shouldn't be there at all...)
??? GtkDrawingarea.draw_data
* gtk_rc_add_[name/class]_style are broken for bg pixmaps, because
styles are broken for bg pixmaps, and RC styles only hack around
that.
- API's : gtk_text_clear, gtk_text_delete_lines (gint start, gint end),
gtk_text_append/prepend, gtk_text_insert_at (gint row, gint column),
some function to get the row/column from the x/y-coordinates of a
mouse click, some function to get the word/line under the mouse pointer
[ From: Stefan Jeske <jeske@braunschweig.netsurf.de> ]
- "changed" emitted when doing deletes on empty Text widget.
- Delete IC in editable->unrealize, not editable->finalize?
Themes
======
- When a scale gets shown/hidden only queue a redraw on the
non-window portion, not the whole area.
- In various places, to avoid shaping windows excessively,
we set parent relative backgrounds. This is an ugly
hack and needs a better solution. Plus, I don't think
these parent-relative backgrounds always persist to
when they are actually needed.
Such calls exist in: GtkButton, GtkHandeBox, GtkItem,
GtkListItem, GtkMenu, GtkMenuItem, GtkMisc,
GtkNoteBook, GtkOptionMenu, GtkPaned, GtkPreview,
GtkSpinButton and GtkTreeItem.
- For menus and for GtkWindow's, the realize() function
calls paint(), so that background pixmaps can be set
ahead of time, and prevent flashing when the window is
shown. This is an ugly hack and needs a better solution.
=======
Calendar Widget:
- The widget should be nicely resizeable vertical too.
- CALENDAR_MARGIN should be removed, uses INNER_BORDER and
style->class->[xy]thickness insted.
- Flag to choose between using standard three letter abbreviated
weekday name or just the first character from it. It looks like
that is what most other calendar-widgets do.
- Arrows should resize with the header-font.
- The keyboard support has to be finished.
DND
===
- Use a cursor instead of an ICON when over Motif windows,
to get rid of the current junk that Motif leaves because
of its XCopyArea stupidity for doing highlighting.
- Add a GTK_DRAG_VERIFY target flag and a "drag_data_verify"
signal so that apps can easily check if a, say,
text/uri-list URL looks OK during the drop.
- Check more for memory leaks.
- Drag and drop for Entry and Text widgets.
- Send synthetic motion events on structure changes so
drag_enter/leave get sent properly. (See the popup
in testdnd)

View File

@@ -15,27 +15,35 @@
/* Other stuff */
#undef HAVE_IPC_H
#undef HAVE_SHM_H
#undef HAVE_XPM
#undef HAVE_XSHM_H
#undef HAVE_SYS_SELECT_H
#undef ENABLE_NLS
#undef GTK_COMPILED_WITH_DEBUGGING
#undef IPC_RMID_DEFERRED_RELEASE
#undef HAVE_CATGETS
#undef HAVE_GETTEXT
#undef HAVE_IPC_H
#undef HAVE_LC_MESSAGES
#undef HAVE_SHM_H
#undef HAVE_STPCPY
#undef HAVE_XSHM_H
#undef HAVE_SHAPE_EXT
#undef HAVE_SYS_SELECT_H
#undef HAVE_XCONVERTCASE
#undef NO_FD_SET
#undef RESOURCE_BASE
/* Define to use X11R6 additions to XIM */
#undef USE_X11R6_XIM
/* Define if we should use mbstowcs and friends directly
*/
#undef USE_NATIVE_LOCALE
#undef XINPUT_NONE
#undef XINPUT_GXI
#undef XINPUT_XFREE
#undef GTK_MAJOR_VERSION
#undef GTK_MINOR_VERSION
#undef GTK_MICRO_VERSION
#undef GTK_VERSION
/* Define as the return type of signal handlers (int or void). */
#undef RETSIGTYPE

768
acinclude.m4 Normal file
View File

@@ -0,0 +1,768 @@
## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
## Copyright (C) 1996-1999 Free Software Foundation, Inc.
## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 2 of the License, or
## (at your option) any later version.
##
## This program is distributed in the hope that it will be useful, but
## WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
## General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
##
## As a special exception to the GNU General Public License, if you
## distribute this file as part of a program that contains a
## configuration script generated by Autoconf, you may include it under
## the same distribution terms that you use for the rest of that program.
# serial 40 AC_PROG_LIBTOOL
AC_DEFUN(AC_PROG_LIBTOOL,
[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
# Save cache, so that ltconfig can load it
AC_CACHE_SAVE
# Actually configure libtool. ac_aux_dir is where install-sh is found.
CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
|| AC_MSG_ERROR([libtool configure failed])
# Reload cache, that may have been modified by ltconfig
AC_CACHE_LOAD
# This can be used to rebuild libtool when needed
LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
AC_SUBST(LIBTOOL)dnl
# Redirect the config.log output again, so that the ltconfig log is not
# clobbered by the next message.
exec 5>>./config.log
])
AC_DEFUN(AC_LIBTOOL_SETUP,
[AC_PREREQ(2.13)dnl
AC_REQUIRE([AC_ENABLE_SHARED])dnl
AC_REQUIRE([AC_ENABLE_STATIC])dnl
AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
AC_REQUIRE([AC_PROG_RANLIB])dnl
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_LD])dnl
AC_REQUIRE([AC_PROG_NM])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
dnl
case "$target" in
NONE) lt_target="$host" ;;
*) lt_target="$target" ;;
esac
# Check for any special flags to pass to ltconfig.
libtool_flags="--cache-file=$cache_file"
test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
[libtool_flags="$libtool_flags --enable-dlopen"])
ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
[libtool_flags="$libtool_flags --enable-win32-dll"])
AC_ARG_ENABLE(libtool-lock,
[ --disable-libtool-lock avoid locking (might break parallel builds)])
test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
# Some flags need to be propagated to the compiler or linker for good
# libtool support.
case "$lt_target" in
*-*-irix6*)
# Find out which ABI we are using.
echo '[#]line __oline__ "configure"' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
case "`/usr/bin/file conftest.o`" in
*32-bit*)
LD="${LD-ld} -32"
;;
*N32*)
LD="${LD-ld} -n32"
;;
*64-bit*)
LD="${LD-ld} -64"
;;
esac
fi
rm -rf conftest*
;;
*-*-sco3.2v5*)
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
SAVE_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -belf"
AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
[AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
if test x"$lt_cv_cc_needs_belf" != x"yes"; then
# this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
CFLAGS="$SAVE_CFLAGS"
fi
;;
ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
[*-*-cygwin* | *-*-mingw*)
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
AC_CHECK_TOOL(AS, as, false)
AC_CHECK_TOOL(OBJDUMP, objdump, false)
;;
])
esac
])
# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
# AC_ENABLE_SHARED - implement the --enable-shared flag
# Usage: AC_ENABLE_SHARED[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AC_ENABLE_SHARED, [dnl
define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(shared,
changequote(<<, >>)dnl
<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_shared=yes ;;
no) enable_shared=no ;;
*)
enable_shared=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_shared=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
])
# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_SHARED(no)])
# AC_ENABLE_STATIC - implement the --enable-static flag
# Usage: AC_ENABLE_STATIC[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AC_ENABLE_STATIC, [dnl
define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(static,
changequote(<<, >>)dnl
<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_static=yes ;;
no) enable_static=no ;;
*)
enable_static=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_static=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
])
# AC_DISABLE_STATIC - set the default static flag to --disable-static
AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_STATIC(no)])
# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(fast-install,
changequote(<<, >>)dnl
<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
changequote([, ])dnl
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_fast_install=yes ;;
no) enable_fast_install=no ;;
*)
enable_fast_install=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_fast_install=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
])
# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_ENABLE_FAST_INSTALL(no)])
# AC_PROG_LD - find the path to the GNU or non-GNU linker
AC_DEFUN(AC_PROG_LD,
[AC_ARG_WITH(gnu-ld,
[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
ac_prog=ld
if test "$ac_cv_prog_gcc" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
AC_MSG_CHECKING([for ld used by GCC])
ac_prog=`($CC -print-prog-name=ld) 2>&5`
case "$ac_prog" in
# Accept absolute paths.
changequote(,)dnl
[\\/]* | [A-Za-z]:[\\/]*)
re_direlt='/[^/][^/]*/\.\./'
changequote([,])dnl
# Canonicalize the path of ld
ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
done
test -z "$LD" && LD="$ac_prog"
;;
"")
# If it fails, then pretend we aren't using GCC.
ac_prog=ld
;;
*)
# If it is relative, then search for the first ld in PATH.
with_gnu_ld=unknown
;;
esac
elif test "$with_gnu_ld" = yes; then
AC_MSG_CHECKING([for GNU ld])
else
AC_MSG_CHECKING([for non-GNU ld])
fi
AC_CACHE_VAL(ac_cv_path_LD,
[if test -z "$LD"; then
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
ac_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
# but apparently some GNU ld's only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
test "$with_gnu_ld" != no && break
else
test "$with_gnu_ld" != yes && break
fi
fi
done
IFS="$ac_save_ifs"
else
ac_cv_path_LD="$LD" # Let the user override the test with a path.
fi])
LD="$ac_cv_path_LD"
if test -n "$LD"; then
AC_MSG_RESULT($LD)
else
AC_MSG_RESULT(no)
fi
test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
AC_PROG_LD_GNU
])
AC_DEFUN(AC_PROG_LD_GNU,
[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
ac_cv_prog_gnu_ld=yes
else
ac_cv_prog_gnu_ld=no
fi])
])
# AC_PROG_NM - find the path to a BSD-compatible name lister
AC_DEFUN(AC_PROG_NM,
[AC_MSG_CHECKING([for BSD-compatible nm])
AC_CACHE_VAL(ac_cv_path_NM,
[if test -n "$NM"; then
# Let the user override the test.
ac_cv_path_NM="$NM"
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
# Check to see if the nm accepts a BSD-compat flag.
# Adding the `sed 1q' prevents false positives on HP-UX, which says:
# nm: unknown option "B" ignored
if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
ac_cv_path_NM="$ac_dir/nm -B"
break
elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
ac_cv_path_NM="$ac_dir/nm -p"
break
else
ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
continue # so that we can try to find one that supports BSD flags
fi
fi
done
IFS="$ac_save_ifs"
test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
fi])
NM="$ac_cv_path_NM"
AC_MSG_RESULT([$NM])
])
# AC_CHECK_LIBM - check for math library
AC_DEFUN(AC_CHECK_LIBM,
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
LIBM=
case "$lt_target" in
*-*-beos* | *-*-cygwin*)
# These system don't have libm
;;
*-ncr-sysv4.3*)
AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
;;
*)
AC_CHECK_LIB(m, main, LIBM="-lm")
;;
esac
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl convenience library, adds --enable-ltdl-convenience to
# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
# to be `${top_builddir}/libltdl'. Make sure you start DIR with
# '${top_builddir}/' (note the single quotes!) if your package is not
# flat, and, if you're not using automake, define top_builddir as
# appropriate in the Makefiles.
AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
case "$enable_ltdl_convenience" in
no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
"") enable_ltdl_convenience=yes
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la
INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl installable library, and adds --enable-ltdl-install to
# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor
# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed
# to be `${top_builddir}/libltdl'. Make sure you start DIR with
# '${top_builddir}/' (note the single quotes!) if your package is not
# flat, and, if you're not using automake, define top_builddir as
# appropriate in the Makefiles.
# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_CHECK_LIB(ltdl, main,
[test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
[if test x"$enable_ltdl_install" = xno; then
AC_MSG_WARN([libltdl not installed, but installation disabled])
else
enable_ltdl_install=yes
fi
])
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la
INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
INCLTDL=
fi
])
dnl old names
AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
dnl This is just to silence aclocal about the macro not being used
ifelse([AC_DISABLE_FAST_INSTALL])dnl
# Macro to add for using GNU gettext.
# Ulrich Drepper <drepper@cygnus.com>, 1995.
#
# Modified to never use included libintl.
# Owen Taylor <otaylor@redhat.com>, 12/15/1998
#
#
# This file can be copied and used freely without restrictions. It can
# be used in projects which are not available under the GNU Public License
# but which still want to provide support for the GNU gettext functionality.
# Please note that the actual code is *not* freely available.
# serial 5
AC_DEFUN(AM_GTK_WITH_NLS,
[AC_MSG_CHECKING([whether NLS is requested])
dnl Default is enabled NLS
AC_ARG_ENABLE(nls,
[ --disable-nls do not use Native Language Support],
USE_NLS=$enableval, USE_NLS=yes)
AC_MSG_RESULT($USE_NLS)
AC_SUBST(USE_NLS)
USE_INCLUDED_LIBINTL=no
dnl If we use NLS figure out what method
if test "$USE_NLS" = "yes"; then
# AC_DEFINE(ENABLE_NLS)
# AC_MSG_CHECKING([whether included gettext is requested])
# AC_ARG_WITH(included-gettext,
# [ --with-included-gettext use the GNU gettext library included here],
# nls_cv_force_use_gnu_gettext=$withval,
# nls_cv_force_use_gnu_gettext=no)
# AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
nls_cv_force_use_gnu_gettext="no"
nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
dnl User does not insist on using GNU NLS library. Figure out what
dnl to use. If gettext or catgets are available (in this order) we
dnl use this. Else we have to fall back to GNU NLS library.
dnl catgets is only used if permitted by option --with-catgets.
nls_cv_header_intl=
nls_cv_header_libgt=
CATOBJEXT=NONE
AC_CHECK_HEADER(libintl.h,
[AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
[AC_TRY_LINK([#include <libintl.h>], [return (int) dgettext ("","")],
gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no)])
if test "$gt_cv_func_dgettext_libc" != "yes"; then
AC_CHECK_LIB(intl, bindtextdomain,
[AC_CACHE_CHECK([for dgettext in libintl],
gt_cv_func_dgettext_libintl,
[AC_CHECK_LIB(intl, dgettext,
gt_cv_func_dgettext_libintl=yes,
gt_cv_func_dgettext_libintl=no)],
gt_cv_func_dgettext_libintl=no)])
fi
if test "$gt_cv_func_dgettext_libintl" = "yes"; then
LIBS="$LIBS -lintl";
fi
if test "$gt_cv_func_dgettext_libc" = "yes" \
|| test "$gt_cv_func_dgettext_libintl" = "yes"; then
AC_DEFINE(HAVE_GETTEXT)
AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
[test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
if test "$MSGFMT" != "no"; then
AC_CHECK_FUNCS(dcgettext)
AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
[test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
return _nl_msg_cat_cntr],
[CATOBJEXT=.gmo
DATADIRNAME=share],
[CATOBJEXT=.mo
DATADIRNAME=lib])
INSTOBJEXT=.mo
fi
fi
# Added by Martin Baulig 12/15/98 for libc5 systems
if test "$gt_cv_func_dgettext_libc" != "yes" \
&& test "$gt_cv_func_dgettext_libintl" = "yes"; then
INTLLIBS=-lintl
LIBS=`echo $LIBS | sed -e 's/-lintl//'`
fi
])
if test "$CATOBJEXT" = "NONE"; then
AC_MSG_CHECKING([whether catgets can be used])
AC_ARG_WITH(catgets,
[ --with-catgets use catgets functions if available],
nls_cv_use_catgets=$withval, nls_cv_use_catgets=no)
AC_MSG_RESULT($nls_cv_use_catgets)
if test "$nls_cv_use_catgets" = "yes"; then
dnl No gettext in C library. Try catgets next.
AC_CHECK_LIB(i, main)
AC_CHECK_FUNC(catgets,
[AC_DEFINE(HAVE_CATGETS)
INTLOBJS="\$(CATOBJS)"
AC_PATH_PROG(GENCAT, gencat, no)dnl
# if test "$GENCAT" != "no"; then
# AC_PATH_PROG(GMSGFMT, gmsgfmt, no)
# if test "$GMSGFMT" = "no"; then
# AM_PATH_PROG_WITH_TEST(GMSGFMT, msgfmt,
# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)
# fi
# AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
# USE_INCLUDED_LIBINTL=yes
# CATOBJEXT=.cat
# INSTOBJEXT=.cat
# DATADIRNAME=lib
# INTLDEPS='$(top_builddir)/intl/libintl.a'
# INTLLIBS=$INTLDEPS
# LIBS=`echo $LIBS | sed -e 's/-lintl//'`
# nls_cv_header_intl=intl/libintl.h
# nls_cv_header_libgt=intl/libgettext.h
# fi
])
fi
fi
if test "$CATOBJEXT" = "NONE"; then
dnl Neither gettext nor catgets in included in the C library.
dnl Fall back on GNU gettext library.
nls_cv_use_gnu_gettext=yes
fi
fi
if test "$nls_cv_use_gnu_gettext" != "yes"; then
AC_DEFINE(ENABLE_NLS)
else
# Unset this variable since we use the non-zero value as a flag.
CATOBJEXT=
# dnl Mark actions used to generate GNU NLS library.
# INTLOBJS="\$(GETTOBJS)"
# AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt)
# AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
# AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
# [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
# AC_SUBST(MSGFMT)
# USE_INCLUDED_LIBINTL=yes
# CATOBJEXT=.gmo
# INSTOBJEXT=.mo
# DATADIRNAME=share
# INTLDEPS='$(top_builddir)/intl/libintl.a'
# INTLLIBS=$INTLDEPS
# LIBS=`echo $LIBS | sed -e 's/-lintl//'`
# nls_cv_header_intl=intl/libintl.h
# nls_cv_header_libgt=intl/libgettext.h
fi
dnl Test whether we really found GNU xgettext.
if test "$XGETTEXT" != ":"; then
dnl If it is no GNU xgettext we define it as : so that the
dnl Makefiles still can work.
if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
: ;
else
AC_MSG_RESULT(
[found xgettext program is not GNU xgettext; ignore it])
XGETTEXT=":"
fi
fi
# We need to process the po/ directory.
POSUB=po
else
DATADIRNAME=share
nls_cv_header_intl=intl/libintl.h
nls_cv_header_libgt=intl/libgettext.h
fi
AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
AC_OUTPUT_COMMANDS(
[case "$CONFIG_FILES" in *po/Makefile.in*)
sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
esac])
# # If this is used in GNU gettext we have to set USE_NLS to `yes'
# # because some of the sources are only built for this goal.
# if test "$PACKAGE" = gettext; then
# USE_NLS=yes
# USE_INCLUDED_LIBINTL=yes
# fi
dnl These rules are solely for the distribution goal. While doing this
dnl we only have to keep exactly one list of the available catalogs
dnl in configure.in.
for lang in $ALL_LINGUAS; do
GMOFILES="$GMOFILES $lang.gmo"
POFILES="$POFILES $lang.po"
done
dnl Make all variables we use known to autoconf.
AC_SUBST(USE_INCLUDED_LIBINTL)
AC_SUBST(CATALOGS)
AC_SUBST(CATOBJEXT)
AC_SUBST(DATADIRNAME)
AC_SUBST(GMOFILES)
AC_SUBST(INSTOBJEXT)
AC_SUBST(INTLDEPS)
AC_SUBST(INTLLIBS)
AC_SUBST(INTLOBJS)
AC_SUBST(POFILES)
AC_SUBST(POSUB)
])
AC_DEFUN(AM_GTK_GNU_GETTEXT,
[AC_REQUIRE([AC_PROG_MAKE_SET])dnl
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_RANLIB])dnl
AC_REQUIRE([AC_ISC_POSIX])dnl
AC_REQUIRE([AC_HEADER_STDC])dnl
AC_REQUIRE([AC_C_CONST])dnl
AC_REQUIRE([AC_C_INLINE])dnl
AC_REQUIRE([AC_TYPE_OFF_T])dnl
AC_REQUIRE([AC_TYPE_SIZE_T])dnl
AC_REQUIRE([AC_FUNC_ALLOCA])dnl
AC_REQUIRE([AC_FUNC_MMAP])dnl
AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h string.h \
unistd.h sys/param.h])
AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \
strdup __argz_count __argz_stringify __argz_next])
if test "${ac_cv_func_stpcpy+set}" != "set"; then
AC_CHECK_FUNCS(stpcpy)
fi
if test "${ac_cv_func_stpcpy}" = "yes"; then
AC_DEFINE(HAVE_STPCPY)
fi
AM_LC_MESSAGES
AM_GTK_WITH_NLS
if test "x$CATOBJEXT" != "x"; then
if test "x$ALL_LINGUAS" = "x"; then
LINGUAS=
else
AC_MSG_CHECKING(for catalogs to be installed)
NEW_LINGUAS=
for lang in ${LINGUAS=$ALL_LINGUAS}; do
case "$ALL_LINGUAS" in
*$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
esac
done
LINGUAS=$NEW_LINGUAS
AC_MSG_RESULT($LINGUAS)
fi
dnl Construct list of names of catalog files to be constructed.
if test -n "$LINGUAS"; then
for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
fi
fi
dnl The reference to <locale.h> in the installed <libintl.h> file
dnl must be resolved because we cannot expect the users of this
dnl to define HAVE_LOCALE_H.
if test $ac_cv_header_locale_h = yes; then
INCLUDE_LOCALE_H="#include <locale.h>"
else
INCLUDE_LOCALE_H="\
/* The system does not provide the header <locale.h>. Take care yourself. */"
fi
AC_SUBST(INCLUDE_LOCALE_H)
dnl Determine which catalog format we have (if any is needed)
dnl For now we know about two different formats:
dnl Linux libc-5 and the normal X/Open format
test -d intl || mkdir intl
if test "$CATOBJEXT" = ".cat"; then
AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
dnl Transform the SED scripts while copying because some dumb SEDs
dnl cannot handle comments.
sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
fi
dnl po2tbl.sed is always needed.
sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
$srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
dnl In the intl/Makefile.in we have a special dependency which makes
dnl only sense for gettext. We comment this out for non-gettext
dnl packages.
if test "$PACKAGE" = "gettext"; then
GT_NO="#NO#"
GT_YES=
else
GT_NO=
GT_YES="#YES#"
fi
AC_SUBST(GT_NO)
AC_SUBST(GT_YES)
dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
dnl Try to locate is.
MKINSTALLDIRS=
if test -n "$ac_aux_dir"; then
MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
fi
if test -z "$MKINSTALLDIRS"; then
MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
fi
AC_SUBST(MKINSTALLDIRS)
dnl *** For now the libtool support in intl/Makefile is not for real.
l=
AC_SUBST(l)
dnl Generate list of files to be processed by xgettext which will
dnl be included in po/Makefile.
test -d po || mkdir po
if test "x$srcdir" != "x."; then
if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
posrcprefix="$srcdir/"
else
posrcprefix="../$srcdir/"
fi
else
posrcprefix="../"
fi
rm -f po/POTFILES
sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
< $srcdir/po/POTFILES.in > po/POTFILES
])

View File

@@ -1,27 +1,28 @@
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
ORIGDIR=`pwd`
cd $srcdir
PROJECT=Gtk+
TEST_TYPE=-d
FILE=gdk
DIE=0
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have autoconf installed to compile GTK+."
echo "You must have autoconf installed to compile $PROJECT."
echo "Download the appropriate package for your distribution,"
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
DIE=1
}
(libtool --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have libtool installed to compile GTK+."
echo "Get ftp://alpha.gnu.org/gnu/libtool-1.0h.tar.gz"
echo "(or a newer version if it is available)"
DIE=1
}
(automake --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have automake installed to compile GTK+."
echo "You must have automake installed to compile $PROJECT."
echo "Get ftp://ftp.cygnus.com/pub/home/tromey/automake-1.2d.tar.gz"
echo "(or a newer version if it is available)"
DIE=1
@@ -31,8 +32,8 @@ if test "$DIE" -eq 1; then
exit 1
fi
(test -d gtk && test -d glib) || {
echo "You must run this script in the top-level GTK+ directory"
test $TEST_TYPE $FILE || {
echo "You must run this script in the top-level $PROJECT directory"
exit 1
}
@@ -41,12 +42,45 @@ if test -z "$*"; then
echo "to pass any to it, please specify them on the $0 command line."
fi
for i in glib .
do
echo processing $i
(cd $i; aclocal; automake; autoconf)
done
./configure "$@"
case $CC in
*xlc | *xlc\ * | *lcc | *lcc\ *) am_opt=--include-deps;;
esac
if test -z "$ACLOCAL_FLAGS"; then
acdir=`aclocal --print-ac-dir`
m4list="glib.m4 gettext.m4"
for file in $m4list
do
if [ ! -f "$acdir/$file" ]; then
echo "WARNING: aclocal's directory is $acdir, but..."
echo " no file $acdir/$file"
echo " You may see fatal macro warnings below."
echo " If these files are installed in /some/dir, set the ACLOCAL_FLAGS "
echo " environment variable to \"-I /some/dir\", or install"
echo " $acdir/$file."
echo ""
fi
done
fi
echo "Running gettextize... Ignore non-fatal messages."
# Hmm, we specify --force here, since otherwise things dont'
# get added reliably, but we don't want to overwrite intl
# while making dist.
echo "no" | gettextize --copy --force
aclocal $ACLOCAL_FLAGS
# optionally feature autoheader
(autoheader --version) < /dev/null > /dev/null 2>&1 && autoheader
automake -a $am_opt
autoconf
cd $ORIGDIR
$srcdir/configure --enable-maintainer-mode "$@"
echo
echo "Now type 'make' to compile GTK+."
echo "Now type 'make' to compile $PROJECT."

386
config.guess vendored
View File

@@ -1,6 +1,7 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999
# Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -23,6 +24,7 @@
# Written by Per Bothner <bothner@cygnus.com>.
# The master version of this file is at the FSF in /home/gd/gnu/lib.
# Please send patches to <autoconf-patches@gnu.org>.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
@@ -35,6 +37,20 @@
# (but try to keep the structure clean).
#
# Use $HOST_CC if defined. $CC may point to a cross-compiler
if test x"$CC_FOR_BUILD" = x; then
if test x"$HOST_CC" != x; then
CC_FOR_BUILD="$HOST_CC"
else
if test x"$CC" != x; then
CC_FOR_BUILD="$CC"
else
CC_FOR_BUILD=cc
fi
fi
fi
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 8/24/94.)
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
@@ -46,7 +62,8 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15
dummy=dummy-$$
trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
# Note: order is significant - the case branches are not exclusive.
@@ -59,7 +76,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
cat <<EOF >dummy.s
cat <<EOF >$dummy.s
.globl main
.ent main
main:
@@ -76,9 +93,9 @@ main:
ret \$31,(\$26),1
.end main
EOF
${CC-cc} dummy.s -o dummy 2>/dev/null
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
./dummy
./$dummy
case "$?" in
7)
UNAME_MACHINE="alpha"
@@ -97,8 +114,14 @@ EOF
;;
esac
fi
rm -f dummy.s dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]`
rm -f $dummy.s $dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha\ *:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# Should we change UNAME_MACHINE based on the output of uname instead
# of the specific Alpha model?
echo alpha-pc-interix
exit 0 ;;
21064:Windows_NT:50:3)
echo alpha-dec-winnt3.5
@@ -112,6 +135,9 @@ EOF
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
exit 0 ;;
arc64:OpenBSD:*:*)
echo mips64el-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
@@ -130,6 +156,9 @@ EOF
wgrisc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;;
@@ -139,7 +168,7 @@ EOF
SR2?01:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
exit 0;;
Pyramid*:OSx*:*:*|MIS*:OSx*:*:*)
Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "`(/bin/universe) 2>/dev/null`" = att ; then
echo pyramid-pyramid-sysv3
@@ -147,9 +176,12 @@ EOF
echo pyramid-pyramid-bsd
fi
exit 0 ;;
NILE:*:*:dcosx)
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
@@ -195,6 +227,32 @@ EOF
atari*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
# > m68000). The system name ranges from "MiNT" over "FreeMiNT"
# to the lowercase version "mint" (or "freemint"). Finally
# the system name "TOS" denotes a system which is actually not
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
exit 0 ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
exit 0 ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
exit 0 ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
echo m68k-milan-mint${UNAME_RELEASE}
exit 0 ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
echo m68k-hades-mint${UNAME_RELEASE}
exit 0 ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
sun3*:NetBSD:*:*)
echo m68k-sun-netbsd${UNAME_RELEASE}
exit 0 ;;
@@ -216,6 +274,9 @@ EOF
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
macppc:NetBSD:*:*)
echo powerpc-apple-netbsd${UNAME_RELEASE}
exit 0 ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
exit 0 ;;
@@ -225,12 +286,16 @@ EOF
VAX*:ULTRIX*:*:*)
echo vax-dec-ultrix${UNAME_RELEASE}
exit 0 ;;
2020:CLIX:*:*)
2020:CLIX:*:* | 2430:CLIX:*:*)
echo clipper-intergraph-clix${UNAME_RELEASE}
exit 0 ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
sed 's/^ //' << EOF >dummy.c
int main (argc, argv) int argc; char **argv; {
sed 's/^ //' << EOF >$dummy.c
#ifdef __cplusplus
int main (int argc, char *argv[]) {
#else
int main (argc, argv) int argc; char *argv[]; {
#endif
#if defined (host_mips) && defined (MIPSEB)
#if defined (SYSTYPE_SYSV)
printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
@@ -245,10 +310,10 @@ EOF
exit (-1);
}
EOF
${CC-cc} dummy.c -o dummy \
&& ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm dummy.c dummy && exit 0
rm -f dummy.c dummy
$CC_FOR_BUILD $dummy.c -o $dummy \
&& ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
@@ -266,15 +331,18 @@ EOF
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
-o ${TARGET_BINARY_INTERFACE}x = x ] ; then
if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110]
then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
[ ${TARGET_BINARY_INTERFACE}x = x ]
then
echo m88k-dg-dgux${UNAME_RELEASE}
else
else
echo m88k-dg-dguxbcs${UNAME_RELEASE}
fi
else
echo i586-dg-dgux${UNAME_RELEASE}
fi
else echo i586-dg-dgux${UNAME_RELEASE}
fi
exit 0 ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
@@ -300,7 +368,7 @@ EOF
exit 0 ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
sed 's/^ //' << EOF >dummy.c
sed 's/^ //' << EOF >$dummy.c
#include <sys/systemcfg.h>
main()
@@ -311,8 +379,8 @@ EOF
exit(0);
}
EOF
${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
@@ -321,7 +389,8 @@ EOF
fi
exit 0 ;;
*:AIX:*:4)
if /usr/sbin/lsattr -EHl proc0 | grep POWER >/dev/null 2>&1; then
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
IBM_ARCH=powerpc
@@ -354,18 +423,50 @@ EOF
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
echo m68k-hp-bsd4.4
exit 0 ;;
9000/[3478]??:HP-UX:*:*)
9000/[34678]??:HP-UX:*:*)
case "${UNAME_MACHINE}" in
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/7?? | 9000/8?[1679] ) HP_ARCH=hppa1.1 ;;
9000/8?? ) HP_ARCH=hppa1.0 ;;
9000/[678][0-9][0-9])
sed 's/^ //' << EOF >$dummy.c
#include <stdlib.h>
#include <unistd.h>
int main ()
{
#if defined(_SC_KERNEL_BITS)
long bits = sysconf(_SC_KERNEL_BITS);
#endif
long cpu = sysconf (_SC_CPU_VERSION);
switch (cpu)
{
case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
case CPU_PA_RISC2_0:
#if defined(_SC_KERNEL_BITS)
switch (bits)
{
case 64: puts ("hppa2.0w"); break;
case 32: puts ("hppa2.0n"); break;
default: puts ("hppa2.0"); break;
} break;
#else /* !defined(_SC_KERNEL_BITS) */
puts ("hppa2.0"); break;
#endif
default: puts ("hppa1.0"); break;
}
exit (0);
}
EOF
(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
rm -f $dummy.c $dummy
esac
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
3050*:HI-UX:*:*)
sed 's/^ //' << EOF >dummy.c
sed 's/^ //' << EOF >$dummy.c
#include <unistd.h>
int
main ()
@@ -390,8 +491,8 @@ EOF
exit (0);
}
EOF
${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
@@ -400,6 +501,9 @@ EOF
9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd
exit 0 ;;
*9??*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix
exit 0 ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
echo hppa1.1-hp-osf
exit 0 ;;
@@ -416,6 +520,9 @@ EOF
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
exit 0 ;;
hppa*:OpenBSD:*:*)
echo hppa-unknown-openbsd
exit 0 ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
exit 0 ;;
@@ -448,11 +555,14 @@ EOF
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE}
exit 0 ;;
CRAY*T3E:*:*:*)
echo alpha-cray-unicosmk${UNAME_RELEASE}
exit 0 ;;
CRAY-2:*:*:*)
echo cray2-cray-unicos
exit 0 ;;
F300:UNIX_System_V:*:*)
FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
@@ -465,26 +575,47 @@ EOF
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
i?86:BSD/386:*:* | *:BSD/OS:*:*)
i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
sparc*:BSD/OS:*:*)
echo sparc-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:BSD/OS:*:*)
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
if test -x /usr/bin/objformat; then
if test "elf" = "`/usr/bin/objformat`"; then
echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
exit 0
fi
fi
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit 0 ;;
*:NetBSD:*:*)
echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
exit 0 ;;
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
i*:CYGWIN*:*)
echo i386-pc-cygwin32
echo ${UNAME_MACHINE}-pc-cygwin
exit 0 ;;
i*:MINGW*:*)
echo i386-pc-mingw32
echo ${UNAME_MACHINE}-pc-mingw32
exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
# UNAME_MACHINE based on the output of uname instead of i386?
echo i386-pc-interix
exit 0 ;;
i*:UWIN*:*)
echo ${UNAME_MACHINE}-pc-uwin
exit 0 ;;
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin32
echo powerpcle-unknown-cygwin
exit 0 ;;
prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
@@ -493,9 +624,11 @@ EOF
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;;
*:Linux:*:*)
# The BFD linker knows what the default object file format is, so
# first see if it will tell us.
ld_help_string=`ld --help 2>&1`
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
ld_help_string=`cd /; ld --help 2>&1`
ld_supported_emulations=`echo $ld_help_string \
| sed -ne '/supported emulations:/!d
s/[ ][ ]*/ /g
@@ -503,15 +636,74 @@ EOF
s/ .*//
p'`
case "$ld_supported_emulations" in
i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;;
i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;;
sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;;
*ia64)
echo "${UNAME_MACHINE}-unknown-linux"
exit 0
;;
i?86linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
exit 0
;;
i?86coff)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0
;;
sparclinux)
echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
exit 0
;;
armlinux)
echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
exit 0
;;
elf32arm*)
echo "${UNAME_MACHINE}-unknown-linux-gnu"
exit 0
;;
armelf_linux*)
echo "${UNAME_MACHINE}-unknown-linux-gnu"
exit 0
;;
m68klinux)
echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
exit 0
;;
elf32ppc)
# Determine Lib Version
cat >$dummy.c <<EOF
#include <features.h>
#if defined(__GLIBC__)
extern char __libc_version[];
extern char __libc_release[];
#endif
main(argc, argv)
int argc;
char *argv[];
{
#if defined(__GLIBC__)
printf("%s %s\n", __libc_version, __libc_release);
#else
printf("unkown\n");
#endif
return 0;
}
EOF
LIBC=""
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
if test "$?" = 0 ; then
./$dummy | grep 1\.99 > /dev/null
if test "$?" = 0 ; then
LIBC="libc1"
fi
fi
rm -f $dummy.c $dummy
echo powerpc-unknown-linux-gnu${LIBC}
exit 0
;;
esac
if test "${UNAME_MACHINE}" = "alpha" ; then
sed 's/^ //' <<EOF >dummy.s
sed 's/^ //' <<EOF >$dummy.s
.globl main
.ent main
main:
@@ -529,9 +721,9 @@ EOF
.end main
EOF
LIBC=""
${CC-cc} dummy.s -o dummy 2>/dev/null
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
./dummy
./$dummy
case "$?" in
7)
UNAME_MACHINE="alpha"
@@ -548,22 +740,23 @@ EOF
16)
UNAME_MACHINE="alphaev6"
;;
esac
esac
objdump --private-headers dummy | \
objdump --private-headers $dummy | \
grep ld.so.1 > /dev/null
if test "$?" = 0 ; then
LIBC="libc1"
fi
fi
rm -f dummy.s dummy
fi
rm -f $dummy.s $dummy
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
elif test "${UNAME_MACHINE}" = "mips" ; then
cat >dummy.c <<EOF
main(argc, argv)
int argc;
char *argv[];
{
cat >$dummy.c <<EOF
#ifdef __cplusplus
int main (int argc, char *argv[]) {
#else
int main (argc, argv) int argc; char *argv[]; {
#endif
#ifdef __MIPSEB__
printf ("%s-unknown-linux-gnu\n", argv[1]);
#endif
@@ -573,8 +766,8 @@ main(argc, argv)
return 0;
}
EOF
${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
else
# Either a pre-BFD a.out linker (linux-gnuoldld)
# or one that does not give us useful --help.
@@ -593,12 +786,13 @@ EOF
;;
esac
# Determine whether the default compiler is a.out or elf
cat >dummy.c <<EOF
cat >$dummy.c <<EOF
#include <features.h>
main(argc, argv)
int argc;
char *argv[];
{
#ifdef __cplusplus
int main (int argc, char *argv[]) {
#else
int main (argc, argv) int argc; char *argv[]; {
#endif
#ifdef __ELF__
# ifdef __GLIBC__
# if __GLIBC__ >= 2
@@ -615,8 +809,8 @@ main(argc, argv)
return 0;
}
EOF
${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
fi ;;
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
# are messed up and put the nodename in both sysname and nodename.
@@ -632,10 +826,20 @@ EOF
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;;
i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
else
echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
fi
exit 0 ;;
i?86:*:5:7*)
# Fixed at (any) Pentium or better
UNAME_MACHINE=i586
if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
else
echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
fi
exit 0 ;;
i?86:*:3.2:*)
@@ -647,6 +851,10 @@ EOF
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
&& UNAME_MACHINE=i686
(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-pc-sysv32
@@ -693,7 +901,7 @@ EOF
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
i?86:LynxOS:2.*:*)
i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
TSUNAMI:LynxOS:2.*:*)
@@ -705,6 +913,9 @@ EOF
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
exit 0 ;;
RM*:ReliantUNIX-*:*:*)
echo mips-sni-sysv4
exit 0 ;;
RM*:SINIX-*:*:*)
echo mips-sni-sysv4
exit 0 ;;
@@ -735,19 +946,43 @@ EOF
news*:NEWS-OS:*:6*)
echo mips-sony-newsos6
exit 0 ;;
R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
else
echo mips-unknown-sysv${UNAME_RELEASE}
fi
exit 0 ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
exit 0 ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
echo powerpc-apple-beos
exit 0 ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
exit 0 ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
exit 0 ;;
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
exit 0 ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
*:Rhapsody:*:*)
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
*:QNX:*:4*)
echo i386-qnx-qnx${UNAME_VERSION}
exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
cat >dummy.c <<EOF
cat >$dummy.c <<EOF
#ifdef _SEQUENT_
# include <sys/types.h>
# include <sys/utsname.h>
@@ -785,7 +1020,10 @@ main ()
#endif
int version;
version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
if (version < 4)
printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
else
printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
exit (0);
#endif
@@ -845,8 +1083,8 @@ main ()
}
EOF
${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
# Apollos put the system type in the environment.

View File

@@ -1,50 +0,0 @@
/* config.h.in. Generated automatically from configure.in by autoheader. */
/* Define to empty if the keyword does not work. */
#undef const
/* Define if you have a working `mmap' system call. */
#undef HAVE_MMAP
/* Define as __inline if that's what the C compiler calls it. */
#undef inline
/* Define as the return type of signal handlers (int or void). */
#undef RETSIGTYPE
/* Define if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define if the X Window System is missing or not being used. */
#undef X_DISPLAY_MISSING
/* Other stuff */
#undef HAVE_IPC_H
#undef HAVE_SHM_H
#undef HAVE_XPM
#undef HAVE_XSHM_H
#undef HAVE_SYS_SELECT_H
#undef IPC_RMID_DEFERRED_RELEASE
#undef NO_FD_SET
#undef RESOURCE_BASE
#undef XINPUT_NONE
#undef XINPUT_GXI
#undef XINPUT_XFREE
#undef GTK_MAJOR_VERSION
#undef GTK_MINOR_VERSION
#undef GTK_MICRO_VERSION
#undef GTK_VERSION
/* Define as the return type of signal handlers (int or void). */
#undef RETSIGTYPE
/* Define if you have the getpagesize function. */
#undef HAVE_GETPAGESIZE
/* Define if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H

366
config.sub vendored
View File

@@ -1,6 +1,6 @@
#! /bin/sh
# Configuration validation subroutine script, version 1.1.
# Copyright (C) 1991, 92, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc.
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
# can handle that machine. It does not imply ALL GNU software can.
@@ -98,11 +98,21 @@ case $os in
os=
basic_machine=$1
;;
-sim | -cisco | -oki | -wec | -winbond)
os=
basic_machine=$1
;;
-scout)
;;
-wrs)
os=-vxworks
basic_machine=$1
;;
-hiux*)
os=-hiuxwe2
;;
-sco5)
os=sco3.2v5
os=-sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco4)
@@ -121,6 +131,9 @@ case $os in
os=-sco3.2v2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-udk*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-isc)
os=-isc2.2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -143,26 +156,37 @@ case $os in
-psos*)
os=-psos
;;
-mint | -mint[0-9]*)
basic_machine=m68k-atari
os=-mint
;;
esac
# Decode aliases for certain CPU-COMPANY combinations.
case $basic_machine in
# Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below.
tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
| arme[lb] | pyramid | mn10200 | mn10300 \
| tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
| alpha | alphaev5 | alphaev56 | we32k | ns16k | clipper \
| i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \
| mips64 | mipsel | mips64el | mips64orion | mips64orionel \
| mipstx39 | mipstx39el \
| sparc | sparclet | sparclite | sparc64 | v850)
tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
| arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
| 580 | i960 | h8300 \
| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
| alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \
| we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
| 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
| mips64orion | mips64orionel | mipstx39 | mipstx39el \
| mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
| mips64vr5000 | miprs64vr5000el | mcore \
| sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
| thumb | d10v | fr30)
basic_machine=$basic_machine-unknown
;;
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
i[3456]86)
i[34567]86)
basic_machine=$basic_machine-pc
;;
# Object if more than one company name word.
@@ -171,27 +195,45 @@ case $basic_machine in
exit 1
;;
# Recognize the basic CPU types with company name.
vax-* | tahoe-* | i[3456]86-* | i860-* | m32r-* | m68k-* | m68000-* \
# FIXME: clean up the formatting here.
vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
| m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
| power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \
| xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* \
| alpha-* | alphaev5-* | alphaev56-* | we32k-* | cydra-* \
| ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \
| power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
| xmp-* | ymp-* \
| hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
| alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \
| we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
| clipper-* | orion-* \
| sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
| sparc64-* | mips64-* | mipsel-* \
| mips64el-* | mips64orion-* | mips64orionel-* \
| mipstx39-* | mipstx39el-* \
| f301-*)
| sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
| mips64el-* | mips64orion-* | mips64orionel-* \
| mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
| mipstx39-* | mipstx39el-* | mcore-* \
| f301-* | armv*-* | t3e-* \
| m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
| thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
386bsd)
basic_machine=i386-unknown
os=-bsd
;;
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
basic_machine=m68000-att
;;
3b*)
basic_machine=we32k-att
;;
a29khif)
basic_machine=a29k-amd
os=-udi
;;
adobe68k)
basic_machine=m68010-adobe
os=-scout
;;
alliant | fx80)
basic_machine=fx80-alliant
;;
@@ -221,6 +263,10 @@ case $basic_machine in
basic_machine=m68k-apollo
os=-sysv
;;
apollo68bsd)
basic_machine=m68k-apollo
os=-bsd
;;
aux)
basic_machine=m68k-apple
os=-aux
@@ -297,6 +343,10 @@ case $basic_machine in
encore | umax | mmax)
basic_machine=ns32k-encore
;;
es1800 | OSE68k | ose68k | ose | OSE)
basic_machine=m68k-ericsson
os=-ose
;;
fx2800)
basic_machine=i860-alliant
;;
@@ -315,6 +365,14 @@ case $basic_machine in
basic_machine=h8300-hitachi
os=-hms
;;
h8300xray)
basic_machine=h8300-hitachi
os=-xray
;;
h8500hms)
basic_machine=h8500-hitachi
os=-hms
;;
harris)
basic_machine=m88k-harris
os=-sysv3
@@ -330,13 +388,30 @@ case $basic_machine in
basic_machine=m68k-hp
os=-hpux
;;
hp3k9[0-9][0-9] | hp9[0-9][0-9])
basic_machine=hppa1.0-hp
;;
hp9k2[0-9][0-9] | hp9k31[0-9])
basic_machine=m68000-hp
;;
hp9k3[2-9][0-9])
basic_machine=m68k-hp
;;
hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
hp9k6[0-9][0-9] | hp6[0-9][0-9])
basic_machine=hppa1.0-hp
;;
hp9k7[0-79][0-9] | hp7[0-79][0-9])
basic_machine=hppa1.1-hp
;;
hp9k78[0-9] | hp78[0-9])
# FIXME: really hppa2.0-hp
basic_machine=hppa1.1-hp
;;
hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
# FIXME: really hppa2.0-hp
basic_machine=hppa1.1-hp
;;
hp9k8[0-9][13679] | hp8[0-9][13679])
basic_machine=hppa1.1-hp
;;
hp9k8[0-9][0-9] | hp8[0-9][0-9])
@@ -345,27 +420,53 @@ case $basic_machine in
hppa-next)
os=-nextstep3
;;
hppaosf)
basic_machine=hppa1.1-hp
os=-osf
;;
hppro)
basic_machine=hppa1.1-hp
os=-proelf
;;
i370-ibm* | ibm*)
basic_machine=i370-ibm
os=-mvs
;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
i[3456]86v32)
i[34567]86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32
;;
i[3456]86v4*)
i[34567]86v4*)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv4
;;
i[3456]86v)
i[34567]86v)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv
;;
i[3456]86sol2)
i[34567]86sol2)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-solaris2
;;
i386mach)
basic_machine=i386-mach
os=-mach
;;
i386-vsta | vsta)
basic_machine=i386-unknown
os=-vsta
;;
i386-go32 | go32)
basic_machine=i386-unknown
os=-go32
;;
i386-mingw32 | mingw32)
basic_machine=i386-unknown
os=-mingw32
;;
i386-qnx | qnx)
basic_machine=i386-qnx
;;
iris | iris4d)
basic_machine=mips-sgi
case $os in
@@ -394,6 +495,10 @@ case $basic_machine in
miniframe)
basic_machine=m68000-convergent
;;
*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
basic_machine=m68k-atari
os=-mint
;;
mipsel*-linux*)
basic_machine=mipsel-unknown
os=-linux-gnu
@@ -408,10 +513,30 @@ case $basic_machine in
mips3*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
;;
monitor)
basic_machine=m68k-rom68k
os=-coff
;;
msdos)
basic_machine=i386-unknown
os=-msdos
;;
mvs)
basic_machine=i370-ibm
os=-mvs
;;
ncr3000)
basic_machine=i486-ncr
os=-sysv4
;;
netbsd386)
basic_machine=i386-unknown
os=-netbsd
;;
netwinder)
basic_machine=armv4l-rebel
os=-linux
;;
news | news700 | news800 | news900)
basic_machine=m68k-sony
os=-newsos
@@ -424,6 +549,10 @@ case $basic_machine in
basic_machine=mips-sony
os=-newsos
;;
necv70)
basic_machine=v70-nec
os=-sysv
;;
next | m*-next )
basic_machine=m68k-next
case $os in
@@ -449,9 +578,25 @@ case $basic_machine in
basic_machine=i960-intel
os=-nindy
;;
mon960)
basic_machine=i960-intel
os=-mon960
;;
np1)
basic_machine=np1-gould
;;
op50n-* | op60c-*)
basic_machine=hppa1.1-oki
os=-proelf
;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
os=-ose
;;
os68k)
basic_machine=m68k-none
os=-os68k
;;
pa-hitachi)
basic_machine=hppa1.1-hitachi
os=-hiuxwe2
@@ -469,25 +614,23 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pentium | p5)
basic_machine=i586-intel
pentium | p5 | k5 | k6 | nexen)
basic_machine=i586-pc
;;
pentiumpro | p6)
basic_machine=i686-intel
pentiumpro | p6 | 6x86)
basic_machine=i686-pc
;;
pentium-* | p5-*)
pentiumii | pentium2)
basic_machine=i786-pc
;;
pentium-* | p5-* | k5-* | k6-* | nexen-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-*)
pentiumpro-* | p6-* | 6x86-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
k5)
# We don't have specific support for AMD's K5 yet, so just call it a Pentium
basic_machine=i586-amd
;;
nexen)
# We don't have specific support for Nexgen yet, so just call it a Pentium
basic_machine=i586-nexgen
pentiumii-* | pentium2-*)
basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pn)
basic_machine=pn-gould
@@ -507,12 +650,20 @@ case $basic_machine in
ps2)
basic_machine=i386-ibm
;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
;;
rm[46]00)
basic_machine=mips-siemens
;;
rtpc | rtpc-*)
basic_machine=romp-ibm
;;
sa29200)
basic_machine=a29k-amd
os=-udi
;;
sequent)
basic_machine=i386-sequent
;;
@@ -520,6 +671,10 @@ case $basic_machine in
basic_machine=sh-hitachi
os=-hms
;;
sparclite-wrs)
basic_machine=sparclite-wrs
os=-vxworks
;;
sps7)
basic_machine=m68k-bull
os=-sysv2
@@ -527,6 +682,13 @@ case $basic_machine in
spur)
basic_machine=spur-unknown
;;
st2000)
basic_machine=m68k-tandem
;;
stratus)
basic_machine=i860-stratus
os=-sysv4
;;
sun2)
basic_machine=m68000-sun
;;
@@ -571,6 +733,10 @@ case $basic_machine in
basic_machine=i386-sequent
os=-dynix
;;
t3e)
basic_machine=t3e-cray
os=-unicos
;;
tx39)
basic_machine=mipstx39-unknown
;;
@@ -588,6 +754,10 @@ case $basic_machine in
basic_machine=a29k-nyu
os=-sym1
;;
v810 | necv810)
basic_machine=v810-nec
os=-none
;;
vaxv)
basic_machine=vax-dec
os=-sysv
@@ -611,6 +781,14 @@ case $basic_machine in
basic_machine=a29k-wrs
os=-vxworks
;;
w65*)
basic_machine=w65-wdc
os=-none
;;
w89k-*)
basic_machine=hppa1.1-winbond
os=-proelf
;;
xmp)
basic_machine=xmp-cray
os=-unicos
@@ -618,6 +796,10 @@ case $basic_machine in
xps | xps100)
basic_machine=xps100-honeywell
;;
z8k-*-coff)
basic_machine=z8k-unknown
os=-sim
;;
none)
basic_machine=none-none
os=-none
@@ -625,6 +807,15 @@ case $basic_machine in
# Here we handle the default manufacturer of certain CPU types. It is in
# some cases the only manufacturer, in others, it is the most popular.
w89k)
basic_machine=hppa1.1-winbond
;;
op50n)
basic_machine=hppa1.1-oki
;;
op60c)
basic_machine=hppa1.1-oki
;;
mips)
if [ x$os = x-linux-gnu ]; then
basic_machine=mips-unknown
@@ -647,7 +838,7 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
sparc)
sparc | sparcv9)
basic_machine=sparc-sun
;;
cydra)
@@ -659,6 +850,16 @@ case $basic_machine in
orion105)
basic_machine=clipper-highlevel
;;
mac | mpw | mac-mpw)
basic_machine=m68k-apple
;;
pmac | pmac-mpw)
basic_machine=powerpc-apple
;;
c4x*)
basic_machine=c4x-none
os=-coff
;;
*)
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
exit 1
@@ -712,13 +913,21 @@ case $os in
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv*)
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
| -macos* | -mpw* | -magic* | -mon960* | -lnews*)
;;
-mac*)
os=`echo $os | sed -e 's|mac|macos|'`
;;
-linux*)
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
@@ -728,6 +937,9 @@ case $os in
-sunos6*)
os=`echo $os | sed -e 's|sunos6|solaris3|'`
;;
-opened*)
os=-openedition
;;
-osfrose*)
os=-osfrose
;;
@@ -743,6 +955,9 @@ case $os in
-acis*)
os=-aos
;;
-386bsd)
os=-bsd
;;
-ctix* | -uts*)
os=-sysv
;;
@@ -762,6 +977,9 @@ case $os in
-oss*)
os=-sysv3
;;
-qnx)
os=-qnx4
;;
-svr4)
os=-sysv4
;;
@@ -774,9 +992,18 @@ case $os in
# This must come after -sysvr4.
-sysv*)
;;
-ose*)
os=-ose
;;
-es1800*)
os=-ose
;;
-xenix)
os=-xenix
;;
-*mint | -*MiNT)
os=-mint
;;
-none)
;;
*)
@@ -802,6 +1029,9 @@ case $basic_machine in
*-acorn)
os=-riscix1.2
;;
arm*-rebel)
os=-linux
;;
arm*-semi)
os=-aout
;;
@@ -823,15 +1053,36 @@ case $basic_machine in
# default.
# os=-sunos4
;;
m68*-cisco)
os=-aout
;;
mips*-cisco)
os=-elf
;;
mips*-*)
os=-elf
;;
*-tti) # must be before sparc entry or we get the wrong os.
os=-sysv3
;;
sparc-* | *-sun)
os=-sunos4.1.1
;;
*-be)
os=-beos
;;
*-ibm)
os=-aix
;;
*-wec)
os=-proelf
;;
*-winbond)
os=-proelf
;;
*-oki)
os=-proelf
;;
*-hp)
os=-hpux
;;
@@ -895,6 +1146,18 @@ case $basic_machine in
f301-fujitsu)
os=-uxpv
;;
*-rom68k)
os=-coff
;;
*-*bug)
os=-coff
;;
*-apple)
os=-macos
;;
*-atari*)
os=-mint
;;
*)
os=-none
;;
@@ -916,9 +1179,15 @@ case $basic_machine in
-aix*)
vendor=ibm
;;
-beos*)
vendor=be
;;
-hpux*)
vendor=hp
;;
-mpeix*)
vendor=hp
;;
-hiux*)
vendor=hitachi
;;
@@ -934,7 +1203,7 @@ case $basic_machine in
-genix*)
vendor=ns
;;
-mvs*)
-mvs* | -opened*)
vendor=ibm
;;
-ptx*)
@@ -946,6 +1215,15 @@ case $basic_machine in
-aux*)
vendor=apple
;;
-hms*)
vendor=hitachi
;;
-mpw* | -macos*)
vendor=apple
;;
-*mint | -*MiNT)
vendor=atari
;;
esac
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;;

View File

@@ -1,21 +1,62 @@
# Process this file with autoconf to produce a configure script.
AC_INIT(gdk/gdktypes.h)
# In the following, there are a the following variants
# of GLib cflags and libs variables
#
# GLIB_CFLAGS: cflags for compiling libraries and example progs
# GLIB_LIBS: libraries for linking example programs
# GLIB_DEPLIBS: libraries for linking libraries against
# glib_cflags: cflags to store in gtk-config
# glib_libs: libs to store in gtk-config
# glib_thread_cflags: cflags to store in gtk-config for gtk-config gthread
# glib_thread_libs: libs to store in gtk-config for gtk-config gthread
# Save this value here, since automake will set cflags later
cflags_set=${CFLAGS+set}
GTK_MAJOR_VERSION=0
GTK_MINOR_VERSION=99
GTK_MICRO_VERSION=5
dnl we need to AC_DIVERT_PUSH/AC_DIVERT_POP these variable definitions so they
dnl are available for $ac_help expansion (don't we all *love* autoconf?)
AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
#
# Making releases:
# GTK_MICRO_VERSION += 1;
# GTK_INTERFACE_AGE += 1;
# GTK_BINARY_AGE += 1;
# if any functions have been added, set GTK_INTERFACE_AGE to 0.
# if backwards compatibility has been broken,
# set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
#
GTK_MAJOR_VERSION=1
GTK_MINOR_VERSION=2
GTK_MICRO_VERSION=10
GTK_INTERFACE_AGE=1
GTK_BINARY_AGE=10
GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION
dnl
AC_DIVERT_POP()dnl
AC_SUBST(GTK_MAJOR_VERSION)
AC_SUBST(GTK_MINOR_VERSION)
AC_SUBST(GTK_MICRO_VERSION)
AC_SUBST(GTK_INTERFACE_AGE)
AC_SUBST(GTK_BINARY_AGE)
AC_SUBST(GTK_VERSION)
# libtool versioning
LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
LT_REVISION=$GTK_INTERFACE_AGE
LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
AC_SUBST(LT_RELEASE)
AC_SUBST(LT_CURRENT)
AC_SUBST(LT_REVISION)
AC_SUBST(LT_AGE)
# For automake.
VERSION=$GTK_VERSION
PACKAGE=gtk+
# Configure glib
AC_CONFIG_SUBDIRS(glib)
# Save this value here, since automake will set cflags later
cflags_set=${CFLAGS+set}
@@ -33,61 +74,222 @@ AM_MAINTAINER_MODE
AC_CANONICAL_HOST
dnl figure debugging default, prior to $ac_help setup
dnl
AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
if test `expr $GTK_MINOR_VERSION \% 2` = 1 ; then
debug_default=yes
else
debug_default=minimum
fi
AC_DIVERT_POP()dnl
dnl declare --enable-* args and collect ac_help strings
AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],,enable_debug=$debug_default)
AC_ARG_ENABLE(shm, [ --enable-shm support shared memory if available [default=yes]],
echo $enable_shm, enable_shm="yes")
AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=minimum]],,enable_debug=minimum)
AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]],
, enable_ansi=no)
AC_ARG_WITH(glib, [ --with-glib=DIR Use uninstalled copy of glib])
AC_ARG_ENABLE(xim, [ --enable-xim support XIM [default=yes]],
echo $enable_xim, enable_xim="yes")
, enable_xim="yes")
AC_ARG_ENABLE(xim_inst, [ --disable-xim-inst does not use xim instantiate callback],
, enable_xim_inst="maybe")
AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],,enable_rebuilds=yes)
AC_ARG_WITH(locale, [ --with-locale=LOCALE locale name you want to use ])
AC_ARG_WITH(xinput, [ --with-xinput=[no/gxi/xfree] support XInput ])
AC_ARG_WITH(native_locale, [ --with-native-locale=[yes/no] Use native locale support [default=no]],,with_native_locale=no)
if test "x$enable_debug" = "xyes"; then
test "$cflags_set" = set || CFLAGS="-g"
CFLAGS="$CFLAGS -DG_ENABLE_DEBUG"
test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
else
if test "x$enable_debug" = "xno"; then
CFLAGS="$CFLAGS -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DGTK_NO_CHECK_CASTS"
GTK_DEBUG_FLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DGTK_NO_CHECK_CASTS"
else
CFLAGS="$CFLAGS -DGTK_NO_CHECK_CASTS"
GTK_DEBUG_FLAGS="-DGTK_NO_CHECK_CASTS"
fi
fi
AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}")
# Build time sanity check...
AM_SANITY_CHECK
# Checks for programs.
AC_PROG_CC
AC_ISC_POSIX
AM_PROG_CC_STDC
AC_PROG_INSTALL
AC_PROG_MAKE_SET
changequote(,)dnl
if test "x$GCC" = "xyes"; then
if test -z "`echo "$CFLAGS" | grep "\-Wall" 2> /dev/null`" ; then
CFLAGS="$CFLAGS -Wall"
fi
case " $CFLAGS " in
*[\ \ ]-Wall[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -Wall" ;;
esac
if test "x$enable_ansi" = "xyes"; then
if test -z "`echo "$CFLAGS" | grep "\-ansi" 2> /dev/null`" ; then
CFLAGS="$CFLAGS -ansi"
fi
case " $CFLAGS " in
*[\ \ ]-ansi[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -ansi" ;;
esac
if test -z "`echo "$CFLAGS" | grep "\-pedantic" 2> /dev/null`" ; then
CFLAGS="$CFLAGS -pedantic"
fi
case " $CFLAGS " in
*[\ \ ]-pedantic[\ \ ]*) ;;
*) CFLAGS="$CFLAGS -pedantic" ;;
esac
fi
fi
changequote([,])dnl
if test "x$enable_xim" = "xyes"; then
CFLAGS="$CFLAGS -DUSE_XIM"
# Honor aclocal flags
ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
# define a MAINT-like variable REBUILD which is set if Perl
# and awk are found, so autogenerated sources can be rebuilt
AC_PROG_AWK
AC_CHECK_PROGS(PERL, perl5 perl)
# We would like indent, but don't require it.
AC_CHECK_PROG(INDENT, indent, indent)
REBUILD=\#
if test "x$enable_rebuilds" = "xyes" && \
test -n "$PERL" && \
$PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 && \
test -n "$AWK" ; then
REBUILD=
fi
AC_SUBST(REBUILD)
AC_MSG_CHECKING(whether make is GNU Make)
STRIP_BEGIN=
STRIP_END=
if $ac_make --version 2>/dev/null | grep '^GNU Make ' >/dev/null ; then
STRIP_BEGIN='$(strip $(STRIP_DUMMY)'
STRIP_END=')'
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
dnl some Make 3.79 $(strip ) versions are broken and require an empty arg
STRIP_DUMMY=
AC_SUBST(STRIP_DUMMY)
AC_SUBST(STRIP_BEGIN)
AC_SUBST(STRIP_END)
# i18n stuff
ALL_LINGUAS="az ca cs da de el es et eu fi fr ga gl hr hu it ja ko lt nl no nn pl pt pt_BR ro ru sk sl sp sr sv tr uk vi wa zh_CN.GB2312 zh_TW.Big5"
AM_GTK_GNU_GETTEXT
LIBS="$LIBS $INTLLIBS"
# AM_GTK_GNU_GETTEXT above substs $DATADIRNAME
# this is the directory where the *.{mo,gmo} files are installed
gtklocaledir='${prefix}/${DATADIRNAME}/locale'
AC_SUBST(gtklocaledir)
dnl The DU4 header files don't provide library prototypes unless
dnl -std1 is given to the native cc.
AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
gtk_save_LIBS=$LIBS
LIBS="$LIBS -lm"
AC_TRY_RUN([#include <math.h>
int main (void) { return (log(1) != log(1.)); }],
AC_MSG_RESULT(none needed),
gtk_save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -std1"
AC_TRY_RUN([#include <math.h>
int main (void) { return (log(1) != log(1.)); }],
AC_MSG_RESULT(-std1),
AC_MSG_RESULT()
CFLAGS=$gtk_save_CFLAGS
AC_MSG_WARN(
[No ANSI prototypes found in library. (-std1 didn't work.)]),
true
),
AC_MSG_RESULT(none needed)
)
LIBS=$gtk_save_LIBS
dnl NeXTStep cc seems to need this
AC_MSG_CHECKING([for extra flags for POSIX compliance])
AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
AC_MSG_RESULT(none needed),
gtk_save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -posix"
AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
AC_MSG_RESULT(-posix),
AC_MSG_RESULT()
CFLAGS=$gtk_save_CFLAGS
AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
if test x$with_glib = xyes ; then
AC_MSG_ERROR([
*** Directory must be specified for --with-glib])
fi
AC_DEFINE_UNQUOTED(GTK_MAJOR_VERSION, $GTK_MAJOR_VERSION)
AC_DEFINE_UNQUOTED(GTK_MINOR_VERSION, $GTK_MINOR_VERSION)
AC_DEFINE_UNQUOTED(GTK_MICRO_VERSION, $GTK_MICRO_VERSION)
AC_DEFINE_UNQUOTED(GTK_VERSION, "$GTK_VERSION")
if test x$with_glib = x ; then
# Look for separately installed glib
AM_PATH_GLIB(1.2.8,,
AC_MSG_ERROR([
*** GLIB 1.2.8 or better is required. The latest version of GLIB
*** is always available from ftp://ftp.gtk.org/.]),
gmodule gthread)
# we do not want to make all gtk progs to link to thread libraries.
glib_cflags=`$GLIB_CONFIG glib gmodule --cflags`
glib_thread_cflags="$GLIB_CFLAGS"
glib_libs=`$GLIB_CONFIG glib gmodule --libs`
glib_thread_libs="$GLIB_LIBS"
GLIB_LIBS="$glib_libs"
GLIB_DEPLIBS="$glib_libs"
else
# Use uninstalled glib (assume they got the version right)
GLIB_CONFIG=$with_glib/glib-config
if test -x $GLIB_CONFIG ; then
:
else
AC_MSG_ERROR([GLIB directory ($with_glib) not present or not configured])
fi
# For use in gtk-config
glib_cflags=`$GLIB_CONFIG --cflags gmodule`
glib_thread_cflags=`$GLIB_CONFIG --cflags gmodule gthread`
glib_libs=`$GLIB_CONFIG --libs gmodule`
glib_thread_libs=`$GLIB_CONFIG --libs gmodule gthread`
glib_release=`$GLIB_CONFIG --version | sed 's%\\.[[0-9]]*$%%'`
# canonicalize relative paths
case $with_glib in
/*)
glib_dir=$with_glib
;;
*)
glib_dir="\$(top_builddir)/$with_glib"
;;
esac
GLIB_CFLAGS="-I$glib_dir -I$glib_dir/gmodule"
GLIB_LIBS="$glib_dir/libglib.la $glib_dir/gmodule/libgmodule.la"
GLIB_DEPLIBS=
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(GLIB_LIBS)
fi
AC_SUBST(glib_cflags)
AC_SUBST(glib_libs)
AC_SUBST(glib_thread_cflags)
AC_SUBST(glib_thread_libs)
AC_SUBST(GLIB_DEPLIBS)
# Find the X11 include and library directories
AC_PATH_X
@@ -100,16 +302,76 @@ fi
saved_cflags="$CFLAGS"
saved_ldflags="$LDFLAGS"
CFLAGS="$X_CFLAGS"
LDFLAGS="$X_LDFLAGS $X_LIBS"
CFLAGS="$CFLAGS $X_CFLAGS"
LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS"
if test "x$no_x" = "xyes"; then
AC_MSG_ERROR([
*** X libraries or include files not found. Check 'config.log' for
*** more details.])
fi
# Checks for libraries.
# Check for the X11 library
AC_CHECK_LIB(X11, XOpenDisplay, x_libs="-lX11 $X_EXTRA_LIBS", no_x11_lib=yes, $X_EXTRA_LIBS)
AC_CHECK_LIB(X11, XOpenDisplay, x_libs="-lX11 $X_EXTRA_LIBS",
AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
$X_EXTRA_LIBS)
if test "x$enable_shm" = "xyes"; then
# Check for the Xext library (needed for XShm extention)
AC_CHECK_LIB(Xext, XShmAttach, x_libs="-lXext $x_libs", no_xext_lib=yes, $x_libs)
AC_CHECK_LIB(Xext, XShmAttach,
x_libs="-lXext $x_libs",
# On AIX, it is in XextSam instead, but we still need -lXext
AC_CHECK_LIB(XextSam, XShmAttach,
x_libs="-lXextSam -lXext $x_libs",
no_xext_lib=yes, $x_libs),
$x_libs)
fi
# Check for shaped window extension
AC_CHECK_LIB(Xext, XShapeCombineMask,
if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then
x_libs="-lXext $x_libs"
fi
AC_DEFINE(HAVE_SHAPE_EXT),
,
$x_libs)
# Check for XConvertCase (X11R6 specific)
AC_CHECK_LIB(X11, XConvertCase,
AC_DEFINE(HAVE_XCONVERTCASE),
,
$x_libs)
# Check for XIM support.
AC_CHECK_LIB(X11, XUnregisterIMInstantiateCallback,
: ,
enable_xim_inst="no",
$x_libs)
# On Solaris, calling XRegisterIMInstantiateCallback seems to
# cause an immediate segfault, so we disable it, unless
# the user specifically forces it to be on.
if test x$enable_xim_inst = xmaybe ; then
case host in
*-*-solaris*)
enable_xim_inst="no"
;;
*)
enable_xim_inst="yes"
;;
esac
fi
if test "x$enable_xim" = "xyes"; then
GTK_XIM_FLAGS="-DUSE_XIM"
if test "x$enable_xim_inst" = "xyes"; then
AC_DEFINE(USE_X11R6_XIM)
fi
fi
x_cflags="$X_CFLAGS"
@@ -117,17 +379,22 @@ x_ldflags="$X_LDFLAGS $X_LIBS"
# set up things for XInput
if test "x$with_xinput" = "xgxi" || test "x$with_xinput" = "xyes"; then
if test "x$with_xinput" = "xgxi"; then
AC_MSG_WARN([
*** The generic XInput support has not been tested for several years
*** and is not known to work with any currently available X servers])
AC_DEFINE(XINPUT_GXI)
xinput_progs=gxid
x_libs="-lXi $x_libs"
elif test "x$with_xinput" = "xxfree"; then
elif test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
AC_DEFINE(XINPUT_XFREE)
x_libs="-lXi $x_libs"
else
AC_DEFINE(XINPUT_NONE)
fi
CFLAGS="$saved_cflags"
LDFLAGS="$saved_ldflags"
AC_SUBST(x_cflags)
AC_SUBST(x_includes)
@@ -135,46 +402,11 @@ AC_SUBST(x_ldflags)
AC_SUBST(x_libs)
AC_SUBST(xinput_progs)
CFLAGS="$saved_cflags"
LDFLAGS="$saved_ldflags"
if test "x$enable_shm" = "xyes"; then
# Check for shared memory
AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
# Check whether shmctl IPC_RMID allowes subsequent attaches
if test "$ac_cv_header_sys_shm_h" = "yes"; then
AC_MSG_CHECKING(whether shmctl IPC_RMID allowes subsequent attaches)
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
int main()
{
int id;
char *shmaddr;
id = shmget (IPC_PRIVATE, 4, IPC_CREAT | 0777);
if (id == -1)
exit (2);
shmaddr = shmat (id, 0, 0);
shmctl (id, IPC_RMID, 0);
if ((char*) shmat (id, 0, 0) == (char*) -1)
{
shmdt (shmaddr);
exit (1);
}
shmdt (shmaddr);
shmdt (shmaddr);
exit (0);
}
],
AC_DEFINE(IPC_RMID_DEFERRED_RELEASE)
AC_MSG_RESULT(yes),
AC_MSG_RESULT(no),
AC_MSG_RESULT(assuming no))
fi
# Check for the X shared memory extension header file
AC_MSG_CHECKING(X11/extensions/XShm.h)
if test "x$no_xext_lib" = "xyes"; then
@@ -191,27 +423,6 @@ if test "x$enable_shm" = "xyes"; then
fi
fi
# Check for private display resource base variable
AC_MSG_CHECKING(resource base field in XDisplay)
AC_CACHE_VAL(gtk_cv_display_resource_base,
[AC_TRY_RUN([
#define XLIB_ILLEGAL_ACCESS
#include <X11/Xlib.h>
int
main ()
{
Display *display;
return 0;
display->resource_base;
}],
gtk_cv_display_resource_base="resource_base",
gtk_cv_display_resource_base="private3")])
AC_MSG_RESULT($gtk_cv_display_resource_base)
AC_DEFINE_UNQUOTED(RESOURCE_BASE, gdk_display->$gtk_cv_display_resource_base)
# Check if X_LOCALE definition is necessary
AC_MSG_CHECKING(need -DX_LOCALE)
@@ -226,11 +437,45 @@ main ()
return setlocale (LC_ALL, "${with_locale}") == NULL;
}],
need_x_locale=no,
need_x_locale=yes)
need_x_locale=yes,
need_x_locale=no)
AC_MSG_RESULT($need_x_locale)
use_native_locale=no
if test $need_x_locale = yes; then
CFLAGS="$CFLAGS -DX_LOCALE"
GTK_LOCALE_FLAGS="-DX_LOCALE"
else
if test x$with_native_locale = xyes ; then
AC_MSG_CHECKING(functioning locale support)
AC_TRY_COMPILE([#include <stdlib.h>],[
char c;
if (MB_CUR_MAX == 1) {
wctomb(&c, 42);
}
],use_native_locale=yes,)
AC_MSG_RESULT($use_native_locale)
fi
fi
if test x$use_native_locale = xyes ; then
AC_MSG_CHECKING(if sizeof(wchar_t) == 4)
AC_TRY_RUN([
#include <stdlib.h>
int
main ()
{
return (sizeof(wchar_t) == 4) ? 0 : 1;
}],
,use_native_locale=no,:)
AC_MSG_RESULT($use_native_locale)
fi
if test $use_native_locale = yes ; then
AC_DEFINE(USE_NATIVE_LOCALE)
fi
# Checks for header files.
@@ -238,26 +483,93 @@ AC_HEADER_STDC
# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_C_INLINE
# Checks for library functions.
AC_TYPE_SIGNAL
AC_FUNC_MMAP
# Check for sys/select.h
AC_CHECK_FUNCS(getresuid)
AC_TYPE_UID_T
AC_MSG_CHECKING([fd_set and sys/select])
# Check if <sys/select.h> needs to be included for fd_set
AC_MSG_CHECKING([for fd_set])
AC_TRY_COMPILE([#include <sys/types.h>],
[fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
if test $gtk_ok = no; then
if test $gtk_ok = yes; then
AC_MSG_RESULT([yes, found in sys/types.h])
else
AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes)
if test $gtk_ok = yes; then
AC_DEFINE(HAVE_SYS_SELECT_H)
AC_MSG_RESULT([yes, found in sys/select.h])
else
AC_DEFINE(NO_FD_SET)
AC_MSG_RESULT(no)
fi
fi
AC_MSG_RESULT($gtk_ok)
if test $gtk_ok = no; then
AC_DEFINE(NO_FD_SET)
fi
AC_OUTPUT(Makefile gtk+.xconfig docs/Makefile gdk/Makefile gtk/Makefile)
# Duplicate `widechar' tests from `glib'.
# Check for wchar.h
AC_MSG_CHECKING(for wchar.h)
AC_TRY_CPP([#include <wchar.h>], gtk_ok=yes, gtk_ok=no)
if test $gtk_ok = yes; then
AC_DEFINE(HAVE_WCHAR_H,1,[Define if wchar.h exists])
fi
AC_MSG_RESULT($gtk_ok)
# Check for wctype.h (for iswalnum)
AC_MSG_CHECKING(for wctype.h)
AC_TRY_CPP([#include <wctype.h>], gtk_ok=yes, gtk_ok=no)
if test $gtk_ok = yes; then
AC_DEFINE(HAVE_WCTYPE_H,1,[Define if wctype.h exists])
fi
AC_MSG_RESULT($gtk_ok)
# in Solaris 2.5, `iswalnum' is in -lw
GDK_WLIBS=
AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
# The following is necessary for Linux libc-5.4.38
oLIBS="$LIBS"
LIBS="$LIBS $GDK_WLIBS"
AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
AC_TRY_LINK([#include <stdlib.h>],[
#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
# ifdef HAVE_WCTYPE_H
# include <wctype.h>
# else
# ifdef HAVE_WCHAR_H
# include <wchar.h>
# endif
# endif
#else
# define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
#endif
iswalnum((wchar_t) 0);
], gtk_ok=yes, gtk_ok=no)
LIBS="$oLIBS"
if test $gtk_ok = no; then
AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Define if the wctype function is broken])
GDK_WLIBS=
fi
AC_MSG_RESULT($gtk_ok)
AC_SUBST(GDK_WLIBS)
AC_SUBST(GTK_DEBUG_FLAGS)
AC_SUBST(GTK_XIM_FLAGS)
AC_SUBST(GTK_LOCALE_FLAGS)
AC_OUTPUT([
gtk+.spec
docs/gtk-config.1
Makefile
gtk-config
po/Makefile.in
docs/Makefile
gdk/Makefile
gtk/Makefile
gtk/gtkfeatures.h
gdk.pc
gtk+.pc
], [chmod +x gtk-config])

18
debian/README.debian vendored Normal file
View File

@@ -0,0 +1,18 @@
libgtk1 for Debian
----------------------
The GIMP Tool Kit (gtk) is a set of widgets to help you program
programs for the X Windowing System easily and powerfully.
gtk is the moving force behind The GNU Image Manipulation Program (The
GIMP) -- the number one freely-available image editing and creation
program available.
gtk is rapidly under development, and the source tree has officially
been separated from The GIMP now, as other teams of programmers
are beginning to write software using its great widget set -- like
GNOME, a desktop interface for X, and gzilla, a freely available
web browser for X.
Ben Gertzfield <che@debian.org>, Mon, 29 Sep 1997 13:11:45 -0700

62
debian/build vendored Executable file
View File

@@ -0,0 +1,62 @@
#!/usr/bin/perl -w
# Adjust debian/changelog and build a new
# Debian package of a CVS archive.
# Written 17 November 1998 by Ben Gertzfield
# <che@debian.org>
# This work is released under the GNU
# General Public License, version 2 or
# later.
use strict;
use diagnostics;
use File::Copy;
my $maintainer = 'Ben Gertzfield <che@debian.org>';
my @date = localtime;
my $datestr = sprintf("%d%.2d%.2d", $date[5] + 1900, $date[4] + 1, $date[3]);
my $revision = '01';
open (CHANGELOG, 'debian/changelog') or die "Couldn't open debian/changelog: $!\n";
$_ = <CHANGELOG>;
chomp;
close CHANGELOG;
my ($package, $last_date, $last_revision) = /^(.*?) \((.*?)\.(.*)?\)/;
if ($last_date eq $datestr) {
$revision = sprintf("%.2d", $last_revision + 1);
}
my $new_version = "$datestr.$revision";
copy('debian/changelog', 'debian/changelog.old') or die "Couldn't copy debian/changelog to debian/changelog.old: $!\n";
open(NEWCHANGELOG, ">debian/changelog") or die "Couldn't open debian/changelog for writing: $!\n";
print NEWCHANGELOG "$package ($new_version) unstable; urgency=low\n\n * CVS snapshot build at " . scalar localtime() . "\n\n -- $maintainer " . `date -R` . "\n";
open(OLDCHANGELOG, "debian/changelog.old") or die "Couldn't open debian/changelog.old: $!\n";
while (<OLDCHANGELOG>) {
print NEWCHANGELOG;
}
close OLDCHANGELOG;
close NEWCHANGELOG;
unlink('debian/changelog.old') or die "Couldn't unlink debian/changelog.old: $!\n";
open(NEWVERSION, '>debian/version') or die "Couldn't open debian/version for writing: $!\n";
print NEWVERSION "$new_version\n";
close NEWVERSION;
system('dpkg-buildpackage -b -rfakeroot -us -uc');
unlink 'debian/version' or die "Couldn't unlink debian/version: $!\n";

10
debian/changelog vendored Normal file
View File

@@ -0,0 +1,10 @@
gtk+-cvs (19981116.01) unstable; urgency=low
* First test build from CVS
-- Ben Gertzfield <che@debian.org> Tue, 17 Nov 1998 12:02:13 -0800
Local variables:
mode: debian-changelog
add-log-mailing-address: "che@debian.org"
End:

81
debian/control vendored Normal file
View File

@@ -0,0 +1,81 @@
Source: gtk+-cvs
Priority: extra
Section: libs
Maintainer: Ben Gertzfield <che@debian.org>
Standards-Version: 2.4.0.0
Package: libgtk-cvs-1.1
Architecture: any
Section: libs
Depends: ${shlibs:Depends}
Conflicts: libgtk-dev (<< 1:1.0.2), libgtk1.1
Description: CVS build of the GIMP Toolkit set of widgets for X
**THIS IS NOT AN OFFICIAL DEBIAN PACKAGE! THIS IS AN AUTOMATED CVS
BUILD OF THE GTK+ LIBRARIES! BEWARE! IT MAY NOT WORK!**
.
The GIMP Toolkit is a freely available set of widgets for X.
GTK is easy to use, and has been implemented in such projects as
The GNU Image Manipulation Program (The GIMP), GNOME, a GNU
desktop set of utilities for X, and gzilla, a GNU web-browser.
.
This is the unstable 1.1 branch of GTK. It is not intended for use
with stable projects!
Package: libgtk-cvs-dev
Architecture: any
Section: devel
Depends: libgtk-cvs-1.1 (=${Source-Version}), libglib-cvs-dev
Suggests: libgtk-cvs-doc
Provides: libgtk1.1-dev
Replaces: libgtk1.1-dev
Conflicts: libgtk-dev, libgtk1 (<< 1:1.0.4), libgtk1.1-dev
Description: CVS build of development files for the GIMP Toolkit
**THIS IS NOT AN OFFICIAL DEBIAN PACKAGE! THIS IS AN AUTOMATED CVS
BUILD OF THE GTK+ LIBRARIES! BEWARE! IT MAY NOT WORK!**
.
This package contains the header files and static libraries for the
GIMP Toolkit set of widgets for X.
.
This is the unstable, 1.1 branch of GTK+. This is not intended for
use with stable releases of programs!
.
Install this package if you wish to develop your own X programs using
the GIMP Toolkit 1.1, or if you wish to compile your own plug-ins for
The GIMP.
Package: libgtk-cvs-doc
Architecture: all
Section: doc
Conflicts: libgtk-dev (<< 1:0.99.4), libgtk-doc, libgtk1.1-doc
Description: CVS build of documentation for the GIMP Toolkit
**THIS IS NOT AN OFFICIAL DEBIAN PACKAGE! THIS IS AN AUTOMATED CVS
BUILD OF THE GTK+ LIBRARIES! BEWARE! IT MAY NOT WORK!**
.
This package contains lots of info-files, HTML docs, FAQs, and
other handy documentation about the GIMP Toolkit set of widgets
for X.
.
This package documents the unstable 1.1 release of the GIMP Toolkit.
.
Install this package if you want to have lots of info about the
GIMP toolkit when you're programming.
Package: libgtk-cvs-dbg
Architecture: any
Section: devel
Depends: libgtk-cvs-1.1 (= ${Source-Version}), libgtk-cvs-dev (= ${Source-Version})
Suggests: libgtk-cvs-doc
Conflicts: libgtk1.1-dbg
Description: CVS build of debugging files for the GIMP Toolkit
**THIS IS NOT AN OFFICIAL DEBIAN PACKAGE! THIS IS AN AUTOMATED CVS
BUILD OF THE GTK+ LIBRARIES! BEWARE! IT MAY NOT WORK!**
.
This package contains the debugging static libraries for the
GIMP Toolkit set of widgets for X.
.
This is the unstable, 1.1 branch of GTK+. This is not intended for
use with stable releases of programs!
.
Install this package if you wish to debug your own X programs using
the GIMP Toolkit 1.1, or if you wish to debug your own plug-ins for
The GIMP.

8
debian/copyright vendored Normal file
View File

@@ -0,0 +1,8 @@
This package was debianized by Ben Gertzfield <che@debian.org> on
Tue, 17 Nov 1998 12:07:17 -0800
It was produced from the CVS repository at cvs.gimp.org.
It may be redistributed under the terms of the GNU LGPL, Version 2 or
later, found on Debian systems in the file /usr/doc/copyright/LGPL.

9
debian/libgtk-cvs-dev.files vendored Normal file
View File

@@ -0,0 +1,9 @@
usr/lib/libgdk.so
usr/lib/libgdk.a
usr/lib/libgtk.so
usr/lib/libgtk.a
usr/include/gdk/
usr/include/gtk/
usr/bin/gtk-config
usr/man/man1/gtk-config.1
usr/share/aclocal/gtk.m4

5
debian/libgtk-cvs-dev.postinst vendored Normal file
View File

@@ -0,0 +1,5 @@
#!/bin/sh
set -e
#DEBHELPER#

6
debian/libgtk-cvs-dev.prerm vendored Normal file
View File

@@ -0,0 +1,6 @@
#!/bin/sh
set -e
install-info --quiet --remove gtk
#DEBHELPER#

8
debian/libgtk-cvs-doc.files vendored Normal file
View File

@@ -0,0 +1,8 @@
usr/info/gdk.info
usr/info/gtk.info
usr/info/gtk.info-1
usr/info/gtk.info-2
usr/info/gtk.info-3
usr/info/gtk.info-4
usr/info/gtk.info-5

11
debian/libgtk-cvs-doc.postinst vendored Normal file
View File

@@ -0,0 +1,11 @@
#!/bin/sh
set -e
install-info --quiet --description="The GIMP Toolkit." \
--section "The GIMP" "The GIMP" /usr/info/gtk.info.gz
install-info --quiet --description="The GIMP Drawing Kit." \
--section "The GIMP" "The GIMP" /usr/info/gdk.info.gz
#DEBHELPER#

7
debian/libgtk-cvs-doc.prerm vendored Normal file
View File

@@ -0,0 +1,7 @@
#!/bin/sh
set -e
install-info --quiet --remove gtk
install-info --quiet --remove gdk
#DEBHELPER#

7
debian/postinst vendored Normal file
View File

@@ -0,0 +1,7 @@
#!/bin/sh
set -e
ldconfig
#DEBHELPER#

160
debian/rules vendored Executable file
View File

@@ -0,0 +1,160 @@
#!/usr/bin/make -f
# debian/rules file for gtk+ Debian package
# written April 1998 by Ben Gertzfield <che@debian.org
build: build-stamp
build-stamp:
dh_testdir
./autogen.sh --prefix=/usr --with-xinput=xfree
$(MAKE)
cd docs && make distdocs
cd ..
touch build-stamp
build-dbg: build-dbg-stamp
build-dbg-stamp:
dh_testdir
./configure --prefix=/usr --with-xinput=xfree --enable-debug=yes
$(MAKE)
touch build-dbg-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp build-dbg-stamp install-stamp install-dbg-stamp
# Add here commands to clean up after the build process.
-$(MAKE) clean
cd docs
-$(MAKE) maintainer-clean
cd ..
-$(MAKE) distclean
find . -name '*.o' -o -name '_libs' -o -name '*.lo' -o -name '*.a' -o -name '.deps' | xargs rm -rf
dh_clean
clean-dbg:
dh_testdir
dh_testroot
rm -f build-stamp build-dbg-stamp install-stamp install-dbg-stamp
# Add here commands to clean up after the build process.
-$(MAKE) clean
cd docs
-$(MAKE) maintainer-clean
cd ..
-$(MAKE) distclean
find . -name '*.o' -o -name '_libs' -o -name '*.lo' -o -name '*.a' -o -name '.deps' | xargs rm -rf
dh_clean -k
install: install-stamp
install-stamp: build
dh_testdir
dh_testroot
dh_clean
$(MAKE) prefix=`pwd`/debian/tmp/usr install
touch install-stamp
install-dbg: install-dbg-stamp
install-dbg-stamp: build-dbg
dh_testdir
dh_testroot
dh_clean -k
$(MAKE) prefix=`pwd`/debian/libgtk-cvs-dbg/usr install
touch install-dbg-stamp
# Build architecture-independent files here.
binary-indep: build install libgtk-cvs-doc
# We have nothing to do by default.
# Build architecture-dependent files here.
binary-arch: build install libgtk-cvs-dev libgtk-cvs-1.1 libgtk-cvs-dbg
libgtk-cvs-1.1: build
dh_testdir -plibgtk-cvs-1.1
dh_testroot -plibgtk-cvs-1.1
dh_installdirs -plibgtk-cvs-1.1
# Add here commands to install the files into debian/tmp
rm -rf debian/tmp/usr/bin debian/tmp/usr/include debian/tmp/usr/info debian/tmp/usr/lib/glib debian/tmp/usr/share/aclocal debian/tmp/usr/man debian/tmp/usr/lib/*.la
dh_installdocs -plibgtk-cvs-1.1
dh_installchangelogs -plibgtk-cvs-1.1
dh_strip -plibgtk-cvs-1.1
dh_compress -plibgtk-cvs-1.1
dh_fixperms -plibgtk-cvs-1.1
dh_installdeb -plibgtk-cvs-1.1
dh_shlibdeps -plibgtk-cvs-1.1
dh_gencontrol -plibgtk-cvs-1.1
dh_makeshlibs -plibgtk-cvs-1.1 -V 'libgtk-cvs-1.1 (='`cat debian/version`')'
dh_md5sums -plibgtk-cvs-1.1
dh_builddeb -plibgtk-cvs-1.1
libgtk-cvs-dev: build
dh_testdir -plibgtk-cvs-dev
dh_testroot -plibgtk-cvs-dev
dh_clean -plibgtk-cvs-dev -k
dh_installdirs -plibgtk-cvs-dev
# Add here commands to install the files into debian/tmp
dh_movefiles -plibgtk-cvs-dev
cp gtk-config debian/tmp/usr/bin
dh_installdocs -plibgtk-cvs-dev
dh_installchangelogs -plibgtk-cvs-dev
dh_strip -plibgtk-cvs-dev
dh_compress -plibgtk-cvs-dev
dh_fixperms -plibgtk-cvs-dev
dh_installdeb -plibgtk-cvs-dev
dh_shlibdeps -plibgtk-cvs-dev
dh_gencontrol -plibgtk-cvs-dev
dh_md5sums -plibgtk-cvs-dev
dh_builddeb -plibgtk-cvs-dev
libgtk-cvs-doc:
dh_testdir -plibgtk-cvs-doc
dh_testroot -plibgtk-cvs-doc
dh_clean -plibgtk-cvs-doc -k
dh_installdirs -plibgtk-cvs-doc usr/doc/libgtk-cvs-doc/faq-html \
usr/doc/libgtk-cvs-doc/tutorial-html usr/doc/libgtk-cvs-doc/italian-tutorial-html usr/doc/libgtk-cvs-doc/french-tutorial-html usr/doc/libgtk-cvs-doc/gdk-html
dh_movefiles -plibgtk-cvs-doc
cp docs/html/gtkfaq*.html debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/faq-html
cp docs/html/gtk_tut-*.html debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/tutorial-html
cp docs/html/*.gif debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/tutorial-html
cp docs/html/gtk_tut.html debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/tutorial-html
cp docs/html/gtk_tut_it*.html debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/italian-tutorial-html
cp docs/html/*.gif debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/italian-tutorial-html
cp docs/html/gtk_tut_fr*.html debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/french-tutorial-html
cp docs/html/*.gif debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/french-tutorial-html
cp docs/html/gdk* debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/gdk-html
cp docs/text/*.txt debian/libgtk-cvs-doc/usr/doc/libgtk-cvs-doc/
dh_installdocs -plibgtk-cvs-doc docs/{debugging,developers,styles,text_widget,widget_system,gtk-config,refcounting}.txt TODO NEWS
dh_installchangelogs -plibgtk-cvs-doc
dh_strip -plibgtk-cvs-doc
dh_compress -plibgtk-cvs-doc
dh_fixperms -plibgtk-cvs-doc
dh_installdeb -plibgtk-cvs-doc
dh_shlibdeps -plibgtk-cvs-doc
dh_gencontrol -plibgtk-cvs-doc
dh_md5sums -plibgtk-cvs-doc
dh_builddeb -plibgtk-cvs-doc
libgtk-cvs-dbg: clean-dbg install-dbg
dh_testdir -plibgtk-cvs-dbg
dh_testroot -plibgtk-cvs-dbg
dh_installdirs -plibgtk-cvs-dbg
# Add here commands to install the files into debian/libgtk-cvs-dbg
rm -rf debian/libgtk-cvs-dbg/usr/bin debian/libgtk-cvs-dbg/usr/include debian/libgtk-cvs-dbg/usr/info debian/libgtk-cvs-dbg/usr/lib/glib debian/libgtk-cvs-dbg/usr/man debian/libgtk-cvs-dbg/usr/share debian/libgtk-cvs-dbg/usr/lib/*.{la,so*}
for file in `find debian/libgtk-cvs-dbg/usr/lib -name '*.a'` ; do \
mv $$file debian/libgtk-cvs-dbg/usr/lib/`basename $$file .a`_g.a; \
done
dh_installdocs -plibgtk-cvs-dbg
dh_installchangelogs -plibgtk-cvs-dbg
dh_compress -plibgtk-cvs-dbg
dh_fixperms -plibgtk-cvs-dbg
dh_installdeb -plibgtk-cvs-dbg
dh_shlibdeps -plibgtk-cvs-dbg
dh_gencontrol -plibgtk-cvs-dbg
dh_md5sums -plibgtk-cvs-dbg
dh_builddeb -plibgtk-cvs-dbg
source diff:
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary

View File

@@ -1,5 +1,6 @@
Makefile
Makefile.in
*.html
*.info*
*.dvi
*.ps
@@ -15,3 +16,6 @@ Makefile.in
*.cps
*.fns
*.vrs
html
text
gtk-config.1

274
docs/Changes-1.2.txt Normal file
View File

@@ -0,0 +1,274 @@
Incompatible Changes from GTK+-1.0 to GTK+-1.2:
* GtkAcceleratorTable has been replaced with GtkAccelGroup
* GtkMenuFactory has been replaced with GtkItemFactory, although
a version of GtkMenuFactory is currently still provided to ease
the migration phase.
* The GtkTypeInfo structures used in the gtk_*_type_init() functions have
changed a bit, the old format:
GtkTypeInfo bin_info =
{
"GtkBin",
sizeof (GtkBin),
sizeof (GtkBinClass),
(GtkClassInitFunc) gtk_bin_class_init,
(GtkObjectInitFunc) gtk_bin_init,
(GtkArgSetFunc) NULL,
(GtkArgGetFunc) NULL,
};
needs to be converted to:
static const GtkTypeInfo bin_info =
{
"GtkBin",
sizeof (GtkBin),
sizeof (GtkBinClass),
(GtkClassInitFunc) gtk_bin_class_init,
(GtkObjectInitFunc) gtk_bin_init,
/* reserved_1 */ NULL,
/* reserved_2 */ NULL,
(GtkClassInitFunc) NULL,
};
the GtkArgSetFunc and GtkArgGetFunc functions are not supported from the
type system anymore, and you should make sure that your code only fills
in these fields with NULL and doesn't use the deprecated function typedefs
(GtkArgSetFunc) and (GtkArgGetFunc) anymore.
* A number of Gtk functions were renamed. For compatibility, gtkcompat.h
#define's the old 1.0.x function names in terms of the new names.
To assure your Gtk program doesn't rely on outdated function
variants, compile your program with -DGTK_DISABLE_COMPAT_H to disable
the compatibility aliases.
Here is the list of the old names and replacements:
Old: Replacement:
gtk_accel_label_accelerator_width gtk_accel_label_get_accel_width
gtk_check_menu_item_set_state gtk_check_menu_item_set_active
gtk_container_border_width gtk_container_set_border_width
gtk_label_set gtk_label_set_text
gtk_notebook_current_page gtk_notebook_get_current_page
gtk_packer_configure gtk_packer_set_child_packing
gtk_paned_gutter_size gtk_paned_set_gutter_size
gtk_paned_handle_size gtk_paned_set_handle_size
gtk_scale_value_width gtk_scale_get_value_width
gtk_style_apply_default_pixmap gtk_style_apply_default_background (1)
gtk_toggle_button_set_state gtk_toggle_button_set_active
gtk_window_position gtk_window_set_position
(1) gtk_style_apply_default_background() has an additional
argument, gboolean set_bg. This parameter should be FALSE if
the background is being set for a NO_WINDOW widget, otherwise
true.
* During the development phase of the 1.1.x line of Gtk certain functions
were deprecated and later removed. Functions affected are:
Removed: Replacement:
gtk_clist_set_border gtk_clist_set_shadow_type
gtk_container_block_resize gtk_container_set_resize_mode
gtk_container_unblock_resize gtk_container_set_resize_mode
gtk_container_need_resize gtk_container_check_resize
gtk_ctree_show_stub gtk_ctree_set_show_stub
gtk_ctree_set_reorderable gtk_clist_set_reorderable
gtk_ctree_set_use_drag_icons gtk_clist_set_use_drag_icons
gtk_entry_adjust_scroll (1)
gtk_object_class_add_user_signal gtk_object_class_user_signal_new
gtk_preview_put_row gtk_preview_put
gtk_progress_bar_construct gtk_progress_set_adjustment
gtk_scrolled_window_construct gtk_scrolled_window_set_{h|v}adjustment
gtk_spin_button_construct gtk_spin_button_configure
gtk_widget_thaw_accelerators gtk_widget_unlock_accelerators
gtk_widget_freeze_accelerators gtk_widget_lock_accelerators
(1) This function is no longer needed as GtkEntry should automatically
keep the scroll adjusted properly.
* Additionally, all gtk_*_interp functions were removed.
gtk_*_full versions were provided as of GTK+-1.0 and should
be used instead.
* GtkButton has been changed to derive from GtkBin.
To access a button's child, use GTK_BIN (button)->child, instead
of the old GTK_BUTTON (button)->child.
* The selection API has been slightly modified:
gtk_selection_add_handler() and gtk_selection_add_handler_full()
have been removed. To supply the selection, one now register
the targets one is interested in with:
void gtk_selection_add_target (GtkWidget *widget,
GdkAtom selection,
GdkAtom target,
guint info);
or:
void gtk_selection_add_targets (GtkWidget *widget,
GdkAtom selection,
GtkTargetEntry *targets,
guint ntargets);
When a request for a selection is received, the new "selection_get"
signal will be called:
void "selection_get" (GtkWidget *widget,
GtkSelectionData *selection_data,
guint info,
guint time);
A "time" parameter has also been added to the "selection_received"
signal.
void "selection_received" (GtkWidget *widget,
GtkSelectionData *selection_data,
guint time);
* The old drag and drop API has been completely removed and replaced.
See the reference documentation for details on the new API.
* Support for Themes has been added. In general, this does
not affect application code, however, a few new rules should
be observed:
- To set a shape for a window, you must use
gtk_widget_shape_combine_mask() instead of
gdk_window_shape_combine_mask(), or the shape will be
reset when switching themes.
- It is no longer permissable to draw directly on an arbitrary
widget, or to set an arbitrary widget's background pixmap.
If you need to do that, use a GtkDrawingArea or (for a
toplevel) the new GtkDrawWindow widget.
* The ScrolledWindow widget no longer creates a Viewport
automatically. Instead, it has been generalized to accept
any "self-scrolling" widget.
The self-scrolling widgets in the Gtk+ core are GtkViewport,
GtkCList, GtkCTree, GtkText, and GtkLayout. All of these widgets can
be added to a scrolled window as normal children with
gtk_container_add() and scrollbars will be set up automatically.
To add scrollbars to a non self-scrolling widget, (such as a GtkList),
first add it to a viewport, then add the viewport to a scrolled window.
The scrolled window code provides a convenience function to do this:
void gtk_scrolled_window_add_with_viewport (GtkScrolledWindow *scrollwin,
GtkWidget *child);
This does exactly what it says - it creates a Viewport, adds the child
widget to it, then adds the Viewport to the scrolled window.
The scrollbars have been removed from the GtkCList and GtkCTree,
because they are now scrolled by simply adding them to a Scrolled
Window. The scrollbar policy is set on the scrolled window with
gtk_scrolled_window_set_policy() and not on the child widgets
(e.g. GtkCList's gtk_clist_set_policy() was removed).
* The "main loop" of GTK+ has been moved to GLib. This should not
affect existing programs, since compatibility functions have
been provided. However, you may want to consider migrating
your code to use the GLib main loop directly.
* the GTK_BASIC flag was removed, and with it the corresponding
macro and function GTK_WIDGET_BASIC() and gtk_widget_basic().
* All freeze/thaw methods are now recursive - that is, if you
freeze a widget n times, you must also thaw it n times.
Therefore, if you have code like:
gboolean frozen;
frozen = GTK_CLIST_FROZEN (clist);
gtk_clist_freeze (clist);
[...]
if (!frozen)
gtk_clist_thaw (clist);
it will not work anymore. It must be, simply:
gtk_clist_freeze (clist);
[...]
gtk_clist_thaw (clist);
* The thread safety in GTK+ 1.2 is slightly different than
that which appeared in early versions in the 1.1
development track. The main difference is that it relies on
the thread primitives in GLib, and on the thread-safe
GLib main loop.
This means:
- You must call g_thread_init() before executing any
other GTK+ or GDK functions in a threaded GTK+ program.
- Idles, timeouts, and input functions are executed outside
of the main GTK+ lock. So, if you need to call GTK+
inside of such a callback, you must surround the callback
with a gdk_threads_enter()/gdk_threads_leave() pair.
[ However, signals are still executed within the main
GTK+ lock ]
In particular, this means, if you are writing widgets
that might be used in threaded programs, you _must_
surround timeouts and idle functions in this matter.
As always, you must also surround any calls to GTK+
not made within a signal handler with a
gdk_threads_enter()/gdk_threads_leave() pair.
- There is no longer a special --with-threads configure
option for GTK+. To use threads in a GTK+ program, you
must:
a) If you want to use the native thread implementation,
make sure GLib found this in configuration, otherwise,
call you must provide a thread implementation to
g_thread_init().
b) Link with the libraries returned by:
gtk-config --libs gthread
and use the cflags from:
gtk-config --cflags gthread
You can get these CFLAGS and LIBS by passing gthread
as the fourth parameter to the AM_PATH_GTK automake
macro.
* Prior to GTK+-1.2, there were two conflicting interpretations
of widget->requistion. It was either taken to be
the size that the widget requested, or that size
modified by calls to gtk_widget_set_usize(). In GTK+-1.2,
it is always interpreted the first way.
Container widgets are affected in two ways by this:
1) Container widgets should not pass widget->requisition
as the second parameter to gtk_widget_size_request().
Instead they should call it like:
GtkRequisition child_requisition;
gtk_widget_size_request (widget, &child_requisition);
2) Container widgets should not access child->requisition
directly. Either they should use the values returned
by gtk_widget_size_request(), or they should call
the new function:
void gtk_widget_get_child_requisition (GtkWidget *widget,
GtkRequisition *requisition);
which returns the requisition of the given widget, modified
by calls to gtk_widget_set_usize().

View File

@@ -1,22 +1,196 @@
## Process this file with automake to produce Makefile.in
info_TEXINFOS = gdk.texi gtk.texi glib.texi
info_TEXINFOS = gdk.texi gtk.texi
man_MANS = gtk-config.1
TUTORIAL_FR_FILES=html/gtk_tut_fr-1.html \
html/gtk_tut_fr-2.html \
html/gtk_tut_fr-3.html \
html/gtk_tut_fr-4.html \
html/gtk_tut_fr-5.html \
html/gtk_tut_fr-6.html \
html/gtk_tut_fr-7.html \
html/gtk_tut_fr-8.html \
html/gtk_tut_fr-9.html \
html/gtk_tut_fr-10.html \
html/gtk_tut_fr-11.html \
html/gtk_tut_fr-12.html \
html/gtk_tut_fr-13.html \
html/gtk_tut_fr-14.html \
html/gtk_tut_fr-15.html \
html/gtk_tut_fr-16.html \
html/gtk_tut_fr-17.html \
html/gtk_tut_fr-18.html \
html/gtk_tut_fr-19.html \
html/gtk_tut_fr-20.html \
html/gtk_tut_fr-21.html \
html/gtk_tut_fr-22.html \
html/gtk_tut_fr-23.html \
html/gtk_tut_fr-24.html \
html/gtk_tut_fr.html text/gtk_tut_fr.txt
TUTORIAL_FILES=text/gtk_tut.txt html/gtk_tut.html \
html/gtk_tut.html \
html/gtk_tut-1.html \
html/gtk_tut-2.html \
html/gtk_tut-3.html \
html/gtk_tut-4.html \
html/gtk_tut-5.html \
html/gtk_tut-6.html \
html/gtk_tut-7.html \
html/gtk_tut-8.html \
html/gtk_tut-9.html \
html/gtk_tut-10.html \
html/gtk_tut-11.html \
html/gtk_tut-12.html \
html/gtk_tut-13.html \
html/gtk_tut-14.html \
html/gtk_tut-15.html \
html/gtk_tut-16.html \
html/gtk_tut-17.html \
html/gtk_tut-18.html \
html/gtk_tut-19.html \
html/gtk_tut-20.html \
html/gtk_tut-21.html \
html/gtk_tut-22.html \
html/gtk_tut-23.html \
html/gtk_tut-24.html \
html/gtk_tut-25.html \
html/gtk_tut-26.html \
html/gtk_tut-27.html \
html/gtk_tut-28.html \
html/gtk_tut-29.html \
html/gtk_tut-30.html \
html/gtk_tut-31.html
TUTORIAL_IT_FILES= html/gtk_tut_it.html \
html/gtk_tut_it-1.html \
html/gtk_tut_it-2.html \
html/gtk_tut_it-3.html \
html/gtk_tut_it-4.html \
html/gtk_tut_it-5.html \
html/gtk_tut_it-6.html \
html/gtk_tut_it-7.html \
html/gtk_tut_it-8.html \
html/gtk_tut_it-9.html \
html/gtk_tut_it-10.html \
html/gtk_tut_it-11.html \
html/gtk_tut_it-12.html \
html/gtk_tut_it-13.html \
html/gtk_tut_it-14.html \
html/gtk_tut_it-15.html \
html/gtk_tut_it-16.html \
html/gtk_tut_it-17.html \
html/gtk_tut_it-18.html \
html/gtk_tut_it-19.html \
html/gtk_tut_it-20.html \
html/gtk_tut_it-21.html \
html/gtk_tut_it-22.html \
html/gtk_tut_it-23.html \
html/gtk_tut_it-24.html \
text/gtk_tut_it.txt
FAQ_FILES=html/gtkfaq.html \
html/gtkfaq-1.html \
html/gtkfaq-2.html \
html/gtkfaq-3.html \
html/gtkfaq-4.html \
html/gtkfaq-5.html \
html/gtkfaq-6.html \
html/gtkfaq-7.html \
text/gtkfaq.txt
.PHONY: html htmldir faq tutorial tutorial_it tutorial_fr files
htmldir:
(cd $(srcdir); mkdir -p html; cp gtk_tut*gif html)
textdir:
mkdir -p $(srcdir)/text
#
# The content is useless and the texi makes texi2html unhappy
#
#gdk.html gdk_toc.html: gdk.texi
# (cd $(srcdir); texi2html gdk.texi)
#
#gtk.html gtk_toc.html: gtk.texi
# (cd $(srcdir); texi2html gtk.texi)
#
#html/gdk.html html/gdk_toc.html: htmldir gdk.html gdk_toc.html
# (cd $(srcdir); cp gdk.html gdk_toc.html html/)
#
#html/gtk.html html/gtk_toc.html: htmldir gtk.html gtk_toc.html
# (cd $(srcdir); cp gtk.html gtk_toc.html html/)
$(FAQ_FILES): faq
faq: htmldir textdir
(cd $(srcdir); sgml2html gtkfaq.sgml; \
perl gtkdocs_fix gtkfaq*html; \
mv gtkfaq*html html/; \
sgml2txt gtkfaq.sgml; \
mv gtkfaq.txt text/)
$(TUTORIAL_FILES): tutorial
$(TUTORIAL_FR_FILES): tutorial_fr
$(TUTORIAL_IT_FILES): tutorial_it
tutorial: htmldir textdir
(cd $(srcdir); sgml2html gtk_tut.sgml; \
perl gtkdocs_fix gtk_tut*html; \
mv gtk_tut*html html/; \
sgml2txt gtk_tut.sgml; \
mv gtk_tut.txt text/)
tutorial_it: htmldir textdir
(cd $(srcdir); sgml2html --language=it gtk_tut_it.sgml; \
perl gtkdocs_fix gtk_tut_it*html; \
mv gtk_tut_it*html html/; \
sgml2txt --language=it gtk_tut_it.sgml; \
mv gtk_tut_it.txt text/)
tutorial_fr: htmldir textdir
(cd $(srcdir); sgml2html --language=fr gtk_tut_fr.sgml; \
perl gtkdocs_fix gtk_tut_fr*html; \
mv gtk_tut_fr*html html/; \
sgml2txt --language=fr gtk_tut_fr.sgml; \
mv gtk_tut_fr.txt text/)
EXTRA_DIST = \
texinfo.tex \
macros.texi \
Makefile.gtkfaq \
gtkfaq.sgml \
gtkfaq_fix \
debugging.txt \
developers.txt \
refcounting.txt \
styles.txt \
text_widget.txt \
widget_system.txt
files:
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
echo $$p; \
done
EXTRA_DIST += \
Changes-1.2.txt \
debugging.txt \
developers.txt \
refcounting.txt \
styles.txt \
text_widget.txt \
widget_system.txt \
generation.txt \
gtk-config.txt \
gtk-config.1.in \
texinfo.tex \
macros.texi \
gtkdocs_fix \
gtkfaq.sgml \
gtk_tut.sgml \
gtk_tut_it.sgml \
gtk_tut_fr.sgml \
gtk_tut_packbox1.gif \
gtk_tut_packbox2.gif \
html/gtk_tut_table.gif \
html/gtk_tut_packbox1.gif \
html/gtk_tut_packbox2.gif \
gtk_tut_table.gif \
$(TUTORIAL_FILES) \
$(TUTORIAL_FR_FILES) \
$(TUTORIAL_IT_FILES) \
$(FAQ_FILES)

View File

@@ -1,16 +0,0 @@
#
# To use this makefile, do:
# make -f Makefile.gtkfaq
#
# This is not done by default because you might
# not have sgml2html installed... Perhaps we could
# detect that in the future and combine it in with
# the automake stuff...
#
all: sgml
sgml:
sgml2html gtkfaq.sgml
cp gtkfaq.html index.html
perl gtkfaq_fix *.html

View File

@@ -1,294 +0,0 @@
# Makefile.in generated automatically by automake 1.2c from Makefile.am
# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = /bin/sh
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = true
PRE_INSTALL = true
POST_INSTALL = true
NORMAL_UNINSTALL = true
PRE_UNINSTALL = true
POST_UNINSTALL = true
host_alias = @host_alias@
host_triplet = @host@
CC = @CC@
CPP = @CPP@
LD = @LD@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NM = @NM@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
VERSION = @VERSION@
x_cflags = @x_cflags@
x_includes = @x_includes@
x_ldflags = @x_ldflags@
x_libs = @x_libs@
xinput_progs = @xinput_progs@
info_TEXINFOS = gdk.texi gtk.texi
EXTRA_DIST = texinfo.tex macros.texi Makefile.gtkfaq gtkfaq.sgml gtkfaq_fix
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h
CONFIG_CLEAN_FILES =
TEXI2DVI = texi2dvi
TEXINFO_TEX = $(srcdir)/texinfo.tex
INFO_DEPS = gdk.info gtk.info
DVIS = gdk.dvi gtk.dvi
TEXINFOS = gdk.texi gtk.texi
DIST_COMMON = Makefile.am Makefile.in texinfo.tex
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP = --best
default: all
.SUFFIXES:
.SUFFIXES: .dvi .info .ps .texi .texinfo
$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
gdk.info: gdk.texi
gdk.dvi: gdk.texi
gtk.info: gtk.texi
gtk.dvi: gtk.texi
DVIPS = dvips
.texi.info:
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
cd $(srcdir) \
&& $(MAKEINFO) `echo $< | sed 's,.*/,,'`
.texi.dvi:
TEXINPUTS=$(srcdir):$$TEXINPUTS \
MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $<
.texi:
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
cd $(srcdir) \
&& $(MAKEINFO) `echo $< | sed 's,.*/,,'`
.texinfo.info:
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
cd $(srcdir) \
&& $(MAKEINFO) `echo $< | sed 's,.*/,,'`
.texinfo:
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
cd $(srcdir) \
&& $(MAKEINFO) `echo $< | sed 's,.*/,,'`
.texinfo.dvi:
TEXINPUTS=$(srcdir):$$TEXINPUTS \
MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $<
.dvi.ps:
$(DVIPS) $< -o $@
install-info-am: $(INFO_DEPS)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(infodir)
@for file in $(INFO_DEPS); do \
d=$(srcdir); \
for ifile in `cd $$d && echo $$file $$file-[0-9] $$file-[0-9][0-9]`; do \
if test -f $$d/$$ifile; then \
echo " $(INSTALL_DATA) $$d/$$ifile $(infodir)/$$ifile"; \
$(INSTALL_DATA) $$d/$$ifile $(infodir)/$$ifile; \
else : ; fi; \
done; \
done
@$(POST_INSTALL)
@if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \
for file in $(INFO_DEPS); do \
echo " install-info --info-dir=$(infodir) $(infodir)/$$file";\
install-info --info-dir=$(infodir) $(infodir)/$$file || :;\
done; \
else : ; fi
uninstall-info:
$(PRE_UNINSTALL)
@if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \
ii=yes; \
else ii=; fi; \
for file in $(INFO_DEPS); do \
test -z $ii || install-info --info-dir=$(infodir) --remove $$file; \
done
$(NORMAL_UNINSTALL)
for file in $(INFO_DEPS); do \
(cd $(infodir) && rm -f $$file $$file-[0-9] $$file-[0-9][0-9]); \
done
dist-info: $(INFO_DEPS)
for base in $(INFO_DEPS); do \
d=$(srcdir); \
for file in `cd $$d && eval echo $$base*`; do \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file; \
done; \
done
mostlyclean-aminfo:
-rm -f gdk.aux gdk.cp gdk.cps gdk.dvi gdk.fn gdk.fns gdk.ky gdk.kys \
gdk.ps gdk.log gdk.pg gdk.toc gdk.tp gdk.tps gdk.vr gdk.vrs \
gdk.op gdk.tr gdk.cv gdk.cn gtk.aux gtk.cp gtk.cps gtk.dvi \
gtk.fn gtk.fns gtk.ky gtk.kys gtk.ps gtk.log gtk.pg gtk.toc \
gtk.tp gtk.tps gtk.vr gtk.vrs gtk.op gtk.tr gtk.cv gtk.cn
clean-aminfo:
distclean-aminfo:
maintainer-clean-aminfo:
for i in $(INFO_DEPS); do \
rm -f $$i; \
if test "`echo $$i-[0-9]*`" != "$$i-[0-9]*"; then \
rm -f $$i-[0-9]*; \
fi; \
done
tags: TAGS
TAGS:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = docs
distdir: $(DISTFILES)
here=`cd $(top_builddir) && pwd`; \
top_distdir=`cd $(top_distdir) && pwd`; \
distdir=`cd $(distdir) && pwd`; \
cd $(top_srcdir) \
&& $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu docs/Makefile
@for file in $(DISTFILES); do \
d=$(srcdir); \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file; \
done
$(MAKE) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-info
info: $(INFO_DEPS)
dvi: $(DVIS)
check: all
$(MAKE)
installcheck:
install-exec:
@$(NORMAL_INSTALL)
install-data: install-info-am
@$(NORMAL_INSTALL)
install: install-exec install-data all
@:
uninstall: uninstall-info
all: Makefile $(INFO_DEPS)
install-strip:
$(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
installdirs:
$(mkinstalldirs) $(infodir)
mostlyclean-generic:
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f Makefile $(DISTCLEANFILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
mostlyclean: mostlyclean-aminfo mostlyclean-generic
clean: clean-aminfo clean-generic mostlyclean
distclean: distclean-aminfo distclean-generic clean
-rm -f config.status
-rm -f libtool
maintainer-clean: maintainer-clean-aminfo maintainer-clean-generic \
distclean
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
.PHONY: default install-info-am uninstall-info mostlyclean-aminfo \
distclean-aminfo clean-aminfo maintainer-clean-aminfo tags distdir info \
dvi installcheck install-exec install-data install uninstall all \
installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
files:
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
echo $$p; \
done
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@@ -53,11 +53,10 @@ by the:
First the environment variables are applied, then the command line
options are applied in the order given on the command line.
Each of these can either be the special value ALL, or a sequence of
':' separated options. (Note, case is significant). The environment
variables and the --gtk-debug and --gdk-debug options add debugging
options and the --gtk-no-debug and --gdk-no-debug options remove
them.
Each of these can either be the special value 'all', or a sequence of
':' separated options. (case is ignored). The environment variables
and the --gtk-debug and --gdk-debug options add debugging options and
the --gtk-no-debug and --gdk-no-debug options remove them.
As noted below, some of these are useful in application debugging, but
most are only interested to those debugging the libraries

210
docs/dnd_internals.txt Normal file
View File

@@ -0,0 +1,210 @@
This document describes some of the internals of the DND handling
code.
Organization
============
The DND code is split between a lowlevel part - gdkdnd.c and a
highlevel part - gtkdnd.c. To put it simply, gdkdnd.c contain the
portions of DND code that are easiest to do in raw X, while gtkdnd.c
contains the portions of DND that are easiest to do with an event loop
and high level selection handling.
Except for a few details of selection handling, most of the
dependencies on the DND protocol are confined to gdkdnd.c.
There are two or three supported protocols - Motif DND,
Xdnd and a pseudo-protocol ROOTWIN, which is used for drops
on root windows that aren't really accepting drops.
gdkdnd.c divides into 4 pieces:
1) Utility functions (finding client windows)
2) Motif specific code (the biggest chunk)
3) Xdnd specific code
4) The public interfaces
The code in gtkdnd.c roughly consists of three parts
1) General utility functions
2) Destination side code
3) Source side code.
Both on the source and dest side, there is some division
between the low level layers and the default handlers,
though they are rather mixed in many cases.
Structures and Memory Management
================================
Information about source sites and drop sites is stored
in the structures GtkSourceSite and GtkDestSite.
Information about in-progress drags and drops is stored
in the structures GtkSourceInfo and GtkDestInfo.
The GtkSourceInfo structure is created when the drag
begins, and persists until the drag either completes
or times out. A pointer to it is stored in
dataset-data for the GdkDragContext, however there
is no ownership. If the SourceInfo is destroyed
before the context, the field is simply cleared.
A GtkDestInfo is attached to each GdkDragContext
that is received for an incoming drag. In contrast
to the SourceInfo the DestInfo is "owned" by the
context, and when the context is destroyed, destroyed.
The GDK API
===========
It is expect that the GDK DND API will never be
used by anything other than the DND code in GTK+.
/* Drag and Drop */
GdkDragContext * gdk_drag_context_new (void);
void gdk_drag_context_ref (GdkDragContext *context);
void gdk_drag_context_unref (GdkDragContext *context);
These create and refcount GdkDragContexts in a
straightforward manner.
/* Destination side */
void gdk_drag_status (GdkDragContext *context,
GdkDragAction action,
guint32 time);
void gdk_drop_reply (GdkDragContext *context,
gboolean ok,
guint32 time);
void gdk_drop_finish (GdkDragContext *context,
gboolean success,
guint32 time);
GdkAtom gdk_drag_get_selection (GdkDragContext *context);
/* Source side */
GdkDragContext * gdk_drag_begin (GdkWindow *window,
GList *targets,
GdkDragAction actions);
gboolean gdk_drag_get_protocol (guint32 xid,
GdkDragProtocol *protocol);
void gdk_drag_find_window (GdkDragContext *context,
GdkWindow *drag_window,
gint x_root,
gint y_root,
GdkWindow **dest_window,
GdkDragProtocol *protocol);
gboolean gdk_drag_motion (GdkDragContext *context,
GdkWindow *dest_window,
GdkDragProtocol protocol,
gint x_root,
gint y_root,
GdkDragAction action,
guint32 time);
void gdk_drag_drop (GdkDragContext *context,
guint32 time);
void gdk_drag_abort (GdkDragContext *context,
guint32 time);
GdkAtom gdk_drag_get_selection (GdkDragContext *context);
Retrieves the selection that will be used to communicate
the data for the drag context (valid on both source
and dest sides)
Cursors and window heirarchies
==============================
The DND code, when possible (and it isn't possible over
Motif window) uses a shaped window as a drag icon.
Because the cursor may fall inside this window during the
drag, we actually have to figure out which window
the cursor is in _ourselves_ so we can ignore the
drag icon properly. (Oh for OutputOnly windows!)
To avoid obscene amounts of server traffic (which are only
slighly observerable locally, but would really kill a
session over a slow link), the code in GDK does
XGetWindowAttributes for every child of the root window at
the beginning of the drag, then selects with
SubstructureNotifyMask on the root window, so that
it can update this list.
It probably would be easier to just reread the entire
list when one of these events occurs, instead of
incrementally updating, but updating the list in
sync was sort of fun code, so I did it that way ;-)
There is also a problem of trying to follow the
mouse cursor as well as possible. Currently, the
code uses PointerMotionHint, and an XQueryPointer
on MotionNotify events. This results in pretty
good syncing, but may result in somewhat poor
accuracy for drops. (Because the coordinates of
the drop are the coordinates when the server receives
the button press, which might actually be before
the XQueryPointer for the previous MotionNotify
event is done.)
Probably better is doing MotionNotify compression
and discarding MotionNotify events when there
are more on the queue before the next ButtonPress/Release.
Proxying
========
A perhaps rather unusual feature of GTK's DND is proxying. A
dest site can be specified as a proxy drop site for another
window. This is most needed for the plug-socket code - the
socket needs to pass on drags to the plug since the original
source only sees toplevel windows. However, it can also be
used as a user visible proxy - i.e., dragging to buttons on
the taskbar.
Internally, when the outer drag enters a proxy dest site, a
new source drag is created, with SourceInfo and
GdkDragContext. From the GDK side, it looks much like a
normal source drag; on the GTK+ side, most of the code is
disjoint. The need to pass in a specific target window
is the reason why the GDK DND API splits
gdk_drag_find_window() and gdk_drag_motion().
For proxy drags, the GtkDestInfo and GtkSourceInfo for the
drag point at each other.
Because the abstraction of the drag protocol is at the GDK
level, a proxy drag from Motif to Xdnd or vice versa happens
pretty much automatically during the drag, though the
drop can get complicated. For Xdnd <-> Motif,
Motif <-> Xdnd, or Motif <-> Motif drags, it is necessary to
for the Proxy to retrieve the data and pass it on to
the true destination, since either the selection names
differ or (Motif<->Motif), the proxy needs to know
about the XmDRAG_SUCCESS/FAILURE selection targets.
Further Reading:
================
Xdnd:
The spec is at:
http://www.cco.caltech.edu/~jafl/xdnd/
Motif:
The Motif DND protocol is best described in the
Hungry Programmers _Inside Lesstif_ book, available
from:
http://www.igpm.rwth-aachen.de/~albrecht/hungry.html
Harald Albrecht and Mitch Miers have done a far
better job at documenting the DND protocol then
anything the OpenGroup has produced.
Owen Taylor
otaylor@redhat.com
Oct 18, 1998

File diff suppressed because it is too large Load Diff

198
docs/gdk.sgml Normal file
View File

@@ -0,0 +1,198 @@
<!doctype linuxdoc system>
<article>
<!-- Title information -->
<title>The GTK+ Drawing Kit Programming Manual
<author>Shawn T. Amundson, Peter Mattis
<date>July 26, 1998
<abstract>
This document aims at teaching user how to effectively program in
GDK, the GTK+ Drawing Kit, and to serve as a reference guide to
more experienced GTK+ programmers. It is a work in progress.
<!-- Table of contents -->
<toc>
<!-- Begin the document -->
<!-- ***************************************************************** -->
<sect>Introduction
<p>
GDK is designed as a wrapper library that lies on top of Xlib. It
performs many common and desired operations for a programmer instead
of the programmer having to explicitly ask for such functionality from
Xlib directly. For example, GDK provides a common interface to both
regular and shared memory XImage types. By doing so, an application
can nearly transparently use the fastest image type available. GDK
also provides routines for determining the best available color depth
and the best available visual which is not always the default visual
for a screen.
GDK is distributed and developed with GTK+, and is licensed under the
GNU Library General Public Licence (LGPL).
<sect>Getting Started
<sect1>Initialization
<p>
Initialization of GDK is easy. Simply call gdk_init() passing
in the argc and argv parameters.
<tscreen><verb>
int main (int argc, char *argv[])
{
/* Initialize GDK. */
gdk_init (&amp;argc, &amp;argv);
/* Cleanup of GDK is done automatically when the program exits. */
return 0;
}
</verb></tscreen>
Generally, GDK initialization is done by gtk_init() in GTK+. This means
that when using GTK+, you do not need to directly call gdk_init().
<sect1>An Example using GDK with GTK+
<p>
This example demonstrates drawing a line using the foreground
color of the GtkDrawArea widget it is drawn inside. The example
will end when you click inside the window, which is filled by the
GtkDrawingArea widget.
The line is drawn during the expose event so that when the window
drawing is done whenever it is needed.
<tscreen><verb>
#include <gtk/gtk.h>
/* The expose callback does the drawing of the line */
int
expose_callback (GtkWidget *widget, GdkEventExpose *event, gpointer data)
{
GdkGC *gc;
printf("expose...\n");
/* The GC is the Graphics Context. Here it is borrowed from the widget */
gc = widget->style->fg_gc[GTK_STATE_NORMAL];
gdk_draw_line (widget->window, /* GDK Window of GtkDrawingArea widget */
gc, /* Graphics Context */
0, /* x1, left */
0, /* y1, top */
200, /* x2, right */
200); /* y2, bottom */
}
/* This quits GTK+ */
void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
int main (int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *darea;
int events;
/* This initializes both GTK+ and GDK */
gtk_init (&amp;argc, &amp;argv);
/* Create a window */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (destroy), NULL);
/* Create a drawing area widget. This widget actually is just a
simple widget which provides us an GDK window to draw on and
takes care of all the toolkit integration, like providing the
ability to add it to the window with gtk_contianer_add() */
darea = gtk_drawing_area_new ();
gtk_container_add (GTK_CONTAINER (window), darea);
/* Set the width and height (arguments are in that order) */
gtk_drawing_area_size (GTK_DRAWING_AREA (darea), 200, 200);
/* Drawing in the expose event is important to keep the
draw line always on the GDK window */
gtk_signal_connect (GTK_OBJECT (darea), "expose_event",
GTK_SIGNAL_FUNC (expose_callback), NULL);
/* We get the events, then add in button press. If we did not
do this, we would not be notified of button press events in
the GtkDrawingArea widget */
events = gtk_widget_get_events (darea);
gtk_widget_set_events (darea, events | GDK_BUTTON_PRESS_MASK);
/* If we click on the darea, the application will exit */
gtk_signal_connect_object (GTK_OBJECT (darea), "button_press_event",
GTK_SIGNAL_FUNC (gtk_widget_destroy),
GTK_OBJECT (window));
gtk_widget_show (darea);
gtk_widget_show (window);
/* The GTK+ main idle loop */
gtk_main();
/* Cleanup of GDK is done automatically when the program exits. */
return 0;
}
</verb></tscreen>
<sect>The Graphics Context
<p>
The Graphics Context, or GC, defines how things should be drawn,
including color, font, fill, tile, stipple, clipping mask, line
width, line style, and join style.
<sect1>Color
<p>
Changing color is done by changing the forground or background color
of the GC.
<sect>Drawing Commands
<sect>Event Handling
<sect>Understanding and Using Visuals
<sect>Creating and Using New Windows
<sect>Pixmaps
<sect>Images
<sect>Fonts
<sect>
<sect>About this Document
<sect1>History
<P>
This document was originially written by Peter Mattis and entitled
"The General Drawing Kit". It was meant as a reference guide.
This version of the document has been renamed and is meant as a general
programming guide.
<sect1>Copying
<p>
Copyright (c) 1996 Peter Mattis
<p>
Copyright (c) 1998 Shawn T. Amundson
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that this permission notice may be stated in a translation
approved by Peter Mattis.
</article>

177
docs/generation.txt Normal file
View File

@@ -0,0 +1,177 @@
Overview:
========
This file describes the way that autogeneration
works within the GTK+ source code.
The following files in the gdk/ subdirectory
are autogenerated:
gdkkeysyms.h
gdkcursors.h
The following files in the gtk/ subdirectory
are autogenerated:
gtk.defs
Description of GTK+ types (and some functions) in a lisp-style
format.
gtktypebuiltins.h
Header file including declarations for internal types
gtktypebuiltins_vars.c
Variables for type values for internal types.
gtktypebuiltins_ids.c
Arrays holding information about each internal type.
gtktypebuiltins_evals.c
Arrays holding mapping between enumeration values
and strings.
gtkmarshal.c
gtkmarshal.h
Autogenerated signal marshallers
GDK
===
gdkkeysyms.h and gdkcursors.h are generated from
the corresponding header files
X11/cursorfont.h
X11/keysymdef.h
by some simple sed scripts. These are not actually
run automatically because we want all the keysyms
even on systems with a limited set.
So the Gdk rule to generate both files (X-derived-headers)
only needs to be rerun for every new release of the X Window
System.
GTK+ - type definitions
=======================
The type definitions are generated from several sources:
gtk-boxed.defs - definitions for boxed types
GTK+ header files
GDK header files
The makeenums.pl script does a heuristic parse of
the header files and extracts all enumerations declarations.
It also recognizes a number of pseudo-comments in the
header files:
Two of these apply to individual enumeration values:
/*< skip >*/
This enumeration value should be skipped.
/*< nick=NICK >*/
The nickname for this value should NICK instead of the
normally guessed value. For instance:
typedef enum {
GTK_TARGET_SAME_APP = 1 << 0, /*< nick=same-app >*/
GTK_TARGET_SAME_WIDGET = 1 << 1 /*< nick=same-widget >*/
} GtkTargetFlags;
makes the nicks "same-app" and "same-widget", instead of
"app" and "widget" that would normally be used.
The other two apply to entire enumeration declarations.
/*< prefix=PREFIX >*/
Specifies the prefix to be removed from the enumeration
values to generate nicknames.
/*< flags >*/
Specifies that this enumeration is used as a bitfield.
(makenums.pl normally guesses this from the presence of values
with << operators). For instance:
typedef enum /*< flags >*/
{
GDK_IM_PREEDIT_AREA = 0x0001,
GDK_IM_PREEDIT_CALLBACKS = 0x0002,
[ ... ]
} GdkIMStyle;
makeenums.pl can be run into two modes:
1) Generate the gtktypebuiltins_eval.c file (this
contains arrays holding the mapping of
string <=> enumeration value)
2) Generate the enumeration portion of gtk.defs.
The enumearation portion is added to the boxed type
declarations in gtk-boxed.defs to create gtk.defs.
The makeetypes.awk program takes the gtk.defs file, and
from that generates various files depending on the
third parameter passed to it:
macros: gtktypebuiltins.h
variables: gtktypebuiltins_vars.c
entries: gtktypebuiltins_ids.c
GTK+ - marshallers
==================
The files gtkmarshal.c and gtkmarshal.h include declarations
and definitions for the marshallers needed inside of
GTK+. The marshallers to be generated are listed in
the file gtkmashal.list, which is processed
by genmarshal.pl.
The format of this file is a list of lines:
<retval-type>:<arg1-type>,<arg2-type>,<arg3-type>
e.g.:
BOOL:POINTER,STRING,STRING,POINTER
A marshaller is generated for each line in the file.
The possible types are:
NONE
BOOL
CHAR
INT
UINT
LONG
ULONG
FLOAT
DOUBLE
STRING
ENUM
FLAGS
BOXED
POINTER
OBJECT
FOREIGN (gpointer data, GtkDestroyNotify notify)
C_CALLBACK (GtkFunction func, gpointer func_data)
SIGNAL (GtkSignalFunc f, gpointer data)
ARGS (gint n_args, GtkArg *args)
CALLBACK (GtkCallBackMarshal marshall,
gpointer data,
GtkDestroyNotify Notify)
Some of these types map to multiple return values - these
are marked above with the return types in parantheses.
NOTES
=====
When autogenerating GTK+ files, the autogenerated
files are often rebuild resulting in the same result.
To prevent unecessary rebuilds of the entire directory, some files
that multiple other source files depend on are not actually written
to directly. Instead, an intermediate file is written, which
is then compared to the old file, and only if it is different
is it copied into the final location.

View File

@@ -1,455 +0,0 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename glib.info
@settitle GLIB
@setchapternewpage odd
@set edition 1.0
@set update-date 3 Feburary 1998
@set update-month Feburary 1998
@c %**end of header
@ifinfo
This file documents GLIB, A library of useful routines for C programming
Copyright (C) 1998 Gregory A McLean
Permission is granted to make and distributed verbatim copies of this
manual, provided the copyright notice and this permission notice are
preserved on all copies.
@ignore
Permission is granted to process this file throught TeX and print the
results, provided the printed document carries copying permission notice
identical to this one except for the removal of this paragraph (this
paragraph not being relevant to the printed manual).
@end ignore
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that this permission notice may be stated in a translation
approved by Gregory McLean.
@end ifinfo
@titlepage
@title GLIB, Useful routines for C programming
@subtitle Version 1.0
@subtitle @value{update-month}
@author by Gregory McLean
@page
@vskip 0pt plus 1filll
Copyright @copyright{} 1998 Gregory McLean
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that this permission notice may be stated in a translation
approved by Gregory McLean.
@end titlepage
@dircategory Library of useful routines for 'C' programing
@direntry
* GLIB: (glib). useful routines for 'C' programming
@end direntry
@node Top, Copying, (dir), (dir)
@top useful routines for 'C' programming
@ifinfo
This is edition @value{edition} of the GLIB documentation,
@w{@value{update-date}}.
@end ifinfo
@menu
* Copying:: Your rights.
* Overview:: What is GLIB?
* Doubly linked lists:: Doubly linked lists
* Signly linked lists:: Singly linked lists
* List allocators:: List Allocators
* Hash tables:: Hash tables
* Caches:: Cache handling
* Trees:: Tree handling
* Memory:: Memory handling
* Timers:: Timer functions
* Output:: Output handling
* Utilities:: Utilitiy functions
* Errors:: Error handling
* String Chunks:: String Chunks
* Strings:: String handling
* Resizable arrays:: Resizeable arrays
* GScanner:: Flexible lexical scanner
* Miscellany:: Other stuff
* Function Index:: Index of functions
* Concept Index:: Index of concepts
@end menu
@node Copying, Overview, Top, Top
@comment node-name, next, previous, up
@chapter Copying
@node Overview, Doubly linked lists, Copying, Top
@comment node-name, next, previous, up
@chapter What is GLIB
@node Doubly linked lists, Signly linked lists, Overview, Top
@comment node-name, next, previous, up
@chapter Doubly linked lists
@subsection Functions
@deftypefun GList* g_list_alloc (void)
@end deftypefun
@deftypefun void g_list_free (GList *@var{list})
@end deftypefun
@deftypefun void g_list_free_1 (GList *@var{list})
@end deftypefun
@deftypefun GList* g_list_append (GList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GList* g_list_prepend (GList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GList* g_list_insert (GList *@var{list}, gpointer @var{data}, gint @var{position})
@end deftypefun
@deftypefun GList* g_list_insert_sorted (GList *@var{list}, gpointer @var{data}, GCompareFunc @var{func})
@end deftypefun
@deftypefun GList* g_list_concat (GList *@var{list1}, GList *@var{list2})
@end deftypefun
@deftypefun GList* g_list_remove (GList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GList* g_list_remove_link (GList *@var{list}, GList *@var{link})
@end deftypefun
@deftypefun GList* g_list_reverse (GList *@var{list})
@end deftypefun
@deftypefun GList* g_list_nth (GList *@var{list}, gint @var{n})
@end deftypefun
@deftypefun GList* g_list_find (GList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GList* g_list_last (GList *@var{list})
@end deftypefun
@deftypefun GList* g_list_first (GList *@var{list})
@end deftypefun
@deftypefun gint g_list_length (GList *@var{list})
@end deftypefun
@deftypefun void g_list_foreach (GList *@var{list}, GFunc @var{func}, gpointer @var{user_data})
@end deftypefun
@node Signly linked lists, List allocators, Doubly linked lists, Top
@comment node-name, next, previous, up
@chapter Signly linked lists
@subsection Functions
@deftypefun GSList* g_slist_alloc (void)
@end deftypefun
@deftypefun void g_slist_free (GSList *@var{list})
@end deftypefun
@deftypefun void g_slist_free_1 (GSList *@var{list})
@end deftypefun
@deftypefun GSList* g_slist_append (GSList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GSList* g_slist_prepend (GSList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GSList* g_slist_insert (GSList *@var{list}, gpointer @var{data}, gint @var{position})
@end deftypefun
@deftypefun GSList* g_slist_insert_sorted (GSList *@var{list}, gpointer @var{data}, GCompareFunc @var{func})
@end deftypefun
@deftypefun GSList* g_slist_concat (GSList *@var{list1}, GSList *@var{list2})
@end deftypefun
@deftypefun GSList* g_slist_remove (GSList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GSList* g_slist_remove_link (GSList *@var{list}, GSList *@var{link})
@end deftypefun
@deftypefun GSList* g_slist_reverse (GSList *@var{list})
@end deftypefun
@deftypefun GSList* g_slist_nth (GSList *@var{list}, gint @var{n})
@end deftypefun
@deftypefun GSList* g_slist_find (GSList *@var{list}, gpointer @var{data})
@end deftypefun
@deftypefun GSList* g_slist_last (GSList *@var{list})
@end deftypefun
@deftypefun gint g_slist_length (GSList *@var{list})
@end deftypefun
@deftypefun void g_slist_foreach (GSList *@var{list}, GFunc @var{func}, gpointer @var{user_data})
@end deftypefun
@node List allocators, Hash tables, Signly linked lists, Top
@comment node-name, next, previous, up
@chapter List allocators
@subsection Functions
@deftypefun GListAllocator* g_list_allocator_new (void)
@end deftypefun
@deftypefun void g_list_allocator_free (GListAllocator *@var{allocator})
@end deftypefun
@deftypefun GListAllocator* g_slist_set_allocator (GListAllocator *@var{allocator})
@end deftypefun
@deftypefun GListAllocator* g_list_set_allocator (GListAllocator *@var{allocator})
@end deftypefun
@node Hash tables, Caches, List allocators, Top
@comment node-name, next, previous, up
@chapter Hash tables
@subsection Functions
@deftypefun GHashTable* g_hash_table_new (GHashFunc @var{hash_func}, GCompareFunc @var{key_compare_func})
@end deftypefun
@deftypefun void g_hash_table_destroy (GHashTable *@var{hash_table})
@end deftypefun
@deftypefun void g_hash_table_insert (GHashTable *@var{hash_table}, gpointer @var{key}, gpointer @var{value})
@end deftypefun
@deftypefun void g_hash_table_remove (GHashTable *@var{hash_table}, gpointer @var{key})
@end deftypefun
@deftypefun gpointer g_hash_table_lookup (GHashTable *@var{hash_table}, gpointer @var{key})
@end deftypefun
@deftypefun void g_hash_table_freeze (GHashTable *@var{hash_table})
@end deftypefun
@deftypefun void g_hash_table_thaw (GHashTable *@var{hash_table})
@end deftypefun
@deftypefun void g_hash_table_foreach (GHashTable *@var{hash_table}, GHFunc @var{func}, gpointer @var{user_data})
@end deftypefun
@node Caches, Trees, Hash tables, Top
@comment node-name, next, previous, up
@chapter Cache handling
@subsection Functions
@deftypefun GCache* g_cache_new (GCacheNewFunc @var{value_new_func}, GCacheDestroyFunc @var{value_destroy_func}, GCacheDupFunc @var{key_dup_func}, GCacheDestroyFunc @var{key_destroy_func}, GHashFunc @var{hash_key_func}, GHashFunc @var{hash_value_func}, GCompareFunc @var{key_compare_func})
@end deftypefun
@deftypefun void g_cache_destroy (GCache *@var{cache})
@end deftypefun
@deftypefun gpointer g_cache_insert (GCache *@var{cache}, gpointer @var{key})
@end deftypefun
@deftypefun void g_cache_remove (GCache *@var{cache}, gpointer @var{key})
@end deftypefun
@deftypefun void g_cache_key_foreach (GCache *@var{cache}, GHFunc @var{func}, gpointer @var{user_data})
@end deftypefun
@deftypefun void g_cache_value_foreach (GCache *@var{cache}, GHFunc @var{func}, gpointer @var{user_data})
@end deftypefun
@node Trees, Memory, Caches, Top
@comment node-name, next, previous, up
@chapter Tree handling
@subsection Functions
@deftypefun GTree* g_tree_new (GCompareFunc @var{key_compare_func})
@end deftypefun
@deftypefun void g_tree_destroy (GTree *@var{tree})
@end deftypefun
@deftypefun void g_tree_remove (GTree *@var{tree}, gpointer @var{key}, gpointer @var{value})
@end deftypefun
@deftypefun gpointer g_tree_lookup (GTree *@var{tree}, gpointer @var{key})
@end deftypefun
@deftypefun void g_tree_traverse (GTree *@var{tree}, GTraverseFunc @var{traverse_func}, GTraverseType @var{traverse_type}, gpointer @var{data}
@end deftypefun
@deftypefun gpointer g_tree_search (GTree *@var{tree}, GSearchFunc @var{search_func}, gpointer @var{data})
@end deftypefun
@deftypefun gint g_tree_height (GTree *@var{tree})
@end deftypefun
@deftypefun gint g_tree_nnodes (GTree *@var{tree})
@end deftypefun
@node Memory, Timers, Trees, Top
@comment node-name, next, previous, up
@chapter Memory handling
@subsection Functions
@deftypefun gpointer g_malloc (gulong @var{size})
@end deftypefun
@deftypefun gpointer g_malloc0 (gulong @var{size})
@end deftypefun
@deftypefun gpointer g_realloc (gpointer @var{mem}, gulong @var{size})
@end deftypefun
@deftypefun void g_mem_profile (void)
@end deftypefun
@deftypefun void g_mem_check (gpointer @var{mem})
@end deftypefun
@deftypefun GMemChunk* g_mem_chunk_new (gchar *@var{name}, gint @var{atom_size}, gulong @var{area_size}, gint @var{type})
@end deftypefun
@deftypefun void g_mem_chunk_destroy (GMemChunk *@var{mem_chunk})
@end deftypefun
@deftypefun gpointer g_mem_chunk_alloc (GMemChunk *@var{mem_chunk})
@end deftypefun
@deftypefun void g_mem_chunk_free (GMemChunk *@var{mem_chunk}, gpointer @var{mem})
@end deftypefun
@deftypefun void g_mem_chunk_clean (GMemChunk *@var{mem_chunk})
@end deftypefun
@deftypefun void g_mem_chunk_reset (GMemChunk *@var{mem_chunk})
@end deftypefun
@deftypefun void g_mem_chunk_print (GMemChunk *@var{mem_chunk})
@end deftypefun
@deftypefun void g_mem_chunk_info (void)
@end deftypefun
@deftypefun void g_blow_chunks (void)
Not what you might be thinking, @code{g_blow_chunks()} simply compresses all
the chunks. This operation consists of freeing every memory area that should
be freed (but which we haven't gotten around to doing yet).
@end deftypefun
@node Timers, Output, Memory, Top
@comment node-name, next, previous, up
@chapter Timer functions
@subsection Functions
@deftypefun GTimer* g_timer_new (void)
@end deftypefun
@deftypefun void g_timer_destroy (GTimer *@var{timer})
@end deftypefun
@deftypefun void g_timer_start (GTimer *@var{timer})
@end deftypefun
@deftypefun void g_timer_stop (GTimer *@var{timer})
@end deftypefun
@deftypefun void g_timer_reset (GTimer *@var{timer})
@end deftypefun
@deftypefun gdouble g_timer_elapsed (GTimer *@var{timer}, gulong *@var{microseconds})
@end deftypefun
@node Output, Utilities, Timers, Top
@comment node-name, next, previous, up
@chapter Output functions
@subsection Functions
@deftypefun void g_error (gchar *@var{format}, @dots{})
@end deftypefun
@deftypefun void g_warning (gchar *@var{format}, @dots{})
@end deftypefun
@deftypefun void g_message (gchar *@var{format}, @dots{})
@end deftypefun
@deftypefun void g_print (gchar *@var{format}, @dots{})
@end deftypefun
@node Utilities, Errors, Output, Top
@comment node-name, next, previous, up
@chapter Utility functions
@node Errors, String Chunks, Utilities, Top
@comment node-name, next, previous, up
@chapter Error handling
@node String Chunks, Strings, Errors, Top
@comment node-name, next, previous, up
@chapter String chunks
@node Strings, Resizable arrays, String Chunks, Top
@comment node-name, next, previous, up
@chapter String handling
@node Resizable arrays, GScanner, Strings, Top
@comment node-name, next, previous, up
@chapter Resizable arrays
@node GScanner, Miscellany, Resizable arrays, Top
@comment node-name, next, previous, up
@chapter Flexible lexical scanner
@node Miscellany, Function Index, GScanner, Top
@comment node-name, next, previous, up
@chapter Other stuff
@node Function Index, Concept Index, Miscellany, Top
@comment node-name, next, previous, up
@unnumbered Function Index
@printindex fn
@node Concept Index, , Function Index, Top
@comment node-name, next, previous, up
@unnumbered Concept Index
@printindex cp
@summarycontents
@contents
@bye

49
docs/gtk-config.1.in Normal file
View File

@@ -0,0 +1,49 @@
.TH GTK+ 1 "25 October 1998" Version @VERSION@
.SH NAME
gtk-config - script to get information about the installed version of GTK+
.SH SYNOPSIS
.B gtk-config
[\-\-prefix\fI[=DIR]\fP] [\-\-exec\-prefix\fI[=DIR]\fP] [\-\-version] [\-\-libs] [\-\-cflags]
.SH DESCRIPTION
.PP
\fIgtk-config\fP is a tool that is used to configure to determine
the compiler and linker flags that should be used to compile
and link programs that use \fIGTK+\fP. It is also used internally
to the .m4 macros for GNU autoconf that are included with \fIGTK+\fP.
.
.SH OPTIONS
.l
\fIgtk-config\fP accepts the following options:
.TP 8
.B \-\-version
Print the currently installed version of \fIGTK+\fP on the standard output.
.TP 8
.B \-\-libs
Print the linker flags that are necessary to link a \fIGTK+\fP program.
.TP 8
.B \-\-cflags
Print the compiler flags that are necessary to compile a \fIGTK+\fP program.
.TP 8
.B \-\-prefix=PREFIX
If specified, use PREFIX instead of the installation prefix that \fIGTK+\fP
was built with when computing the output for the \-\-cflags and
\-\-libs options. This option is also used for the exec prefix
if \-\-exec\-prefix was not specified. This option must be specified
before any \-\-libs or \-\-cflags options.
.TP 8
.B \-\-exec\-prefix=PREFIX
If specified, use PREFIX instead of the installation exec prefix that
\fIGTK+\fP was built with when computing the output for the \-\-cflags
and \-\-libs options. This option must be specified before any
\-\-libs or \-\-cflags options.
.SH SEE ALSO
.BR gimp (1),
.BR gimptool (1)
.SH COPYRIGHT
Copyright \(co 1998 Owen Taylor
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation.

236
docs/gtk-config.txt Normal file
View File

@@ -0,0 +1,236 @@
CONFIGURING PACKAGES TO WORK WITH GTK
-------------------------------------
Compiling a program succesfully against the GTK, GDK, and GLIB
libraries can require a large number of command line options
to your compiler and linker that are hard to guess correctly.
The additional libraries required may, for example, depend on the
manner which GTK was configured
Several tools are included in this package to make process
easier.
First, there is the shell script 'gtk-config' (installed in
$exec_prefix/bin):
Invoking gtk-config
-------------------
gtk-config takes the following flags:
--version
Prints out the version of GTK installed
--cflags
Prints '-I' flags pointing to the installed header files.
--libs
Prints out the linker flags necessary to link a program against GTK
--prefix[=PREFIX]
If PREFIX is specified, overrides the configured value of $prefix.
(And of exec-prefix, unless --exec-prefix is also specified)
Otherwise, prints out the configured value of $prefix
--exec-prefix[=PREFIX]
If PREFIX is specified, overrides the configured value of $exec_prefix.
Otherwise, prints out the configured value of $exec_prefix
You may also add to the command line a list of additional
libraries that gtk-config should supply the CFLAGS and LIBS
for. The only currently supported library is 'gthread'.
As an example of this latter usage, you can get the
appropriate cflags for a threaded program with:
gtk-config --cflags gthread
Example of using gtk-config
---------------------------
Typically, gtk-config will be used within a configure script,
as described below. It, however, can also be used directly
from the command line to compile a simple program. For example:
cc -o simple `gtk-config --cflags` simple.c `gtk-config --libs`
This command line might expand to (for example):
cc -o simple -I/usr/local/lib/glib/include -I/usr/local/include \
-I/usr/X11R6/include simple.c -L/usr/local/lib -L/usr/X11R6/lib \
-lgtk -lgdk -lglib -lXi -lXext -lX11 -lm
Not only is the form using gtk-config easier to type, it will
work on any system, no matter how GTK was configured.
AM_PATH_GTK
-----------
For packages configured using GNU automake, GTK also provides
a macro to automate the process of running GTK.
AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
This macro:
* Determines the location of GTK using gtk-config, which is either
found in the user's path, or from the environment variable
GTK_CONFIG
* Tests the installed libraries to make sure that there version
is later than MINIMUM-VERSION. (A default version will be used
if not specified)
* If the required version was found, sets the GTK_CFLAGS variable to
the output of `gtk-config --cflags` and the GTK_LIBS variable to
the output of `gtk-config --libs`, and calls AC_SUBST() for these
variables so they can be used in generated makefiles, and then
executes ACTION-IF-FOUND.
* If the required version was not found, sets GTK_CFLAGS and GTK_LIBS
to empty strings, and executes ACTION-IF-NOT-FOUND.
This macro is in file 'gtk.m4' which is installed in $datadir/aclocal.
Note that if automake was installed with a different --prefix than
GTK, you will either have to manually move gtk.m4 to automake's
$datadir/aclocal, or give aclocal the -I option when running it.
Configuring a package that uses AM_PATH_GTK
-------------------------------------------
Simply make sure that gtk-config is in your path, and run
the configure script.
Notes:
* The directory where the GTK libraries are installed needs
to be found by your system's dynamic linker.
This is generally done by
editing /etc/ld.so.conf and running ldconfig
Or by:
setting the environment variable LD_LIBRARY_PATH,
or, as a last resort,
Giving a -R or -rpath flag (depending on your linker) when
running configure, for instance:
LDFLAGS=-R/usr/home/owen/lib ./configure
* You can also specify a gtk-config not in your path by
setting the GTK_CONFIG environment variable to the
name of the executable
* If you move the GTK package from its installed location,
you will need either need to modify gtk-config script
manually to point to the new location or rebuild GTK.
Advanced note:
* configure flags
--with-gtk-prefix=PREFIX
--with-gtk-exec-prefix=PREFIX
are provided to override the prefix and exec-prefix that were stored
in the gtk-config shell script by GTK's configure. You are generally
better off configuring GTK with the right path to begin with.
Example of a package using AM_PATH_GTK
--------------------------------------
The following shows how to build a simple package using automake
and the AM_PATH_GTK macro. The program used here is the testinput.c
You should first read the introductory portions of the automake
Manual, if you are not already familiar with it.
Two files are needed, 'configure.in', which is used to build the
configure script:
==configure.in===
dnl Process this file with autoconf to produce a configure script.
AC_INIT(testinput.c)
AM_INIT_AUTOMAKE(testinput.c, 1.0.0)
AC_PROG_CC
AM_PROG_CC_STDC
AC_PROG_INSTALL
AM_PATH_GTK(0.99.5,
[LIBS="$LIBS $GTK_LIBS"
CFLAGS="$CFLAGS $GTK_CFLAGS"],
AC_MSG_ERROR(Cannot find GTK: Is gtk-config in path?))
AC_OUTPUT(Makefile)
=================
The only command in this which is not standard for automake
is the AM_PATH_GTK() macro.
That command does the following:
If a GTK version greater than 0.99.5 is found, adds $GTK_LIBS to
$LIBS and $GTK_CFLAGS to $CFLAGS. Otherwise, dies with the error
message "Cannot find GTK: Is gtk-config in path?"
And the 'Makefile.am', which will be used to build the Makefile.
== Makefile.am ==
bin_PROGRAMS = testinput
testinput_SOURCES = testinput.c
=================
This Makefile.am, says that we are building a single executable,
from a single sourcefile 'testinput.c'. Since every program
we are building uses GTK we simply added the GTK options
to $LIBS and $CFLAGS, but in other circumstances, we might
want to specify them on a per-program basis: for instance by
adding the lines:
testinput_LDADD = $(GTK_LIBS)
INCLUDES = $(GTK_CFLAGS)
to the Makefile.am.
To try this example out, create a new directory, add the two
files above two it, and copy the testinput.c file from
the gtk/ subdirectory to the new directory. Edit the line:
#include "gtk.h"
in testgtk.c, to read:
#include <gtk/gtk.h>
Now execute the following commands:
automake --add-missing
aclocal
autoconf
You now have a package that can be built in the normal fashion
./configure
make
make install
Notes:
* If you are converting a package that used a pre-1.0 version of
GTK, you should remove the autoconf tests for X. The results
of these tests are included in gtk-config and will be added
to GTK_LIBS and GTK_CFLAGS by the AM_PATH_GTK macro.
Owen Taylor
14 Mar 1997

File diff suppressed because it is too large Load Diff

18447
docs/gtk_tut.sgml Normal file

File diff suppressed because it is too large Load Diff

8600
docs/gtk_tut_fr.sgml Normal file

File diff suppressed because it is too large Load Diff

10090
docs/gtk_tut_it.sgml Normal file

File diff suppressed because it is too large Load Diff

BIN
docs/gtk_tut_packbox1.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

BIN
docs/gtk_tut_packbox2.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

BIN
docs/gtk_tut_table.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -1,4 +1,4 @@
#!/usr/bin/perl -w
#!/usr/bin/perl
# Stupid script to fix look of html files created with sgml2html...
@@ -8,3 +8,4 @@ foreach (@ARGV) {
system("sed -e 's/<BODY>/<BODY BGCOLOR=\"#FFFFFF\">/g' -e 's/<HR>/<HR NOSHADE>/g' $_.orig > $_");
unlink("$_.orig");
}

File diff suppressed because it is too large Load Diff

242
docs/man/gtk_button.pod Normal file
View File

@@ -0,0 +1,242 @@
=head1 NAME
gtk_button - GTK+ push button widget
=head1 SYNOPSIS
#include <gtk/gtkbutton.h>
GtkType gtk_button_get_type (void);
GtkWidget* gtk_button_new (void);
GtkWidget* gtk_button_new_with_label (const gchar *label);
void gtk_button_pressed (GtkButton *button);
void gtk_button_released (GtkButton *button);
void gtk_button_clicked (GtkButton *button);
void gtk_button_enter (GtkButton *button);
void gtk_button_leave (GtkButton *button);
void gtk_button_set_relief (GtkButton *button,
GtkReliefStyle style);
GtkReliefStyle gtk_button_get_relief (GtkButton *button);
=head1 DESCRIPTION
This widget is a standard push button widget. Push button widgets
are generally used for allowing the user to click on them to initiate
a command.
This widget is a container widget which contains one child.
=head1 OBJECT HIERARCHY
gtk_object
gtk_widget
gtk_container
gtk_button
=head1 SIGNAL PROTOTYPES
"clicked" void user_function (GtkWidget *widget, gpointer data);
"pressed" void user_function (GtkWidget *widget, gpointer data);
"released" void user_function (GtkWidget *widget, gpointer data);
"enter" void user_function (GtkWidget *widget, gpointer data);
"leave" void user_function (GtkWidget *widget, gpointer data);
=head1 USAGE
=head2 Creation
The most common way to create a button is with a label in it, which
contains text for the user to read. The child of the button will then
be a L<gtk_label(3)> widget with the text you passwd in. You can
do this in one command:
GtkWidget *button;
button = gtk_button_new_with_label ("This is a button");
To create a gtk_button widget which does not already have a child,
use gtk_button_new():
GtkWidget *button;
button = gtk_button_new ();
After you have created a button you can then add a widget to the
button (such as a label or pixmap) using gtk_container_add(). See
L<gtk_container(3)> for more information on adding widgets to
containers.
=head2 Creating a pixmap in a button in a window
After we have an empty gtk_button, such as above, and we have a gtk_pixmap,
we can simply add the gtk_pixmap to the gtk_button with gtk_container_add().
The following code will open the file "gimp.xpm" and place it in a
button.
#include <gtk/gtk.h>
int main (int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *button;
GtkWidget *pixmap;
GtkStyle *style;
GdkPixmap *gdkpixmap;
GdkBitmap *mask;
char *filename = "gimp.xpm";
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
button = gtk_button_new ();
gtk_container_add (GTK_CONTAINER (window), button);
/* The button is realized now, which creates button->window
used below to create the pixmap. */
gtk_widget_realize (button);
style = gtk_widget_get_style (button);
gdkpixmap = gdk_pixmap_create_from_xpm (button->window, &mask,
&style->bg[GTK_STATE_NORMAL],
filename);
pixmap = gtk_pixmap_new (gdkpixmap, mask);
gtk_container_add (GTK_CONTAINER (button), pixmap);
gtk_widget_show (pixmap);
gtk_widget_show (button);
gtk_widget_show (window);
gtk_main ();
return 0;
}
=head2 Different reliefs
Reliefs affect how the shadowing of the button is drawn. The different
types of relief styles are:
GTK_RELIEF_NORMAL
GTK_RELIEF_HALF
GTK_RELIEF_NONE
When set to a normal relief, the widget looks and acts like a normal
button. When half or none relief is used, shadowing is only drawn when the
mouse cursor is over the widget.
To set the relief, use gtk_button_set_relief(), like:
gtk_button_set_relief (button, GTK_RELIEF_HALF);
To get the current relief of a button, use gtk_button_get_relief():
GtkReliefStyle relief;
relief = gtk_button_get_relief (GTK_BUTTON (button));
=head2 Executing a command when the button is pressed
To execute a function when a button is pressed, use
gtk_signal_connect() to connect to the "clicked" signal.
gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (user_function),
NULL);
user_function is a user defined function, like the following:
void user_function (GtkWidget *button, gpointer data)
{
printf("clicked\n");
}
=head1 FUNCTIONS
GtkType gtk_button_get_type (void);
This function returns the GtkType which is assigned to the
object class for gtk_button.
GtkWidget* gtk_button_new (void);
This functions returns a new button widget which can then be
used as a container for another widget.
GtkWidget* gtk_button_new_with_label (const gchar *label);
This function returns a new button widget with a label widget
as a child. The label widget will have the text passed into
the commant.
void gtk_button_pressed (GtkButton *button);
This function sends a "pressed" signal to the button.
void gtk_button_released (GtkButton *button);
This function sends a "released" signal to the button.
void gtk_button_clicked (GtkButton *button);
This function sends a "clicked" signal to the button.
void gtk_button_enter (GtkButton *button);
This function sends a "enter" signal to the button.
void gtk_button_leave (GtkButton *button);
This function sends a "leave" signal to the button.
void gtk_button_set_relief (GtkButton *button, GtkReliefStyle style);
This function is sets the GtkReliefStyle of the button. The
relief style is one of: GTK_RELIEF_NORMAL, GTK_RELIEF_HALF,
or GTK_RELIEF_NONE. The relief determines when the shadow of
the button is drawn.
GtkReliefStyle gtk_button_get_relief (GtkButton *button);
This function returns the current relief of the button.
=head1 SIGNALS
"clicked"
void user_function (GtkWidget *widget, gpointer data);
Gets emitted when the button is clicked. A click is
a press and release of the button when the cursor is
inside the button on release.
"pressed"
void user_function (GtkWidget *widget, gpointer data);
Gets emitted when the left mouse button is pressed.
"released"
void user_function (GtkWidget *widget, gpointer data);
Gets emitted when the left mouse button is released and
the widget was previously pressed.
"enter"
void user_function (GtkWidget *widget, gpointer data);
Emitted when the mouse cursor enters the button.
"leave"
void user_function (GtkWidget *widget, gpointer data);
Emitted when the mouse cursor leaves the button.
=head1 AUTHORS
The author of this man page is Shawn T. Amundson E<lt>amundson@gtk.orgE<gt>.
For the authors of GTK+, see the AUTHORS file in the GTK+ distribution.

99
docs/package_tutorial.sh Executable file
View File

@@ -0,0 +1,99 @@
#! /bin/sh
# package_tutorial.sh - Package up the tutorial into various formats
# Copyright (C) Tony Gale 1999
# Contact: gale@gtk.org
#
# NOTE: This script requires the following to be installed:
# o SGML Tools
# o Latex
# o DVI tools
TARGET=`pwd`/gtk_tut.sgml
GIFS="`pwd`/*.gif"
EXAMPLES=`pwd`/../examples
PATH=`pwd`:$PATH
DATE=`date '+%y%m%d'`
# Check top level directory
if [ ! -d gtk_tutorial ]; then
if [ -e gtk_tutorial ]; then
echo "ERROR: gtk_tutorial is not a directory"
exit
fi
mkdir gtk_tutorial.$DATE
fi
cd gtk_tutorial.$DATE
# SGML Format
echo -n "Copy SGML and GIF's.... "
if [ ! -d sgml ]; then
if [ -e sgml ]; then
echo "ERROR: html is not a directory"
exit
fi
mkdir sgml
fi
(cd sgml ; cp $TARGET . ; cp $GIFS .)
echo "done"
# HTML Format
echo -n "Formatting into HTML.... "
if [ ! -d html ]; then
if [ -e html ]; then
echo "ERROR: html is not a directory"
exit
fi
mkdir html
fi
(cd html ; sgml2html $TARGET ; cp $GIFS .)
echo "done"
# Text Format
echo -n "Formatting into Text.... "
if [ ! -d txt ]; then
if [ -e txt ]; then
echo "ERROR: txt is not a directory"
exit
fi
mkdir txt
fi
(cd txt ; sgml2txt -f $TARGET 2>&1 > /dev/null )
echo "done"
# PS and DVI Format
echo -n "Formatting into PS and DVI.... "
if [ ! -d ps ]; then
if [ -e ps ]; then
echo "ERROR: ps is not a directory"
exit
fi
mkdir ps
fi
(cd ps ; sgml2latex --output=ps $TARGET > /dev/null)
(cd ps ; sgml2latex $TARGET > /dev/null)
echo "done"
# Copy examples
echo -n "Copying examples"
cp -R $EXAMPLES .
(cd examples ; make clean ; rm -rf CVS */CVS)
echo "done"
# Package it all up
echo -n "Creating packages.... "
cd ..
tar cvfz gtk_tutorial.$DATE.tar.gz gtk_tutorial.$DATE
echo "done"
rm -rf gtk_tutorial.$DATE
echo
echo Package gtk_tutorial.$DATE.tar.gz created.
echo

View File

@@ -15,7 +15,7 @@ functions that follow these conventions:
GtkObjects also provide the following functions:
*_destroy: Render an object `unusable', but as long as there are
references to it, it's allocated memory will not be freed.
references to it, its allocated memory will not be freed.
*_sink: Clear a GtkObjects `floating' state and decrement the
reference count by 1.
@@ -240,7 +240,7 @@ Taking care of proper referencing
---------------------------------
There are some cases where referencing of widgets from outside the toolkit
(on the application side is needed).
(on the application side) is needed.
Once the application performes an operation on a widget that will cause
its reference count to drop, if it wants to take further actions on the
widget, it needs to hold a reference to it.
@@ -248,7 +248,7 @@ widget, it needs to hold a reference to it.
Example code sequences that require reference wraps:
/* gtk_container_remove() will unparent the child and therefore
* cause it's reference count to be decremented by one.
* cause its reference count to be decremented by one.
*/
gtk_widget_ref (widget);
gtk_container_remove (container, widget);

View File

@@ -25,13 +25,17 @@ gtk_widget_set_rc_style ()
restore the default style otherwise.
This will override a previously set user style or rc style.
gtk_widget_reset_rc_styles ()
Descends through a widget heirarchy and sets the rc style
on all widgets that don't have a user style set.
gtk_widget_restore_default_style ()
Reset the widget's style to the default style, this is only usefull if
the widgets default style had been saved by previous calls to
gtk_widget_set_style() or gtk_widget_set_rc_style().
gtk_widget_ensure_style ()
Ensure taht the widget either has a user style set, or an rc lookup
Ensure that the widget either has a user style set, or an rc lookup
has been performed.
gtk_rc_get_style ()
@@ -55,7 +59,7 @@ gtk_widget_set_parent ()
that do not have a user style set.
gtk_style_copy ()
This function can be used to copy a widgets style.
This function can be used to copy a widget's style.
The style can subsequntly be changed (e.g., by modifications to the
red/green/blue values of a certain color) and then be applied to the
widget via gtk_widget_set_style().
@@ -84,13 +88,13 @@ GtkWidget::style_set
Flag indications:
!GTK_RC_STYLE && !GTK_USER_STYLE:
The widget has it's default style set, no rc lookup has been
The widget has its default style set, no rc lookup has been
performed, the widget has not been size requested yet and is
therefore not yet realized.
GTK_USER_STYLE:
GTK_RC_STYLE is not set.
The widget has a user style assigned, and it's default style has been
The widget has a user style assigned, and its default style has been
saved.
GTK_RC_STYLE:

File diff suppressed because it is too large Load Diff

View File

@@ -398,7 +398,7 @@ according the the tab continuation of the previous line.
Exposure and drawing:
Exposure is handled from the EXPOSE_TEXT function. It assumes that
the LINE_START_CACHE and all it's parameters are accurate and simply
the LINE_START_CACHE and all its parameters are accurate and simply
exposes any line which is in the exposure region. It calls the
CLEAR_AREA function to clear the background and/or lay down a pixmap
background. The text widget has a scrollable pixmap background, which

18447
docs/tutorial/gtk_tut.sgml Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

10090
docs/tutorial/gtk_tut_it.sgml Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,99 @@
#! /bin/sh
# package_tutorial.sh - Package up the tutorial into various formats
# Copyright (C) Tony Gale 1999
# Contact: gale@gtk.org
#
# NOTE: This script requires the following to be installed:
# o SGML Tools
# o Latex
# o DVI tools
TARGET=`pwd`/gtk_tut.sgml
GIFS="`pwd`/*.gif"
EXAMPLES=`pwd`/../examples
PATH=`pwd`:$PATH
DATE=`date '+%y%m%d'`
# Check top level directory
if [ ! -d gtk_tutorial ]; then
if [ -e gtk_tutorial ]; then
echo "ERROR: gtk_tutorial is not a directory"
exit
fi
mkdir gtk_tutorial.$DATE
fi
cd gtk_tutorial.$DATE
# SGML Format
echo -n "Copy SGML and GIF's.... "
if [ ! -d sgml ]; then
if [ -e sgml ]; then
echo "ERROR: html is not a directory"
exit
fi
mkdir sgml
fi
(cd sgml ; cp $TARGET . ; cp $GIFS .)
echo "done"
# HTML Format
echo -n "Formatting into HTML.... "
if [ ! -d html ]; then
if [ -e html ]; then
echo "ERROR: html is not a directory"
exit
fi
mkdir html
fi
(cd html ; sgml2html $TARGET ; cp $GIFS .)
echo "done"
# Text Format
echo -n "Formatting into Text.... "
if [ ! -d txt ]; then
if [ -e txt ]; then
echo "ERROR: txt is not a directory"
exit
fi
mkdir txt
fi
(cd txt ; sgml2txt -f $TARGET 2>&1 > /dev/null )
echo "done"
# PS and DVI Format
echo -n "Formatting into PS and DVI.... "
if [ ! -d ps ]; then
if [ -e ps ]; then
echo "ERROR: ps is not a directory"
exit
fi
mkdir ps
fi
(cd ps ; sgml2latex --output=ps $TARGET > /dev/null)
(cd ps ; sgml2latex $TARGET > /dev/null)
echo "done"
# Copy examples
echo -n "Copying examples"
cp -R $EXAMPLES .
(cd examples ; make clean ; rm -rf CVS */CVS)
echo "done"
# Package it all up
echo -n "Creating packages.... "
cd ..
tar cvfz gtk_tutorial.$DATE.tar.gz gtk_tutorial.$DATE
echo "done"
rm -rf gtk_tutorial.$DATE
echo
echo Package gtk_tutorial.$DATE.tar.gz created.
echo

View File

@@ -333,8 +333,7 @@ Removing from a container
When a widget is removed to a container, the container:
1) Calls gtk_widget_unparent (widget)
2) Sets widget->parent to NULL
3) Queues a resize.
2) Queues a resize.
Notes:
@@ -378,7 +377,7 @@ The Map signal
1) Set the MAPPED flag
2) If the widget has any windows, gdk_window_show those windows
3) call gtk_widget_map for all child windows that are
3) call gtk_widget_map for all child widgets that are
VISIBLE and !MAPPED.
3) Do any other functions related to putting the widget onscreen.
(for instance, showing extra popup windows...)
@@ -392,7 +391,7 @@ When a widget receives the unmap signal, it must:
2) If the widget does not have a window, unmap all child widgets
3) Do any other functions related to taking the widget offscreen
(for instance, removing popup windows...)
3) Unset GTK_MAPPED
4) Unset GTK_MAPPED
The Unrealize signal

52
examples/Makefile Normal file
View File

@@ -0,0 +1,52 @@
SUBDIRS = arrow \
aspectframe \
base \
buttonbox \
buttons \
calendar \
clist \
entry \
eventbox \
filesel \
fixed \
frame \
gtkdial \
helloworld \
helloworld2 \
label \
list \
menu \
notebook \
packbox \
packer \
paned \
pixmap \
progressbar \
radiobuttons \
rangewidgets \
rulers \
scribble-simple \
scribble-xinput \
scrolledwin \
selection \
spinbutton \
statusbar \
table \
text \
tictactoe \
tree \
wheelbarrow
all:
list='$(SUBDIRS)'; \
for subdir in $$list; do \
(cd $$subdir && $(MAKE)); \
done
clean:
list='$(SUBDIRS)'; \
for subdir in $$list; do \
(cd $$subdir && $(MAKE) clean); \
done

41
examples/README.1ST Normal file
View File

@@ -0,0 +1,41 @@
GTK Example Code - Tony Gale <gale@gtk.org> 980623
--------------------------------------------------
I have written an awk script to automatically extract the code
examples from the GTK Tutorial (in sgml), so they only have to be
changed in one place.
It's called 'extract.awk', and there is a shell wrapper to invoke
it called 'extract.sh'
It takes the following switches:
-c : Just do checking rather than output files
-f <filename> : Extract a specific file
-d : Extract file(s) to current directory
Without the -d switch, the code will be placed in the appropriate
sub-directory. Those sub-directories will be created if they do not
exist.
Without the -f switch, all code examples will be extracted.
The shell wrapper assumes that the GTK Tutorial is in the
file "../docs/gtk_tut.sgml"
It works by looking for sections of text in the tutorial surrounded
by, for example:
/* example-start helloworld helloworld.c */
and
/* example-end */
Where "helloworld" is the directory into which the file will be
placed (which can also be a directory spec like hello/hello1), and
"helloworld.c" is the file name for the code.
So, the code between these lines would be extracted to the file
helloworld/helloworld.c
It also handles replacing the sgml tag '&amp;' with '&'

8
examples/arrow/Makefile Normal file
View File

@@ -0,0 +1,8 @@
CC = gcc
arrow: arrow.c
$(CC) `gtk-config --cflags` arrow.c -o arrow `gtk-config --libs`
clean:
rm -f *.o arrow

74
examples/arrow/arrow.c Normal file
View File

@@ -0,0 +1,74 @@
/* example-start arrow arrow.c */
#include <gtk/gtk.h>
/* Create an Arrow widget with the specified parameters
* and pack it into a button */
GtkWidget *create_arrow_button( GtkArrowType arrow_type,
GtkShadowType shadow_type )
{
GtkWidget *button;
GtkWidget *arrow;
button = gtk_button_new();
arrow = gtk_arrow_new (arrow_type, shadow_type);
gtk_container_add (GTK_CONTAINER (button), arrow);
gtk_widget_show(button);
gtk_widget_show(arrow);
return(button);
}
int main( int argc,
char *argv[] )
{
/* GtkWidget is the storage type for widgets */
GtkWidget *window;
GtkWidget *button;
GtkWidget *box;
/* Initialize the toolkit */
gtk_init (&argc, &argv);
/* Create a new window */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Arrow Buttons");
/* It's a good idea to do this for all windows. */
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (gtk_main_quit), NULL);
/* Sets the border width of the window. */
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
/* Create a box to hold the arrows/buttons */
box = gtk_hbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (box), 2);
gtk_container_add (GTK_CONTAINER (window), box);
/* Pack and show all our widgets */
gtk_widget_show(box);
button = create_arrow_button(GTK_ARROW_UP, GTK_SHADOW_IN);
gtk_box_pack_start (GTK_BOX (box), button, FALSE, FALSE, 3);
button = create_arrow_button(GTK_ARROW_DOWN, GTK_SHADOW_OUT);
gtk_box_pack_start (GTK_BOX (box), button, FALSE, FALSE, 3);
button = create_arrow_button(GTK_ARROW_LEFT, GTK_SHADOW_ETCHED_IN);
gtk_box_pack_start (GTK_BOX (box), button, FALSE, FALSE, 3);
button = create_arrow_button(GTK_ARROW_RIGHT, GTK_SHADOW_ETCHED_OUT);
gtk_box_pack_start (GTK_BOX (box), button, FALSE, FALSE, 3);
gtk_widget_show (window);
/* Rest in gtk_main and wait for the fun to begin! */
gtk_main ();
return(0);
}
/* example-end */

View File

@@ -0,0 +1,8 @@
CC = gcc
aspectframe: aspectframe.c
$(CC) `gtk-config --cflags` aspectframe.c -o aspectframe `gtk-config --libs`
clean:
rm -f *.o aspectframe

View File

@@ -0,0 +1,44 @@
/* example-start aspectframe aspectframe.c */
#include <gtk/gtk.h>
int main( int argc,
char *argv[] )
{
GtkWidget *window;
GtkWidget *aspect_frame;
GtkWidget *drawing_area;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Aspect Frame");
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (gtk_main_quit), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
/* Create an aspect_frame and add it to our toplevel window */
aspect_frame = gtk_aspect_frame_new ("2x1", /* label */
0.5, /* center x */
0.5, /* center y */
2, /* xsize/ysize = 2 */
FALSE /* ignore child's aspect */);
gtk_container_add (GTK_CONTAINER(window), aspect_frame);
gtk_widget_show (aspect_frame);
/* Now add a child widget to the aspect frame */
drawing_area = gtk_drawing_area_new ();
/* Ask for a 200x200 window, but the AspectFrame will give us a 200x100
* window since we are forcing a 2x1 aspect ratio */
gtk_widget_set_usize (drawing_area, 200, 200);
gtk_container_add (GTK_CONTAINER(aspect_frame), drawing_area);
gtk_widget_show (drawing_area);
gtk_widget_show (window);
gtk_main ();
return 0;
}
/* example-end */

8
examples/base/Makefile Normal file
View File

@@ -0,0 +1,8 @@
CC = gcc
base: base.c
$(CC) `gtk-config --cflags` base.c -o base `gtk-config --libs`
clean:
rm -f *.o base

19
examples/base/base.c Normal file
View File

@@ -0,0 +1,19 @@
/* example-start base base.c */
#include <gtk/gtk.h>
int main( int argc,
char *argv[] )
{
GtkWidget *window;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_widget_show (window);
gtk_main ();
return(0);
}
/* example-end */

View File

@@ -0,0 +1,8 @@
CC = gcc
buttonbox: buttonbox.c
$(CC) `gtk-config --cflags` buttonbox.c -o buttonbox `gtk-config --libs`
clean:
rm -f *.o buttonbox

View File

@@ -0,0 +1,122 @@
/* example-start buttonbox buttonbox.c */
#include <gtk/gtk.h>
/* Create a Button Box with the specified parameters */
GtkWidget *create_bbox( gint horizontal,
char *title,
gint spacing,
gint child_w,
gint child_h,
gint layout )
{
GtkWidget *frame;
GtkWidget *bbox;
GtkWidget *button;
frame = gtk_frame_new (title);
if (horizontal)
bbox = gtk_hbutton_box_new ();
else
bbox = gtk_vbutton_box_new ();
gtk_container_set_border_width (GTK_CONTAINER (bbox), 5);
gtk_container_add (GTK_CONTAINER (frame), bbox);
/* Set the appearance of the Button Box */
gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), layout);
gtk_button_box_set_spacing (GTK_BUTTON_BOX (bbox), spacing);
gtk_button_box_set_child_size (GTK_BUTTON_BOX (bbox), child_w, child_h);
button = gtk_button_new_with_label ("OK");
gtk_container_add (GTK_CONTAINER (bbox), button);
button = gtk_button_new_with_label ("Cancel");
gtk_container_add (GTK_CONTAINER (bbox), button);
button = gtk_button_new_with_label ("Help");
gtk_container_add (GTK_CONTAINER (bbox), button);
return(frame);
}
int main( int argc,
char *argv[] )
{
static GtkWidget* window = NULL;
GtkWidget *main_vbox;
GtkWidget *vbox;
GtkWidget *hbox;
GtkWidget *frame_horz;
GtkWidget *frame_vert;
/* Initialize GTK */
gtk_init( &argc, &argv );
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Button Boxes");
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC(gtk_main_quit),
NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
main_vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), main_vbox);
frame_horz = gtk_frame_new ("Horizontal Button Boxes");
gtk_box_pack_start (GTK_BOX (main_vbox), frame_horz, TRUE, TRUE, 10);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 10);
gtk_container_add (GTK_CONTAINER (frame_horz), vbox);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "Spread (spacing 40)", 40, 85, 20, GTK_BUTTONBOX_SPREAD),
TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "Edge (spacing 30)", 30, 85, 20, GTK_BUTTONBOX_EDGE),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "Start (spacing 20)", 20, 85, 20, GTK_BUTTONBOX_START),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (vbox),
create_bbox (TRUE, "End (spacing 10)", 10, 85, 20, GTK_BUTTONBOX_END),
TRUE, TRUE, 5);
frame_vert = gtk_frame_new ("Vertical Button Boxes");
gtk_box_pack_start (GTK_BOX (main_vbox), frame_vert, TRUE, TRUE, 10);
hbox = gtk_hbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
gtk_container_add (GTK_CONTAINER (frame_vert), hbox);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "Spread (spacing 5)", 5, 85, 20, GTK_BUTTONBOX_SPREAD),
TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "Edge (spacing 30)", 30, 85, 20, GTK_BUTTONBOX_EDGE),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "Start (spacing 20)", 20, 85, 20, GTK_BUTTONBOX_START),
TRUE, TRUE, 5);
gtk_box_pack_start (GTK_BOX (hbox),
create_bbox (FALSE, "End (spacing 20)", 20, 85, 20, GTK_BUTTONBOX_END),
TRUE, TRUE, 5);
gtk_widget_show_all (window);
/* Enter the event loop */
gtk_main ();
return(0);
}
/* example-end */

View File

@@ -0,0 +1,8 @@
CC = gcc
buttons: buttons.c
$(CC) `gtk-config --cflags` buttons.c -o buttons `gtk-config --libs`
clean:
rm -f *.o buttons

108
examples/buttons/buttons.c Normal file
View File

@@ -0,0 +1,108 @@
/* example-start buttons buttons.c */
#include <gtk/gtk.h>
/* Create a new hbox with an image and a label packed into it
* and return the box. */
GtkWidget *xpm_label_box( GtkWidget *parent,
gchar *xpm_filename,
gchar *label_text )
{
GtkWidget *box1;
GtkWidget *label;
GtkWidget *pixmapwid;
GdkPixmap *pixmap;
GdkBitmap *mask;
GtkStyle *style;
/* Create box for xpm and label */
box1 = gtk_hbox_new (FALSE, 0);
gtk_container_set_border_width (GTK_CONTAINER (box1), 2);
/* Get the style of the button to get the
* background color. */
style = gtk_widget_get_style(parent);
/* Now on to the xpm stuff */
pixmap = gdk_pixmap_create_from_xpm (parent->window, &mask,
&style->bg[GTK_STATE_NORMAL],
xpm_filename);
pixmapwid = gtk_pixmap_new (pixmap, mask);
/* Create a label for the button */
label = gtk_label_new (label_text);
/* Pack the pixmap and label into the box */
gtk_box_pack_start (GTK_BOX (box1),
pixmapwid, FALSE, FALSE, 3);
gtk_box_pack_start (GTK_BOX (box1), label, FALSE, FALSE, 3);
gtk_widget_show(pixmapwid);
gtk_widget_show(label);
return(box1);
}
/* Our usual callback function */
void callback( GtkWidget *widget,
gpointer data )
{
g_print ("Hello again - %s was pressed\n", (char *) data);
}
int main( int argc,
char *argv[] )
{
/* GtkWidget is the storage type for widgets */
GtkWidget *window;
GtkWidget *button;
GtkWidget *box1;
gtk_init (&argc, &argv);
/* Create a new window */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Pixmap'd Buttons!");
/* It's a good idea to do this for all windows. */
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (gtk_exit), NULL);
gtk_signal_connect (GTK_OBJECT (window), "delete_event",
GTK_SIGNAL_FUNC (gtk_exit), NULL);
/* Sets the border width of the window. */
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
gtk_widget_realize(window);
/* Create a new button */
button = gtk_button_new ();
/* Connect the "clicked" signal of the button to our callback */
gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (callback), (gpointer) "cool button");
/* This calls our box creating function */
box1 = xpm_label_box(window, "info.xpm", "cool button");
/* Pack and show all our widgets */
gtk_widget_show(box1);
gtk_container_add (GTK_CONTAINER (button), box1);
gtk_widget_show(button);
gtk_container_add (GTK_CONTAINER (window), button);
gtk_widget_show (window);
/* Rest in gtk_main and wait for the fun to begin! */
gtk_main ();
return(0);
}
/* example-end */

92
examples/buttons/info.xpm Normal file
View File

@@ -0,0 +1,92 @@
/* XPM */
static char *openfile[] = {
/* width height num_colors chars_per_pixel */
" 20 19 66 2",
/* colors */
".. c None",
".# c #000000",
".a c #dfdfdf",
".b c #7f7f7f",
".c c #006f6f",
".d c #00efef",
".e c #009f9f",
".f c #004040",
".g c #00bfbf",
".h c #ff0000",
".i c #ffffff",
".j c #7f0000",
".k c #007070",
".l c #00ffff",
".m c #00a0a0",
".n c #004f4f",
".o c #00cfcf",
".p c #8f8f8f",
".q c #6f6f6f",
".r c #a0a0a0",
".s c #7f7f00",
".t c #007f7f",
".u c #5f5f5f",
".v c #707070",
".w c #00f0f0",
".x c #009090",
".y c #ffff00",
".z c #0000ff",
".A c #00afaf",
".B c #00d0d0",
".C c #00dfdf",
".D c #005f5f",
".E c #00b0b0",
".F c #001010",
".G c #00c0c0",
".H c #000f0f",
".I c #00007f",
".J c #005050",
".K c #002f2f",
".L c #dfcfcf",
".M c #dfd0d0",
".N c #006060",
".O c #00e0e0",
".P c #00ff00",
".Q c #002020",
".R c #dfc0c0",
".S c #008080",
".T c #001f1f",
".U c #003f3f",
".V c #007f00",
".W c #00000f",
".X c #000010",
".Y c #00001f",
".Z c #000020",
".0 c #00002f",
".1 c #000030",
".2 c #00003f",
".3 c #000040",
".4 c #00004f",
".5 c #000050",
".6 c #00005f",
".7 c #000060",
".8 c #00006f",
".9 c #000070",
"#. c #7f7f80",
"## c #9f9f9f",
/* pixels */
"........................................",
"........................................",
"........................................",
".......................#.#.#............",
".....................#.......#...#......",
"...............................#.#......",
".......#.#.#.................#.#.#......",
".....#.y.i.y.#.#.#.#.#.#.#..............",
".....#.i.y.i.y.i.y.i.y.i.#..............",
".....#.y.i.y.i.y.i.y.i.y.#..............",
".....#.i.y.i.y.#.#.#.#.#.#.#.#.#.#.#....",
".....#.y.i.y.#.s.s.s.s.s.s.s.s.s.#......",
".....#.i.y.#.s.s.s.s.s.s.s.s.s.#........",
".....#.y.#.s.s.s.s.s.s.s.s.s.#..........",
".....#.#.s.s.s.s.s.s.s.s.s.#............",
".....#.#.#.#.#.#.#.#.#.#.#..............",
"........................................",
"........................................",
"........................................"
};

View File

@@ -0,0 +1,8 @@
CC = gcc
calendar: calendar.c
$(CC) `gtk-config --cflags` calendar.c -o calendar `gtk-config --libs`
clean:
rm -f calendar

View File

@@ -0,0 +1,424 @@
/* example-start calendar calendar.c */
/*
* Copyright (C) 1998 Cesar Miquel, Shawn T. Amundson, Mattias Grönlund
* Copyright (C) 2000 Tony Gale
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#include <gtk/gtk.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#define DEF_PAD 10
#define DEF_PAD_SMALL 5
#define TM_YEAR_BASE 1900
typedef struct _CalendarData {
GtkWidget *flag_checkboxes[5];
gboolean settings[5];
gchar *font;
GtkWidget *font_dialog;
GtkWidget *window;
GtkWidget *prev2_sig;
GtkWidget *prev_sig;
GtkWidget *last_sig;
GtkWidget *month;
} CalendarData;
enum {
calendar_show_header,
calendar_show_days,
calendar_month_change,
calendar_show_week,
calendar_monday_first
};
/*
* GtkCalendar
*/
void calendar_date_to_string( CalendarData *data,
char *buffer,
gint buff_len )
{
struct tm tm;
time_t time;
memset (&tm, 0, sizeof (tm));
gtk_calendar_get_date (GTK_CALENDAR(data->window),
&tm.tm_year, &tm.tm_mon, &tm.tm_mday);
tm.tm_year -= TM_YEAR_BASE;
time = mktime(&tm);
strftime (buffer, buff_len-1, "%x", gmtime(&time));
}
void calendar_set_signal_strings( char *sig_str,
CalendarData *data)
{
gchar *prev_sig;
gtk_label_get (GTK_LABEL (data->prev_sig), &prev_sig);
gtk_label_set (GTK_LABEL (data->prev2_sig), prev_sig);
gtk_label_get (GTK_LABEL (data->last_sig), &prev_sig);
gtk_label_set (GTK_LABEL (data->prev_sig), prev_sig);
gtk_label_set (GTK_LABEL (data->last_sig), sig_str);
}
void calendar_month_changed( GtkWidget *widget,
CalendarData *data )
{
char buffer[256] = "month_changed: ";
calendar_date_to_string (data, buffer+15, 256-15);
calendar_set_signal_strings (buffer, data);
}
void calendar_day_selected( GtkWidget *widget,
CalendarData *data )
{
char buffer[256] = "day_selected: ";
calendar_date_to_string (data, buffer+14, 256-14);
calendar_set_signal_strings (buffer, data);
}
void calendar_day_selected_double_click( GtkWidget *widget,
CalendarData *data )
{
struct tm tm;
char buffer[256] = "day_selected_double_click: ";
calendar_date_to_string (data, buffer+27, 256-27);
calendar_set_signal_strings (buffer, data);
memset (&tm, 0, sizeof (tm));
gtk_calendar_get_date (GTK_CALENDAR(data->window),
&tm.tm_year, &tm.tm_mon, &tm.tm_mday);
tm.tm_year -= TM_YEAR_BASE;
if(GTK_CALENDAR(data->window)->marked_date[tm.tm_mday-1] == 0) {
gtk_calendar_mark_day(GTK_CALENDAR(data->window),tm.tm_mday);
} else {
gtk_calendar_unmark_day(GTK_CALENDAR(data->window),tm.tm_mday);
}
}
void calendar_prev_month( GtkWidget *widget,
CalendarData *data )
{
char buffer[256] = "prev_month: ";
calendar_date_to_string (data, buffer+12, 256-12);
calendar_set_signal_strings (buffer, data);
}
void calendar_next_month( GtkWidget *widget,
CalendarData *data )
{
char buffer[256] = "next_month: ";
calendar_date_to_string (data, buffer+12, 256-12);
calendar_set_signal_strings (buffer, data);
}
void calendar_prev_year( GtkWidget *widget,
CalendarData *data )
{
char buffer[256] = "prev_year: ";
calendar_date_to_string (data, buffer+11, 256-11);
calendar_set_signal_strings (buffer, data);
}
void calendar_next_year( GtkWidget *widget,
CalendarData *data )
{
char buffer[256] = "next_year: ";
calendar_date_to_string (data, buffer+11, 256-11);
calendar_set_signal_strings (buffer, data);
}
void calendar_set_flags( CalendarData *calendar )
{
gint i;
gint options=0;
for (i=0;i<5;i++)
if (calendar->settings[i])
{
options=options + (1<<i);
}
if (calendar->window)
gtk_calendar_display_options (GTK_CALENDAR (calendar->window), options);
}
void calendar_toggle_flag( GtkWidget *toggle,
CalendarData *calendar )
{
gint i;
gint j;
j=0;
for (i=0; i<5; i++)
if (calendar->flag_checkboxes[i] == toggle)
j = i;
calendar->settings[j]=!calendar->settings[j];
calendar_set_flags(calendar);
}
void calendar_font_selection_ok( GtkWidget *button,
CalendarData *calendar )
{
GtkStyle *style;
GdkFont *font;
calendar->font = gtk_font_selection_dialog_get_font_name(
GTK_FONT_SELECTION_DIALOG (calendar->font_dialog));
if (calendar->window)
{
font = gtk_font_selection_dialog_get_font(GTK_FONT_SELECTION_DIALOG(calendar->font_dialog));
if (font)
{
style = gtk_style_copy (gtk_widget_get_style (calendar->window));
gdk_font_unref (style->font);
style->font = font;
gdk_font_ref (style->font);
gtk_widget_set_style (calendar->window, style);
}
}
}
void calendar_select_font( GtkWidget *button,
CalendarData *calendar )
{
GtkWidget *window;
if (!calendar->font_dialog) {
window = gtk_font_selection_dialog_new ("Font Selection Dialog");
g_return_if_fail(GTK_IS_FONT_SELECTION_DIALOG(window));
calendar->font_dialog = window;
gtk_window_position (GTK_WINDOW (window), GTK_WIN_POS_MOUSE);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (gtk_widget_destroyed),
&calendar->font_dialog);
gtk_signal_connect (GTK_OBJECT (GTK_FONT_SELECTION_DIALOG (window)->ok_button),
"clicked", GTK_SIGNAL_FUNC(calendar_font_selection_ok),
calendar);
gtk_signal_connect_object (GTK_OBJECT (GTK_FONT_SELECTION_DIALOG (window)->cancel_button),
"clicked",
GTK_SIGNAL_FUNC (gtk_widget_destroy),
GTK_OBJECT (calendar->font_dialog));
}
window=calendar->font_dialog;
if (!GTK_WIDGET_VISIBLE (window))
gtk_widget_show (window);
else
gtk_widget_destroy (window);
}
void create_calendar()
{
GtkWidget *window;
GtkWidget *vbox, *vbox2, *vbox3;
GtkWidget *hbox;
GtkWidget *hbbox;
GtkWidget *calendar;
GtkWidget *toggle;
GtkWidget *button;
GtkWidget *frame;
GtkWidget *separator;
GtkWidget *label;
GtkWidget *bbox;
static CalendarData calendar_data;
gint i;
struct {
char *label;
} flags[] =
{
{ "Show Heading" },
{ "Show Day Names" },
{ "No Month Change" },
{ "Show Week Numbers" },
{ "Week Start Monday" }
};
calendar_data.window = NULL;
calendar_data.font = NULL;
calendar_data.font_dialog = NULL;
for (i=0; i<5; i++) {
calendar_data.settings[i]=0;
}
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window), "GtkCalendar Example");
gtk_container_border_width (GTK_CONTAINER (window), 5);
gtk_signal_connect(GTK_OBJECT(window), "destroy",
GTK_SIGNAL_FUNC(gtk_main_quit),
NULL);
gtk_signal_connect(GTK_OBJECT(window), "delete-event",
GTK_SIGNAL_FUNC(gtk_false),
NULL);
gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, TRUE);
vbox = gtk_vbox_new(FALSE, DEF_PAD);
gtk_container_add (GTK_CONTAINER (window), vbox);
/*
* The top part of the window, Calendar, flags and fontsel.
*/
hbox = gtk_hbox_new(FALSE, DEF_PAD);
gtk_box_pack_start (GTK_BOX(vbox), hbox, TRUE, TRUE, DEF_PAD);
hbbox = gtk_hbutton_box_new();
gtk_box_pack_start(GTK_BOX(hbox), hbbox, FALSE, FALSE, DEF_PAD);
gtk_button_box_set_layout(GTK_BUTTON_BOX(hbbox), GTK_BUTTONBOX_SPREAD);
gtk_button_box_set_spacing(GTK_BUTTON_BOX(hbbox), 5);
/* Calendar widget */
frame = gtk_frame_new("Calendar");
gtk_box_pack_start(GTK_BOX(hbbox), frame, FALSE, TRUE, DEF_PAD);
calendar=gtk_calendar_new();
calendar_data.window = calendar;
calendar_set_flags(&calendar_data);
gtk_calendar_mark_day ( GTK_CALENDAR(calendar), 19);
gtk_container_add( GTK_CONTAINER( frame), calendar);
gtk_signal_connect (GTK_OBJECT (calendar), "month_changed",
GTK_SIGNAL_FUNC (calendar_month_changed),
&calendar_data);
gtk_signal_connect (GTK_OBJECT (calendar), "day_selected",
GTK_SIGNAL_FUNC (calendar_day_selected),
&calendar_data);
gtk_signal_connect (GTK_OBJECT (calendar), "day_selected_double_click",
GTK_SIGNAL_FUNC (calendar_day_selected_double_click),
&calendar_data);
gtk_signal_connect (GTK_OBJECT (calendar), "prev_month",
GTK_SIGNAL_FUNC (calendar_prev_month),
&calendar_data);
gtk_signal_connect (GTK_OBJECT (calendar), "next_month",
GTK_SIGNAL_FUNC (calendar_next_month),
&calendar_data);
gtk_signal_connect (GTK_OBJECT (calendar), "prev_year",
GTK_SIGNAL_FUNC (calendar_prev_year),
&calendar_data);
gtk_signal_connect (GTK_OBJECT (calendar), "next_year",
GTK_SIGNAL_FUNC (calendar_next_year),
&calendar_data);
separator = gtk_vseparator_new ();
gtk_box_pack_start (GTK_BOX (hbox), separator, FALSE, TRUE, 0);
vbox2 = gtk_vbox_new(FALSE, DEF_PAD);
gtk_box_pack_start(GTK_BOX(hbox), vbox2, FALSE, FALSE, DEF_PAD);
/* Build the Right frame with the flags in */
frame = gtk_frame_new("Flags");
gtk_box_pack_start(GTK_BOX(vbox2), frame, TRUE, TRUE, DEF_PAD);
vbox3 = gtk_vbox_new(TRUE, DEF_PAD_SMALL);
gtk_container_add(GTK_CONTAINER(frame), vbox3);
for (i = 0; i < 5; i++)
{
toggle = gtk_check_button_new_with_label(flags[i].label);
gtk_signal_connect (GTK_OBJECT (toggle),
"toggled",
GTK_SIGNAL_FUNC(calendar_toggle_flag),
&calendar_data);
gtk_box_pack_start (GTK_BOX (vbox3), toggle, TRUE, TRUE, 0);
calendar_data.flag_checkboxes[i]=toggle;
}
/* Build the right font-button */
button = gtk_button_new_with_label("Font...");
gtk_signal_connect (GTK_OBJECT (button),
"clicked",
GTK_SIGNAL_FUNC(calendar_select_font),
&calendar_data);
gtk_box_pack_start (GTK_BOX (vbox2), button, FALSE, FALSE, 0);
/*
* Build the Signal-event part.
*/
frame = gtk_frame_new("Signal events");
gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, DEF_PAD);
vbox2 = gtk_vbox_new(TRUE, DEF_PAD_SMALL);
gtk_container_add(GTK_CONTAINER(frame), vbox2);
hbox = gtk_hbox_new (FALSE, 3);
gtk_box_pack_start (GTK_BOX (vbox2), hbox, FALSE, TRUE, 0);
label = gtk_label_new ("Signal:");
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
calendar_data.last_sig = gtk_label_new ("");
gtk_box_pack_start (GTK_BOX (hbox), calendar_data.last_sig, FALSE, TRUE, 0);
hbox = gtk_hbox_new (FALSE, 3);
gtk_box_pack_start (GTK_BOX (vbox2), hbox, FALSE, TRUE, 0);
label = gtk_label_new ("Previous signal:");
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
calendar_data.prev_sig = gtk_label_new ("");
gtk_box_pack_start (GTK_BOX (hbox), calendar_data.prev_sig, FALSE, TRUE, 0);
hbox = gtk_hbox_new (FALSE, 3);
gtk_box_pack_start (GTK_BOX (vbox2), hbox, FALSE, TRUE, 0);
label = gtk_label_new ("Second previous signal:");
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
calendar_data.prev2_sig = gtk_label_new ("");
gtk_box_pack_start (GTK_BOX (hbox), calendar_data.prev2_sig, FALSE, TRUE, 0);
bbox = gtk_hbutton_box_new ();
gtk_box_pack_start (GTK_BOX (vbox), bbox, FALSE, FALSE, 0);
gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END);
button = gtk_button_new_with_label ("Close");
gtk_signal_connect (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC (gtk_main_quit),
NULL);
gtk_container_add (GTK_CONTAINER (bbox), button);
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (button);
gtk_widget_show_all(window);
}
int main(int argc,
char *argv[] )
{
gtk_set_locale ();
gtk_init (&argc, &argv);
create_calendar();
gtk_main();
return(0);
}
/* example-end */

8
examples/clist/Makefile Normal file
View File

@@ -0,0 +1,8 @@
CC = gcc
clist: clist.c
$(CC) `gtk-config --cflags` clist.c -o clist `gtk-config --libs`
clean:
rm -f *.o clist

174
examples/clist/clist.c Normal file
View File

@@ -0,0 +1,174 @@
/* example-start clist clist.c */
#include <gtk/gtk.h>
/* User clicked the "Add List" button. */
void button_add_clicked( gpointer data )
{
int indx;
/* Something silly to add to the list. 4 rows of 2 columns each */
gchar *drink[4][2] = { { "Milk", "3 Oz" },
{ "Water", "6 l" },
{ "Carrots", "2" },
{ "Snakes", "55" } };
/* Here we do the actual adding of the text. It's done once for
* each row.
*/
for ( indx=0 ; indx < 4 ; indx++ )
gtk_clist_append( (GtkCList *) data, drink[indx]);
return;
}
/* User clicked the "Clear List" button. */
void button_clear_clicked( gpointer data )
{
/* Clear the list using gtk_clist_clear. This is much faster than
* calling gtk_clist_remove once for each row.
*/
gtk_clist_clear( (GtkCList *) data);
return;
}
/* The user clicked the "Hide/Show titles" button. */
void button_hide_show_clicked( gpointer data )
{
/* Just a flag to remember the status. 0 = currently visible */
static short int flag = 0;
if (flag == 0)
{
/* Hide the titles and set the flag to 1 */
gtk_clist_column_titles_hide((GtkCList *) data);
flag++;
}
else
{
/* Show the titles and reset flag to 0 */
gtk_clist_column_titles_show((GtkCList *) data);
flag--;
}
return;
}
/* If we come here, then the user has selected a row in the list. */
void selection_made( GtkWidget *clist,
gint row,
gint column,
GdkEventButton *event,
gpointer data )
{
gchar *text;
/* Get the text that is stored in the selected row and column
* which was clicked in. We will receive it as a pointer in the
* argument text.
*/
gtk_clist_get_text(GTK_CLIST(clist), row, column, &text);
/* Just prints some information about the selected row */
g_print("You selected row %d. More specifically you clicked in "
"column %d, and the text in this cell is %s\n\n",
row, column, text);
return;
}
int main( int argc,
gchar *argv[] )
{
GtkWidget *window;
GtkWidget *vbox, *hbox;
GtkWidget *scrolled_window, *clist;
GtkWidget *button_add, *button_clear, *button_hide_show;
gchar *titles[2] = { "Ingredients", "Amount" };
gtk_init(&argc, &argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize(GTK_WIDGET(window), 300, 150);
gtk_window_set_title(GTK_WINDOW(window), "GtkCList Example");
gtk_signal_connect(GTK_OBJECT(window),
"destroy",
GTK_SIGNAL_FUNC(gtk_main_quit),
NULL);
vbox=gtk_vbox_new(FALSE, 5);
gtk_container_set_border_width(GTK_CONTAINER(vbox), 5);
gtk_container_add(GTK_CONTAINER(window), vbox);
gtk_widget_show(vbox);
/* Create a scrolled window to pack the CList widget into */
scrolled_window = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
gtk_box_pack_start(GTK_BOX(vbox), scrolled_window, TRUE, TRUE, 0);
gtk_widget_show (scrolled_window);
/* Create the CList. For this example we use 2 columns */
clist = gtk_clist_new_with_titles( 2, titles);
/* When a selection is made, we want to know about it. The callback
* used is selection_made, and its code can be found further down */
gtk_signal_connect(GTK_OBJECT(clist), "select_row",
GTK_SIGNAL_FUNC(selection_made),
NULL);
/* It isn't necessary to shadow the border, but it looks nice :) */
gtk_clist_set_shadow_type (GTK_CLIST(clist), GTK_SHADOW_OUT);
/* What however is important, is that we set the column widths as
* they will never be right otherwise. Note that the columns are
* numbered from 0 and up (to 1 in this case).
*/
gtk_clist_set_column_width (GTK_CLIST(clist), 0, 150);
/* Add the CList widget to the vertical box and show it. */
gtk_container_add(GTK_CONTAINER(scrolled_window), clist);
gtk_widget_show(clist);
/* Create the buttons and add them to the window. See the button
* tutorial for more examples and comments on this.
*/
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, TRUE, 0);
gtk_widget_show(hbox);
button_add = gtk_button_new_with_label("Add List");
button_clear = gtk_button_new_with_label("Clear List");
button_hide_show = gtk_button_new_with_label("Hide/Show titles");
gtk_box_pack_start(GTK_BOX(hbox), button_add, TRUE, TRUE, 0);
gtk_box_pack_start(GTK_BOX(hbox), button_clear, TRUE, TRUE, 0);
gtk_box_pack_start(GTK_BOX(hbox), button_hide_show, TRUE, TRUE, 0);
/* Connect our callbacks to the three buttons */
gtk_signal_connect_object(GTK_OBJECT(button_add), "clicked",
GTK_SIGNAL_FUNC(button_add_clicked),
(gpointer) clist);
gtk_signal_connect_object(GTK_OBJECT(button_clear), "clicked",
GTK_SIGNAL_FUNC(button_clear_clicked),
(gpointer) clist);
gtk_signal_connect_object(GTK_OBJECT(button_hide_show), "clicked",
GTK_SIGNAL_FUNC(button_hide_show_clicked),
(gpointer) clist);
gtk_widget_show(button_add);
gtk_widget_show(button_clear);
gtk_widget_show(button_hide_show);
/* The interface is completely set up so we show the window and
* enter the gtk_main loop.
*/
gtk_widget_show(window);
gtk_main();
return(0);
}
/* example-end */

8
examples/entry/Makefile Normal file
View File

@@ -0,0 +1,8 @@
CC = gcc
entry: entry.c
$(CC) `gtk-config --cflags` entry.c -o entry `gtk-config --libs`
clean:
rm -f *.o entry

93
examples/entry/entry.c Normal file
View File

@@ -0,0 +1,93 @@
/* example-start entry entry.c */
#include <gtk/gtk.h>
void enter_callback( GtkWidget *widget,
GtkWidget *entry )
{
gchar *entry_text;
entry_text = gtk_entry_get_text(GTK_ENTRY(entry));
printf("Entry contents: %s\n", entry_text);
}
void entry_toggle_editable( GtkWidget *checkbutton,
GtkWidget *entry )
{
gtk_entry_set_editable(GTK_ENTRY(entry),
GTK_TOGGLE_BUTTON(checkbutton)->active);
}
void entry_toggle_visibility( GtkWidget *checkbutton,
GtkWidget *entry )
{
gtk_entry_set_visibility(GTK_ENTRY(entry),
GTK_TOGGLE_BUTTON(checkbutton)->active);
}
int main( int argc,
char *argv[] )
{
GtkWidget *window;
GtkWidget *vbox, *hbox;
GtkWidget *entry;
GtkWidget *button;
GtkWidget *check;
gtk_init (&argc, &argv);
/* create a new window */
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize( GTK_WIDGET (window), 200, 100);
gtk_window_set_title(GTK_WINDOW (window), "GTK Entry");
gtk_signal_connect(GTK_OBJECT (window), "delete_event",
(GtkSignalFunc) gtk_exit, NULL);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_widget_show (vbox);
entry = gtk_entry_new_with_max_length (50);
gtk_signal_connect(GTK_OBJECT(entry), "activate",
GTK_SIGNAL_FUNC(enter_callback),
entry);
gtk_entry_set_text (GTK_ENTRY (entry), "hello");
gtk_entry_append_text (GTK_ENTRY (entry), " world");
gtk_entry_select_region (GTK_ENTRY (entry),
0, GTK_ENTRY(entry)->text_length);
gtk_box_pack_start (GTK_BOX (vbox), entry, TRUE, TRUE, 0);
gtk_widget_show (entry);
hbox = gtk_hbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (vbox), hbox);
gtk_widget_show (hbox);
check = gtk_check_button_new_with_label("Editable");
gtk_box_pack_start (GTK_BOX (hbox), check, TRUE, TRUE, 0);
gtk_signal_connect (GTK_OBJECT(check), "toggled",
GTK_SIGNAL_FUNC(entry_toggle_editable), entry);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check), TRUE);
gtk_widget_show (check);
check = gtk_check_button_new_with_label("Visible");
gtk_box_pack_start (GTK_BOX (hbox), check, TRUE, TRUE, 0);
gtk_signal_connect (GTK_OBJECT(check), "toggled",
GTK_SIGNAL_FUNC(entry_toggle_visibility), entry);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check), TRUE);
gtk_widget_show (check);
button = gtk_button_new_with_label ("Close");
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
GTK_SIGNAL_FUNC(gtk_exit),
GTK_OBJECT (window));
gtk_box_pack_start (GTK_BOX (vbox), button, TRUE, TRUE, 0);
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (button);
gtk_widget_show (button);
gtk_widget_show(window);
gtk_main();
return(0);
}
/* example-end */

View File

@@ -0,0 +1,8 @@
CC = gcc
eventbox: eventbox.c
$(CC) `gtk-config --cflags` eventbox.c -o eventbox `gtk-config --libs`
clean:
rm -f *.o eventbox

View File

@@ -0,0 +1,54 @@
/* example-start eventbox eventbox.c */
#include <gtk/gtk.h>
int main( int argc,
char *argv[] )
{
GtkWidget *window;
GtkWidget *event_box;
GtkWidget *label;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Event Box");
gtk_signal_connect (GTK_OBJECT (window), "destroy",
GTK_SIGNAL_FUNC (gtk_exit), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
/* Create an EventBox and add it to our toplevel window */
event_box = gtk_event_box_new ();
gtk_container_add (GTK_CONTAINER(window), event_box);
gtk_widget_show (event_box);
/* Create a long label */
label = gtk_label_new ("Click here to quit, quit, quit, quit, quit");
gtk_container_add (GTK_CONTAINER (event_box), label);
gtk_widget_show (label);
/* Clip it short. */
gtk_widget_set_usize (label, 110, 20);
/* And bind an action to it */
gtk_widget_set_events (event_box, GDK_BUTTON_PRESS_MASK);
gtk_signal_connect (GTK_OBJECT(event_box), "button_press_event",
GTK_SIGNAL_FUNC (gtk_exit), NULL);
/* Yet one more thing you need an X window for ... */
gtk_widget_realize (event_box);
gdk_window_set_cursor (event_box->window, gdk_cursor_new (GDK_HAND1));
gtk_widget_show (window);
gtk_main ();
return(0);
}
/* example-end */

Some files were not shown because too many files have changed in this diff Show More