GTK widget styles.

2003-10-24 Thread Roger Leigh
How would I set the style GtkWidget::focus-line-pattern in a gtkrc file?
The documentation says it's a gchararray, but I'm not sure what syntax
is required for that.  I've tried text and numbers, both quoted and
unquoted and not had nice results (2-3 huge lines).

What I am trying to do is change the dashed pattern from "- - - " to
"---   ---   ---   ".


BTW, I also noticed that if I set "GtkRange::stepper-spacing = 20", the
scrolling is broken if you put the slider at either extreme: when you
next drag it, it jumps along by a few pixels.  Is this a known bug?


Thanks,
Roger

-- 
Roger Leigh

Printing on GNU/Linux?  http://gimp-print.sourceforge.net/
GPG Public Key: 0x25BFB848.  Please sign and encrypt your mail.
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Setting widget style such as button color, text size.

2003-10-24 Thread John Cupitt
Hi Heechul,

Labels and buttons don't have their own windows, so they don't have a background 
colour. If you want to set the colour separately, put them inside a GtkEventBox. I'm 
not sure about the flat frame.

I think .gtkrc files are not so hard to write. The easiest way is to look at some 
themes that do something similar to what you want, and modify them.

John

[EMAIL PROTECTED] wrote:
> - How do you guys adjust widget styles such as color, font, ... 
> I know that gtkrc do this  job. But, writing a gtkrc file manually is very
> difficult. 
> So I hoped that glade-2 can generate rc file for me, but there's no such
> feature. 
> I hope to hear advices on writing gtkrc more easily. 
> 
> - I want to know how to set background color of button or label widget. 
> I modified  bg[NORMAL] style  of those widget, but it doesn't worked as
> expected while fg[NORMAL] do. 
> 
> - I also want to know how to draw a border line without shadowing effect. I
> want to see just flat black rectangle around label or button widget. 

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


GtkComboBox ? in Gtk+-2.3

2003-10-24 Thread Stephane Wirtel
Hi all,

I test the new GtkComboBox widget for a project.
But i have a problem, the items on this GtkComboBox are hidden, and i 
don't know why.

Here is my source code, it's a small code, can you check it and send me 
the right way to use GtkComboBox.

Thanks,

Stephane

#include 
#include 

gchar *data[] = 
{
"Item 1", "Item 2", "Item 3", NULL
};

GtkTreeModel *create_model(void)
{
GtkListStore *store;
GtkTreeIter iter;
guint i;

store = gtk_list_store_new(2, G_TYPE_INT, G_TYPE_STRING);
for ( i = 0 ; data[i] != NULL; i++ )
{
gtk_list_store_append(store, &iter);
gtk_list_store_set(store, &iter, 
   0, i,
   1, data[i], 
   -1);
}
return GTK_TREE_MODEL(store);
}

gint main(gint argc,
  gchar **argv)
{
GtkWidget *window;
GtkWidget *button;
GtkWidget *combo_box;
GtkTreeModel *model;
gtk_init(&argc, &argv);

window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(G_OBJECT(window), "destroy", gtk_main_quit, NULL); 
gtk_widget_set_size_request(window, 100, 50);

model = create_model();
if ( model != NULL ) 
{
combo_box = gtk_combo_box_new(model);
gtk_container_add(GTK_CONTAINER(window), combo_box);
}
gtk_widget_show_all(window);

gtk_main();

return 0;
}


Re: emitting a signal for refeshing entries

2003-10-24 Thread Paul Davis
>A parameter can vary form 1 to 100 and I want the spinbutton to show 
>this value from this parameter when it changes in the program not only 
>by interaction. I now how to set it from within the software, but I 
>would like to ahve all callback function that react on "expose" events 
>to be activated at once.

reading this more carefully, this is a perfect candidate for using a
GtkAdjustment. Just create it with the relevant parameters:

   initial value
   lower bound
   upper bound
   small step size
   page step size

then when you create the spinbutton attach it to this adjustment.

in your code, when you want to change the value, set the value of the
adjustment and the spin button will change. connect to the
adjustment's "value_changed" signal if you want to know when the
spinbutton or your code has changed the value.

be careful to avoid feedback loops. write things like:

   gfloat adjuster_value = gtk_adjustment_get_value (GTK_ADJUSTMENT(adjuster));

   if (adjuster_value != parameter_value) {
gtk_adjustment_set_value (GTK_ADJUSTMENT(adjuster),
parameter_value);
   }

this assumes that you have the parameter stored elsewhere in the
program (i.e. it can't actually be a GtkAdjustment itself).

--p
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: emitting a signal for refeshing entries

2003-10-24 Thread Peter Van Osta
Hi,

Thank you all for the replies, but what I am looking for is a way to 
send an "EXPOSE" signal to the main window and wiil this signal 
propagate to all the widgets in this main window ?

I have the callback for "expose events" ready and I have used the 
GtkAdjustment.

As it looks now I will have to send an "expose_event" signal to each 
widget individually as this signal cannot be emitted/sent to all the 
widgets at once ? There si no way to send a signal to all widgets at once ?

Best regards,

Peter Van Osta

Union Biometrica N.V./S.A.
European Scientific Operations (ESO)
Cipalstraat 3
B-2440 Geel
Belgium
Tel.: +32 (0)14 570 620
Fax.: +32 (0)14 570 621
http://www.unionbio-eu.com/

http://ourworld.compuserve.com/homepages/pvosta/cvwww.htm

===

Paul Davis wrote:
A parameter can vary form 1 to 100 and I want the spinbutton to show 
this value from this parameter when it changes in the program not only 
by interaction. I now how to set it from within the software, but I 
would like to ahve all callback function that react on "expose" events 
to be activated at once.


reading this more carefully, this is a perfect candidate for using a
GtkAdjustment. Just create it with the relevant parameters:
   initial value
   lower bound
   upper bound
   small step size
   page step size
then when you create the spinbutton attach it to this adjustment.

in your code, when you want to change the value, set the value of the
adjustment and the spin button will change. connect to the
adjustment's "value_changed" signal if you want to know when the
spinbutton or your code has changed the value.
be careful to avoid feedback loops. write things like:

   gfloat adjuster_value = gtk_adjustment_get_value (GTK_ADJUSTMENT(adjuster));

   if (adjuster_value != parameter_value) {
gtk_adjustment_set_value (GTK_ADJUSTMENT(adjuster),
parameter_value);
   }
this assumes that you have the parameter stored elsewhere in the
program (i.e. it can't actually be a GtkAdjustment itself).
--p


___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: emitting a signal for refeshing entries

2003-10-24 Thread Sven Neumann
Hi,

Peter Van Osta <[EMAIL PROTECTED]> writes:

> Thank you all for the replies, but what I am looking for is a way to
> send an "EXPOSE" signal to the main window and wiil this signal
> propagate to all the widgets in this main window ?

Call gtk_widget_queue_draw() on the top-level widget (the window).


Sven
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


URGENT: Problem with GtkPaned

2003-10-24 Thread Matteo Frigerio
hello, i have a problem with GtkPaned.
The attached file is a source that reproduce the
problem (build with gtk+-2.2.3 under win32).
The problem is that when the user move the first paned
the widget in the second paned is
not redraw correctly. What can i do ? Is a bug or i am
wrong ? 
This is a small problem but the release of application
is near.
NB: In the real application the problem appear also
when i use gtk_paned_set_position(): the widget
in the paned is not visible, but if i move with the
mouse the paned the widget magically appears.



thanks, hammer.



__
Yahoo! Mail: 6MB di spazio gratuito, 30MB per i tuoi allegati, l'antivirus, il filtro 
Anti-spam
http://it.yahoo.com/mail_it/foot/?http://it.mail.yahoo.com/#include 


GtkWidget * create_item(GtkWidget * container, const char * t)
{
GtkWidget * box;
GtkWidget * label;
GtkWidget * evtbox;


box = gtk_vbox_new(FALSE,FALSE);
gtk_widget_show(box);
gtk_container_add(GTK_CONTAINER(container),box);

evtbox = gtk_event_box_new();
gtk_widget_show(evtbox);
gtk_container_add(GTK_CONTAINER(box),evtbox);

label = gtk_label_new(t);
gtk_widget_show(label);
gtk_container_add(GTK_CONTAINER(evtbox),label);


return box;
}


GtkWidget*
create_window1 (void)
{
  GtkWidget *window1;
  GtkWidget *hpaned1;
  GtkWidget *hpaned2;
  GtkWidget *scrolledwindow1;
  GtkWidget *viewport2;
  GtkWidget *viewport10;
  GtkWidget *viewport20;
  GtkWidget *frame50;
  GtkWidget *vpaned1;
  GtkWidget *scrolledwindow4;
  GtkWidget *viewport1;
  GtkWidget *frame3;
  GtkWidget *vpaned2;
  GtkWidget *scrolledwindow3;
  GtkWidget *frame4;
  GtkWidget *scrolledwindow2;
  GtkWidget *frame5;

  window1 = gtk_window_new (GTK_WINDOW_TOPLEVEL);
  gtk_window_set_title (GTK_WINDOW (window1), "window1");

  hpaned1 = gtk_hpaned_new ();
  gtk_widget_show (hpaned1);
  gtk_container_add (GTK_CONTAINER (window1), hpaned1);
  gtk_paned_set_position (GTK_PANED (hpaned1), 0);

  hpaned2 = gtk_hpaned_new ();
  gtk_widget_show (hpaned2);
  gtk_paned_pack1 (GTK_PANED (hpaned1), hpaned2, FALSE, TRUE);
  gtk_paned_set_position (GTK_PANED (hpaned2), 0);

  scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL);
  gtk_widget_show (scrolledwindow1);
  gtk_paned_pack1 (GTK_PANED (hpaned2), scrolledwindow1, FALSE, TRUE);
  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow1), 
GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);

  viewport2 = gtk_viewport_new (NULL, NULL);
  gtk_widget_show (viewport2);
  gtk_container_add (GTK_CONTAINER (scrolledwindow1), viewport2);

  frame50 = gtk_frame_new("Menu");
  gtk_widget_show(frame50);
  gtk_container_add (GTK_CONTAINER (viewport2), frame50);
  {
  GtkWidget * box;
box = gtk_vbox_new(FALSE,FALSE);
gtk_widget_show(box);
gtk_container_add(GTK_CONTAINER(frame50),box);
  }

  vpaned1 = gtk_vpaned_new ();
  gtk_widget_show (vpaned1);
  gtk_paned_pack2 (GTK_PANED (hpaned2), vpaned1, TRUE, TRUE);
  gtk_paned_set_position (GTK_PANED (vpaned1), 0);

  scrolledwindow4 = gtk_scrolled_window_new (NULL, NULL);
  gtk_widget_show (scrolledwindow4);
  gtk_paned_pack1 (GTK_PANED (vpaned1), scrolledwindow4, FALSE, TRUE);
  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow4), 
GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);

  viewport1 = gtk_viewport_new (NULL, NULL);
  gtk_widget_show (viewport1);
  gtk_container_add (GTK_CONTAINER (scrolledwindow4), viewport1);

  frame3 = gtk_frame_new ("Prova");
  gtk_widget_show (frame3);
  gtk_container_add (GTK_CONTAINER (viewport1), frame3);
  create_item(frame3,"Paned1");

  vpaned2 = gtk_vpaned_new ();
  gtk_widget_show (vpaned2);
  gtk_paned_pack2 (GTK_PANED (vpaned1), vpaned2, TRUE, TRUE);
  gtk_paned_set_position (GTK_PANED (vpaned2), 100);

  scrolledwindow3 = gtk_scrolled_window_new (NULL, NULL);
  gtk_widget_show (scrolledwindow3);
  gtk_paned_pack1 (GTK_PANED (vpaned2), scrolledwindow3, FALSE, TRUE);
  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow3), 
GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);

  viewport10 = gtk_viewport_new (NULL, NULL);
  gtk_widget_show (viewport10);
  gtk_container_add (GTK_CONTAINER (scrolledwindow3), viewport10);

  frame4 = gtk_frame_new ("Prova");
  gtk_widget_show (frame4);
  gtk_container_add (GTK_CONTAINER (viewport10), frame4);
  create_item(frame4,"Paned2 ERROR");

  scrolledwindow2 = gtk_scrolled_window_new (NULL, NULL);
  gtk_widget_show (scrolledwindow2);
  gtk_paned_pack2 (GTK_PANED (vpaned2), scrolledwindow2, TRUE, TRUE);
  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow2), 
GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);

  viewport20 = gtk_viewport_new (NULL, NULL);
  gtk_widget_show (viewport20);
  gtk_container_add (GTK_CONTAINER (scrolledwindow2), viewport20);

  frame5 = gtk_frame_new ("Prova");
  gtk_widget_show (frame5)

Re: GtkComboBox ? in Gtk+-2.3

2003-10-24 Thread Jonathan Blandford
Stephane Wirtel <[EMAIL PROTECTED]> writes:

> Hi all,
> 
> I test the new GtkComboBox widget for a project.
> But i have a problem, the items on this GtkComboBox are hidden, and i
> don't know why.
> 
> Here is my source code, it's a small code, can you check it and send
> me the right way to use GtkComboBox.

This list is meant for the development of GTK+, and not for developing
applications with GTK+.  I'm sure if you asked your question on
[EMAIL PROTECTED], they'd tell you that you don't didn't add
a GtkCellRenderer.

-Jonathan
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


dynmically growing GtkTreeView from MySQL DB?

2003-10-24 Thread Carl B. Constantine
I'm writing an app that uses MySQL (currently but could use Unix ODBC
later) as a backend. On one of the Data Entry screens, I want to show a
treeview of the list of people added or are in the DB. I need the list
to display quickly and be updated as new people are added. The TreeView
set up as a list as opposed to a tree.

Additionally, I want the data entry person to be able to double-click on
an entry and edit it in the data entry portion of the window, which
means I need fast retrieval of that information.

How really should I handle this? In particularly the dynamically growing
nature of the view?

Any and all help is greatly and urgently requested and appreciated.

-- 
 .''`.  Carl B. Constantine
: :' : [EMAIL PROTECTED]
`. `'GnuPG: 135F FC30 7A02 B0EB 61DB  34E3 3AF1 DC6C 9F7A 3FF8
  `-  Debian GNU/Linux -- The power of freedom
  "Claiming that your operating system is the best in the world because more
  people use it is like saying McDonalds makes the best food in the world."
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


gtk on windows

2003-10-24 Thread U Fleku



Hi all, I am a windows user and I am trying to port gtk on 
cygwin. If you give support only to Unix users, I'll thank you 
anyway.


Re: gtk on windows

2003-10-24 Thread Sven Neumann
Hi,

"U Fleku" <[EMAIL PROTECTED]> writes:

> Hi all, I am a windows user and I am trying to port gtk on
> cygwin. If you give support only to Unix users, I'll thank you
> anyway.

Win32, especially cygwin, is an officially supported platform so
there's no need to "port" anything. If you are looking for Win32
binaries, there is this link on the GTK+ homepage that points to

 http://www.gimp.org/~tml/gimp/win32/


Sven
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: gtk on windows

2003-10-24 Thread Sven Neumann
Hi,

"U Fleku" <[EMAIL PROTECTED]> writes:

> > If you are looking for Win32
> > binaries, there is this link on the GTK+ homepage that points to
> >
> >  http://www.gimp.org/~tml/gimp/win32/
> 
> Yes, I know gtk for win32, but the package don't have the gtk-config file,
> that the compilation of Lopster requires. I have only extract the files of
> the package into the cygwin directory. It's wrong?

If your software looks for gtk-config, it requires the old GTK+-1.2
API. There are win32 packages that provides this API. The windows port
was added early in the 1.3 series, so you want to download the 1.3
packages from Tor's site.


Sven


___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


GLib-2.3.0 released [unstable]

2003-10-24 Thread Owen Taylor
GLib-2.3.0 is now available for download at:

 ftp://ftp.gtk.org/pub/gtk/v2.3/

glib-2.3.0.tar.bz2 md5sum: 2390f83aeba20851bbb9b816269c0735  
glib-2.3.0.tar.gz  md5sum: 33fe978e40b641ba15004f0e04862e19

This is the first development release loading up to GLib-2.4. 
This release contains a number of small to medium sized API
additions, such as the addition of instance-private data and 
properties on interfaces to GObject, and an update of the
Unicode data to the recently released Unicode 4.0.

Notes:

 * This is unstable development release. While it has had
   fairly extensive testing, there are certainly plenty of bugs
   remaining to be found. This release should not be used
   in production.

 * Installing this version will overwrite your existing
   copy of GLib-2.2. If you have problems, you'll need
   to reinstall GLib-2.2.4.

 * GLib-2.4 will be source and binary compatible with
   the GLib-2.2.x series; however, the new API additions
   in GLib-2.2.0 are not yet finalized, so there may
   be incompatibities between this release and the final
   2.2 release.

 * Remaining API issues for GLib-2.2 can be found with following
   bugzilla query:
   

http://bugzilla.gnome.org/buglist.cgi?product=glib&target_milestone=2.4+API+Freeze&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED

 * Bugs should be reported to http://bugzilla.gnome.org.
   
About GLib
==

GLib is the low-level core library that forms the basis for projects
such as GTK+ and GNOME. It provides data structure handling for C,
portability wrappers, and interfaces for such runtime functionality as
an event loop, threads, dynamic loading, and an object system.

More information about GLib is available at:

 http://www.gtk.org/

An installation guide for the GTK+ libraries, including GLib, can
be found at:

 http://developer.gnome.org/doc/API/2.0/gtk/gtk-building.html

Overview of Changes from GLib 2.2.x to GLib-2.3.0
=

* Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
* Update Unicode data to Unicode 4.0 [Noah Levitt]
* Support XML-safe formatted output with
  g_markup_[v]printf_escaped [Owen Taylor]
* Add g_file_read_link to read symbolic links [Matthias]
* Add g_unichar_get_mirror_char to obtain the
  mirrored variant of a character [Noah]
* Support for one-time initialization functions.
  [Sebastian Wilhelmi]
* Miscellaneous API additions: g_vasprintf
  g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
* Docs improvements [Matthias]
* Add support instance-private data on classed types
  [Mark McLoughlin, Tim Janik, Owen]
* Optimize signal emissions [Soeren Sandmann, Tim]
* Support a "default vtable" per interface [Tim]
* Add support for properties on interfaces [Owen, Tim]
* Miscellaneous API additions: g_value_take_string(),
  g_value_take_param(), g_value_take_object(),
  g_value_take_boxed(). [Matthias]

24 October 2003

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Pango-1.3.0 released [unstable]

2003-10-24 Thread Owen Taylor
Pango-1.3.0 is now available for download at:

 ftp://ftp.gtk.org/pub/gtk/v2.3/

pango-1.3.0.tar.bz2   md5sum: 5fc4a79d901f4c0bf98ad0194f4a87a7  
pango-1.3.0.tar.gzmd5sum: 373a6ece153eb047fe913e4d70cf4ecc  

This is the first development release loading up to Pango-1.3. 
There are some substantial internal changes, especially in the
area of 

Notes:

 * This is unstable development release. While it has had
   fairly extensive testing, there are certainly plenty of bugs
   remaining to be found. This release should not be used
   in production.

 * Installing this version will overwrite your existing
   copy of Pango-1.2. If you have problems, you'll need
   to reinstall Pango-1.2.5.

 * Pango-1.4 will be source and binary compatible with
   the Pango-1.2.x series; however, the new API additions
   in Pango-1.3.0 are not yet finalized, so there may
   be incompatibilities between this release and the final
   2.2 release.

 * Remaining API issues for Pango-1.4 can be found with following
   bugzilla query:
   

http://bugzilla.gnome.org/buglist.cgi?product=pango&target_milestone=1.4+API+Freeze&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED

 * Bugs should be reported to http://bugzilla.gnome.org.

