Hi, just randomly ran into your User page and saw your question about writing a Thunderbird importer. I don't use Thunderbird, and I don't generally write extensions for it, but I think I can offer you some insight into how to make this happen.
- The import dialog code lives at http://lxr.mozilla.org/seamonkey/sou...ation/content/
- To get your importer as an option, you'll want to overlay chrome://messenger/content/migration/migration.xul, specifically you need to put a xul:radio element inside <radiogroup id="importSourceGroup"> to have your option be available.
- From this dialog your migration component will be instantiated using the Contract ID "@mozilla.org/profile/migrator;1?app=mail&type=" + the id of your radio element. So if you put in <radio id="thebat"> then you'll need to have a contract id of "@mozilla.org/profile/migrator;1?app=mail&type=thebat"
- From that point, I think it's just a matter of implementing the interface properly to handle the data you want.
Sounds like this is code that the Thunderbird project might want, so if you get it working you should consider filing a bug (or finding an existing one) and attaching a patch.
Good luck! --Ted Mielczarek 10:07, 12 October 2006 (PDT)
- Thanks for your input, Ted. Last time, the overlay thing didn't work out, but I'll definitely look into this again after finishing my final (Diplom) thesis in late November. Actually, there is already bug 217988 to track any progress. --Felix.Schwarz 11:13, 12 October 2006 (PDT)
- Actually, Ted's hint was wrong (but provided a HUGH motivation boost to find the correct solution) because the import code can be found in http://lxr.mozilla.org/seamonkey/sou...urces/content/ and no overlay is needed, just a correctly registered nsIImportModule module. --Felix.Schwarz 10:33, 12 August 2007 (PDT)