[pygtk] ANN: PyUseCase 3.3: GUI testing for PyGTK (and Tkinter)

2010-05-27 Thread Geoff Bache
Hi all,

There's a new PyUseCase out.

A couple of new widget types are supported (gtk.TextView, gtk.SpinButton)
and there are also quite a few bugfixes. See the ChangeLog in the download
for full details.

Regards,
Geoff Bache

A bit more detail:

PyUseCase is an unconventional GUI testing tool for PyGTK and Tkinter,
along with a framework for testing Python GUIs in general.

Instead of recording GUI mechanics directly, it asks the user for
descriptive names and hence builds up a domain language along with a
UI map file that translates this language into actions on the
current GUI widgets. The point is to reduce coupling, allow very
expressive tests, and ensure that GUI changes mean changing the UI map
file but not all the tests.

Instead of an assertion mechanism, it auto-generates a log of the
GUI appearance and changes to it. The point is then to use that as a
baseline for text-based testing, using e.g. TextTest.

It also includes support for instrumenting code so that waits can be
recorded, making it far easier for a tester to record correctly
synchronized tests without having to explicitly plan for this.

Homepage: http://www.texttest.org/index.php?page=ui_testing
Download: http://sourceforge.net/projects/pyusecase
Mailing list: https://lists.sourceforge.net/lists/listinfo/pyusecase-users (new)
Bugs: https://bugs.launchpad.net/pyusecase/
Source: https://code.launchpad.net/pyusecase/
___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


[pygtk] Migration notes for PyGTK?

2010-05-14 Thread Geoff Bache
Hi all,

Just tried to upgrade PyGTK from 2.12 to 2.16 and discovered that
various code I had didn't work any more.

If I search around I can find documentation of these
back-compatibility breaking changes, but I wondered if there was any
such thing as some migration notes anywhere that would especially
highlight changes that break existing code? Couldn't find any in the
source download but maybe I'm looking in the wrong place.

Regards,
Geoff Bache
___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


[pygtk] ANN: PyUseCase 3.2 - GUI testing for PyGTK (and Tkinter)

2010-02-26 Thread Geoff Bache
Hi all,

There's a new release of PyUseCase out. While the main thrust this
time has been around newly introduced support for Tkinter, there have
also been a few enhancements for PyGTK, notably around the TreeView
monitoring, and also a few bug fixes.

Regards,
Geoff Bache

A bit more detail:

PyUseCase is an unconventional GUI testing tool for PyGTK and Tkinter,
along with a framework for testing Python GUIs in general.

Instead of recording GUI mechanics directly, it asks the user for
descriptive names and hence builds up a domain language along with a
UI map file that translates this language into actions on the
current GUI widgets. The point is to reduce coupling, allow very
expressive tests, and ensure that GUI changes mean changing the UI map
file but not all the tests.

Instead of an assertion mechanism, it auto-generates a log of the
GUI appearance and changes to it. The point is then to use that as a
baseline for text-based testing, using e.g. TextTest.

It also includes support for instrumenting code so that waits can be
recorded, making it far easier for a tester to record correctly
synchronized tests without having to explicitly plan for this.

Homepage: http://www.texttest.org/index.php?page=ui_testing
Download: http://sourceforge.net/projects/pyusecase
Mailing list: https://lists.sourceforge.net/lists/listinfo/pyusecase-users (new)
Bugs: https://bugs.launchpad.net/pyusecase/
Source: https://code.launchpad.net/pyusecase/
___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


[pygtk] ANN: PyUseCase 3.1 : GUI testing for PyGTK

2009-12-21 Thread Geoff Bache
Hi all,

Just a note that there's a new release of PyUseCase out, which amongst other 
improvements makes the domain language creation dialog easier to use by e.g. 
adding a preview window. There are also a few bug fixes on the 3.0 major 
release from a few weeks ago, and I've enhanced the getting started guide at .

Regards,
Geoff Bache

Summary for those who haven't seen it before:

PyUseCase is an unconventional GUI testing tool for PyGTK.

Instead of recording GUI mechanics directly, it asks the user for descriptive 
names and hence builds up a domain language along with a UI map file that 
translates this language into actions on the current GUI widgets. The point is 
to reduce coupling, allow very expressive tests, and ensure that GUI changes 
mean changing the UI map
file but not all the tests.

Instead of an assertion mechanism, it auto-generates a log of the GUI 
appearance and changes to it. The point is then to use that as a baseline for 
text-based testing, using e.g. TextTest.

It also includes support for instrumenting code so that waits can be 
recorded, making it far easier for a tester to record correctly synchronized 
tests without having to explicitly plan for this.

Homepage: http://www.texttest.org/index.php?page=ui_testing
Download: http://sourceforge.net/projects/pyusecase
Mailing list: https://lists.sourceforge.net/lists/listinfo/pyusecase-users (new)
Bugs: https://bugs.launchpad.net/pyusecase/
Source: https://code.launchpad.net/pyusecase/

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


[pygtk] ANN: PyUseCase 3.0 - GUI testing for PyGTK

2009-12-04 Thread Geoff Bache
Hi all,

Just a note that there's a new major release of PyUseCase out with some big 
improvements on previous versions. If you've looked at it before and decided it 
was too hard to use it might be time to try again. It no longer requires any 
instrumentation or any logging on your part, it generates both for you.

Regards,
Geoff Bache

Summary for those who haven't seen it before:

PyUseCase is an unconventional GUI testing tool for PyGTK.

Instead of recording GUI mechanics directly, it asks the user for descriptive 
names and hence builds up a domain language along with a UI map file that 
translates this language into actions on the current GUI widgets. The point is 
to reduce coupling, allow very expressive tests, and ensure that GUI changes 
mean changing the UI map
file but not all the tests.

Instead of an assertion mechanism, it auto-generates a log of the GUI 
appearance and changes to it. The point is then to use that as a baseline for 
text-based testing, using e.g. TextTest.

It also includes support for instrumenting code so that waits can be 
recorded, making it far easier for a tester to record correctly synchronized 
tests without having to explicitly plan for this.

Homepage: http://www.texttest.org/index.php?page=ui_testing
Download: http://sourceforge.net/projects/pyusecase
Mailing list: https://lists.sourceforge.net/lists/listinfo/pyusecase-users (new)
Bugs: https://bugs.launchpad.net/pyusecase/
Source: https://code.launchpad.net/pyusecase/

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


Re: [pygtk] announcement policy

2009-11-20 Thread Geoff Bache
Florian Diesch wrote:
 Alessandro Dentella san...@e-den.it writes:

   
 On Thu, Nov 19, 2009 at 06:19:31PM +0100, Yann Leboulanger wrote:
 
 John Finlay a écrit :
   
 I'm disappointed that I appear to be the only one on this list that 
 finds these announcements objectionable. And contrary to speculation I 
 
 I don't find announcement on PyGTK addons objectionable and surely not just
 becouse I'm amoung those who send these announcement every now and then, but
 becouse I like to be informed on what's moving aroung the pygtk world and I
 happened to use software that was advertized on this list.
 

 I like to read here announcements of projects that help me to use PyGtk in
 some way if they are not too frequent.
 I don't want to get announcements of every projects that uses PyGtk.
   

I agree. I don't think this list has a problem with too much 
announcement traffic. It isn't
what I'd call a heavy-traffic list in general. Provided the 
announcements stay with stuff
that is useful for the general PyGTK user (i.e. competitors like PyGUI 
should go elsewhere)
I would say it's just fine as it is.

I'd say a much bigger problem is that a large percentage of questions 
here never get answered,
but there are no easy solutions to that of course...

 To be even more clear, I would rather prefer if announcement stayed in this
 same list. 
 

 +1
   
+1

/Geoff

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


[pygtk] The throbber from firefox and idle handlers

2009-11-05 Thread Geoff Bache
Hi all,