About Pango
===

Pango is a library for layout and rendering of text, with an emphasis
on internationalization. Pango can be used anywhere that text layout
is needed, though most usage so far as been in the context of the
GTK+ widget toolkit. Pango forms the core of text and font handling 
for GTK+ 2.

Pango is designed to be modular; the core Pango layout can be used
with four different font backends:

 - Core X windowing system fonts
 - Client-side fonts on X using the Xft2 library
 - Direct rendering of scalable fonts using the FreeType library
 - Native fonts on Microsoft platforms

Dynamically loaded modules then handle text layout for particular
combinations of script and font backend. Pango-1.2 ships with a wide
selection of modules, including modules for Hebrew, Arabic, Hangul, 
Thai, and a number of Indic scripts. Virtually all of the world's major 
scripts are supported.

As well as the low level layout rendering routines, Pango includes
PangoLayout, a high level driver for laying out entire blocks of text,
and routines to assist in editing internationalized text.

More information about Pango is available from http://www.pango.org/.

Pango depends on version 2.2.0 or newer of the GLib library; more 
information about GLib can be found at http://www.gtk.org/.

Overview of changes between 1.2.x and 1.3.0
===

* Share modules between the FT2 and Xft backend. Export PangoFcFont
  and PangoFcFontMap base classes so that other fontconfig based
  backends can be written and use these same modules.
* Redo module system to use GTypeModule and work much like GTK+ theme
  engines and input method modules.
* Change modules to declare coverage by script, rather than by code
  point. Add a ->covers callback so that modules can dynamically
  decide whether they can cover a particular codepoint with a given
  font. (This will allow multiple modules to handle a script for
  different types fonts.)
* Complete rewrite of itemization pass. Now uses script information to
  improve language tags. This solves problems with incorrect language
  tags resulting in drastically wrong fonts being selected by
  fontconfig.
* Add backspace-deletes-character PangoLogAttr; will allow proper
  deletion behavior for non-Western scripts.  [Noah Levitt]
* Add pango_fc_font_kern_glyphs(), which speeds up kerning a lot over
  doing it pair-by-pair. [Soeren Sandmann]. Kern in the Xft backend as
  well as the FT2 backend.
* Remove the X font backend, except a minimal set of stubs to maintain
  binary compatibility.
* Many improvements to pangoft2topgm to allow displaying PangoMarkup,
  saving to different file formats, etc.
* Convert build system to automake-1.7; many cleanups and
  improvements. [James Henstridge]
* Documentation additions and improvements [Matthias Clasen, Martin
  Pool]; add man pages for the included binaries.  [Matthias]
* Misc bug and build fixes [Josh Beam, Tony Graham, Kaushal Kumar,
  Noah, Mehran Mehr, Soeren, Morten Welinder]
* Win32 build fixes [Tor Lillquist, Hans Breuer]

Owen Taylor
24 October 2003

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


GTK+-2.3.0 released [unstable]

2003-10-24 Thread Owen Taylor
GTK+-2.3.0 is now available for download at:

 ftp://ftp.gtk.org/pub/gtk/v2.3/

gtk+-2.3.0.tar.bz2   md5sum: e3336aa41e440755543cb6532bec9938  
gtk+-2.3.0.tar.gzmd5sum: 83a5c6351797da3f2ef33e78408d8e6e  

This is the first development release loading up to GTK+-2.4. 
This release contains a number of major new widgets and capabilities
including: an action based menu system, a replacement for
GtkFileSelector, and a new unified GtkComboBox widget that replaces both
GtkOptionMenu and GtkCombo.

Special thanks on this release go to Marco Pesenti Gritti for testing
out the new widgets and menu system in Epiphany and providing plentiful
feedback. We hope many more people will follow his lead.

Notes:

 * This is unstable development release. There are certainly 
   plenty of bugs remaining to be found. This release should 
   not be used in production.

 * Installing this version will overwrite your existing
   copy of GTK+-2.0. If you have problems, you'll need
   to reinstall GTK+-2.0.6.

 * GTK+-2.4 will be source and binary compatible with
   the GTK+-2.2.x series; however, the new API additions
   in GTK+-2.3.0 are not yet finalized, so there are likely
   incompatibities between this release and the final
   2.2 release.

 * Remaining API issues for GTK+-2.4 can be found with following
   bugzilla query:
   

http://bugzilla.gnome.org/buglist.cgi?product=gtk%2b&target_milestone=2.4+API+Freeze&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED

 * Bugs should be reported to http://bugzilla.gnome.org.
   
What is GTK+


GTK+ is a multi-platform toolkit for creating graphical user
interfaces. Offering a complete set of widgets, GTK+ is suitable for
projects ranging from small one-off tools to complete application
suites.

GTK+ has been designed from the ground up to support a range of
languages, not only C/C++. Using GTK+ from languages such as Perl and
Python (especially in combination with the Glade GUI builder) provides
an effective method of rapid application development.

GTK+ is free software and part of the GNU Project. However, the
licensing terms for GTK+, the GNU LGPL, allow it to be used by all
pdevelopers, including those developing proprietary software, without
any license fees or royalties. 

Where to get more information about GTK+


Information about GTK+ including links to documentation can be
found at:
 
http://www.gtk.org/

An installation guide for GTK+-2.2 is found at:

 http://developer.gnome.org/doc/API/2.2/gtk/gtk-building.html

Common questions:
 
 http://developer.gnome.org/doc/API/2.2/gtk/gtk-question-index.html
 http://www.gtk.org/faq/

Overview of Changes from GTK+-2.2.x to GTK+-2.3.0
=

* New Widgets
 - GtkFileChooser: a replacement for GtkFileSelection with 
   replaceable backends, many new API features, better user
   interface (UI is still a work in progress) [Owen Taylor, 
   Federico Mena Quintero]
 - New combo box widgets: GtkComboBox, GtkComboBoxEntry [Kristian Rietveld]
 - New "disclosure triangle" widget: GtkExpander [Marc McLoughlin]
 - "Picker button" widgets based on code from libgnomeui: 
   GtkFontButton, GtkColorButton [Matthias Clasen]

* Widget improvements:
 - Autocompletion for entries: GtkEntryCompletion [Kristian]
 - Add separate padding for all 4 sides of GtkAlignment [Murray Cumming]
 - Add input-only event boxes for trapping events [Alex Larsson]
 - Support RTL flipping for GtkHPaned, tab navigation [Soeren, Matthias]
 - Support up to four scroll arrows on GtkNotebook and make which
   ones are displayed themeable. [Matthias]
 - GtkCalendar improvements: make the arrows spin, support RTL flipping,
   automatic week start selection, DND support, improve API 
   for setting options [Matthias]; mousewheel support [Abigail Brady]
 - New properties: GtkButton::focus_on_click, GtkCheckMenuItem::draw_as_radio
   [Soeren, Matthias]
 - New functions: gtk_window_set_default_icon(), 
   gtk_message_dialog_add_buttons(), gtk_button_box_get_child_secondary()
   [Matthias]
 - Add missing "role", "decorated", "gravity" properties for GtkWindow,
   "has_resize_grip" for GtkStatusBar. [Matthias]
 - Add child properties for GtkPaned [Matthias, Soeren]

* Menus
 - New action-based menu API: GtkUIManager, GtkActionGroup, 
   GtkAction, etc. [James Henstridge, Matthias, Soeren Sandmann,
   Marco Pesenti Gritti, Philip Langdale]
 - Support for tabular menus [Kristian]
 - New positioning algorithm for popup menus [Soeren]

* GtkTextView [Matthias]
 - Add properties "accepts_tab" [Soeren], "overwrite" property 
   [Jeroen Zwarepoorte], "buffer"
 - Add gtk_text_buffer_select_range()
 - Implement drag-selection by words/lines (also for Gtkentry)
 - Some fixes to invisible text handling
 - Add support for GTK_WRAP_WORD_CHAR [David Brigada]
 - Clean up handling of horizontal paging
 - Fix scrolling with non-visible cursor
 - Add internals documentation [Havoc Pennington]