Re: Unsupportable ATK interfaces??



>> > Desktop Engineer wrote:
>> > >Does anyone know or have any suggestions on how to
>> > >deal with ATK interfaces that cannot be implemented
>> > >in the underlying toolkit?
>> > >e.g GailCList implements the AtkSelection and AtkTable
>> > >interfaces but there are several attributes to AtkTable
>> > >that are not applicable to a GtlClist widget:
>> > >is_column_selected();
>> > >get_selected_columns();
>> > >get_column_extent_at();
>> > >
>> > >These are just a few examples.
>> > >
>> > >Thanks,
>> > >
>> > >Niall

One point worth remembering is that GtkCList is deprecated officially.  There doesn't seem 
to be a "simple" replacement, GtkTreeView is the "replacement" to my understanding.

If the interface is "unimplementable" because, for instance, there are no "selections" 
then the simple answer for "is_column_selected" is, always return FALSE ;-)  I don't see 
any need to return info to the effect that the method is unimplemented in that case - it 
*is* implemented, technically speaking.

In those cases where an interface is relevant/theoretically applies, but the underlying 
widget does not give enough info to implement the method, we may have to make harder 
decisions (log bugs against the widget, or return "do-nothing" implementations of those 
methods).  

Finally, I think that the only methods that can be unimplementable in the full sense of 
the word are those that purpose to change the state of the widget/AtkObject : thus, the 
"set" methods.  "Get" methods can always return something, even if that something is less 
than optimal/less than fully descriptive of the underlying widget.  I think we should do 
our best but not worry too much about a few holes in the support for deprecated widgets.

-Bill

------
Bill Haneman x19279
Gnome Accessibility / Batik SVG Toolkit
Sun Microsystems Ireland 





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]