Add docs for Administration Panel and some silent updates

This commit is contained in:
E. Kozlovskaya 2021-01-05 22:13:46 +07:00
parent 2ee7eeecae
commit 73f3071be5
4 changed files with 84 additions and 9 deletions

View file

@ -51,10 +51,6 @@ void AdministrationPanel::resizeEvent(QResizeEvent *event) {
QMainWindow::resizeEvent(event);
}
void AdministrationPanel::doLogout() {
close();
}
void AdministrationPanel::addAdministration() {
QStringList items = {
"Administrator",

View file

@ -13,45 +13,124 @@
#include "viewmodels/workersviewmodel.h"
#include "viewmodels/professionsviewmodel.h"
/**
* @brief В данной неймспейсе QTFramework хранит MOC-объект, позволяющий работать с интерфейсом
*
*/
namespace Ui { class AdministrationPanel; }
/**
* @brief Класс интерфейса панели администрации
*
*/
class AdministrationPanel : public QMainWindow {
private:
Q_OBJECT
//! Статический объект разметки интерфейса
Ui::AdministrationPanel *ui;
//! ViewModel для отображения администрации системы
AdministrationViewModel *avm;
//! ViewModel для отображения рабочих системы
WorkersViewModel *wvm;
//! ViewModel для отображения префессий системы
ProfessionsViewModel *pvm;
//! Объект пользователя администрации
User *mUser;
public:
/**
* @brief Стандартный конструктор объекта интерфейса
*
* @param parent [ignored]
*/
explicit AdministrationPanel(QWidget *parent = nullptr);
/**
* @brief Стандартный деструктор объекта интерфейса
*
*/
~AdministrationPanel();
/**
* @brief Устанавливает пользователя, который в данный момент работает с панелью
*
* @param user указатель на объект пользователя
*/
void setUser(User *user);
signals:
/**
* @brief Сигнал, сообщающий о необходимости перерисовки таблиц
*
*/
void invalidateTables();
public slots:
/**
* @brief Переопределение реакции на событие изменения размера.
* Устанавливает ширину заголовков таблиц.
*
* @param event [ignored]
*/
void resizeEvent(QResizeEvent *event);
void doLogout();
/**
* @brief Слот для события создания пользователя администрации
*
*/
void addAdministration();
/**
* @brief Слот для события создания пользователя рабочего
*
*/
void addWorker();
/**
* @brief Слот для события создания профессии
*
*/
void addProfession();
/**
* @brief Слот для события редактирования пользователя администрации
*
*/
void editAdministration();
/**
* @brief Слот для события редактирования пользователя рабочего
*
*/
void editWorker();
/**
* @brief Общий слот для события редактирования пользователяпо его уникальному идентификатору
*
*/
void editUser(UID uid);
/**
* @brief Слот для события редактирования профессии
*
*/
void editProfession();
/**
* @brief Слот для события удаления пользователя администрации
*
*/
void removeAdministration();
/**
* @brief Слот для события удаления пользователя рабочего
*
*/
void removeWorker();
/**
* @brief Слот для события удаления профессии
*
*/
void removeProfession();
/**
* @brief Слот для события запроса пеерисовки таблицы
*
*/
void onTablesInvalidation();
};

View file

@ -272,7 +272,7 @@
<sender>btnLogout</sender>
<signal>clicked()</signal>
<receiver>AdministrationPanel</receiver>
<slot>doLogout()</slot>
<slot>close()</slot>
<hints>
<hint type="sourcelabel">
<x>137</x>