On Thursday, 20 June 2013 15:42:28 CEST, Pali Rohár wrote:
virtual void requestComplete(const QString &input, const QStringList &ignores = QStringList(), int max = -1) = 0;
Either "requestCompletion" or "requestCompleting", but to me, "requestComplete" means something very different than "request a completion", I read it as "a request has been completed". You can also kill the ignores parameter, it doesn't appear to be used. Thomas, do you have a comment on that, given that originally added this?
void completionAvailable(const QString &input, const QStringList &list);
I'd suggest this ("list" is not a terribly self-explaining name): void completionAvailable(const QString &input, const QQstringList &completion); I'm also slightly unsure about whether it should be changed to a QList<QPair<QString, QString> > to pass the human readable names and e-mail addresses separately. Opinions?
class AddressbookFactoryInterface { virtual QString name() = 0; virtual QString description() = 0; virtual bool isValid() = 0;
These should probably all be const. I also wonder about the usefullness of the isValid() -- if it's e.g. an LDAP address book, do you expect to test connection to the remote server during isValid()? If so, it should probably asynchronous, but that would only make it troublesome to use it... Cheers, Jan -- Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/