On 08/18/12 04:42, Peter Morgan wrote:
Had some time this evening so been hacking a bit to see how things work.

Got a simple patch here to remember last settings tab
https://projects.flaska.net/issues/545

Whats the procedure for submitting patches ?

Hi Peter, thanks for your patching spree :). Anything works, some examples in the order of preference:

- a git branch somewhere I can pull from (Gitorious' merge request is an example) along with a mail to the ML (or a bug filed in Redmine)

- a mail to the ML with an attachment with a patch suitable for `git am`

Given that people like Thomas L. are following the list but don't read Redmine, I think sending to the list has benefits. OTOH, having a bug report means that it won't get lost, so it has benefits, too. I essentially don't care, both work -- Redmine is IMHO better for "bovious" changes while the ML is better for further discussion.

I want to convert the "widgets"  to c++ widgets instead of *.ui files (
I can do this)..

I find the .ui files easier to work with than expressing the same in C++. I can do both, but the UI files look like a better tool for the job.

One issue is that the stuff needs validating, eg incorrect email
address, no test, invalid domain etc....

So is might be easier to have a parent class with validade/save methods
etc, and then contain the panes in the middle.
It also allows for clevered validation owith intellegent widgets.. (eg
border is red if invalid)

Is this a good idea ?

It should be possible to configure Trojita even in absence of a working network, so you cannot really refuse the changes in the dialog based just on "domain not found", in my opinion.

But if you want to add fancy borders etc to widgets containing "suspicious" data and the patch is reasonable and self-contained, well, why not.

As for the common validate()/save() methods, the C++ usually solves this through multiple inheritance (like in the case of "class OutgoingPage : public QScrollArea, Ui_OutgoingPage"). In absence of support for interfaces, that's the best the language gets us. I'd personally use that if I wanted to have a unified interface for calling save() etc, but quite frankly I don't think it's worth the effort for three tabs. But if you want to write that, by all means go ahead.

One Question?
With SMTP = outbound..
Should  the options be..
* No authentication
* Same as Inbox
* Different credential below

That would be a great change, patches welcome.

There's the necessity of more than one mailbox, and settings..

So have been thinking about creatign a wizard, similar to thunderbird etc...

Any thoughts on this before I start hacking it...

If you're referring to support for multiple IMAP accounts, that's a feature request that keeps popping up more and more often. Thomas L. is working on that.

About a configuration wizard -- in a perfect world, Trojita would ask just for e-mail address and password by default and perform the discovery of settings through the DNS SRV records (RFC 6186). There's still the need for advanced or manual settings, but supporting this autodiscovery would be a great thing. It's in Redmine #94 [1].

Again, patches welcome.

Cheers,
Jan

[1] https://projects.flaska.net/issues/94
--
Trojita, a fast e-mail client -- http://trojita.flaska.net/

Reply via email to