Added roster contact themes
This commit is contained in:
@@ -447,6 +447,60 @@ _theme_find(const char *const theme_name)
|
||||
return path;
|
||||
}
|
||||
|
||||
theme_item_t
|
||||
theme_roster_unread_presence_attrs(const char *const presence)
|
||||
{
|
||||
if (g_strcmp0(presence, "online") == 0) {
|
||||
return THEME_ROSTER_ONLINE_UNREAD;
|
||||
} else if (g_strcmp0(presence, "away") == 0) {
|
||||
return THEME_ROSTER_AWAY_UNREAD;
|
||||
} else if (g_strcmp0(presence, "chat") == 0) {
|
||||
return THEME_ROSTER_CHAT_UNREAD;
|
||||
} else if (g_strcmp0(presence, "dnd") == 0) {
|
||||
return THEME_ROSTER_DND_UNREAD;
|
||||
} else if (g_strcmp0(presence, "xa") == 0) {
|
||||
return THEME_ROSTER_XA_UNREAD;
|
||||
} else {
|
||||
return THEME_ROSTER_OFFLINE_UNREAD;
|
||||
}
|
||||
}
|
||||
|
||||
theme_item_t
|
||||
theme_roster_active_presence_attrs(const char *const presence)
|
||||
{
|
||||
if (g_strcmp0(presence, "online") == 0) {
|
||||
return THEME_ROSTER_ONLINE_ACTIVE;
|
||||
} else if (g_strcmp0(presence, "away") == 0) {
|
||||
return THEME_ROSTER_AWAY_ACTIVE;
|
||||
} else if (g_strcmp0(presence, "chat") == 0) {
|
||||
return THEME_ROSTER_CHAT_ACTIVE;
|
||||
} else if (g_strcmp0(presence, "dnd") == 0) {
|
||||
return THEME_ROSTER_DND_ACTIVE;
|
||||
} else if (g_strcmp0(presence, "xa") == 0) {
|
||||
return THEME_ROSTER_XA_ACTIVE;
|
||||
} else {
|
||||
return THEME_ROSTER_OFFLINE_ACTIVE;
|
||||
}
|
||||
}
|
||||
|
||||
theme_item_t
|
||||
theme_roster_presence_attrs(const char *const presence)
|
||||
{
|
||||
if (g_strcmp0(presence, "online") == 0) {
|
||||
return THEME_ROSTER_ONLINE;
|
||||
} else if (g_strcmp0(presence, "away") == 0) {
|
||||
return THEME_ROSTER_AWAY;
|
||||
} else if (g_strcmp0(presence, "chat") == 0) {
|
||||
return THEME_ROSTER_CHAT;
|
||||
} else if (g_strcmp0(presence, "dnd") == 0) {
|
||||
return THEME_ROSTER_DND;
|
||||
} else if (g_strcmp0(presence, "xa") == 0) {
|
||||
return THEME_ROSTER_XA;
|
||||
} else {
|
||||
return THEME_ROSTER_OFFLINE;
|
||||
}
|
||||
}
|
||||
|
||||
theme_item_t
|
||||
theme_main_presence_attrs(const char *const presence)
|
||||
{
|
||||
@@ -554,6 +608,24 @@ theme_attrs(theme_item_t attrs)
|
||||
case THEME_OTR_TRUSTED: _theme_prep_fgnd("otr.trusted", "green", lookup_str, &bold); break;
|
||||
case THEME_OTR_UNTRUSTED: _theme_prep_fgnd("otr.untrusted", "yellow", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_HEADER: _theme_prep_fgnd("roster.header", "yellow", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_ONLINE: _theme_prep_fgnd("roster.online", "green", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_OFFLINE: _theme_prep_fgnd("roster.offline", "red", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_CHAT: _theme_prep_fgnd("roster.chat", "green", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_AWAY: _theme_prep_fgnd("roster.away", "cyan", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_DND: _theme_prep_fgnd("roster.dnd", "red", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_XA: _theme_prep_fgnd("roster.xa", "cyan", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_ONLINE_ACTIVE: _theme_prep_fgnd("roster.online.active", "green", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_OFFLINE_ACTIVE: _theme_prep_fgnd("roster.offline.active", "red", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_CHAT_ACTIVE: _theme_prep_fgnd("roster.chat.active", "green", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_AWAY_ACTIVE: _theme_prep_fgnd("roster.away.active", "cyan", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_DND_ACTIVE: _theme_prep_fgnd("roster.dnd.active", "red", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_XA_ACTIVE: _theme_prep_fgnd("roster.xa.active", "cyan", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_ONLINE_UNREAD: _theme_prep_fgnd("roster.online.unread", "green", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_OFFLINE_UNREAD: _theme_prep_fgnd("roster.offline.unread", "red", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_CHAT_UNREAD: _theme_prep_fgnd("roster.chat.unread", "green", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_AWAY_UNREAD: _theme_prep_fgnd("roster.away.unread", "cyan", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_DND_UNREAD: _theme_prep_fgnd("roster.dnd.unread", "red", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_XA_UNREAD: _theme_prep_fgnd("roster.xa.unread", "cyan", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_ROOM: _theme_prep_fgnd("roster.room", "green", lookup_str, &bold); break;
|
||||
case THEME_ROSTER_ROOM_UNREAD: _theme_prep_fgnd("roster.room.unread", "green", lookup_str, &bold); break;
|
||||
case THEME_OCCUPANTS_HEADER: _theme_prep_fgnd("occupants.header", "yellow", lookup_str, &bold); break;
|
||||
|
||||
@@ -85,6 +85,24 @@ typedef enum {
|
||||
THEME_OTR_UNTRUSTED,
|
||||
THEME_OCCUPANTS_HEADER,
|
||||
THEME_ROSTER_HEADER,
|
||||
THEME_ROSTER_ONLINE,
|
||||
THEME_ROSTER_OFFLINE,
|
||||
THEME_ROSTER_AWAY,
|
||||
THEME_ROSTER_CHAT,
|
||||
THEME_ROSTER_DND,
|
||||
THEME_ROSTER_XA,
|
||||
THEME_ROSTER_ONLINE_ACTIVE,
|
||||
THEME_ROSTER_OFFLINE_ACTIVE,
|
||||
THEME_ROSTER_AWAY_ACTIVE,
|
||||
THEME_ROSTER_CHAT_ACTIVE,
|
||||
THEME_ROSTER_DND_ACTIVE,
|
||||
THEME_ROSTER_XA_ACTIVE,
|
||||
THEME_ROSTER_ONLINE_UNREAD,
|
||||
THEME_ROSTER_OFFLINE_UNREAD,
|
||||
THEME_ROSTER_AWAY_UNREAD,
|
||||
THEME_ROSTER_CHAT_UNREAD,
|
||||
THEME_ROSTER_DND_UNREAD,
|
||||
THEME_ROSTER_XA_UNREAD,
|
||||
THEME_ROSTER_ROOM,
|
||||
THEME_ROSTER_ROOM_UNREAD,
|
||||
THEME_RECEIPT_SENT,
|
||||
@@ -113,6 +131,10 @@ gboolean theme_load(const char *const theme_name);
|
||||
GSList* theme_list(void);
|
||||
void theme_close(void);
|
||||
int theme_attrs(theme_item_t attrs);
|
||||
|
||||
theme_item_t theme_main_presence_attrs(const char *const presence);
|
||||
theme_item_t theme_roster_unread_presence_attrs(const char *const presence);
|
||||
theme_item_t theme_roster_active_presence_attrs(const char *const presence);
|
||||
theme_item_t theme_roster_presence_attrs(const char *const presence);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user