view edtlobj.cpp @ 382:371edff7dc3d

Fix extern variables to match what are actually declared in dmengine.c
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 17 Oct 2012 18:15:53 +0300
parents 05e85401480a
children 9993873ff655
line wrap: on
line source

//
// Map Mask Designer -- Map object and map region classes
// (C) Copyright 2012 Matti 'ccr' Hämäläinen <ccr@tnsp.org>
//
#include "edtlobj.h"
#include "dmres.h"


TimelineObject::TimelineObject()
{
    tl = NULL;
    changed = 0;
}


TimelineObject::TimelineObject(TimelineObject *obj)
{
    changed = 0;
    filename = obj->filename;
}


TimelineObject::~TimelineObject()
{
    dmFreeTimeline(tl);
}


int TimelineObject::load(QString mfilename)
{
    QByteArray fnba = mfilename.toUtf8();
    DMResource *res;
    if ((res = dmf_create_stdio(fnba.data(), "rb")) == NULL)
        return DMERR_FOPEN;

    int err = dmLoadTimeline(res, &tl);

    dmf_close(res);
    filename = mfilename;
    return err;
}


int TimelineObject::save(QString mfilename)
{
    QByteArray fnba = mfilename.toUtf8();
    DMResource *res;
    if ((res = dmf_create_stdio(fnba.data(), "wb")) == NULL)
        return DMERR_FOPEN;

    int err = dmSaveTimeline(res, tl);

    dmf_close(res);
    return err;
}