IRCClientWindowListModel.cpp 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #include "IRCClientWindowListModel.h"
  2. #include "IRCClientWindow.h"
  3. #include "IRCClient.h"
  4. #include <stdio.h>
  5. #include <time.h>
  6. IRCClientWindowListModel::IRCClientWindowListModel(IRCClient& client)
  7. : m_client(client)
  8. {
  9. }
  10. IRCClientWindowListModel::~IRCClientWindowListModel()
  11. {
  12. }
  13. int IRCClientWindowListModel::row_count() const
  14. {
  15. return m_client.window_count();
  16. }
  17. int IRCClientWindowListModel::column_count() const
  18. {
  19. return 1;
  20. }
  21. String IRCClientWindowListModel::column_name(int column) const
  22. {
  23. switch (column) {
  24. case Column::Name: return "Name";
  25. }
  26. ASSERT_NOT_REACHED();
  27. }
  28. GTableModel::ColumnMetadata IRCClientWindowListModel::column_metadata(int column) const
  29. {
  30. switch (column) {
  31. case Column::Name: return { 70, TextAlignment::CenterLeft };
  32. }
  33. ASSERT_NOT_REACHED();
  34. }
  35. GVariant IRCClientWindowListModel::data(const GModelIndex& index, Role) const
  36. {
  37. switch (index.column()) {
  38. case Column::Name: return m_client.window_at(index.row()).name();
  39. }
  40. ASSERT_NOT_REACHED();
  41. }
  42. void IRCClientWindowListModel::update()
  43. {
  44. did_update();
  45. }
  46. void IRCClientWindowListModel::activate(const GModelIndex&)
  47. {
  48. }