tomato/src/chat_gui/contact_list.hpp
Green Sky c29aa523dc
Some checks are pending
ContinuousDelivery / linux-ubuntu (push) Waiting to run
ContinuousDelivery / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android]) (push) Waiting to run
ContinuousDelivery / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android]) (push) Waiting to run
ContinuousDelivery / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android]) (push) Waiting to run
ContinuousDelivery / windows (push) Waiting to run
ContinuousDelivery / windows-asan (push) Waiting to run
ContinuousDelivery / dumpsyms (push) Blocked by required conditions
ContinuousDelivery / release (push) Blocked by required conditions
ContinuousIntegration / linux (push) Waiting to run
ContinuousIntegration / android (map[ndk_abi:arm64-v8a vcpkg_toolkit:arm64-android]) (push) Waiting to run
ContinuousIntegration / android (map[ndk_abi:armeabi-v7a vcpkg_toolkit:arm-neon-android]) (push) Waiting to run
ContinuousIntegration / android (map[ndk_abi:x86_64 vcpkg_toolkit:x64-android]) (push) Waiting to run
ContinuousIntegration / macos (push) Waiting to run
ContinuousIntegration / windows (push) Waiting to run
contact 4 refactor
2025-03-06 19:12:35 +01:00

49 lines
934 B
C++

#pragma once
#include "./texture_cache_defs.hpp"
#include "./theme.hpp"
#include <solanaceae/contact/fwd.hpp>
enum class ThemeCol_Contact {
request_incoming,
request_outgoing,
avatar_online_direct,
avatar_online_cloud,
avatar_offline,
unread,
unread_muted,
icon_backdrop,
ft_have_all,
};
void renderAvatar(
const Theme& th,
ContactTextureCache& contact_tc,
const ContactHandle4 c,
ImVec2 box
);
// returns true if clicked, if selectable, will highlight on hover and respect selected
// TODO: refine
// +------+
// | | *Name (Alias?) [v]
// |Avatar| Satus Message <-- richpresence interface?
// | | user status (online/away/busy)-direct/relayed / offline <-- last text?
// +------+
bool renderContactBig(
const Theme& th,
ContactTextureCache& contact_tc,
const ContactHandle4 c,
int line_height = 3,
const bool unread = false,
const bool selectable = false,
const bool selected = false
);