Have you tried using an eventbox inside the frame to hold the vbox that 
holds the other stuff? I believe that the purpose of the eventbox is to 
do just the kind of thing you want i.e. set the bg_pixmap for the 
eventbox to some custom pixmap that represents your style.

John

Ryan Martin wrote:
> That's a good question. I didn't explain why I needed to do this 
> because I thought I'd confuse more. In the software I'm writing, I'm 
> combining theme elements with some widget tricks to accomplish a 
> visual task that I don't know is possible by any other means.
>
> I need to have a container than I can 'skin' that can contain other 
> widgets. My initial thought was to theme gtk.Frame to have borders and 
> a background (like a button), and I can pack all of my widgets into 
> that. Unfortunately, to my knowledge, you can't have a background on a 
> frame widget. So I started cycling through other gtk widgets to see if 
> there was some sort of container that I could theme, but was unable to 
> find something that worked.
>
>
> (http://www.ensomniac.com/pygtk/button_example2.jpg)
>
> That led me to my latest theory, that if I were able to use a button 
> as a container, I could theme gtk.Button to get the visual style I 
> wanted, but also the functionality of having the widgets inside. I 
> would need to disable the core button (container) from receiving and 
> processing signals, but somehow pass them on to any of the widgets 
> inside the button:
>
>
> (http://www.ensomniac.com/pygtk/button_example.jpg)
>
> And that leaves me where I'm at now. The following code will disable 
> my base button from working:
> *print* self.widgets.main_container_button.get_property("above-child")
> >> *False**
> print* self.widgets.main_container_button.set_property("above-child", True)
> *print* self.widgets.main_container_button.get_property("above-child")
> >> *True*
> But I have no idea how to pass the events to the widgets that are 
> children of the button (the 'button_2' widget and the "entry" widget 
> in the image above).
>
> If there is some other way to accomplish my task, I'm all ears. 
> Currently, I'm struggling trying to get my events passed to the child 
> widgets.
>
>
> Thanks for the help!
>
> Ryan
>
>
>
>
>
>
>
>
> John Finlay wrote:
>> Ryan Martin wrote:
>>> Hey Guys,
>>>     I have a strange situation that I'm having trouble finding a 
>>> solution for. In the application I'm building, I would like to use a 
>>> button as a container and not necessarily a button. Currently, I 
>>> have a text field and another button inside my main button in 
>>> question. What I would like is to disable all of the innate 
>>> callbacks (prelight/hover, clicked, etc.) on that main button and 
>>> just have it sit there while still being able to click the child 
>>> button inside the main button or enter text into the text field.
>>>
>>> One thing to consider is that I need to disable callbacks on the 
>>> main button but not on any of the widgets that are added to the main 
>>> button as a child.
>>>
>>> Is this possible? Did that make sense?
>>>
>>> Any help would be greatly appreciated. I have scoured through old 
>>> threads looking for clues.
>> Why do you need to use a button as a container when you don't want to 
>> use any of the button's features? Are there no GTK containers that work?
>>
>> John
>>
>
> -- 
> Ryan Martin
> *Industrial Light + Magic
> *Assistant Technical Director
> cell: 973-632-1417 / desk: 415-746-2117
>
> *
> *

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

Reply via email to