Owen Taylor 3c06be96e5 Add a debug key for the text widget, move the debugging that was tied to a
Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
	move the debugging that was tied to a global variable
	to that.

	* gtk/gtkmarshal.list: Add NONE:INT,INT,INT

	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
	validated flag, in line data instead of setting height/width to
	-1. This allows us to perform operations with partially invalid
	buffer (using the old size for invalid lines) and thus to do
	incremental vaidation. Keep height/width aggregates up to date
	when deleting text and rebalancing the tree.

	* gtk/gtktextbtree.[ch]: Add functions validate a line
	(gtk_text_btree_validate_line), and to validate up
	to a number of pixels (gtk_text_btree_validate).

	* gtk/gtktextlayout.[ch]: Add an ::invalidated signal
	that indicates that something is changed and a revalidation
	pass is needed. Change ::need_repaint to ::changed, and
	make it take old and new yranges instead of a rectangle.

	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
	the line_data_destroy() function from
	gtk_text_btree_add_view() to a virtual function in
	GtkTextLayout

	* gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
	since we are handling partial repaints in a different fashion
	now.

	* gtk/gtktextbtree.[ch]: Only repaint the changed portion
	of the selection instead of queueing a repaint on the
	entire widget.

	* gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
	get_selection_bounds() down to btree, make the function
	in buffer a wrapper around the btree function.

	* gtk/gtktextlayout.[ch]: Add functions to check if the
	layout is valid and to recompute either a range of pixels
	aroudn a line or a certain total number of pixels.

	* gtk/gtktextlayout.[ch]: Cache a single line display;
	now that we only redraw the needed portions, the hit rate
	for this cache is quite high.

	* gtk/gtktextview.[ch]: Keep track of the first paragraph
	on the screen so that when re-laying-out the buffer, we can
	keep the same place. This requires connecting to ::value_changed
	on the adjustments

	* gtk/gtktextview.[ch]: Add idle functions to revalidate
	the buffer after we receive an ::invalidated signal.
2000-05-18 03:15:50 +00:00
2000-04-05 04:35:37 +00:00
2000-05-04 13:13:40 +00:00
2000-01-21 21:57:14 +00:00
2000-03-14 19:57:25 +00:00
1999-09-28 20:19:13 +00:00
2000-03-14 19:57:25 +00:00
2000-03-14 19:57:25 +00:00
2000-04-05 04:35:37 +00:00
1999-11-22 21:52:50 +00:00
2000-04-05 20:42:31 +00:00
1999-11-22 21:52:50 +00:00
2000-03-14 19:57:25 +00:00
2000-03-14 19:57:25 +00:00
2000-04-05 04:11:10 +00:00
1999-11-22 21:52:50 +00:00
2000-04-05 20:42:31 +00:00
1999-11-22 21:52:50 +00:00
1999-09-28 20:19:13 +00:00
2000-03-30 01:52:50 +00:00

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

This is GTK+ version 1.3.0. 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.0

[ Please substitute 1.3.0 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.0

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".
Description
GTK is a multi-platform toolkit for creating graphical user interfaces.
Readme 570 MiB
Languages
C 90.8%
CSS 7.3%
Meson 0.5%
SCSS 0.4%
GLSL 0.3%
Other 0.5%