[Ekiga-devel-list] Various improvement ideas



(1) Visitor functions

There are a number of objects which list others, and have a a visit method, which generally looks like this :
void visit (sigc::slot<void, VisitedObjectType> visitor);

This is pretty handy when you want to loop on all the objects, but not when you're trying to lay your hand on one of them, so I pondered modifying things to look like this :
void visit (sigc::slot<bool, VisitedObjectType> visitor);

The presence of the boolean would allow the visitor to tell if it really wants to go on or if it has seen enough.

(2) Ok/Cancel requests

The current ekiga engine has support for abstract form requests, which allow asking quite a few things to the user (edit contacts, for example), but they are definitely not sufficient for everything.

Perhaps we could have an Ekiga::OkCancelRequest class, similar to the Ekiga::FormRequest class, which would allow showing very simple dialogs to the user ; something like :
- a title "Are you sure you want to close that chat window?" ;
- an explanation "This means you disconnect from whatever" ;
- only two buttons : Ok and Cancel (closing the dialog is a cancel).

(3) Notifications

Again, something forms can't do : just a notification something bad happened. This wouldn't require a complex type, but just simple data.

I was thinking something along the lines of :
- an enum with Warning and Error ;
- a string describing the problem.

Notice that in most cases, I think having a status line in the object is better for the interface (example : an LDAP book tells about errors in its status instead of pestering the user with a popup), but there are certainly cases where we'll want notifications.


What do you think about it ?

Snark


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