I added a Firefox throbber to my application as described in the FAQ (e.g. 
http://eccentric.cx/misc/pygtk/pygtkfaq.html#23.37 as www.pygtk.org seems to be 
down right now)

It didn't work for me, and I discovered that this was because of idle handlers, 
which cause gtk.events_pending() to always return True and hence the loop 
suggested there
to loop forever. The loop looks like this:

while gtk.events_pending():
gtk.main_iteration()

So I can fix this by removing all the idle handlers individually with 
gobject.source_remove, running this loop and then putting them back again 
afterwards with gobject.idle_add.

It then works, but it feels like a hack, and is problematic because I've now 
got a situation where there exists an idle handler in a separate library that 
doesn't know about my throbber.

Is there some better way to do this? It would be great if there was a way to 
temporarily disable all idle handlers without having to know exactly which ones 
they are and
how to put them back afterwards.

Regards,
Geoff


___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


[pygtk] More on cut+paste accelerators

2009-10-06 Thread Geoff Bache

Hi all,

I'm also having some issues with the default cut and paste which is that 
my application can also cut and paste files. These file actions have 
naturally been assigned the accelerators Ctrl+X, Ctrl+V etc but this 
naturally means that currently these accelerators don't work for 
selected text in the TextView widgets. What I'd like is for Ctrl+C to 
copy a file if a file is selected and copy some text (as the default) if 
some text is selected.

What's the easiest or normal way of fixing something like this? As far 
as I can tell from the docs, accelerators apply to the entire window and 
there isn't an obvious way to divide it up so that they do different 
things if different widgets are in focus. Or is there some trick 
involving accelerator paths, accelerator groups and action groups that I 
haven't understood?

Or do I need to explicitly connect up every gtk.Entry, gtk.TextView etc 
in the application so that when the user selects something there all the 
file actions get disabled?

Regards,
Geoff

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/


[pygtk] gobject.child_watch_add on Windows?

2008-06-23 Thread Geoff Bache


Hi all,

I couldn't persuade gobject.child_watch_add to work on Windows. I'm 
passing it a process ID as received from subprocess.Popen but it seems 
to want one of those process handle things. Is this function only 
meant to work with processes created via gobject.spawn_async?


Problem with process handles is that I don't know how to terminate 
processes from the command line using them, whereas doing it with an 
actual process ID is fairly easy.


Any help appreciated.

Geoff Bache

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] shrink property of gtk.Paned

2008-04-23 Thread Geoff Bache

Hi all,

Is there any way to set up gtk.Paned such that automatic shrinking on 
resize never occurs, but shrinking
by manually dragging the separator is still allowed? As far as I can see 
setting shrink=False prevents

both from occurring.

Regards,
Geoff Bache

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


Re: [pygtk] gtk.Action.connect_proxy

2008-03-14 Thread Geoff Bache
The tooltip is only set on a ToolItem but the stock icon will be used 
if you set the use-stock property of the button to True:


button.set_use_stock(True)

John

Thanks John,

Unfortunately this seems to have the effect that the label text is 
derived from the stock icon's name rather than the title of the action! 
So then I have to transfer the label by hand instead...


Do you know if there is any reason why the tooltip isn't transferred 
(and why you can transfer the stock icon or the label, but not both!)? 
It's easy to transfer both by hand of course, but when the docs promise 
to do it for you it seems a bit weird...


Regards,
Geoff

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] gtk.Action.connect_proxy

2008-03-13 Thread Geoff Bache


Hi all,

I can't persuade this to work as described unfortunately. The docs say

This method synchronizes various properties of the |gtk.Action| 
http://www.pygtk.org/docs/pygtk/class-gtkaction.html with the widget 
(such as label text, icon, tooltip, etc), and attaches a callback so 
that the |gtk.Action| 
http://www.pygtk.org/docs/pygtk/class-gtkaction.html is activated when 
/|proxy|/ is.


As far as I can tell, when connecting a simple button as a proxy, all 
that gets transferred is the label text. The stock icon and tooltip at 
least are not transferred.

Is this to be expected?

Regards,
Geoff Bache

P.S. Here's my code:

#!/usr/bin/env python

import gtk

def buttonClicked(action, *args):
   print action

window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.connect(delete_event, gtk.main_quit)
action = gtk.Action(The Action, The Action, Some tooltip, 
gtk-refresh)

action.connect(activate, buttonClicked)
actionGroup = gtk.ActionGroup(The Action Group)
actionGroup.add_action(action)
button = gtk.Button()
action.connect_proxy(button) # button appears saying The Action but 
without an icon or a tooltip...

window.add(button)
window.show_all()
window.resize(100, 100)
gtk.main()


___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] Access to the text entry in gtk.FileChoosers?

2007-05-10 Thread Geoff Bache


Hi all,

Using gtk.FileChooser, I was wondering a bit about why access is 
provided to changes within only some
of the widgets inside it. For example, there is the signal 
current-folder-changed that tells me if the user
changes folder, and the signal selection-changed if they select a file 
from the list. But there seems to be
no way of telling if they type something into the filename text entry at 
the top (for the _SAVE variety of FileChooser).


It seems odd to me that gtk.FileChooser isn't a black box in that some 
of its components are visible to the outside world,
but yet not all of them are exposed in this way. Why is this? Is there 
any workaround supposing I want to do this?


Regards,
Geoff Bache

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] Hiding dialogs within hidden windows

2007-05-08 Thread Geoff Bache


Hi,

I would like (for testing purposes) to be able to run my PyGTK 
application on Windows without the GUI coming up on the screen.
So I start it with the window hidden (using Python's subprocess module 
and the flag SW_HIDE) which sure enough hides the

main window. Unfortunately all the dialogs that come up still get displayed.

Does anyone have any hints as to what I can do about this, either from 
how I start the application or what I can do inside it? Is there
a way to find out if the main window is hidden? Can I do something 
globally without needing to find and change every dialog in the

whole application?

Regards,
Geoff Bache

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


Re: [pygtk] Controlling a menu structure from an XML file?

2007-03-09 Thread Geoff Bache



On Thu, 2007-03-08 at 11:00 +0100, Geoff Bache wrote:
  

Hello,

I'm wondering about defining a menu structure using gtk.UIManager and an 
XML file. What confuses
me a bit is that it seems to be necessary to define which menus and 
submenus I have in the Python code,
even if I can then control their contents from XML. The reason seems to 
be that everything has to have

an action.

I define a menu like this:

menu action=actionsmenu
  menuitem action=Select/
  menuitem action=Run/
/menu

But for this to work I have to write (somewhere in my Python code)

menuAction = gtk.Action(actionsmenu, _Actions, None, None)
...

just in order to translate the identifier actionsmenu into the label 
_Actions.


I'd like to be able to write something like

menu label=_Actions

so that I can define the whole menu structure in one format in one 
place. Is this possible in some way?



I don't believe it's possible and for good reason. A major
benefit/feature of UIManger is making actions independent of any given
widget, e.g. a menu item. When the notion of separated actions and
widgets introduced you can then combine them at will without having to
keep multiple widgets in sync. One reason I switched to UIManager was
the all too common scenario where an icon or label was modified in one
part of the UI but other parts of the UI (e.g. the same item in a popup
menu or a toolbar button) was forgotten about in the update leading to
inconsistencies in the UI. I really like the fact I change the
definition in exactly one place and every part of the UI is consistently
updated. That flexibility and consistency occurs because actions and
widgets are independent.
  


I agree, but I think you've missed the point. All my actions and widgets 
are independent and that's great.
My point is that the menus and submenus themselves are just display 
details, they don't really correspond
to any action. My code does not react when somebody just clicks a menu 
without actually selecting a menu item.

I have no problem with how it works for the menu items themselves.

It therefore seems odd to me that I can put most of the display details 
in an XML file but have to hardcode
the allowed names of all the menus and submenus in my Python code, 
when all this code does is translate

