Commit cb1bfddc authored by Oleg Korshul's avatar Oleg Korshul

docbuilder new scheme (extension in core-ext)

parent 615be05d
...@@ -33,7 +33,7 @@ __interface IASCDocBuilder : IDispatch ...@@ -33,7 +33,7 @@ __interface IASCDocBuilder : IDispatch
[id(105)] HRESULT ExecuteCommand([in] BSTR command, [out, retval] VARIANT_BOOL* result); [id(105)] HRESULT ExecuteCommand([in] BSTR command, [out, retval] VARIANT_BOOL* result);
[id(106)] HRESULT Run([in] BSTR path, [out, retval] VARIANT_BOOL* result); [id(106)] HRESULT Run([in] BSTR path, [out, retval] VARIANT_BOOL* result);
[id(107)] HRESULT RunText([in] BSTR commands, [out, retval] VARIANT_BOOL* result); [id(107)] HRESULT RunText([in] BSTR commands, [out, retval] VARIANT_BOOL* result);
[id(108)] HRESULT SetProperty([in] BSTR sproperty); [id(108)] HRESULT SetProperty([in] BSTR key, [in] BSTR value);
[id(201)] HRESULT Initialize(void); [id(201)] HRESULT Initialize(void);
[id(202)] HRESULT Dispose(void); [id(202)] HRESULT Dispose(void);
...@@ -66,7 +66,7 @@ public: ...@@ -66,7 +66,7 @@ public:
if (NULL != m_pBuilder) if (NULL != m_pBuilder)
delete m_pBuilder; delete m_pBuilder;
m_pBuilder = new NSDoctRenderer::CDocBuilder((VARIANT_TRUE == checkFonts) ? true : false); m_pBuilder = new NSDoctRenderer::CDocBuilder();
return S_OK; return S_OK;
} }
STDMETHOD(OpenFile)(BSTR path, BSTR params, VARIANT_BOOL* result) STDMETHOD(OpenFile)(BSTR path, BSTR params, VARIANT_BOOL* result)
...@@ -138,14 +138,12 @@ public: ...@@ -138,14 +138,12 @@ public:
*result = bRet ? VARIANT_TRUE : VARIANT_FALSE; *result = bRet ? VARIANT_TRUE : VARIANT_FALSE;
return S_OK; return S_OK;
} }
STDMETHOD(SetProperty)(BSTR sproperty) STDMETHOD(SetProperty)(BSTR key, BSTR value)
{ {
if (NULL == m_pBuilder) if (NULL == m_pBuilder)
return S_FALSE; return S_FALSE;
std::wstring sData(sproperty); m_pBuilder->SetPropertyW(key, value);
std::string sDataA = U_TO_UTF8(sData);
m_pBuilder->SetProperty(sDataA.c_str());
return S_OK; return S_OK;
} }
......
This diff is collapsed.
...@@ -9,7 +9,7 @@ namespace NSDoctRenderer ...@@ -9,7 +9,7 @@ namespace NSDoctRenderer
class Q_DECL_EXPORT CDocBuilder class Q_DECL_EXPORT CDocBuilder
{ {
public: public:
CDocBuilder(bool bIsCheckSystemFonts); CDocBuilder();
~CDocBuilder(); ~CDocBuilder();
public: public:
...@@ -25,7 +25,8 @@ namespace NSDoctRenderer ...@@ -25,7 +25,8 @@ namespace NSDoctRenderer
bool RunTextW(const wchar_t* commands); bool RunTextW(const wchar_t* commands);
bool RunTextA(const char* commands); bool RunTextA(const char* commands);
void SetProperty(const char* param); void SetProperty(const char* param, const wchar_t* value);
void SetPropertyW(const wchar_t* param, const wchar_t* value);
public: public:
static void Initialize(); static void Initialize();
......
...@@ -23,9 +23,9 @@ namespace docbuilder_net ...@@ -23,9 +23,9 @@ namespace docbuilder_net
public: public:
NSDoctRenderer::CDocBuilder* m_pBuilder; NSDoctRenderer::CDocBuilder* m_pBuilder;
CDocBuilder_Private(bool bIsCheckSystemFonts) CDocBuilder_Private()
{ {
m_pBuilder = new NSDoctRenderer::CDocBuilder(bIsCheckSystemFonts); m_pBuilder = new NSDoctRenderer::CDocBuilder();
} }
~CDocBuilder_Private() ~CDocBuilder_Private()
{ {
...@@ -34,9 +34,9 @@ namespace docbuilder_net ...@@ -34,9 +34,9 @@ namespace docbuilder_net
}; };
CDocBuilder::CDocBuilder(bool bIsCheckSystemFonts) CDocBuilder::CDocBuilder()
{ {
m_pInternal = gcnew CDocBuilder_Private(bIsCheckSystemFonts); m_pInternal = gcnew CDocBuilder_Private();
} }
CDocBuilder::~CDocBuilder() CDocBuilder::~CDocBuilder()
{ {
...@@ -78,6 +78,11 @@ namespace docbuilder_net ...@@ -78,6 +78,11 @@ namespace docbuilder_net
return m_pInternal->m_pBuilder->RunTextW(StringToStdString(text)); return m_pInternal->m_pBuilder->RunTextW(StringToStdString(text));
} }
void CDocBuilder::SetProperty(String^ key, String^ value)
{
m_pInternal->m_pBuilder->SetPropertyW(StringToStdString(key), StringToStdString(value));
}
void CDocBuilder::Initialize() void CDocBuilder::Initialize()
{ {
NSDoctRenderer::CDocBuilder::Initialize(); NSDoctRenderer::CDocBuilder::Initialize();
......
...@@ -10,7 +10,7 @@ namespace docbuilder_net ...@@ -10,7 +10,7 @@ namespace docbuilder_net
public ref class CDocBuilder public ref class CDocBuilder
{ {
public: public:
CDocBuilder(bool bIsCheckSystemFonts); CDocBuilder();
~CDocBuilder(); ~CDocBuilder();
bool OpenFile(String^ path, String^ params); bool OpenFile(String^ path, String^ params);
...@@ -19,6 +19,7 @@ namespace docbuilder_net ...@@ -19,6 +19,7 @@ namespace docbuilder_net
bool SaveFile(int type, String^ path); bool SaveFile(int type, String^ path);
void CloseFile(); void CloseFile();
bool ExecuteCommand(String^ command); bool ExecuteCommand(String^ command);
void SetProperty(String^ key, String^ value);
bool Run(String^ path); bool Run(String^ path);
bool RunText(String^ text_commands); bool RunText(String^ text_commands);
......
This diff is collapsed.
...@@ -185,6 +185,7 @@ SOURCES += \ ...@@ -185,6 +185,7 @@ SOURCES += \
HEADERS += doctrenderer.h \ HEADERS += doctrenderer.h \
docbuilder.h \ docbuilder.h \
docbuilder_p.h \
memorystream.h \ memorystream.h \
nativecontrol.h nativecontrol.h
......
...@@ -77,7 +77,7 @@ TARGET = docbuilder$$TARGET_PLATFORM ...@@ -77,7 +77,7 @@ TARGET = docbuilder$$TARGET_PLATFORM
################################################ ################################################
LIBS += -L$$DESTINATION_SDK_PATH_DOCTRENDERER -ldoctrenderer LIBS += -L$$DESTINATION_SDK_PATH_DOCTRENDERER/docbuilder -ldoctrenderer
linux-g++ { linux-g++ {
LIBS += -ldl LIBS += -ldl
......
...@@ -55,7 +55,10 @@ int main(int argc, char *argv[]) ...@@ -55,7 +55,10 @@ int main(int argc, char *argv[])
if (true) if (true)
{ {
NSDoctRenderer::CDocBuilder oBuilder(true); NSDoctRenderer::CDocBuilder oBuilder;
oBuilder.SetProperty("--check-fonts", L"");
//oBuilder.SetProperty("--use-doctrenderer-scheme", L"");
//oBuilder.SetProperty("--work-directory", L"builder");
for (int i = 0; i < (argc - 1); ++i) for (int i = 0; i < (argc - 1); ++i)
{ {
...@@ -65,7 +68,7 @@ int main(int argc, char *argv[]) ...@@ -65,7 +68,7 @@ int main(int argc, char *argv[])
#else #else
std::string sParam(argv[i]); std::string sParam(argv[i]);
#endif #endif
oBuilder.SetProperty(sParam.c_str()); oBuilder.SetProperty(sParam.c_str(), L"");
} }
oBuilder.Run(sBuildFile.c_str()); oBuilder.Run(sBuildFile.c_str());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment