// MLRExporter.h: interface for the MLRExporter class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MLREXPORTER_H__EEBAD983_7025_11D3_8B36_00902712C9AE__INCLUDED_)
#define AFX_MLREXPORTER_H__EEBAD983_7025_11D3_8B36_00902712C9AE__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "BaseGeoExport.h"


class MLRExporter :public BaseGeoExporter  
{
public:
    MLRExporter(const char *str):BaseGeoExporter(str) {}
    MLRExporter::~MLRExporter() {}
    int	DoExportWrap(const TCHAR *name,ExpInterface *ei,Interface *i, BOOL suppressPrompts=FALSE);

private:
    int	ExportShape(MAXProxies::MAXScene *scene, 
        Interface *i,
        const CString& path,
        const CString& name,
        BOOL suppressPrompts);
};

class MLRExp : public SceneExport  
{
protected:
    MLRExporter m_Expt;

public:
    MLRExp() : m_Expt("") {}
    ~MLRExp() {}
    int ExtCount() { return 1; }
    const TCHAR * Ext(int n) {
        switch(n) {
        case 0:
            // This cause a static string buffer overwrite
            // return GetString(IDS_EXTENSION1);
            return _T("MLR");
        }
        return _T("");
    }
    const TCHAR * LongDesc() { return GetString(IDS_LONGDESC); }
    const TCHAR * ShortDesc() { return _T("MW4 MLR"); }
    const TCHAR * AuthorName() { return _T("Thomas Steinke"); }
    const TCHAR * CopyrightMessage() { return GetString(IDS_COPYRIGHT); }
    const TCHAR * OtherMessage1() {	return _T(""); }
    const TCHAR * OtherMessage2() {	return _T(""); }
    unsigned int Version() { return 100; }
    void ShowAbout(HWND hWnd) {
	    CAbout dlg;
	    dlg.DoModal();
    }

	int	DoExport(const TCHAR *name,ExpInterface *ei,Interface *i, BOOL suppressPrompts=FALSE);
};

#endif // !defined(AFX_MLREXPORTER_H__EEBAD983_7025_11D3_8B36_00902712C9AE__INCLUDED_)