one string identifier to another.

Regards,
Geoff

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] Controlling a menu structure from an XML file?

2007-03-08 Thread Geoff Bache


Hello,

I'm wondering about defining a menu structure using gtk.UIManager and an 
XML file. What confuses
me a bit is that it seems to be necessary to define which menus and 
submenus I have in the Python code,
even if I can then control their contents from XML. The reason seems to 
be that everything has to have

an action.

I define a menu like this:

menu action=actionsmenu
 menuitem action=Select/
 menuitem action=Run/
/menu

But for this to work I have to write (somewhere in my Python code)

menuAction = gtk.Action(actionsmenu, _Actions, None, None)
...

just in order to translate the identifier actionsmenu into the label 
_Actions.


I'd like to be able to write something like

menu label=_Actions

so that I can define the whole menu structure in one format in one 
place. Is this possible in some way?


Regards,
Geoff Bache

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] CellRendererToggle - how to prevent toggles from selecting the row

2007-01-03 Thread Geoff Bache

Hi,

I have a gtk.TreeView with several columns, one of which renders its 
cells with CellRendererToggle.
The annoying thing with this is when the user toggles the check box, the 
whole row is selected. Is there
any way to prevent this? I've tried using 
gtk.TreeSelection.set_select_function but as far as I

can tell the callback doesn't tell me which column was clicked.

(It isn't enough to just disable the selection, I also want to be able 
to select the rows, but would like

the two operations to be independent.)

Thanks,
Geoff Bache

___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] Removing gaps from ProgressBars

2006-06-03 Thread Geoff Bache

Hi,

I have got used to the look of my ProgressBar on Linux, PyGTK 2.4.13.
It is blue, solid and the text on it looks nice.

I recently tried to port it to Windows (using version 2.6.8) and find that 
it is now green with white gaps in it. Whatever colour I make the text,
it is nearly illegible because of these gaps.

I spent a while trying to figure out how to configure it but I failed to
alter either the colour or the gaps. There don't seem to be any relevant 
style properties, and changing fg changes the colour of the text, while
changing bg seems to have no effect.

Can anyone give a pointer on how to make the text more readable?

Thanks,
Geoff Bache


___
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


Re: [pygtk] Changing the colour of row selection in gtk.TreeView

2003-08-14 Thread Geoff Bache
On Mon, 28 Jul 2003, Christian Reis wrote:

 On Mon, Jul 28, 2003 at 06:10:40PM +0200, Geoff Bache wrote:
  The TreeView has a style, but changing it only seems to affect the arrows 
  at the left of the display. The actual information is in the columns, 
  which are displayed by the CellRenderer. But neither of these is a Widget, or 
  has an associated style object, or any obvious way from the documentation 
  to affect the selection display. The background property of CellRenderer 
  is unfortunately not dependent on the state (gtk.STATE_SELECTED etc.)
 
 If nobody else provides an answer, I'd suggest bringing it up on the
 GTK+ development lists, or querying someone on irc.gnome.org #gtk+ --
 Kris would be a good choice since he did major (most?) work on that
 specific widget.

Well, nobody has provided an answer, and the GTK+ list was totally 
silent when I posted the same query there ([EMAIL PROTECTED]). 
Can you give me an address for Kris, or more details on what you mean by 
irc.gnome.org #gtk+ (or any other suggestions)?

Geoff

___
pygtk mailing list   [EMAIL PROTECTED]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


[pygtk] Changing the colour of row selection in gtk.TreeView

2003-07-28 Thread Geoff Bache

Some help needed with PyGTK2:

I create a gtk.TreeView in the following way:

view = gtk.TreeView(self.model)
renderer = gtk.CellRendererText()
column = gtk.TreeViewColumn(Title, renderer, text=0, background=1)
view.append_column(column)

When displayed, this gives me a nice tree view. The rows turn
dark blue when I click on them.

