a6c245580c
The goal is to allow multiple names for properties. This will be used to replace legacy names like "evolutionsource", but it could also be used to allow abbreviations on the command line. First the patch replaces the single ConfigProperty::m_name with a list of names, of which the first one is the current name of the property. The name that is to be used depends on the node which is to be manipulated: if it already has a property under an alias, that alias is read and also written, so existing configuration continue to use the old config name (avoids the problem of having to remove the old name and insert the new one at the same spot in a .ini file). Old configs continue to parse okay. Writing into node which has none of the names set, as in migrating into a fresh config, uses the new names. Most of the patch deals with the removal of a single, unique name, either by picking the name so that it matches a node, using the default name or simply hard-coding a property name ("sync"). The command line accepts all aliases, then uses the main name for overriding configuration options. |
||
---|---|---|
.. | ||
backends | ||
dbus | ||
gdbus | ||
gnome-bluetooth | ||
gtk-ui | ||
syncevo | ||
synthesis-includes | ||
templates | ||
.cvsignore | ||
async.patch | ||
client-test-app.cpp | ||
client-test-buteo.cpp | ||
client-test-buteo.h | ||
CmdlineSyncClient.cpp | ||
CmdlineSyncClient.h | ||
Makefile-gen.am | ||
org.syncevolution.service.in | ||
README.h | ||
README.templates | ||
shlibs.local | ||
syncevo-dbus-server-startup.sh.in | ||
syncevo-dbus-server.cpp | ||
syncevo-dbus-server.desktop.in | ||
syncevolution.cpp | ||
valgrind.supp |
The configuration templates in "templates" get installed into $(datadir)/syncevolution/templates. When adding/changing a new server, then only enter the properties which need to be changed here so that the default values can be used for the remaining properties. An icon can be added here for servers. The file name must start with "icon". Server configurations must be kept in sync in three different places: - here (if a server is installed as files) - in SyncEvolutionConfig.cpp's EvolutionSyncConfig::createServerTemplate() - in SyncEvolutionCmdline.cpp's test server configs - in test/test-dbus.py testGetConfigsTemplates() Note that server icons must come with a suitable license that allows redistribution.