Added a little bitmap at the left of the avatar in the contact list, that show the icon of the contact's protocol. Added a needed little method in the ContactLinker to get the contact protocol's bitmap as well.
This commit is contained in:
parent
9f4470c334
commit
9df2b09f45
|
@ -172,6 +172,17 @@ ContactLinker::AvatarBitmap() const
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
BBitmap*
|
||||||
|
ContactLinker::ProtocolBitmap() const
|
||||||
|
{
|
||||||
|
CayaProtocol* protocol = fLooper->Protocol();
|
||||||
|
CayaProtocolAddOn* addOn
|
||||||
|
= ProtocolManager::Get()->ProtocolAddOn(protocol->Signature());
|
||||||
|
|
||||||
|
return addOn->Icon();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
CayaStatus
|
CayaStatus
|
||||||
ContactLinker::GetNotifyStatus() const
|
ContactLinker::GetNotifyStatus() const
|
||||||
{
|
{
|
||||||
|
|
|
@ -42,6 +42,7 @@ public:
|
||||||
|
|
||||||
ProtocolLooper* GetProtocolLooper() const;
|
ProtocolLooper* GetProtocolLooper() const;
|
||||||
void SetProtocolLooper(ProtocolLooper* looper);
|
void SetProtocolLooper(ProtocolLooper* looper);
|
||||||
|
BBitmap* ProtocolBitmap() const;
|
||||||
|
|
||||||
BString GetName() const;
|
BString GetName() const;
|
||||||
BBitmap* AvatarBitmap() const;
|
BBitmap* AvatarBitmap() const;
|
||||||
|
|
|
@ -195,6 +195,15 @@ void RosterItem::DrawItem(BView* owner, BRect frame, bool complete)
|
||||||
rect, B_FILTER_BITMAP_BILINEAR);
|
rect, B_FILTER_BITMAP_BILINEAR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BBitmap* protocolBitmap = contactLinker->ProtocolBitmap();
|
||||||
|
float h = frame.Height();
|
||||||
|
BRect rect(frame.right - h - 20, frame.top + 2,
|
||||||
|
frame.right - 40, frame.top + h - 20);
|
||||||
|
owner->SetDrawingMode(B_OP_ALPHA);
|
||||||
|
owner->SetBlendingMode(B_PIXEL_ALPHA, B_ALPHA_OVERLAY);
|
||||||
|
owner->DrawBitmap(protocolBitmap, protocolBitmap->Bounds(),
|
||||||
|
rect, B_FILTER_BITMAP_BILINEAR);
|
||||||
|
|
||||||
owner->SetHighColor(highColor);
|
owner->SetHighColor(highColor);
|
||||||
owner->SetLowColor(lowColor);
|
owner->SetLowColor(lowColor);
|
||||||
}
|
}
|
||||||
|
|
Ŝarĝante…
Reference in New Issue