Unfortunately, I don't want the rows to turn dark blue (I would prefer
that selection was indicated by italicising the text or by some other
means). I have tried changing everything imaginable on both the view
and the renderer (both via an rc file and directly), and it doesn't have 
any effect. The only thing that caused any change was

style = view.get_style().copy()
view.set_style(style)

which changed the dark blue to light blue!

Help!

Geoff Bache

___
pygtk mailing list   [EMAIL PROTECTED]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


Re: [pygtk] Changing the colour of row selection in gtk.TreeView

2003-07-28 Thread Geoff Bache
On Mon, 28 Jul 2003, Christian Reis wrote:

 On Mon, Jul 28, 2003 at 04:01:14PM +0200, Geoff Bache wrote:
  Unfortunately, I don't want the rows to turn dark blue (I would prefer
  that selection was indicated by italicising the text or by some other
  means). I have tried changing everything imaginable on both the view
 
 As the #python folks would say, why would you want to do that?
 
 Seriously, changing the default styling for something as basic as list
 selection is asking for free usability trouble. Is there a, reasonable,
 specific reason why you *need* this styled this way? 

Yes, really.

My app is a testing framework. It is more important that it is like
other testing frameworks than that it is like other GTK applications.
The rows represent tests that turn green when successful or red when 
failing. It is then somewhat confusing if they turn blue when selected by
the user, who then cannot see the state any more.

Regards,
Geoff Bache

___
pygtk mailing list   [EMAIL PROTECTED]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/


Re: [pygtk] Changing the colour of row selection in gtk.TreeView

2003-07-28 Thread Geoff Bache
On Mon, 28 Jul 2003, Christian Reis wrote:

 On Mon, Jul 28, 2003 at 05:20:15PM +0200, Geoff Bache wrote:
  Yes, really.
  
  My app is a testing framework. It is more important that it is like
  other testing frameworks than that it is like other GTK applications.
  The rows represent tests that turn green when successful or red when 
  failing. It is then somewhat confusing if they turn blue when selected by
  the user, who then cannot see the state any more.
 
 In your case, it would probably be best to use a thin frame around the
 selected list entry, which would identify selection clearly (without
 resorting to italicizing or other text hacks).

I agree. It would be great if I could do this.

 
 Anyway, back to your practical problem ;)
 
 I don't know the TreeView very well, but have you tried looking at the
 TreeSelection object's style? The TreeView itself may have styles for
 certain states, but the GTK+ code is going to be the definitive
 reference if it's not in the manuals.
 

The TreeSelection doesn't seem to have any style, because it's not a 
Widget.

 dir (gtk.TreeSelection)
['__class__', '__cmp__', '__delattr__', '__dict__', '__doc__', '__gdoc__', 
'__getattribute__', '__gobject_init__', '__grefcount__', '__gtype__', 
'__hash__', '__init__', '__new__', '__reduce__', '__repr__', 
'__setattr__', '__str__', 'chain', 'connect', 'connect_after', 
'connect_object', 'connect_object_after', 'destroy', 'disconnect', 'emit', 
'emit_stop_by_name', 'flags', 'freeze_notify', 'get_data', 'get_mode', 
'get_property', 'get_selected', 'get_tree_view', 'handler_block', 
'handler_disconnect', 'handler_unblock', 'iter_is_selected', 'notify', 
'path_is_selected', 'select_all', 'select_iter', 'select_path', 
'select_range', 'selected_foreach', 'set_data', 'set_flags', 'set_mode', 
'set_property', 'set_select_function', 'stop_emission', 'thaw_notify', 
'unselect_all', 'unselect_iter', 'unselect_path', 'unset_flags']

The TreeView has a style, but changing it only seems to affect the arrows 
at the left of the display. The actual information is in the columns, 
which are displayed by the CellRenderer. But neither of these is a Widget, or 
has an associated style object, or any obvious way from the documentation 
to affect the selection display. The background property of CellRenderer 
is unfortunately not dependent on the state (gtk.STATE_SELECTED etc.)
 
Regards,
Geoff Bache



___
pygtk mailing list   [EMAIL PROTECTED]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/