Shinya Kitaoka 810553
#pragma once
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifdef MACOSX
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#include "tipcmsg.h"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//  Forward declarations
Toshihiro Shimizu 890ddd
namespace tipc
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
class Server;
Toshihiro Shimizu 890ddd
}
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
using namespace tipc;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
namespace font_io
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
void addParsers(tipc::Server *srv);
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
//    Initialization messages
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class LoadFontNamesParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax : $FNTloadFontNames
Toshihiro Shimizu 890ddd
	//Reply: ok | err
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTloadFontNames"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class GetAllFamiliesParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax : $FNTgetAllFamilies
Toshihiro Shimizu 890ddd
	//Reply: ok <families vector=""> | err</families>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTgetAllFamilies"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class GetAllTypefacesParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax : $FNTgetAllTypefaces
Toshihiro Shimizu 890ddd
	//Reply: ok <typefaces vector=""> | err</typefaces>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTgetAllTypefaces"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
//    Setter messages
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class SetFamilyParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTsetFamily <family></family>
Toshihiro Shimizu 890ddd
	//Reply: ok | err
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTsetFamily"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class SetTypefaceParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTsetTypeface <typeface></typeface>
Toshihiro Shimizu 890ddd
	//Reply: ok <ascender> <descender> | err</descender></ascender>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTsetTypeface"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class SetSizeParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTsetSize <size></size>
Toshihiro Shimizu 890ddd
	//Reply: ok <ascender> <descender> | err</descender></ascender>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTsetSize"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
//    Getter messages
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class GetCurrentFamilyParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTgetCurrentFamily
Toshihiro Shimizu 890ddd
	//Reply: ok <family name=""> | err</family>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTgetCurrentFamily"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class GetCurrentTypefaceParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTgetCurrentTypeface
Toshihiro Shimizu 890ddd
	//Reply: ok <typeface name=""> | err</typeface>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTgetCurrentTypeface"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class GetDistanceParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTgetDistance <firstchar> <secondchar></secondchar></firstchar>
Toshihiro Shimizu 890ddd
	//Reply: ok <x> <y> | err</y></x>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTgetDistance"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
//    Draw messages
Toshihiro Shimizu 890ddd
//************************************************************************************
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class DrawCharVIParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTdrawCharVI <char> <nextchar></nextchar></char>
Toshihiro Shimizu 890ddd
	//Reply: ok <x> <y> <strokes vector=""> | err</strokes></y></x>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTdrawCharVI"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class DrawCharGRParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTdrawCharGR <shmem-id> <char> <nextchar></nextchar></char></shmem-id>
Toshihiro Shimizu 890ddd
	//Reply: ok <lx> <ly> <x> <y> | err</y></x></ly></lx>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTdrawCharGR"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//------------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class DrawCharCMParser : public tipc::MessageParser
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	//Syntax: $FNTdrawCharCM <ink> <shmem-id> <char> <nextchar></nextchar></char></shmem-id></ink>
Toshihiro Shimizu 890ddd
	//Reply: ok <lx> <ly> <x> <y> | err</y></x></ly></lx>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	QString header() const { return "$FNTdrawCharCM"; }
Toshihiro Shimizu 890ddd
	void operator()(Message &stream);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
} //namespace tlevelwriter_mov
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#endif