diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2012-06-24 07:02:01 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2012-06-24 07:02:01 +0800 |
commit | 18420e77507819dcee97dcc6cf5f5811915df82a (patch) | |
tree | 0dcab97792e92e478818ce4fe5bb6d410c1a4141 /widgets/misc/e-source-config-backend.h | |
parent | 922ca943bb348ca1445cb5403aa77aaa4c1cdec6 (diff) | |
download | gsoc2013-evolution-18420e77507819dcee97dcc6cf5f5811915df82a.tar gsoc2013-evolution-18420e77507819dcee97dcc6cf5f5811915df82a.tar.gz gsoc2013-evolution-18420e77507819dcee97dcc6cf5f5811915df82a.tar.bz2 gsoc2013-evolution-18420e77507819dcee97dcc6cf5f5811915df82a.tar.lz gsoc2013-evolution-18420e77507819dcee97dcc6cf5f5811915df82a.tar.xz gsoc2013-evolution-18420e77507819dcee97dcc6cf5f5811915df82a.tar.zst gsoc2013-evolution-18420e77507819dcee97dcc6cf5f5811915df82a.zip |
Bug 678634 - Criticals warnings when creating new book/cal
This required some reworking of assumptions I made early on when I first
wrote ESourceConfig, before I thought up the whole "collection" concept.
Not all ESourceConfigBackends will use a fixed parent UID, specifically
collection backends. In fact we may use multiple instances of the same
ESourceConfigBackend subclass if, for example, a user has two different
Exchange Web Services accounts configured. We would need to show both
EWS account (or "collection") names in the "Type" combo box.
For the moment collection-based ESourceConfigBackends are not listed
when creating a new calendar or address book since we lack support for
creating new resources on a remote server. A D-Bus interface for that
is in the works.
Diffstat (limited to 'widgets/misc/e-source-config-backend.h')
-rw-r--r-- | widgets/misc/e-source-config-backend.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/widgets/misc/e-source-config-backend.h b/widgets/misc/e-source-config-backend.h index 72cef5d4d1..8141cea1a5 100644 --- a/widgets/misc/e-source-config-backend.h +++ b/widgets/misc/e-source-config-backend.h @@ -56,9 +56,14 @@ struct _ESourceConfigBackend { struct _ESourceConfigBackendClass { EExtensionClass parent_class; - const gchar *parent_uid; + /* This should match backend names used in ESourceBackend. */ const gchar *backend_name; + /* Optional. Collection-based backends can leave this NULL. + * This is only for sources which have a fixed parent source, + * usually one of the "stub" placeholders ("local-stub", etc). */ + const gchar *parent_uid; + gboolean (*allow_creation) (ESourceConfigBackend *backend); void (*insert_widgets) (ESourceConfigBackend *backend, ESource *scratch_source); |