storesviewmodel.cpp 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. #include "storesviewmodel.h"
  2. #include "services/settingsservice.h"
  3. StoresViewModel::StoresViewModel(QObject *parent)
  4. : QObject{parent}
  5. {
  6. connect(&m_storesModel, &BaseModel::dataChanged, this, &StoresViewModel::storesChanged);
  7. connect(&m_storesModel, &BaseModel::dataChanged, this, &StoresViewModel::selectedStoreNameChanged);
  8. connect(settings(), &SettingsService::selectedStoreIdChanged, this, &StoresViewModel::selectedStoreChanged);
  9. connect(settings(), &SettingsService::selectedStoreIdChanged, this, &StoresViewModel::selectedStoreNameChanged);
  10. }
  11. QVariantList StoresViewModel::stores() const
  12. {
  13. return m_storesModel.items();
  14. }
  15. QString StoresViewModel::selectedStore() const
  16. {
  17. return settings()->selectedStoreId();
  18. }
  19. void StoresViewModel::setSelectedStore(const QString &newSelectedStore)
  20. {
  21. settings()->setSelectedStoreId(newSelectedStore);
  22. }
  23. QString StoresViewModel::selectedStoreName() const
  24. {
  25. return m_storesModel.itemProperty(selectedStore(), "name").toString();
  26. }
  27. SettingsService *StoresViewModel::settings() const
  28. {
  29. return SettingsService::instance();
  30. }