mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Fix nickname saving in XML file to deal with utf8 characters
This makes the whole code much cleaner and simpler. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
96db56f89c
commit
df0ea07292
3 changed files with 39 additions and 23 deletions
24
gtk-gui.c
24
gtk-gui.c
|
@ -44,6 +44,7 @@ struct dcnicknamelist {
|
|||
const char *model;
|
||||
uint32_t deviceid;
|
||||
struct dcnicknamelist *next;
|
||||
gboolean saved;
|
||||
};
|
||||
static struct dcnicknamelist *nicknamelist;
|
||||
char *nicknamestring;
|
||||
|
@ -2078,6 +2079,29 @@ const char *get_dc_nickname(const char *model, uint32_t deviceid)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
gboolean dc_was_saved(struct divecomputer *dc)
|
||||
{
|
||||
struct dcnicknamelist *nn_entry = get_dc_nicknameentry(dc->model, dc->deviceid);
|
||||
return nn_entry && nn_entry->saved;
|
||||
}
|
||||
|
||||
void mark_dc_saved(struct divecomputer *dc)
|
||||
{
|
||||
struct dcnicknamelist *nn_entry = get_dc_nicknameentry(dc->model, dc->deviceid);
|
||||
if (nn_entry)
|
||||
nn_entry->saved = TRUE;
|
||||
}
|
||||
|
||||
void clear_dc_saved_status()
|
||||
{
|
||||
struct dcnicknamelist *nn_entry = nicknamelist;
|
||||
|
||||
while (nn_entry) {
|
||||
nn_entry->saved = FALSE;
|
||||
nn_entry = nn_entry->next;
|
||||
}
|
||||
}
|
||||
|
||||
/* do we have a DIFFERENT divecomputer of the same model? */
|
||||
static struct dcnicknamelist *get_different_dc_nicknameentry(const char *model, int deviceid)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue