Files
GTASource/game/frontend/page_deck/uiPageLink.h
expvintl 419f2e4752 init
2025-02-23 17:40:52 +08:00

52 lines
1.2 KiB
C++

/////////////////////////////////////////////////////////////////////////////////
//
// FILE : uiPageLink.h
// PURPOSE : Info of how a page is linked when transitioning
//
// AUTHOR : james.strain
// STARTED : December 2020
//
/////////////////////////////////////////////////////////////////////////////////
#ifndef UI_PAGE_LINK_H
#define UI_PAGE_LINK_H
#include "frontend/page_deck/uiPageConfig.h"
#if UI_PAGE_DECK_ENABLED
// framework
#include "atl/array.h"
// rage
#include "parser/macros.h"
// game
#include "frontend/page_deck/uiPageInfo.h"
class CPageBase;
class uiPageLink final
{
public:
uiPageLink() { }
explicit uiPageLink( uiPageId const pageId );
~uiPageLink() { }
bool IsValid() const { return !m_transitionSteps.empty(); }
uiPageInfo const& GetTarget() const;
uiPageConfig::PageInfoCollection const& GetTransitionSteps() const { return m_transitionSteps; }
bool operator ==( const class uiPageLink& op ) const;
private:
// TODO_UI: Consider merging fwuiHashPath support from RDR to traverse a tree of page hashes
uiPageConfig::PageInfoCollection m_transitionSteps;
PAR_SIMPLE_PARSABLE;
private:
};
#endif // UI_PAGE_DECK_ENABLED
#endif // UI_PAGE_LINK_H