diff options
author | Paul Gilbert | 2019-04-28 14:32:49 +1000 |
---|---|---|
committer | Paul Gilbert | 2019-04-28 14:32:49 +1000 |
commit | 401b010ef3f488601244129b93a6ea3bf5bc3fb1 (patch) | |
tree | 900462a107420f7d92bf4571086bce570f3d1a9c /engines/glk/streams.cpp | |
parent | c72cde3149514dddb8f76f9e717a0fb03dcb8332 (diff) | |
download | scummvm-rg350-401b010ef3f488601244129b93a6ea3bf5bc3fb1.tar.gz scummvm-rg350-401b010ef3f488601244129b93a6ea3bf5bc3fb1.tar.bz2 scummvm-rg350-401b010ef3f488601244129b93a6ea3bf5bc3fb1.zip |
GLK: Implementing more gli object registration
Diffstat (limited to 'engines/glk/streams.cpp')
-rw-r--r-- | engines/glk/streams.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/glk/streams.cpp b/engines/glk/streams.cpp index 84904f9a70..8b1a11d354 100644 --- a/engines/glk/streams.cpp +++ b/engines/glk/streams.cpp @@ -1575,6 +1575,18 @@ frefid_t Streams::iterate(frefid_t fref, uint *rock) { /*--------------------------------------------------------------------------*/ +FileReference::FileReference(int slot, const Common::String &desc, uint usage, uint rock) : + _rock(rock), _slotNumber(slot), _description(desc), + _fileType((FileUsage)(usage & fileusage_TypeMask)), _textMode(usage & fileusage_TextMode) { + if (g_vm->gli_register_obj) + _dispRock = (*g_vm->gli_register_obj)(this, gidisp_Class_Fileref); +} + +FileReference::~FileReference() { + if (g_vm->gli_unregister_obj) + (*g_vm->gli_unregister_obj)(this, gidisp_Class_Fileref, _dispRock); +} + const Common::String FileReference::getSaveName() const { assert(_slotNumber != -1); return g_vm->getSaveName(_slotNumber); |