GTK is a multi-platform toolkit for creating graphical user interfaces.
Go to file
Alexander Larsson 814957b46e Add note about GtkMenuPositionFunc API changes.
2000-11-08  Alexander Larsson  <alexl@redhat.com>

	* docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
	API changes.

	* gtk/gtkmenu.c: Add support for scrolling menus.
	Remove gtk_menu_append/prepend/insert, these have been moved to
	gtkcompat.h as #defines.

	* gtk/gtkcompat.h.in:
	Add compatibility #defines for gtk_menu_append/prepend/insert

	* gtk/gtkmenu.h: Add data needed for scrolling menus.
	GtkMenuPositionFunc gets an extra argument push_in.
	gtk_menu_append/prepend/insert removed.

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
	positioning behaviour to fit to scrolling menus.

	* gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
	into menuitem->submeny. That is wrong, and broke torn
	off submenus of torn off menus, since they were unrealized
	when the first menu was unrealized.

	* gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
	gtk_menu_shell_select_item() since these need to be overridden in
	GtkMenu.

	* gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
	positioning behaviour to fit to scrolling menus.
	(gtk_option_menu_key_press, gtk_option_menu_button_press): Select
	the current item so that it is prelighted when the menu pops up.
	This is a workaround to the fact that the menu doesn't get the
	initial enter event (due to grabs).

	* gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
	s/gtk_menu_append/gtk_menu_shell_append/

	* gtk/gtknotebook.c:
	s/gtk_menu_insert/gtk_menu_shell_insert/

	* gtk/testgtk.c (create_menu, create_menus):
	Create the first menu with 50 items so that menu scrolling
	can be tested.


	Patch from Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
	system to handle size requests.  First, we ask what the size of
	the toggle is.  Then, when allocating the size, we allocate the
	toggle_size first.  This way we can have multiple menu-item
	classes w/o needing a seperate class for each.

	* gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
	* gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.

	* gtk/gtkcheckmenuitem.c
	(gtk_check_menu_item_toggle_size_request): New function to handle
	the toggle size-request.
2000-11-08 17:34:52 +00:00
contrib
debian
demos
docs Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
examples
gdk
gdk-pixbuf
gtk Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
m4macros
modules
po
tests Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
.cvsignore
acconfig.h
acinclude.m4
AUTHORS
autogen.sh
ChangeLog Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
ChangeLog.pre-1-0
ChangeLog.pre-1-2
ChangeLog.pre-2-0 Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
ChangeLog.pre-2-2 Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
ChangeLog.pre-2-4 Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
ChangeLog.pre-2-6 Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
ChangeLog.pre-2-8 Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
ChangeLog.pre-2-10 Add note about GtkMenuPositionFunc API changes. 2000-11-08 17:34:52 +00:00
config.guess
config.h.win32
config.sub
configure.in
COPYING
gdk-2.0.pc.in
gdk-pixbuf-2.0.pc.in
gtk-2.0.m4
gtk-config-2.0.in
gtk-config.in
gtk+-2.0.pc.in
gtk+.spec.in
HACKING
INSTALL
INSTALL.in
ltconfig
ltmain.sh
makecopyright
Makefile.am
NEWS
NEWS.pre-1-0
README
README.cvs-commits
README.in
README.nanox
README.win32
sanity_check
TODO
TODO.xml

General Information
===================

This is GTK+ version 1.3.1. 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/

A mailing list is located at:
  gtk-list@redhat.com

To subscribe: mail -s subscribe gtk-list-request@redhat.com < /dev/null
(Send mail to gtk-list-request@redhat.com with the subject "subscribe")

Installation
============

See the file 'INSTALL'

How to report bugs
==================

Bugs should be reported to the GNOME bug tracking
system. (http://bugs.gnome.org). To report a problem
about GTK+, send mail to submit@bugs.gnome.org.

The subject of the mail should describe your problem.
In the body of the mail, you should first include
a "pseudo-header" that gives the package and 
version number. This should be separated by a blank
line from the actual headers.

 Package: gtk+
 Version: 1.3.1

[ Please substitute 1.3.1 with the version of GTK+ that
  you have installed ]

Then describe the bug. 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.

  (Bugs that can be reproduced within the  GIMP are almost as good 
  as bugs that can be reproduced in testgtk. If you are reporting a 
  bug found with the GIMP, please include the version number of the GIMP 
  you are using)

* If the bug was a crash, the exact text that was printed out
  when the crash occured.

* Further information such as stack traces may be useful, but
  is not necessary. If you do send a stack trace, and the error
  is an X error, it will be more useful if the stacktrace
  is produced running the test program with the --sync command
  line option.

An example of a bug report:

====
To: submit@bugs.gnome.org
From: yourname@your.address.org
Subject: handlebox test in testgtk is misnamed.

Package: gtk+
Version: 1.3.1

When I run gtk/testgtk, the button "handle box"
is misnamed. There are multiple handle boxes in
the demo, so it should be "handle boxes", to
be like "buttons" or "check buttons".
===

Patches
=======

Patches can be uploaded to the incoming/ directory on
ftp.gtk.org.  Please follow the instructions there, and include
your name and email address in the README file.

If the patch fixes a bug, it is usually a good idea to include
all the information described in "How to Report Bugs".