mirror of
https://github.com/ONLYOFFICE/desktop-sdk.git
synced 2026-03-31 10:23:12 +08:00
1686 lines
34 KiB
C++
1686 lines
34 KiB
C++
/*
|
|
* (c) Copyright Ascensio System SIA 2010-2019
|
|
*
|
|
* This program is a free software product. You can redistribute it and/or
|
|
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
|
* version 3 as published by the Free Software Foundation. In accordance with
|
|
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
|
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
|
* of any third-party rights.
|
|
*
|
|
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
|
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
|
*
|
|
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
|
|
* street, Riga, Latvia, EU, LV-1050.
|
|
*
|
|
* The interactive user interfaces in modified source and object code versions
|
|
* of the Program must display Appropriate Legal Notices, as required under
|
|
* Section 5 of the GNU AGPL version 3.
|
|
*
|
|
* Pursuant to Section 7(b) of the License you must retain the original Product
|
|
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
|
* grant you any rights under trademark law for use of our trademarks.
|
|
*
|
|
* All the Product's GUI elements, including illustrations and icon sets, as
|
|
* well as technical writing content are licensed under the terms of the
|
|
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
|
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
|
*
|
|
*/
|
|
|
|
#ifndef APPLICATION_MANAGER_EVENTS_H
|
|
#define APPLICATION_MANAGER_EVENTS_H
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_CREATETAB 1001
|
|
#define ASC_MENU_EVENT_TYPE_CEF_TABEDITORTYPE 1002
|
|
#define ASC_MENU_EVENT_TYPE_CEF_SPELLCHECK 1003
|
|
#define ASC_MENU_EVENT_TYPE_CEF_KEYBOARDLAYOUT 1004
|
|
#define ASC_MENU_EVENT_TYPE_CEF_CONTROL_ID 1005
|
|
#define ASC_MENU_EVENT_TYPE_CEF_SYNC_COMMAND 1006
|
|
#define ASC_MENU_EVENT_TYPE_CEF_CLOSE 1007
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DESTROY 1008
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DOWNLOAD 1009
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DOWNLOAD_START 1010
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DOWNLOAD_END 1011
|
|
#define ASC_MENU_EVENT_TYPE_CEF_MODIFY_CHANGED 1012
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DOCUMENT_NAME 1013
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONLOGOUT 1014
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONOPENLINK 1015
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DESTROY_SAFE 1016
|
|
#define ASC_MENU_EVENT_TYPE_CEF_CHECK_KEYBOARD 1017
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DRAG_ENTER 1018
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DRAG_LEAVE 1019
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DROP 1020
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONCLOSE 2001
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONBEFORECLOSE 2002
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_SAVE 3001
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONSAVE 3002
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONKEYBOARDDOWN 3100
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONFULLSCREENENTER 3101
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONFULLSCREENLEAVE 3102
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_JS_MESSAGE 4001
|
|
#define ASC_MENU_EVENT_TYPE_CEF_PORTAL_OPEN 4002
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONBEFORE_PRINT_START 5001
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONBEFORE_PRINT_PROGRESS 5002
|
|
#define ASC_MENU_EVENT_TYPE_CEF_ONBEFORE_PRINT_END 5003
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_PRINT_START 5011
|
|
#define ASC_MENU_EVENT_TYPE_CEF_PRINT_PAGE 5012
|
|
#define ASC_MENU_EVENT_TYPE_CEF_PRINT_END 5013
|
|
#define ASC_MENU_EVENT_TYPE_CEF_PRINT_PAGE_CHECK 5014
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_EXECUTE_COMMAND 5015
|
|
#define ASC_MENU_EVENT_TYPE_CEF_EXECUTE_COMMAND_JS 5016
|
|
#define ASC_MENU_EVENT_TYPE_CEF_EDITOR_EXECUTE_COMMAND 5017
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_SCRIPT_EDITOR_VERSION 6001
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_SAVEFILEDIALOG 7001
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_OPEN 7002
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_RECENTS 7003
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_RECENTOPEN 7004
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_RECOVERS 7005
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_RECOVEROPEN 7006
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_CREATE 7007
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_SAVE 7008
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_SAVE_PATH 7009
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_ADDIMAGE 7010
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILES_OPEN 7011
|
|
|
|
#define ASC_MENU_EVENT_TYPE_DOCUMENTEDITORS_ADD_PLUGIN 7013
|
|
#define ASC_MENU_EVENT_TYPE_DOCUMENTEDITORS_VIEW_DELAY 7014
|
|
|
|
#define ASC_MENU_EVENT_TYPE_DOCUMENTEDITORS_OPENFILENAME_DIALOG 7015
|
|
|
|
#define ASC_MENU_EVENT_TYPE_DOCUMENTEDITORS_SAVE_YES_NO 7016
|
|
|
|
#define ASC_MENU_EVENT_TYPE_REPORTER_MESSAGE_TO 7017
|
|
#define ASC_MENU_EVENT_TYPE_REPORTER_MESSAGE_FROM 7018
|
|
#define ASC_MENU_EVENT_TYPE_REPORTER_CREATE 7019
|
|
#define ASC_MENU_EVENT_TYPE_REPORTER_END 7020
|
|
|
|
#define ASC_MENU_EVENT_TYPE_SSO_TOKEN 7030
|
|
|
|
#define ASC_MENU_EVENT_TYPE_UI_THREAD_MESSAGE 7031
|
|
#define ASC_MENU_EVENT_TYPE_PAGE_LOAD_START 7032
|
|
#define ASC_MENU_EVENT_TYPE_PAGE_LOAD_END 7033
|
|
|
|
#define ASC_MENU_EVENT_TYPE_PAGE_SELECT_OPENSSL_CERTIFICATE 7034
|
|
|
|
#define ASC_MENU_EVENT_TYPE_BINARY_FROM_RENDERER 7035
|
|
|
|
#define ASC_MENU_EVENT_TYPE_DOCUMENTEDITORS_OPENDIRECTORY_DIALOG 7036
|
|
|
|
#define ASC_MENU_EVENT_TYPE_PAGE_GOT_FOCUS 7050
|
|
#define ASC_MENU_EVENT_TYPE_PAGE_CRASH 7051
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_DESTROYWINDOW 8000
|
|
|
|
#define ASC_MENU_EVENT_TYPE_ENCRYPTED_CLOUD_BUILD 8001
|
|
#define ASC_MENU_EVENT_TYPE_ENCRYPTED_CLOUD_BUILD_END 8002
|
|
#define ASC_MENU_EVENT_TYPE_ENCRYPTED_CLOUD_BUILD_END_ERROR 8003
|
|
|
|
#define ASC_MENU_EVENT_TYPE_EXECUTE_JS_CODE 8004
|
|
|
|
#define ASC_MENU_EVENT_TYPE_ENCRYPT_PERSONAL_KEY_IMPORT 8005
|
|
#define ASC_MENU_EVENT_TYPE_ENCRYPT_PERSONAL_KEY_EXPORT 8006
|
|
|
|
#define ASC_MENU_EVENT_TYPE_SYSTEM_EXTERNAL_PLUGINS 8007
|
|
#define ASC_MENU_EVENT_TYPE_SYSTEM_EXTERNAL_PROCESS 8008
|
|
|
|
#define ASC_MENU_EVENT_TYPE_SYSTEM_EXTERNAL_MEDIA_START 8009
|
|
#define ASC_MENU_EVENT_TYPE_SYSTEM_EXTERNAL_MEDIA_END 8010
|
|
|
|
#define ASC_MENU_EVENT_TYPE_DOCUMENTEDITORS_SAVEFILENAME_DIALOG 8011
|
|
|
|
#define ASC_MENU_EVENT_TYPE_ON_NEED_UPDATE_APP 8012
|
|
|
|
#define ASC_MENU_EVENT_TYPE_SYSTEM_EXTERNAL_MEDIA_PLAYER_COMMAND 8013
|
|
|
|
#define ASC_MENU_EVENT_TYPE_WINDOW_SHOW_CERTIFICATE 9001
|
|
|
|
#define ASC_MENU_EVENT_TYPE_WINDOWS_MESSAGE_USER_COUNT 10
|
|
|
|
#define ASC_MENU_EVENT_TYPE_CEF_LOCALFILE_TEMPLATES 9010
|
|
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class IMenuEventDataBase
|
|
{
|
|
protected:
|
|
unsigned int m_lRef;
|
|
|
|
public:
|
|
IMenuEventDataBase()
|
|
{
|
|
m_lRef = 1;
|
|
}
|
|
|
|
virtual ~IMenuEventDataBase()
|
|
{
|
|
}
|
|
|
|
virtual unsigned int AddRef()
|
|
{
|
|
++m_lRef;
|
|
return m_lRef;
|
|
}
|
|
virtual unsigned int Release()
|
|
{
|
|
unsigned int ret = --m_lRef;
|
|
if (0 == m_lRef)
|
|
delete this;
|
|
return ret;
|
|
}
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
#define LINK_PROPERTY_INT(memberName) \
|
|
inline int get_##memberName() \
|
|
{ \
|
|
return m_n##memberName; \
|
|
} \
|
|
inline void put_##memberName(const int& newVal) \
|
|
{ \
|
|
m_n##memberName = newVal; \
|
|
}
|
|
#define LINK_PROPERTY_UINT(memberName) \
|
|
inline unsigned int get_##memberName() \
|
|
{ \
|
|
return m_n##memberName; \
|
|
} \
|
|
inline void put_##memberName(const unsigned int& newVal) \
|
|
{ \
|
|
m_n##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_DOUBLE(memberName) \
|
|
inline double get_##memberName() \
|
|
{ \
|
|
return m_d##memberName; \
|
|
} \
|
|
inline void put_##memberName(const double& newVal) \
|
|
{ \
|
|
m_d##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_BOOL(memberName) \
|
|
inline bool get_##memberName() \
|
|
{ \
|
|
return m_b##memberName; \
|
|
} \
|
|
inline void put_##memberName(const bool& newVal) \
|
|
{ \
|
|
m_b##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_BYTE(memberName) \
|
|
inline unsigned char get_##memberName() \
|
|
{ \
|
|
return m_n##memberName; \
|
|
} \
|
|
inline void put_##memberName(const unsigned char& newVal) \
|
|
{ \
|
|
m_n##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_STRING(memberName) \
|
|
inline std::wstring get_##memberName() \
|
|
{ \
|
|
return m_s##memberName; \
|
|
} \
|
|
inline void put_##memberName(const std::wstring& newVal) \
|
|
{ \
|
|
m_s##memberName = newVal; \
|
|
}
|
|
#define LINK_PROPERTY_STRINGA(memberName) \
|
|
inline std::string get_##memberName() \
|
|
{ \
|
|
return m_s##memberName; \
|
|
} \
|
|
inline void put_##memberName(const std::string& newVal) \
|
|
{ \
|
|
m_s##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_OBJECT(objectType, memberName) \
|
|
inline objectType& get_##memberName() \
|
|
{ \
|
|
return m_o##memberName; \
|
|
} \
|
|
inline void put_##memberName(const objectType& newVal) \
|
|
{ \
|
|
m_o##memberName = newVal; \
|
|
}
|
|
|
|
// JS
|
|
#define LINK_PROPERTY_INT_JS(memberName) \
|
|
inline js_wrapper<int>& get_##memberName() \
|
|
{ \
|
|
return m_n##memberName; \
|
|
} \
|
|
inline void put_##memberName(const int& newVal) \
|
|
{ \
|
|
m_n##memberName = newVal; \
|
|
} \
|
|
inline void put_##memberName(const js_wrapper<int>& newVal) \
|
|
{ \
|
|
m_n##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_DOUBLE_JS(memberName) \
|
|
inline js_wrapper<double>& get_##memberName() \
|
|
{ \
|
|
return m_d##memberName; \
|
|
} \
|
|
inline void put_##memberName(const double& newVal) \
|
|
{ \
|
|
m_d##memberName = newVal; \
|
|
} \
|
|
inline void put_##memberName(const js_wrapper<double>& newVal) \
|
|
{ \
|
|
m_d##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_BOOL_JS(memberName) \
|
|
inline js_wrapper<bool>& get_##memberName() \
|
|
{ \
|
|
return m_b##memberName; \
|
|
} \
|
|
inline void put_##memberName(const bool& newVal) \
|
|
{ \
|
|
m_b##memberName = newVal; \
|
|
} \
|
|
inline void put_##memberName(const js_wrapper<bool>& newVal) \
|
|
{ \
|
|
m_b##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_BYTE_JS(memberName) \
|
|
inline js_wrapper<unsigned char>& get_##memberName() \
|
|
{ \
|
|
return m_n##memberName; \
|
|
} \
|
|
inline void put_##memberName(const unsigned char& newVal) \
|
|
{ \
|
|
m_n##memberName = newVal; \
|
|
} \
|
|
inline void put_##memberName(const js_wrapper<unsigned char>& newVal) \
|
|
{ \
|
|
m_n##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_STRING_JS(memberName) \
|
|
inline js_wrapper<std::wstring>& get_##memberName() \
|
|
{ \
|
|
return m_s##memberName; \
|
|
} \
|
|
inline void put_##memberName(const std::wstring& newVal) \
|
|
{ \
|
|
m_s##memberName = newVal; \
|
|
} \
|
|
inline void put_##memberName(const js_wrapper<std::wstring>& newVal) \
|
|
{ \
|
|
m_s##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_STRINGA_JS(memberName) \
|
|
inline js_wrapper<std::string>& get_##memberName() \
|
|
{ \
|
|
return m_s##memberName; \
|
|
} \
|
|
inline void put_##memberName(const std::string& newVal) \
|
|
{ \
|
|
m_s##memberName = newVal; \
|
|
} \
|
|
inline void put_##memberName(const js_wrapper<std::string>& newVal) \
|
|
{ \
|
|
m_s##memberName = newVal; \
|
|
}
|
|
|
|
#define LINK_PROPERTY_OBJECT_JS(objectType, memberName) \
|
|
inline js_wrapper<objectType>& get_##memberName() \
|
|
{ \
|
|
return m_o##memberName; \
|
|
} \
|
|
inline void put_##memberName(const js_wrapper<objectType>& newVal) \
|
|
{ \
|
|
m_o##memberName = newVal; \
|
|
} \
|
|
inline void put_##memberName(objectType* newVal) \
|
|
{ \
|
|
m_o##memberName = newVal; \
|
|
}
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscMenuEvent : public IMenuEventDataBase
|
|
{
|
|
public:
|
|
int m_nType;
|
|
IMenuEventDataBase* m_pData;
|
|
|
|
public:
|
|
CAscMenuEvent(int nType = -1)
|
|
: m_nType(nType)
|
|
, m_pData(NULL)
|
|
{
|
|
}
|
|
virtual ~CAscMenuEvent()
|
|
{
|
|
if (NULL != m_pData)
|
|
m_pData->Release();
|
|
}
|
|
};
|
|
|
|
class CAscCefMenuEvent : public CAscMenuEvent
|
|
{
|
|
public:
|
|
int m_nSenderId;
|
|
|
|
public:
|
|
CAscCefMenuEvent(int nType = -1) : CAscMenuEvent(nType)
|
|
{
|
|
m_nSenderId = -1;
|
|
}
|
|
virtual ~CAscCefMenuEvent()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(SenderId)
|
|
};
|
|
|
|
class CAscCefMenuEventListener
|
|
{
|
|
public:
|
|
// memory release!!!
|
|
virtual void OnEvent(CAscCefMenuEvent* pEvent)
|
|
{
|
|
if (NULL != pEvent)
|
|
pEvent->Release();
|
|
}
|
|
virtual bool IsSupportEvent(int nEventType)
|
|
{
|
|
return true;
|
|
}
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscLocalRecentsAll : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sJSON;
|
|
int m_nId;
|
|
|
|
public:
|
|
|
|
CAscLocalRecentsAll()
|
|
{
|
|
m_nId = -1;
|
|
}
|
|
virtual ~CAscLocalRecentsAll()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(JSON)
|
|
LINK_PROPERTY_INT(Id)
|
|
};
|
|
|
|
class CAscLocalOpenFileRecent_Recover : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
bool m_bIsRecover;
|
|
std::wstring m_sPath;
|
|
bool m_bIsRemove;
|
|
|
|
public:
|
|
|
|
CAscLocalOpenFileRecent_Recover()
|
|
{
|
|
m_bIsRecover = false;
|
|
m_bIsRemove = false;
|
|
}
|
|
virtual ~CAscLocalOpenFileRecent_Recover()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_BOOL(IsRecover)
|
|
LINK_PROPERTY_BOOL(IsRemove)
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_STRING(Path)
|
|
};
|
|
|
|
class CAscLocalFileOpen : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sDirectory;
|
|
|
|
public:
|
|
|
|
CAscLocalFileOpen()
|
|
{
|
|
}
|
|
virtual ~CAscLocalFileOpen()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Directory)
|
|
};
|
|
|
|
class CAscLocalFileCreate : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nType;
|
|
|
|
public:
|
|
|
|
CAscLocalFileCreate()
|
|
{
|
|
}
|
|
virtual ~CAscLocalFileCreate()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Type)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscExecCommand : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sCommand;
|
|
std::wstring m_sParam;
|
|
|
|
public:
|
|
|
|
CAscExecCommand()
|
|
{
|
|
}
|
|
virtual ~CAscExecCommand()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Command)
|
|
LINK_PROPERTY_STRING(Param)
|
|
};
|
|
|
|
class CAscExecCommandJS : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sCommand;
|
|
std::wstring m_sParam;
|
|
std::wstring m_sFrameName;
|
|
|
|
public:
|
|
|
|
CAscExecCommandJS()
|
|
{
|
|
}
|
|
virtual ~CAscExecCommandJS()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Command)
|
|
LINK_PROPERTY_STRING(Param)
|
|
LINK_PROPERTY_STRING(FrameName)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscCreateTab : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sUrl;
|
|
std::wstring m_sName;
|
|
bool m_bActive;
|
|
int m_nIdEqual;
|
|
|
|
public:
|
|
CAscCreateTab()
|
|
{
|
|
m_bActive = true;
|
|
m_nIdEqual = -1;
|
|
}
|
|
virtual ~CAscCreateTab()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Url)
|
|
LINK_PROPERTY_BOOL(Active)
|
|
LINK_PROPERTY_INT(IdEqual)
|
|
LINK_PROPERTY_STRING(Name)
|
|
};
|
|
|
|
class CAscDownloadFileInfo : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sUrl;
|
|
std::wstring m_sFilePath;
|
|
|
|
int m_nId;
|
|
|
|
double m_dSpeed; // Kb/sec
|
|
int m_nPercent;
|
|
bool m_bIsComplete;
|
|
bool m_bIsCanceled;
|
|
|
|
unsigned int m_nIdDownload;
|
|
|
|
public:
|
|
CAscDownloadFileInfo()
|
|
{
|
|
m_nId = -1;
|
|
|
|
m_dSpeed = 0;
|
|
m_nPercent = 0;
|
|
m_bIsComplete = false;
|
|
m_bIsCanceled = false;
|
|
}
|
|
virtual ~CAscDownloadFileInfo()
|
|
{
|
|
}
|
|
CAscDownloadFileInfo* Copy()
|
|
{
|
|
CAscDownloadFileInfo* ret = new CAscDownloadFileInfo();
|
|
ret->m_sUrl = m_sUrl;
|
|
ret->m_sFilePath = m_sFilePath;
|
|
|
|
ret->m_nId = m_nId;
|
|
|
|
ret->m_dSpeed = m_dSpeed;
|
|
ret->m_nPercent = m_nPercent;
|
|
ret->m_bIsComplete = m_bIsComplete;
|
|
ret->m_bIsCanceled = m_bIsCanceled;
|
|
|
|
ret->m_nIdDownload = m_nIdDownload;
|
|
|
|
return ret;
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Url)
|
|
LINK_PROPERTY_STRING(FilePath)
|
|
LINK_PROPERTY_INT(Percent)
|
|
LINK_PROPERTY_BOOL(IsComplete)
|
|
LINK_PROPERTY_BOOL(IsCanceled)
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_DOUBLE(Speed)
|
|
LINK_PROPERTY_UINT(IdDownload)
|
|
};
|
|
|
|
class CAscOnOpenExternalLink : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sUrl;
|
|
int m_nId;
|
|
|
|
public:
|
|
CAscOnOpenExternalLink()
|
|
{
|
|
m_nId = -1;
|
|
}
|
|
virtual ~CAscOnOpenExternalLink()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Url)
|
|
LINK_PROPERTY_INT(Id)
|
|
};
|
|
|
|
class CAscTabEditorType : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
int m_nType;
|
|
|
|
public:
|
|
CAscTabEditorType()
|
|
{
|
|
}
|
|
virtual ~CAscTabEditorType()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_INT(Type)
|
|
};
|
|
|
|
class CAscSpellCheckType : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::string m_sResult;
|
|
int m_nEditorId;
|
|
long long m_nFrameId;
|
|
|
|
public:
|
|
CAscSpellCheckType()
|
|
{
|
|
m_nEditorId = 0;
|
|
m_nFrameId = 0;
|
|
}
|
|
virtual ~CAscSpellCheckType()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRINGA(Result)
|
|
LINK_PROPERTY_INT(EditorId)
|
|
|
|
inline long long get_FrameId()
|
|
{
|
|
return m_nFrameId;
|
|
}
|
|
inline void put_FrameId(const long long& newVal)
|
|
{
|
|
m_nFrameId = newVal;
|
|
}
|
|
};
|
|
|
|
class CAscKeyboardLayout : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nLanguage;
|
|
|
|
public:
|
|
CAscKeyboardLayout()
|
|
{
|
|
}
|
|
virtual ~CAscKeyboardLayout()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Language)
|
|
};
|
|
|
|
class CAscTypeId : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
|
|
public:
|
|
CAscTypeId()
|
|
{
|
|
}
|
|
virtual ~CAscTypeId()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
};
|
|
|
|
class CAscDocumentOnSaveData : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
bool m_bIsCancel;
|
|
|
|
public:
|
|
CAscDocumentOnSaveData()
|
|
{
|
|
m_bIsCancel = false;
|
|
}
|
|
virtual ~CAscDocumentOnSaveData()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_BOOL(IsCancel)
|
|
};
|
|
|
|
class CAscDocumentModifyChanged : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
bool m_bChanged;
|
|
|
|
public:
|
|
CAscDocumentModifyChanged()
|
|
{
|
|
}
|
|
virtual ~CAscDocumentModifyChanged()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_BOOL(Changed)
|
|
};
|
|
|
|
class CAscDocumentName : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sName;
|
|
std::wstring m_sPath;
|
|
std::wstring m_sUrl;
|
|
int m_nId;
|
|
|
|
public:
|
|
CAscDocumentName()
|
|
{
|
|
}
|
|
virtual ~CAscDocumentName()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Name)
|
|
LINK_PROPERTY_STRING(Path)
|
|
LINK_PROPERTY_STRING(Url)
|
|
LINK_PROPERTY_INT(Id)
|
|
};
|
|
|
|
class CAscJSMessage : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sName;
|
|
std::wstring m_sValue;
|
|
int m_nId;
|
|
|
|
public:
|
|
CAscJSMessage()
|
|
{
|
|
}
|
|
virtual ~CAscJSMessage()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Name)
|
|
LINK_PROPERTY_STRING(Value)
|
|
LINK_PROPERTY_INT(Id)
|
|
};
|
|
|
|
class CAscPrintProgress : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
int m_nProgress;
|
|
|
|
public:
|
|
CAscPrintProgress()
|
|
{
|
|
}
|
|
virtual ~CAscPrintProgress()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_INT(Progress)
|
|
};
|
|
|
|
class CAscPrintEnd : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
int m_nPagesCount;
|
|
int m_nCurrentPage;
|
|
std::wstring m_sOptions;
|
|
|
|
public:
|
|
CAscPrintEnd()
|
|
{
|
|
}
|
|
virtual ~CAscPrintEnd()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_INT(PagesCount)
|
|
LINK_PROPERTY_INT(CurrentPage)
|
|
LINK_PROPERTY_STRING(Options)
|
|
};
|
|
|
|
class CAscPrinterContextBase : public IMenuEventDataBase
|
|
{
|
|
public:
|
|
CAscPrinterContextBase() : IMenuEventDataBase() {}
|
|
virtual ~CAscPrinterContextBase() {}
|
|
|
|
virtual void GetLogicalDPI(int& nDpiX, int& nDpiY) = 0;
|
|
virtual void GetPhysicalRect(int& nX, int& nY, int& nW, int& nH) = 0;
|
|
virtual void GetPrintAreaSize(int& nW, int& nH) = 0;
|
|
virtual void BitBlt(unsigned char* pBGRA, const int& nRasterX, const int& nRasterY, const int& nRasterW, const int& nRasterH,
|
|
const double& x, const double& y, const double& w, const double& h, const double& dAngle) = 0;
|
|
|
|
virtual void* GetNativeRenderer() { return NULL; }
|
|
virtual void* GetNativeRendererUnsupportChecker() { return NULL; }
|
|
virtual void NewPage() {}
|
|
|
|
virtual void InitRenderer(void* pRenderer, void* pFontManager) {}
|
|
|
|
virtual void PrepareBitBlt(void* pRenderer, const int& nRasterX, const int& nRasterY, const int& nRasterW, const int& nRasterH,
|
|
const double& x, const double& y, const double& w, const double& h, const double& dAngle,
|
|
const double& tileScaleX, const double& tileScaleY) {}
|
|
|
|
virtual void SetPageOrientation(int nOrientaion) {}
|
|
|
|
virtual void SaveState() {}
|
|
virtual void RestoreState() {}
|
|
};
|
|
|
|
class CAscPrintPage : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
CAscPrinterContextBase* m_pContext;
|
|
int m_nPage;
|
|
bool m_bIsRotate;
|
|
|
|
public:
|
|
CAscPrintPage()
|
|
{
|
|
m_pContext = NULL;
|
|
m_nPage = 0;
|
|
}
|
|
virtual ~CAscPrintPage()
|
|
{
|
|
if (NULL != m_pContext)
|
|
m_pContext->Release();
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Page)
|
|
LINK_PROPERTY_BOOL(IsRotate)
|
|
|
|
inline CAscPrinterContextBase* get_Context()
|
|
{
|
|
return m_pContext;
|
|
}
|
|
inline void put_Context(CAscPrinterContextBase* pContext)
|
|
{
|
|
m_pContext = pContext;
|
|
}
|
|
};
|
|
|
|
class CAscEditorScript : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sUrl;
|
|
std::wstring m_sDestination;
|
|
int m_nId;
|
|
long long m_nFrameId;
|
|
|
|
public:
|
|
CAscEditorScript()
|
|
{
|
|
m_nId = -1;
|
|
m_nFrameId = -1;
|
|
}
|
|
virtual ~CAscEditorScript()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_STRING(Url)
|
|
LINK_PROPERTY_STRING(Destination)
|
|
|
|
inline long long get_FrameId()
|
|
{
|
|
return m_nFrameId;
|
|
}
|
|
inline void put_FrameId(const long long& newVal)
|
|
{
|
|
m_nFrameId = newVal;
|
|
}
|
|
};
|
|
|
|
class CAscEditorSaveQuestion : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
bool m_bValue;
|
|
|
|
public:
|
|
CAscEditorSaveQuestion()
|
|
{
|
|
m_nId = -1;
|
|
m_bValue = false;
|
|
}
|
|
virtual ~CAscEditorSaveQuestion()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_BOOL(Value)
|
|
LINK_PROPERTY_INT(Id)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscSaveDialog : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sFilePath;
|
|
int m_nId;
|
|
unsigned int m_nIdDownload;
|
|
|
|
public:
|
|
CAscSaveDialog()
|
|
{
|
|
m_nId = -1;
|
|
}
|
|
virtual ~CAscSaveDialog()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(FilePath)
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_UINT(IdDownload)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscKeyboardDown : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nKeyCode;
|
|
bool m_bIsCtrl;
|
|
bool m_bIsShift;
|
|
bool m_bIsAlt;
|
|
bool m_bIsCommandMac;
|
|
|
|
public:
|
|
CAscKeyboardDown()
|
|
{
|
|
m_nKeyCode = -1;
|
|
m_bIsCtrl = false;
|
|
m_bIsShift = false;
|
|
m_bIsAlt = false;
|
|
m_bIsCommandMac = false;
|
|
}
|
|
virtual ~CAscKeyboardDown()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(KeyCode)
|
|
LINK_PROPERTY_BOOL(IsCtrl)
|
|
LINK_PROPERTY_BOOL(IsShift)
|
|
LINK_PROPERTY_BOOL(IsAlt)
|
|
LINK_PROPERTY_BOOL(IsCommandMac)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscLocalSaveFileDialog : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
int m_nFileType;
|
|
std::wstring m_sPath;
|
|
std::vector<int> m_arSupportFormats;
|
|
|
|
public:
|
|
CAscLocalSaveFileDialog()
|
|
{
|
|
m_nId = -1;
|
|
m_nFileType = 0;
|
|
}
|
|
virtual ~CAscLocalSaveFileDialog()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_INT(FileType)
|
|
LINK_PROPERTY_STRING(Path)
|
|
|
|
std::vector<int>& get_SupportFormats()
|
|
{
|
|
return m_arSupportFormats;
|
|
}
|
|
};
|
|
|
|
class CAscLocalDragDropData : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nX;
|
|
int m_nY;
|
|
int m_nCursorX;
|
|
int m_nCursorY;
|
|
std::wstring m_sText;
|
|
std::wstring m_sHtml;
|
|
std::vector<std::wstring> m_arFiles;
|
|
|
|
public:
|
|
CAscLocalDragDropData()
|
|
{
|
|
m_nX = 0;
|
|
m_nY = 0;
|
|
m_nCursorX = 0;
|
|
m_nCursorY = 0;
|
|
m_sText = L"";
|
|
m_sHtml = L"";
|
|
}
|
|
virtual ~CAscLocalDragDropData()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(X)
|
|
LINK_PROPERTY_INT(Y)
|
|
LINK_PROPERTY_INT(CursorX)
|
|
LINK_PROPERTY_INT(CursorY)
|
|
LINK_PROPERTY_STRING(Text)
|
|
LINK_PROPERTY_STRING(Html)
|
|
|
|
void add_File(const std::wstring& sPath)
|
|
{
|
|
m_arFiles.push_back(sPath);
|
|
}
|
|
|
|
std::vector<std::wstring>& get_Files()
|
|
{
|
|
return m_arFiles;
|
|
}
|
|
};
|
|
|
|
class CAscLocalOpenFileDialog : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
std::wstring m_sPath;
|
|
std::wstring m_sFilter;
|
|
|
|
bool m_bIsMultiselect;
|
|
std::vector<std::wstring> m_arPaths;
|
|
|
|
public:
|
|
CAscLocalOpenFileDialog()
|
|
{
|
|
m_nId = -1;
|
|
m_bIsMultiselect = false;
|
|
}
|
|
virtual ~CAscLocalOpenFileDialog()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_STRING(Path)
|
|
LINK_PROPERTY_STRING(Filter)
|
|
|
|
LINK_PROPERTY_BOOL(IsMultiselect)
|
|
|
|
std::vector<std::wstring>& get_Files()
|
|
{
|
|
return m_arPaths;
|
|
}
|
|
};
|
|
|
|
class CAscLocalOpenDirectoryDialog : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sPath;
|
|
|
|
public:
|
|
CAscLocalOpenDirectoryDialog()
|
|
{
|
|
}
|
|
virtual ~CAscLocalOpenDirectoryDialog()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Path)
|
|
};
|
|
|
|
class CAscLocalSaveFileNameDialog : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nId;
|
|
std::wstring m_sPath;
|
|
std::wstring m_sFilter;
|
|
|
|
public:
|
|
CAscLocalSaveFileNameDialog()
|
|
{
|
|
m_nId = -1;
|
|
}
|
|
virtual ~CAscLocalSaveFileNameDialog()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Id)
|
|
LINK_PROPERTY_STRING(Path)
|
|
LINK_PROPERTY_STRING(Filter)
|
|
};
|
|
|
|
class CAscLocalOpenFiles : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::vector<std::wstring> m_arFiles;
|
|
|
|
public:
|
|
CAscLocalOpenFiles()
|
|
{
|
|
}
|
|
virtual ~CAscLocalOpenFiles()
|
|
{
|
|
}
|
|
|
|
std::vector<std::wstring>& get_Files()
|
|
{
|
|
return m_arFiles;
|
|
}
|
|
};
|
|
|
|
class CAscEditorExecuteCommand : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sCommand;
|
|
std::wstring m_sParams;
|
|
|
|
public:
|
|
CAscEditorExecuteCommand()
|
|
{
|
|
}
|
|
virtual ~CAscEditorExecuteCommand()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Command)
|
|
LINK_PROPERTY_STRING(Params)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscAddPlugin : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sPath;
|
|
|
|
public:
|
|
CAscAddPlugin()
|
|
{
|
|
}
|
|
virtual ~CAscAddPlugin()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Path)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscReporterMessage : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sMessage;
|
|
int m_nReceiverId;
|
|
|
|
public:
|
|
CAscReporterMessage()
|
|
{
|
|
m_nReceiverId = -1;
|
|
}
|
|
virtual ~CAscReporterMessage()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Message)
|
|
LINK_PROPERTY_INT(ReceiverId)
|
|
};
|
|
|
|
class CAscReporterCreate : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
void* m_pData;
|
|
|
|
public:
|
|
CAscReporterCreate()
|
|
{
|
|
m_pData = NULL;
|
|
}
|
|
virtual ~CAscReporterCreate()
|
|
{
|
|
}
|
|
|
|
void* get_Data() { return m_pData; }
|
|
void put_Data(void* data) { m_pData = data; }
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscSSOToken : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sUrl;
|
|
std::wstring m_sToken;
|
|
|
|
public:
|
|
CAscSSOToken()
|
|
{
|
|
}
|
|
virtual ~CAscSSOToken()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Url)
|
|
LINK_PROPERTY_STRING(Token)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscUIThreadMessage : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nType;
|
|
std::vector<std::wstring> m_arArgs;
|
|
|
|
public:
|
|
CAscUIThreadMessage()
|
|
{
|
|
}
|
|
virtual ~CAscUIThreadMessage()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_INT(Type)
|
|
std::vector<std::wstring>& GetArgs() { return m_arArgs; }
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscOpenSslData : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sCertPath;
|
|
std::wstring m_sCertPassword;
|
|
|
|
std::wstring m_sKeyPath;
|
|
std::wstring m_sKeyPassword;
|
|
|
|
public:
|
|
CAscOpenSslData()
|
|
{
|
|
}
|
|
virtual ~CAscOpenSslData()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(CertPath)
|
|
LINK_PROPERTY_STRING(CertPassword)
|
|
LINK_PROPERTY_STRING(KeyPath)
|
|
LINK_PROPERTY_STRING(KeyPassword)
|
|
};
|
|
|
|
class CEncryptData : public IMenuEventDataBase
|
|
{
|
|
public:
|
|
CEncryptData(){}
|
|
virtual ~CEncryptData(){}
|
|
|
|
LINK_PROPERTY_STRING(Path)
|
|
LINK_PROPERTY_STRING(Value)
|
|
private:
|
|
std::wstring m_sPath;
|
|
std::wstring m_sValue;
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscBinaryMessage : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::string m_sMessageName;
|
|
unsigned char* m_pData;
|
|
unsigned int m_nDataSize;
|
|
|
|
public:
|
|
CAscBinaryMessage()
|
|
{
|
|
m_pData = NULL;
|
|
m_nDataSize = 0;
|
|
}
|
|
virtual ~CAscBinaryMessage()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRINGA(MessageName)
|
|
|
|
inline unsigned char* get_Data()
|
|
{
|
|
return m_pData;
|
|
}
|
|
inline void put_Data(unsigned char* pData)
|
|
{
|
|
m_pData = pData;
|
|
}
|
|
|
|
inline unsigned int get_DataSize()
|
|
{
|
|
return m_nDataSize;
|
|
}
|
|
inline void put_DataSize(unsigned int nSize)
|
|
{
|
|
m_nDataSize = nSize;
|
|
}
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscSystemExternalPlugins : public IMenuEventDataBase
|
|
{
|
|
public:
|
|
class CItem
|
|
{
|
|
public:
|
|
std::wstring name;
|
|
std::wstring nameLocale;
|
|
std::wstring id;
|
|
std::wstring url;
|
|
};
|
|
|
|
private:
|
|
std::vector<CItem> m_items;
|
|
|
|
public:
|
|
CAscSystemExternalPlugins()
|
|
{
|
|
}
|
|
virtual ~CAscSystemExternalPlugins()
|
|
{
|
|
}
|
|
|
|
std::vector<CItem>& get_Items()
|
|
{
|
|
return m_items;
|
|
}
|
|
|
|
void addItem(const std::wstring& name, const std::wstring& id, const std::wstring& url, const std::wstring& name_local)
|
|
{
|
|
CItem item;
|
|
item.name = name;
|
|
item.id = id;
|
|
item.url = url;
|
|
item.nameLocale = name_local;
|
|
m_items.push_back(item);
|
|
}
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscExternalProcess : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sProgram;
|
|
std::vector<std::wstring> m_arArguments;
|
|
std::wstring m_sWorkingDirectory;
|
|
bool m_bDetached;
|
|
|
|
public:
|
|
CAscExternalProcess()
|
|
{
|
|
}
|
|
virtual ~CAscExternalProcess()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Program)
|
|
LINK_PROPERTY_STRING(WorkingDirectory)
|
|
LINK_PROPERTY_BOOL(Detached)
|
|
std::vector<std::wstring>& get_Arguments() { return m_arArguments; }
|
|
};
|
|
|
|
class CAscExternalMedia : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
int m_nX;
|
|
int m_nY;
|
|
double m_dW;
|
|
double m_dH;
|
|
|
|
int m_nBoundsX;
|
|
int m_nBoundsY;
|
|
int m_nBoundsW;
|
|
int m_nBoundsH;
|
|
|
|
double m_dsx;
|
|
double m_dshy;
|
|
double m_dshx;
|
|
double m_dsy;
|
|
double m_dtx;
|
|
double m_dty;
|
|
|
|
std::wstring m_sUrl;
|
|
|
|
public:
|
|
CAscExternalMedia()
|
|
{
|
|
m_nX = 0;
|
|
m_nY = 0;
|
|
m_dW = 0;
|
|
m_dH = 0;
|
|
|
|
m_nBoundsX = 0;
|
|
m_nBoundsY = 0;
|
|
m_nBoundsW = 0;
|
|
m_nBoundsH = 0;
|
|
|
|
m_dsx = 1;
|
|
m_dshy = 0;
|
|
m_dshx = 0;
|
|
m_dsy = 1;
|
|
m_dtx = 0;
|
|
m_dty = 0;
|
|
}
|
|
virtual ~CAscExternalMedia()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Url)
|
|
|
|
LINK_PROPERTY_INT(X)
|
|
LINK_PROPERTY_INT(Y)
|
|
LINK_PROPERTY_DOUBLE(W)
|
|
LINK_PROPERTY_DOUBLE(H)
|
|
|
|
LINK_PROPERTY_INT(BoundsX)
|
|
LINK_PROPERTY_INT(BoundsY)
|
|
LINK_PROPERTY_INT(BoundsW)
|
|
LINK_PROPERTY_INT(BoundsH)
|
|
|
|
LINK_PROPERTY_DOUBLE(sx)
|
|
LINK_PROPERTY_DOUBLE(shy)
|
|
LINK_PROPERTY_DOUBLE(shx)
|
|
LINK_PROPERTY_DOUBLE(sy)
|
|
LINK_PROPERTY_DOUBLE(tx)
|
|
LINK_PROPERTY_DOUBLE(ty)
|
|
};
|
|
|
|
class CAscExternalMediaPlayerCommand : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::string m_sCmd;
|
|
|
|
int m_nFrameRectX;
|
|
int m_nFrameRectY;
|
|
int m_nFrameRectW;
|
|
int m_nFrameRectH;
|
|
|
|
int m_nFrameBoundsX;
|
|
int m_nFrameBoundsY;
|
|
int m_nFrameBoundsW;
|
|
int m_nFrameBoundsH;
|
|
|
|
int m_nControlRectX;
|
|
int m_nControlRectY;
|
|
int m_nControlRectW;
|
|
int m_nControlRectH;
|
|
|
|
bool m_bIsSelected;
|
|
|
|
double m_dRotation;
|
|
|
|
bool m_bFlipH;
|
|
bool m_bFlipV;
|
|
|
|
std::wstring m_sUrl;
|
|
|
|
bool m_bFullscreen;
|
|
bool m_bIsVideo;
|
|
bool m_bMute;
|
|
|
|
int m_nVolume;
|
|
|
|
int m_nStartTime;
|
|
int m_nEndTime;
|
|
int m_nFrom;
|
|
|
|
std::string m_sTheme;
|
|
|
|
public:
|
|
CAscExternalMediaPlayerCommand()
|
|
{
|
|
m_nFrameRectX = 0;
|
|
m_nFrameRectY = 0;
|
|
m_nFrameRectW = 0;
|
|
m_nFrameRectH = 0;
|
|
|
|
m_nFrameBoundsX = 0;
|
|
m_nFrameBoundsY = 0;
|
|
m_nFrameBoundsW = 0;
|
|
m_nFrameBoundsH = 0;
|
|
|
|
m_nControlRectX = 0;
|
|
m_nControlRectY = 0;
|
|
m_nControlRectW = 0;
|
|
m_nControlRectH = 0;
|
|
|
|
m_bIsSelected = false;
|
|
|
|
m_dRotation = 0.0;
|
|
|
|
m_bFlipH = false;
|
|
m_bFlipV = false;
|
|
|
|
m_bFullscreen = false;
|
|
m_bIsVideo = false;
|
|
m_bMute = false;
|
|
|
|
m_nVolume = 0;
|
|
|
|
m_nStartTime = 0;
|
|
m_nEndTime = 0;
|
|
m_nFrom = 0;
|
|
}
|
|
|
|
virtual ~CAscExternalMediaPlayerCommand()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRINGA(Cmd)
|
|
|
|
LINK_PROPERTY_INT(FrameRectX)
|
|
LINK_PROPERTY_INT(FrameRectY)
|
|
LINK_PROPERTY_INT(FrameRectW)
|
|
LINK_PROPERTY_INT(FrameRectH)
|
|
|
|
LINK_PROPERTY_INT(FrameBoundsX)
|
|
LINK_PROPERTY_INT(FrameBoundsY)
|
|
LINK_PROPERTY_INT(FrameBoundsW)
|
|
LINK_PROPERTY_INT(FrameBoundsH)
|
|
|
|
LINK_PROPERTY_INT(ControlRectX)
|
|
LINK_PROPERTY_INT(ControlRectY)
|
|
LINK_PROPERTY_INT(ControlRectW)
|
|
LINK_PROPERTY_INT(ControlRectH)
|
|
|
|
LINK_PROPERTY_BOOL(IsSelected)
|
|
|
|
LINK_PROPERTY_DOUBLE(Rotation)
|
|
|
|
LINK_PROPERTY_BOOL(FlipH)
|
|
LINK_PROPERTY_BOOL(FlipV)
|
|
|
|
LINK_PROPERTY_STRING(Url)
|
|
|
|
LINK_PROPERTY_BOOL(Fullscreen)
|
|
LINK_PROPERTY_BOOL(IsVideo)
|
|
LINK_PROPERTY_BOOL(Mute)
|
|
|
|
LINK_PROPERTY_INT(Volume)
|
|
|
|
LINK_PROPERTY_INT(StartTime)
|
|
LINK_PROPERTY_INT(EndTime)
|
|
LINK_PROPERTY_INT(From)
|
|
|
|
LINK_PROPERTY_STRINGA(Theme)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
class CAscX509CertificateData : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
std::wstring m_sData;
|
|
std::wstring m_sFilePath; // used only on macOS
|
|
|
|
public:
|
|
CAscX509CertificateData()
|
|
{
|
|
}
|
|
virtual ~CAscX509CertificateData()
|
|
{
|
|
}
|
|
|
|
LINK_PROPERTY_STRING(Data)
|
|
LINK_PROPERTY_STRING(FilePath)
|
|
};
|
|
}
|
|
|
|
namespace NSEditorApi
|
|
{
|
|
typedef enum {
|
|
utNone = 0
|
|
} AscUpdateAppType;
|
|
|
|
class CAscUpdateApp : public IMenuEventDataBase
|
|
{
|
|
private:
|
|
AscUpdateAppType m_nType;
|
|
|
|
public:
|
|
CAscUpdateApp()
|
|
{
|
|
m_nType = utNone;
|
|
}
|
|
virtual ~CAscUpdateApp()
|
|
{
|
|
}
|
|
|
|
inline AscUpdateAppType get_Type()
|
|
{
|
|
return m_nType;
|
|
}
|
|
inline void put_Type(const AscUpdateAppType& newVal)
|
|
{
|
|
m_nType = newVal;
|
|
}
|
|
};
|
|
}
|
|
|
|
#endif // APPLICATION_MANAGER_EVENTS_H
|