diff options
author | Havoc Pennington <hp@redhat.com> | 2000-07-25 22:58:17 +0000 |
---|---|---|
committer | Havoc Pennington <hp@src.gnome.org> | 2000-07-25 22:58:17 +0000 |
commit | f56297c5346cddb72b383161bbde9168824acb94 (patch) | |
tree | acf176b40ef8c399ed120d3c01687f2a3a3252f9 /docs/Changes-2.0.txt | |
parent | d1a4a1ea28f0a3b87332874c68eccbe2d6272ea9 (diff) | |
download | gtk+-f56297c5346cddb72b383161bbde9168824acb94.tar.gz |
Implement new sane, 5-function API for using GtkProgressBar. See
2000-07-25 Havoc Pennington <hp@redhat.com>
* gtk/gtkprogressbar.h: Implement new sane, 5-function API for
using GtkProgressBar. See Changes-2.0.txt for details.
* gtk/gtkprogressbar.c: Add object arguments "fraction" and
"pulse_step" which are the equivalent of
gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
Implement new API.
* gtk/gtkprogress.h (struct _GtkProgress): Add a field
(use_text_format) to mark whether text set on the progress bar is
a format string. Deprecate entire GtkProgress interface.
* gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
(gtk_progress_build_string): make this a no-op if use_text_format
is FALSE
* docs/Changes-2.0.txt: Describe progress bar changes.
Diffstat (limited to 'docs/Changes-2.0.txt')
-rw-r--r-- | docs/Changes-2.0.txt | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/docs/Changes-2.0.txt b/docs/Changes-2.0.txt index 5b4f2507d7..14cb9d0098 100644 --- a/docs/Changes-2.0.txt +++ b/docs/Changes-2.0.txt @@ -189,4 +189,44 @@ Incompatible Changes from GTK+-1.2 to GTK+-1.4: to the behavior of gdk_window_foreign_new(), and fixes a lot of problems with code where the pixmap wasn't supposed to be freed. If XFreePixmap() is needed, it can be done using the - destroy-notification facilities of g_object_set_data().
\ No newline at end of file + destroy-notification facilities of g_object_set_data(). + +- GtkProgress/GtkProgressBar had serious problems in GTK 1.2. + + - Only 3 or 4 functions are really needed for 95% of progress + interfaces; GtkProgress[Bar] had about 25 functions, and + didn't even include these 3 or 4. + - In activity mode, the API involves setting the adjustment + to any random value, just to have the side effect of + calling the progress bar update function - the adjustment + is totally ignored in activity mode + - You set the activity step as a pixel value, which means to + set the activity step you basically need to connect to + size_allocate + - There are ctree_set_expander_style()-functions, to randomly + change look-and-feel for no good reason + - The split between GtkProgress and GtkProgressBar makes no sense + to me whatsoever. + + This was a big wart on GTK and made people waste lots of time, + both learning and using the interface. + + So, we have added what we feel is the correct API, and marked all the + rest deprecated. However, the changes are 100% backward-compatible and + should break no existing code. + + The following 5 functions are the new programming interface and you + should consider changing your code to use them: + + void gtk_progress_bar_pulse (GtkProgressBar *pbar); + void gtk_progress_bar_set_text (GtkProgressBar *pbar, + const gchar *text); + void gtk_progress_bar_set_fraction (GtkProgressBar *pbar, + gfloat fraction); + + void gtk_progress_bar_set_pulse_step (GtkProgressBar *pbar, + gfloat fraction); + void gtk_progress_bar_set_orientation (GtkProgressBar *pbar, + GtkProgressBarOrientation orientation); + + |