* ApplicationManager itself: independent from clients.config?
* Upon reboot, ApplicationManager could add a new application to clients.config _if_ the 'application.manager.version' is not there, or is smaller than the current version.
* ApplicationManager can be the clients.config backend for routerconsole, so routerconsole is not the dependency.
* API:
- addConfig(args, name, ...)
- removeConfig(int)
- removeConfig(ConfigFilter)
ConfigFilter() {
boolean filterArgs(String args);
boolean filterMain(String main);
...
}
- editConfig(args, name, ..., ConfigFilter)
- editConfig(args, name, ..., int)
- editConfigArgs(args, ConfigFilter)
- editConfigArgs(args, int)
- ...
* For now: added in the routerconsole startup (like the old SysTray. - DONE
Possible migration path: startup ApplicationManager in routerconsole the first time.
- Check bug: restart is happening instead of shutdown!
- Check build order (for example: first desktopgui, only later routerconsole)
- API to allow applications to add themselves to the menu?
* registerApplication(); -- should return a positive number on success, -1 on failure
* unregisterApplication(int); -- should return nothing (or bool for success?), and the parameter should be the number given when registering the application
- Fetch I2P localhost from the core I2P application?
- Use I2PAppContext::appDir (something like that) for desktopgui data.