From 0ea4ac7e20674e3e6a8d1b3d4b53702dace72907 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 11 Mar 2017 22:48:35 +0100 Subject: Plug-In API: allow adding custom entries to account settings Also make OpenPGP code use this API --- libdino/src/plugin/registry.vala | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'libdino/src/plugin/registry.vala') diff --git a/libdino/src/plugin/registry.vala b/libdino/src/plugin/registry.vala index 8c75784e..27cac6f3 100644 --- a/libdino/src/plugin/registry.vala +++ b/libdino/src/plugin/registry.vala @@ -4,6 +4,7 @@ namespace Dino.Plugins { public class Registry { internal ArrayList encryption_list_entries = new ArrayList(); + internal ArrayList account_settings_entries = new ArrayList(); public bool register_encryption_list_entry(EncryptionListEntry entry) { lock(encryption_list_entries) { @@ -15,6 +16,18 @@ public class Registry { return true; } } + + public bool register_account_settings_entry(AccountSettingsEntry entry) { + lock(account_settings_entries) { + foreach(var e in account_settings_entries) { + if (e.id == entry.id) return false; + } + account_settings_entries.add(entry); + // TODO: Order by priority + account_settings_entries.sort((a,b) => b.name.collate(a.name)); + return true; + } + } } } \ No newline at end of file -- cgit v1.2.3-54-g00ecf