45 inline static std::string_view logger_name =
46 "ores.qt.account_roles_widget";
48 [[nodiscard]]
static auto& lg() {
50 static auto instance = make_logger(logger_name);
59 void setAccountId(
const boost::uuids::uuid& accountId);
67 void setReadOnly(
bool readOnly);
69 [[nodiscard]]
bool hasPendingChanges()
const;
70 [[nodiscard]]
const std::vector<boost::uuids::uuid>& pendingAdds()
const;
71 [[nodiscard]]
const std::vector<boost::uuids::uuid>& pendingRemoves()
const;
74 void statusMessage(
const QString& message);
75 void errorMessage(
const QString& message);
76 void roleListChanged();
79 void onAssignRoleClicked();
80 void onRevokeRoleClicked();
81 void onRoleSelectionChanged();
85 void updateButtonStates();
86 void refreshRolesList();
89 QListWidget* rolesList_;
90 QComboBox* roleCombo_;
91 QToolButton* assignButton_;
92 QToolButton* revokeButton_;
95 boost::uuids::uuid accountId_;
96 bool isReadOnly_{
false};
98 std::vector<iam::domain::role> assignedRoles_;
99 std::vector<iam::domain::role> allRoles_;
100 std::vector<boost::uuids::uuid> pendingAdds_;
101 std::vector<boost::uuids::uuid> pendingRemoves_;
void load()
Load roles. If accountId is set, also fetches assigned roles. If accountId is nil (create mode),...
Definition AccountRolesWidget.cpp:112