Files
Training-Team2-Zenvy-Jan26/Trenser.Zenvy/Trenser.Zenvy/views/UserInterface.h
T
2026-04-16 18:02:07 +05:30

46 lines
1.4 KiB
C++

/*
* File: UserInterface.h
* Description: Declaration of the UserInterface class and related functions.
* Author: Trenser
* Created: 02-Apr-2026
*/
#pragma once
#include <utility>
#include "AdminMenu.h"
#include "EmployeeMenu.h"
#include "FinanceExecutiveMenu.h"
#include "HRManagerMenu.h"
#include "ITExecutiveMenu.h"
#include "TalentExecutiveMenu.h"
#include "TeamExecutiveMenu.h"
#include "TeamLeadMenu.h"
#include "ZenvyController.h"
class UserInterface
{
private:
ZenvyController* m_controller;
EmployeeMenu* m_employeeMenu;
AdminMenu* m_adminMenu;
FinanceExecutiveMenu* m_financeExecutiveMenu;
HRManagerMenu* m_hrManagerMenu;
ITExecutiveMenu* m_itExecutiveMenu;
TalentExecutiveMenu* m_talentExecutiveMenu;
TeamExecutiveMenu* m_teamExecutiveMenu;
TeamLeadMenu* m_teamLeadMenu;
public:
UserInterface() :
m_controller(new ZenvyController()),
m_employeeMenu(new EmployeeMenu()),
m_adminMenu(new AdminMenu()),
m_financeExecutiveMenu(new FinanceExecutiveMenu()),
m_hrManagerMenu(new HRManagerMenu()),
m_itExecutiveMenu(new ITExecutiveMenu()),
m_talentExecutiveMenu(new TalentExecutiveMenu()),
m_teamExecutiveMenu(new TeamExecutiveMenu()),
m_teamLeadMenu(new TeamLeadMenu()) {};
void run();
bool handleOperation(int choice);
void login();
~UserInterface();
};