fallback availabiluty icons, chatty icon

This commit is contained in:
Blue 2019-06-24 00:09:39 +03:00
parent 833913cac2
commit 12511b1864
18 changed files with 399 additions and 51 deletions

View file

@ -69,12 +69,12 @@ void Models::Account::setAvailability(Shared::Availability p_avail)
}
}
QIcon Models::Account::getStatusIcon() const
QIcon Models::Account::getStatusIcon(bool big) const
{
if (state == Shared::connected) {
return QIcon::fromTheme(Shared::availabilityThemeIcons[availability]);
return Shared::availabilityIcon(availability, big);
} else if (state == Shared::disconnected) {
return QIcon::fromTheme(Shared::availabilityThemeIcons[Shared::offline]);
return Shared::availabilityIcon(Shared::offline, big);
} else {
return QIcon::fromTheme(Shared::connectionStateThemeIcons[state]);
}

View file

@ -36,7 +36,7 @@ namespace Models {
void setAvailability(unsigned int p_avail);
Shared::Availability getAvailability() const;
QIcon getStatusIcon() const;
QIcon getStatusIcon(bool big = false) const;
QVariant data(int column) const override;
int columnCount() const override;

View file

@ -216,12 +216,12 @@ void Models::Contact::setState(Shared::SubscriptionState p_state)
}
}
QIcon Models::Contact::getStatusIcon() const
QIcon Models::Contact::getStatusIcon(bool big) const
{
if (getMessagesCount() > 0) {
return QIcon::fromTheme("mail-message");
} else if (state == Shared::both) {
return QIcon::fromTheme(Shared::availabilityThemeIcons[availability]);
return Shared::availabilityIcon(availability, big);;
} else {
return QIcon::fromTheme(Shared::subscriptionStateThemeIcons[state]);
}

View file

@ -22,7 +22,7 @@ public:
QString getJid() const;
Shared::Availability getAvailability() const;
Shared::SubscriptionState getState() const;
QIcon getStatusIcon() const;
QIcon getStatusIcon(bool big = false) const;
int columnCount() const override;
QVariant data(int column) const override;

View file

@ -140,12 +140,12 @@ void Models::Presence::dropMessages()
}
}
QIcon Models::Presence::getStatusIcon() const
QIcon Models::Presence::getStatusIcon(bool big) const
{
if (getMessagesCount() > 0) {
return QIcon::fromTheme("mail-message");
} else {
return QIcon::fromTheme(Shared::availabilityThemeIcons[availability]);
return Shared::availabilityIcon(availability, big);
}
}

View file

@ -46,7 +46,7 @@ public:
QString getStatus() const;
void setStatus(const QString& p_state);
QIcon getStatusIcon() const;
QIcon getStatusIcon(bool big = false) const;
void update(const QString& key, const QVariant& value);
unsigned int getMessagesCount() const;

View file

@ -76,17 +76,17 @@ QVariant Models::Roster::data (const QModelIndex& index, int role) const
switch (item->type) {
case Item::account:{
Account* acc = static_cast<Account*>(item);
result = acc->getStatusIcon();
result = acc->getStatusIcon(false);
}
break;
case Item::contact:{
Contact* contact = static_cast<Contact*>(item);
result = contact->getStatusIcon();
result = contact->getStatusIcon(false);
}
break;
case Item::presence:{
Presence* presence = static_cast<Presence*>(item);
result = presence->getStatusIcon();
result = presence->getStatusIcon(false);
}
break;
default: