You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Code/Editor/LevelIndependentFileMan.h

36 lines
989 B
C++

/*
* Copyright (c) Contributors to the Open 3D Engine Project. For complete copyright and license terms please see the LICENSE at the root of this distribution.
*
* SPDX-License-Identifier: Apache-2.0 OR MIT
*
*/
#ifndef CRYINCLUDE_EDITOR_LEVELINDEPENDENTFILEMAN_H
#define CRYINCLUDE_EDITOR_LEVELINDEPENDENTFILEMAN_H
#pragma once
struct ILevelIndependentFileModule
{
// this function should prompt some message box if changed files need to be saved
// if return false, editor will not continue with current action (e.g close the editor)
virtual bool PromptChanges() = 0;
};
class CLevelIndependentFileMan
{
public:
CLevelIndependentFileMan();
~CLevelIndependentFileMan();
bool PromptChangedFiles();
void RegisterModule(ILevelIndependentFileModule* pModule);
void UnregisterModule(ILevelIndependentFileModule* pModule);
private:
std::vector<ILevelIndependentFileModule* > m_Modules;
};
#endif // CRYINCLUDE_EDITOR_LEVELINDEPENDENTFILEMAN_H