40 lines
894 B
C
40 lines
894 B
C
![]() |
#ifndef FILEMANAGER_H_
|
||
|
#define FILEMANAGER_H_
|
||
|
|
||
|
#include <gtk/gtk.h>
|
||
|
#include <libxml/xmlwriter.h>
|
||
|
#include "Triangle.h"
|
||
|
|
||
|
|
||
|
class Window;
|
||
|
|
||
|
|
||
|
class FileManager
|
||
|
{
|
||
|
private:
|
||
|
Window *window;
|
||
|
|
||
|
gchar *filename;
|
||
|
bool dirty;
|
||
|
|
||
|
// prevent shallow copy
|
||
|
FileManager(const FileManager &f);
|
||
|
const FileManager& operator=(const FileManager &f);
|
||
|
|
||
|
bool writeTriangle(xmlTextWriterPtr writer, const Triangle &triangle, float height);
|
||
|
bool writeSide(xmlTextWriterPtr writer, const Vertex &v1, const Vertex &v2, float height);
|
||
|
bool writeVertex(xmlTextWriterPtr writer, float x, float y, float z);
|
||
|
bool writeTexCoords(xmlTextWriterPtr writer, float s, float t);
|
||
|
|
||
|
public:
|
||
|
FileManager(Window *window);
|
||
|
virtual ~FileManager();
|
||
|
|
||
|
bool save(GtkWindow *parent);
|
||
|
bool saveAs(GtkWindow *parent);
|
||
|
|
||
|
bool write();
|
||
|
};
|
||
|
|
||
|
#endif /*FILEMANAGER_H_*/
|