#ifndef _FS_XFA_C_H_
#define _FS_XFA_C_H_

#ifdef __cplusplus
extern "C" {
#endif


typedef struct _FSXFAWidgetModifyInfo FSXFAWidgetModifyInfo;


typedef enum _FSAppInfo {
e_FSAppInfoVersion = 0x0,
e_FSAppInfoLanguage = 0x01,
e_FSAppInfoPlatform= 0x02,
e_FSAppInfoVariation= 0x03,
e_FSAppInfoName = 0x04,
e_FSAppInfoType = 0x05,
}FSAppInfo;



typedef enum _FSBeepType {
e_FSBeepTypeError = 0,
e_FSBeepTypeWarning = 1,
e_FSBeepTypeQuestion = 2,
e_FSBeepTypeStatus = 3,
e_FSBeepTypeDefault = 4,
}FSBeepType;



typedef enum _FSStringID {
e_FSStringIDValidateFailed = 1,
e_FSStringIDCalcOverride = 2,
e_FSStringIDModifyField = 3,
e_FSStringIDNotModifyField = 4,
e_FSStringIDAppName = 5,
e_FSStringIDImageFilter = 6,
e_FSStringIDStringIDUnknownCaught = 7,
e_FSStringIDUnableToSet = 8,
e_FSStringIDValueExcalmatory = 9,
e_FSStringIDInvalidEnumValue = 10,
e_FSStringIDUnsupportMethod = 11,
e_FSStringIDUnsupportProperty = 12,
e_FSStringIDInvalidPropertySetOperation = 13,
e_FSStringIDNotDefaultValue = 14,
e_FSStringIDUnableSetLanguage = 15,
e_FSStringIDUnableSetNumPages = 16,
e_FSStringIDUnableSetPlatformValue = 17,
e_FSStringIDUnableSetValidationsEnabledValue = 18,
e_FSStringIDUnableSetValidationsValue = 19,
e_FSStringIDUnableSetVersion = 20,
e_FSStringIDUnableSetReady = 21,
e_FSStringIDNumberOfOccur = 22,
e_FSStringIDUnableSetClassName = 23,
e_FSStringIDUnableSetLengthValue = 24,
e_FSStringIDUnsupportChar = 25,
e_FSStringIDBadSuffix = 26,
e_FSStringIDExpectedIdent = 27,
e_FSStringIDExpectedString = 28,
e_FSStringIDInvalidateChar = 29,
e_FSStringIDRedefinition = 30,
e_FSStringIDInvalidToken = 31,
e_FSStringIDInvalidExpression = 32,
e_FSStringIDUndefineIdentifier = 33,
e_FSStringIDInvalidateLeftValue = 34,
e_FSStringIDCompilerError= 35,
e_FSStringIDCannotModifyValue = 36,
e_FSStringIDParametersError = 37,
e_FSStringIDExpectedEndIf = 38,
e_FSStringIDUnexpectedExpression = 39,
e_FSStringIDConditionIsNull = 40,
e_FSStringIDIllegalBreak = 41,
e_FSStringIDIllegalContinue = 42,
e_FSStringIDExpectedOperator = 43,
e_FSStringIDDivideZero = 44,
e_FSStringIDCannotCovertToObject = 45,
e_FSStringIDNotFoundContainer = 46,
e_FSStringIDNotFoundProperty = 47,
e_FSStringIDNotFoundMethod = 48,
e_FSStringIDNotFoundConst = 49,
e_FSStringIDNotAssignObject= 50,
e_FSStringIDInvalidateInstruction= 51,
e_FSStringIDExpectedNumber = 52,
e_FSStringIDValidateOutOfArray= 53,
e_FSStringIDCannotAssign = 54,
e_FSStringIDNotFoundFunction = 55,
e_FSStringIDIsNotArray = 56,
e_FSStringIDOutOfArrayRange = 57,
e_FSStringIDNotSupportArrayCalculate = 58,
e_FSStringIDArgumentNotArray = 59,
e_FSStringIDArgumentExpectContainer = 60,
e_FSStringIDAccessProertyInNotObject = 61,
e_FSStringIDFunctionBuildIn = 62,
e_FSStringIDErrorMessage = 63,
e_FSStringIDIndexValueOutOfBounds = 64,
e_FSStringIDIncorrectNumberOfMethod = 65,
e_FSStringIDArgumentMismatch  = 66,
e_FSStringIDInvalidEnumerate = 67,
e_FSStringIDInvalidAppend = 68,
e_FSStringIDSOMExpectedList = 69,
e_FSStringIDNotHaveProperty = 70,
e_FSStringIDInvalidNodeType = 71,
e_FSStringIDViolateBoundary = 72,
e_FSStringIDServerDeny = 73,
e_FSStringIDWeekDaySun = 74,
e_FSStringIDWeekDayMon = 75,
e_FSStringIDWeekDayTue = 76,
e_FSStringIDWeekDayWed = 77,
e_FSStringIDWeekDayThu = 78,
e_FSStringIDWeekDayFri = 79,
e_FSStringIDWeekDaySat = 80,
e_FSStringIDMonthJan = 81,
e_FSStringIDMonthFeb = 82,
e_FSStringIDMonthMarch = 83,
e_FSStringIDMonthApril = 84,
e_FSStringIDMonthMay = 85,
e_FSStringIDMonthJune = 86,
e_FSStringIDMonthJuly = 87,
e_FSStringIDMonthAug = 88,
e_FSStringIDMonthSep = 89,
e_FSStringIDMonthOct = 90,
e_FSStringIDMonthNov = 91,
e_FSStringIDMonthDec = 92,
e_FSStringIDToday = 93,
e_FSStringIDValidateLimit = 94,
e_FSStringIDValidateNullWarning = 95,
e_FSStringIDValidateNullError = 96,
e_FSStringIDValidateWarning = 97,
e_FSStringIDValidateError = 98,
e_FSStringIDValidateNumberError = 99,
e_FSStringIDScriptFailedError = 100,
e_FSStringIDScriptInvalidValue = 101,
e_FSStringIDSubmitValidateNullError = 102,
e_FSStringIDInvalidBarcodeValue = 103,
e_FSStringIDScriptArgumentMismatch = 104,
}FSStringID;



typedef enum _FSMsgBoxIconType {
e_FSMsgBoxIconError = 0,
e_FSMsgBoxIconWarning = 1,
e_FSMsgBoxIconQuestion = 2,
e_FSMsgBoxIconStatus = 3,
}FSMsgBoxIconType;



typedef enum _FSMsgBoxButtonType {
e_FSMsgBtnTypeOK = 0,
e_FSMsgBtnTypeOKCancel = 1,
e_FSMsgBtnTypeYesNo = 2,
e_FSMsgBtnTypeYesNoCancel = 3,
}FSMsgBoxButtonType;



typedef enum _FSMsgBoxButtonID {
e_FSMsgBtnIDOK = 1,
e_FSMsgBtnIDCancel = 2,
e_FSMsgBtnIDNo = 3,
e_FSMsgBtnIDYes = 4,
}FSMsgBoxButtonID;



typedef enum _FSInvalidateFlag {
e_FSInvalidateFlagAllPages = 0,
e_FSInvalidateFlagCurrentPage = 1,
}FSInvalidateFlag;



typedef enum _FSPrintOption {
e_FSPrintOptionShowDialog = 0x00000001,
e_FSPrintOptionCanCancel = 0x00000002,
e_FSPrintOptionShrinkPage = 0x00000004,
e_FSPrintOptionAsImage = 0x00000008,
e_FSPrintOptionReverseOrder = 0x00000010,
e_FSPrintOptionPrintAnnot = 0x00000020,
}FSPrintOption;



typedef enum _FSSubmitFormat {
e_FSSubmitInXDP = 0,
e_FSSubmitInPDF = 1,
e_FSSubmitInUrlEncoded = 2,
e_FSSubmitInXFD= 3,
e_FSSubmitInXML = 4,
}FSSubmitFormat;



typedef enum _FSTextEncoding {
e_FSTextEncodingNone = 0,
e_FSTextEncodingBig5 = 1,
e_FSTextEncodingFontSpecific = 2,
e_FSTextEncodingGBK = 3,
e_FSTextEncodingGB18030 = 4,
e_FSTextEncodingGB2312 = 5,
e_FSTextEncodingISO8859NN = 6,
e_FSTextEncodingKSC5601 = 7,
e_FSTextEncodingShiftJIS = 8,
e_FSTextEncodingUCS2 = 9,
e_FSTextEncodingUTF16 = 10,
e_FSTextEncodingUTF8 = 11,
}FSTextEncoding;



typedef enum _FSHitTestArea {
e_FSHitTestAreaHitTestAreaUnknown = 0,
e_FSHitTestAreaClient = 1,
e_FSHitTestAreaTitleBar = 2,
e_FSHitTestAreaHyperLink = 3,
}FSHitTestArea;



typedef enum _FSPresenceProperty {
e_FSPresencePropertyPresenceUnknown = 0,
e_FSPresenceVisible = 1,
e_FSPresenceHidden = 2,
e_FSPresenceInactive = 3,
e_FSPresenceInvisible = 4,
}FSPresenceProperty;



typedef enum _FSEventType {
e_FSEventTypeEventTypeUnknown = 0,
e_FSEventTypePostPrint = 1,
e_FSEventTypePrePrint = 2,
e_FSEventTypeClick = 3,
e_FSEventTypeChange = 4,
e_FSEventTypeDocClose = 5,
e_FSEventTypeDocReady = 6,
e_FSEventTypeEnter = 7,
e_FSEventTypeExit = 8,
e_FSEventTypeFull = 9,
e_FSEventTypeIndexChange = 10,
e_FSEventTypeInitialize = 11,
e_FSEventTypeMouseDown = 12,
e_FSEventTypeMouseEnter = 13,
e_FSEventTypeMouseExit = 14,
e_FSEventTypeMouseUp = 15,
e_FSEventTypePostExecute = 16,
e_FSEventTypePostOpen = 17,
e_FSEventTypePostSave = 18,
e_FSEventTypePostSign = 19,
e_FSEventTypePostSubmit = 20,
e_FSEventTypePreExecute = 21,
e_FSEventTypePreOpen = 22,
e_FSEventTypePreSave = 23,
e_FSEventTypePreSign = 24,
e_FSEventTypePreSubmit = 25,
e_FSEventTypeReady = 26,
e_FSEventTypeValidationState = 27,
e_FSEventTypeInitCalculate = 28,
e_FSEventTypeInitVariables = 29,
e_FSEventTypeCalculate = 30,
e_FSEventTypeValidate = 31,
}FSEventType;



typedef enum _FSXFAType {
e_FSDynamic = 0,
e_FSStatic = 1,
e_FSXDP = 2,
}FSXFAType;



typedef enum _FSExportDataType {
e_FSExportDataTypeXML = 0,
e_FSExportDataTypeStaticXDP = 1,
e_FSExportDataTypeXDP = 2,
}FSExportDataType;



typedef enum _FSPageViewEventType {
e_FSPageViewEventTypeAdded = 0,
e_FSPageViewEventTypeRemoved = 1,
e_FSPageViewEventTypeAllRemoved = 2,
}FSPageViewEventType;



typedef enum _FSWidgetEventType {
e_FSWidgetEventTypeAdded = 0,
e_FSWidgetEventTypeBeforeRemoved = 1,
}FSWidgetEventType;



typedef enum _FSWidgetType {
e_FSWidgetTypeBarcode = 0,
e_FSWidgetTypePushButton = 1,
e_FSWidgetTypeCheckButton = 2,
e_FSWidgetTypeArc = 3,
e_FSWidgetTypeDateTimeEdit = 4,
e_FSWidgetTypeNumericEdit = 5,
e_FSWidgetTypeSignature = 6,
e_FSWidgetTypeChoiceList = 7,
e_FSWidgetTypeImageEdit = 8,
e_FSWidgetTypeLine = 9,
e_FSWidgetTypePasswordEdit = 10,
e_FSWidgetTypeRadioButton = 11,
e_FSWidgetTypeRectangle = 12,
e_FSWidgetTypeTextEdit = 13,
e_FSWidgetTypeWidgetTypeUnknown = 14,
e_FSWidgetTypeExclGroup = 15,
e_FSWidgetTypeImage = 16,
}FSWidgetType;



typedef enum _FSWidgetNameType {
e_FSWidgetNameTypeField = 0,
e_FSWidgetNameTypeCaption = 1,
e_FSWidgetNameTypeFullName = 2,
}FSWidgetNameType;



typedef enum _FSWidgetHAlignType {
e_FSWidgethAlignTypeCenter = 128,
e_FSWidgethAlignTypeJustify = 156,
e_FSWidgethAlignTypeJustifyAll = 61,
e_FSWidgethAlignTypeLeft = 252,
e_FSWidgethAlignTypeRadix = 231,
e_FSWidgethAlignTypeRight = 54,
}FSWidgetHAlignType;



typedef enum _FSWidgetVAlignType {
e_FSWidgetvAlignTypeTop = 33,
e_FSWidgetvAlignTypeBottom = 85,
e_FSWidgetvAlignTypeMiddle = 161,
}FSWidgetVAlignType;



typedef enum _FSWidgetEdgePosition {
e_FSWidgetEdgePositionTop = 0,
e_FSWidgetEdgePositionRight = 1,
e_FSWidgetEdgePositionBottom = 2,
e_FSWidgetEdgePositionLeft = 3,
}FSWidgetEdgePosition;


typedef struct _FSWidgetChoiceOption {
  FS_WSTR option_label;
  FS_BOOL selected;
}FSWidgetChoiceOption;

typedef struct _FSAppProviderCallback {
  void* user_data;
  void (*Release)(void* user_data);
  FS_WSTR (*GetAppInfo)(void* user_data, FSAppInfo app_info);
  void (*Beep)(void* user_data, FSBeepType type);
  FSMsgBoxButtonID (*MsgBox)(void* user_data, const wchar_t* message, const wchar_t* title, FSMsgBoxIconType icon_type,
                                FSMsgBoxButtonType button_type);
  FS_WSTR (*FSResponse)(void* user_data, const wchar_t* question, const wchar_t* title, const wchar_t* default_answer,
                           FS_BOOL is_mask);
  FSReaderCallback* (*DownLoadUrl)(void* user_data, const wchar_t* url);
  FS_WSTR (*PostRequestURL)(void* user_data, const wchar_t* url, const wchar_t* data, const wchar_t* content_type,
                                 const wchar_t* encode, const wchar_t* header);
  FS_BOOL (*PutRequestURL)(void* user_data, const wchar_t* url, const wchar_t* data, const wchar_t* encode);
  FS_WSTR (*LoadString)(void* user_data, FSStringID string_id);
  void (*ShowFileDialog)(void* user_data, const wchar_t* string_title, const wchar_t* string_filter,
                                      FS_BOOL is_openfile_dialog, FS_WSTR* return_stringarray, FS_UINT32* return_stringarray_length);
  
}FSAppProviderCallback;

typedef struct _FSDocProviderCallback {
  void* user_data;
  void (*Release)(void* user_data);
  void (*InvalidateRect)(void* user_data, int page_index, const FSRectF rect, FSInvalidateFlag flag);
  void (*DisplayCaret)(void* user_data, int page_index, FS_BOOL is_visible, const FSRectF rect);
  FS_BOOL (*GetPopupPos)(void* user_data, int page_index, float min_popup, float max_popup,
                           const FSRectF rect_widget, FSRectF inout_rect_popup);
  FS_BOOL (*PopupMenu)(void* user_data, int page_index, const FSPointF rect_popup);
  int (*GetCurrentPage)(void* user_data, const FS_XFADOC_HANDLE doc);
  void (*SetCurrentPage)(void* user_data, const FS_XFADOC_HANDLE doc, int current_page_index);
  void (*SetChangeMark)(void* user_data, const FS_XFADOC_HANDLE doc);
  FS_WSTR (*GetTitle)(void* user_data, const FS_XFADOC_HANDLE doc);
  void (*SetFocus)(void* user_data, FS_XFAWIDGET_HANDLE xfa_widget, FS_BOOL is_relayout);
  void (*ExportData)(void* user_data, const FS_XFADOC_HANDLE doc, const wchar_t* file_path);
  void (*ImportData)(void* user_data, const FS_XFADOC_HANDLE doc, const wchar_t* file_path);
  void (*GotoURL)(void* user_data, const FS_XFADOC_HANDLE doc, const wchar_t*url);
  void (*Print)(void* user_data, const FS_XFADOC_HANDLE doc, int start_page_index, int end_page_index, FS_UINT32 options);
  FSDK_ARGB (*GetHighlightColor)(void* user_data, const FS_XFADOC_HANDLE doc);
  FS_BOOL (*SubmitData)(void* user_data, const FS_XFADOC_HANDLE doc, const wchar_t*target, FSSubmitFormat format, FSTextEncoding text_encoding,
                          const wchar_t*content);
  void (*PageViewEvent)(void* user_data, int page_index, FSPageViewEventType page_view_event_type);
  void (*WidgetEvent)(void* user_data, const FS_XFAWIDGET_HANDLE xfa_widget,FSWidgetEventType widget_event_type);
  void (*NotifyWidgetChangeInfo)(void* user_data, const FS_XFADOC_HANDLE doc, FSXFAWidgetModifyInfo change_info);
  
}FSDocProviderCallback;

FSErrorCode FSDK_XFADoc_Create(const FS_PDFDOC_HANDLE document, FSDocProviderCallback* xfa_doc_provider_handler, FS_XFADOC_HANDLE* xfadoc_return_value);
FSErrorCode FSDK_XFADoc_Create0(const FS_PDFDOC_HANDLE document, FS_XFADOC_HANDLE* xfadoc_return_value);
FSErrorCode FSDK_XFADoc_IsEmpty(FS_XFADOC_HANDLE xfadoc_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFADoc_Release(FS_XFADOC_HANDLE xfadoc_handle);
FSErrorCode FSDK_XFADoc_StartLoad(FS_XFADOC_HANDLE xfadoc_handle,  FSPauseCallback* pause, FS_PROGRESSIVE_HANDLE* return_value);
FSErrorCode FSDK_XFADoc_SetDocProviderCallback(FS_XFADOC_HANDLE xfadoc_handle,  FSDocProviderCallback* doc_provider_callback);
FSErrorCode FSDK_XFADoc_GetType(FS_XFADOC_HANDLE xfadoc_handle, FSXFAType* return_value);
FSErrorCode FSDK_XFADoc_GetPageCount(FS_XFADOC_HANDLE xfadoc_handle, int* return_value);
FSErrorCode FSDK_XFADoc_GetPage(FS_XFADOC_HANDLE xfadoc_handle, int page_index, FS_XFAPAGE_HANDLE* return_value);
FSErrorCode FSDK_XFADoc_ExportData(FS_XFADOC_HANDLE xfadoc_handle, const wchar_t* output_file_path, FSExportDataType export_type, FS_BOOL* return_value);
FSErrorCode FSDK_XFADoc_ExportData0(FS_XFADOC_HANDLE xfadoc_handle,  FSWriterCallback* stream, FSExportDataType export_type, FS_BOOL* return_value);
FSErrorCode FSDK_XFADoc_SetPDFPath(FS_XFADOC_HANDLE xfadoc_handle, const wchar_t* pdf_file_path);
FSErrorCode FSDK_XFADoc_ImportData(FS_XFADOC_HANDLE xfadoc_handle, const wchar_t* file_path, FS_BOOL* return_value);
FSErrorCode FSDK_XFADoc_ImportData0(FS_XFADOC_HANDLE xfadoc_handle,  FSReaderCallback* file_reader, FS_BOOL* return_value);
FSErrorCode FSDK_XFADoc_ResetForm(FS_XFADOC_HANDLE xfadoc_handle);
FSErrorCode FSDK_XFADoc_FlattenTo(FS_XFADOC_HANDLE xfadoc_handle, const wchar_t* output_file_path);
FSErrorCode FSDK_XFADoc_FlattenTo0(FS_XFADOC_HANDLE xfadoc_handle,  FSStreamCallback* stream);
FSErrorCode FSDK_XFADoc_ProcessEvent(FS_XFADOC_HANDLE xfadoc_handle, FSEventType event_type);
FSErrorCode FSDK_XFADoc_SetFocus(FS_XFADOC_HANDLE xfadoc_handle, FS_XFAWIDGET_HANDLE xfa_widget);
FSErrorCode FSDK_XFADoc_KillFocus(FS_XFADOC_HANDLE xfadoc_handle);
FSErrorCode FSDK_XFADoc_GetWidgetByFullName(FS_XFADOC_HANDLE xfadoc_handle, const wchar_t* full_name, FS_XFAWIDGET_HANDLE* return_value);
FSErrorCode FSDK_XFAPage_Release(FS_XFAPAGE_HANDLE xfapage_handle);
FSErrorCode FSDK_XFAPage_IsEmpty(FS_XFAPAGE_HANDLE xfapage_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAPage_GetDisplayMatrix(FS_XFAPAGE_HANDLE xfapage_handle, int left, int top, int width, int height, FSRotation rotate, FSMatrix* return_value);
FSErrorCode FSDK_XFAPage_GetWidth(FS_XFAPAGE_HANDLE xfapage_handle, float* return_value);
FSErrorCode FSDK_XFAPage_GetHeight(FS_XFAPAGE_HANDLE xfapage_handle, float* return_value);
FSErrorCode FSDK_XFAPage_GetWidgetAtDevicePoint(FS_XFAPAGE_HANDLE xfapage_handle, const FSMatrix matrix, const FSPointF device_point, float tolerance, FS_XFAWIDGET_HANDLE* return_value);
FSErrorCode FSDK_XFAPage_GetIndex(FS_XFAPAGE_HANDLE xfapage_handle, int* return_value);
FSErrorCode FSDK_XFAPage_GetWidgetCount(FS_XFAPAGE_HANDLE xfapage_handle, int* return_value);
FSErrorCode FSDK_XFAPage_GetWidget(FS_XFAPAGE_HANDLE xfapage_handle, int widget_index, FS_XFAWIDGET_HANDLE* return_value);
FSErrorCode FSDK_XFAPage_GetWidgetByFullName(FS_XFAPAGE_HANDLE xfapage_handle, const wchar_t* full_name, FS_XFAWIDGET_HANDLE* return_value);
FSErrorCode FSDK_XFAPage_GetFirstWidget(FS_XFAPAGE_HANDLE xfapage_handle, FS_XFAWIDGET_HANDLE* return_value);
FSErrorCode FSDK_XFAPage_GetLastWidget(FS_XFAPAGE_HANDLE xfapage_handle, FS_XFAWIDGET_HANDLE* return_value);
FSErrorCode FSDK_XFAPage_GetNextWidget(FS_XFAPAGE_HANDLE xfapage_handle, const FS_XFAWIDGET_HANDLE widget, FS_XFAWIDGET_HANDLE* return_value);
FSErrorCode FSDK_XFAPage_GetPrevWidget(FS_XFAPAGE_HANDLE xfapage_handle, const FS_XFAWIDGET_HANDLE widget, FS_XFAWIDGET_HANDLE* return_value);

typedef enum _FSWidgetElement {
e_FSWidgetElementPs = 0,
e_FSWidgetElementTo = 1,
e_FSWidgetElementUi = 2,
e_FSWidgetElementRecordSet = 3,
e_FSWidgetElementSubsetBelow = 4,
e_FSWidgetElementSubformSet = 5,
e_FSWidgetElementAdobeExtensionLevel = 6,
e_FSWidgetElementTypeface = 7,
e_FSWidgetElementBreak = 8,
e_FSWidgetElementFontInfo = 9,
e_FSWidgetElementNumberPattern = 10,
e_FSWidgetElementDynamicRender = 11,
e_FSWidgetElementPrintScaling = 12,
e_FSWidgetElementCheckButton = 13,
e_FSWidgetElementDatePatterns = 14,
e_FSWidgetElementSourceSet = 15,
e_FSWidgetElementAmd = 16,
e_FSWidgetElementArc = 17,
e_FSWidgetElementDay = 18,
e_FSWidgetElementEra = 19,
e_FSWidgetElementJog= 20,
e_FSWidgetElementLog = 21,
e_FSWidgetElementMap = 22,
e_FSWidgetElementMdp = 23,
e_FSWidgetElementBreakBefore = 24,
e_FSWidgetElementOid = 25,
e_FSWidgetElementPcl = 26,
e_FSWidgetElementPdf = 27,
e_FSWidgetElementRef = 28,
e_FSWidgetElementUri = 29,
e_FSWidgetElementXdc = 30,
e_FSWidgetElementXdp = 31,
e_FSWidgetElementXfa = 32,
e_FSWidgetElementXsl = 33,
e_FSWidgetElementZpl = 34,
e_FSWidgetElementCache = 35,
e_FSWidgetElementMargin = 36,
e_FSWidgetElementKeyUsage = 37,
e_FSWidgetElementExclude = 38,
e_FSWidgetElementChoiceList = 39,
e_FSWidgetElementLevel = 40,
e_FSWidgetElementLabelPrinter = 41,
e_FSWidgetElementCalendarSymbols = 42,
e_FSWidgetElementPara = 43,
e_FSWidgetElementPart = 44,
e_FSWidgetElementPdfa = 45,
e_FSWidgetElementFilter = 46,
e_FSWidgetElementPresent = 47,
e_FSWidgetElementPagination = 48,
e_FSWidgetElementEncoding = 49,
e_FSWidgetElementEvent = 50,
e_FSWidgetElementWhitespace = 51,
e_FSWidgetElementDefaultUi = 52,
e_FSWidgetElementDataModel = 53,
e_FSWidgetElementBarcode = 54,
e_FSWidgetElementTimePattern = 55,
e_FSWidgetElementBatchOutput = 56,
e_FSWidgetElementEnforce = 57,
e_FSWidgetElementCurrencySymbols = 58,
e_FSWidgetElementAddSilentPrint = 59,
e_FSWidgetElementRename = 60,
e_FSWidgetElementOperation = 61,
e_FSWidgetElementTypefaces = 62,
e_FSWidgetElementSubjectDNs = 63,
e_FSWidgetElementIssuers = 64,
e_FSWidgetElementSignaturePseudoModel = 65,
e_FSWidgetElementWsdlConnection = 66,
e_FSWidgetElementDebug = 67,
e_FSWidgetElementDelta = 68,
e_FSWidgetElementEraNames = 69,
e_FSWidgetElementModifyAnnots = 70,
e_FSWidgetElementStartNode = 71,
e_FSWidgetElementButton = 72,
e_FSWidgetElementFormat = 73,
e_FSWidgetElementBorder = 74,
e_FSWidgetElementArea = 75,
e_FSWidgetElementHyphenation = 76,
e_FSWidgetElementText = 77,
e_FSWidgetElementTime = 78,
e_FSWidgetElementType = 79,
e_FSWidgetElementOverprint = 80,
e_FSWidgetElementCertificates = 81,
e_FSWidgetElementEncryptionMethods = 82,
e_FSWidgetElementSetProperty = 83,
e_FSWidgetElementPrinterName = 84,
e_FSWidgetElementStartPage = 85,
e_FSWidgetElementPageOffset = 86,
e_FSWidgetElementDateTime = 87,
e_FSWidgetElementComb = 88,
e_FSWidgetElementPattern = 89,
e_FSWidgetElementIfEmpty = 90,
e_FSWidgetElementSuppressBanner = 91,
e_FSWidgetElementOutputBin = 92,
e_FSWidgetElementField = 93,
e_FSWidgetElementAgent = 94,
e_FSWidgetElementOutputXSL = 95,
e_FSWidgetElementAdjustData = 96,
e_FSWidgetElementAutoSave = 97,
e_FSWidgetElementContentArea = 98,
e_FSWidgetElementEventPseudoModel = 99,
e_FSWidgetElementWsdlAddress = 100,
e_FSWidgetElementSolid = 101,
e_FSWidgetElementDateTimeSymbols = 102,
e_FSWidgetElementEncryptionLevel = 103,
e_FSWidgetElementEdge = 104,
e_FSWidgetElementStipple = 105,
e_FSWidgetElementAttributes = 106,
e_FSWidgetElementVersionControl = 107,
e_FSWidgetElementMeridiem = 108,
e_FSWidgetElementExclGroup = 109,
e_FSWidgetElementToolTip = 110,
e_FSWidgetElementCompress = 111,
e_FSWidgetElementReason = 112,
e_FSWidgetElementExecute = 113,
e_FSWidgetElementContentCopy = 114,
e_FSWidgetElementDateTimeEdit = 115,
e_FSWidgetElementConfig = 116,
e_FSWidgetElementImage = 117,
e_FSWidgetElementSharpxHTML = 118,
e_FSWidgetElementNumberOfCopies = 119,
e_FSWidgetElementBehaviorOverride = 120,
e_FSWidgetElementTimeStamp = 121,
e_FSWidgetElementMonth = 122,
e_FSWidgetElementViewerPreferences = 123,
e_FSWidgetElementScriptModel = 124,
e_FSWidgetElementDecimal = 125,
e_FSWidgetElementSubform = 126,
e_FSWidgetElementSelect = 127,
e_FSWidgetElementWindow = 128,
e_FSWidgetElementLocaleSet = 129,
e_FSWidgetElementHandler = 130,
e_FSWidgetElementHostPseudoModel = 131,
e_FSWidgetElementPresence = 132,
e_FSWidgetElementRecord = 133,
e_FSWidgetElementEmbed = 134,
e_FSWidgetElementVersion = 135,
e_FSWidgetElementCommand = 136,
e_FSWidgetElementCopies = 137,
e_FSWidgetElementStaple = 138,
e_FSWidgetElementSubmitFormat = 139,
e_FSWidgetElementBoolean = 140,
e_FSWidgetElementMessage = 141,
e_FSWidgetElementOutput = 142,
e_FSWidgetElementPsMap = 143,
e_FSWidgetElementExcludeNS = 144,
e_FSWidgetElementAssist = 145,
e_FSWidgetElementPicture = 146,
e_FSWidgetElementTraversal = 147,
e_FSWidgetElementSilentPrint = 148,
e_FSWidgetElementWebClient = 149,
e_FSWidgetElementLayoutPseudoModel = 150,
e_FSWidgetElementProducer =151,
e_FSWidgetElementCorner = 152,
e_FSWidgetElementMsgId = 153,
e_FSWidgetElementColor = 154,
e_FSWidgetElementKeep = 155,
e_FSWidgetElementQuery = 156,
e_FSWidgetElementInsert = 157,
e_FSWidgetElementImageEdit = 158,
e_FSWidgetElementValidate = 159,
e_FSWidgetElementDigestMethods = 160,
e_FSWidgetElementNumberPatterns = 161,
e_FSWidgetElementPageSet = 162,
e_FSWidgetElementInteger = 163,
e_FSWidgetElementSoapAddress = 164,
e_FSWidgetElementEquate = 165,
e_FSWidgetElementFormFieldFilling = 166,
e_FSWidgetElementPageRange = 167,
e_FSWidgetElementUpdate = 168,
e_FSWidgetElementConnectString = 169,
e_FSWidgetElementMode = 170,
e_FSWidgetElementLayout = 171,
e_FSWidgetElementSharpxml = 172,
e_FSWidgetElementXsdConnection = 173,
e_FSWidgetElementTraverse = 174,
e_FSWidgetElementEncodings = 175,
e_FSWidgetElementTemplate = 176,
e_FSWidgetElementAcrobat = 177,
e_FSWidgetElementValidationMessaging = 178,
e_FSWidgetElementSigning = 179,
e_FSWidgetElementDataWindow = 180,
e_FSWidgetElementScript = 181,
e_FSWidgetElementAddViewerPreferences = 182,
e_FSWidgetElementAlwaysEmbed = 183,
e_FSWidgetElementPasswordEdit = 184,
e_FSWidgetElementNumericEdit = 185,
e_FSWidgetElementEncryptionMethod = 186,
e_FSWidgetElementChange = 187,
e_FSWidgetElementPageArea = 188,
e_FSWidgetElementSubmitUrl = 189,
e_FSWidgetElementOids = 190,
e_FSWidgetElementSignature = 191,
e_FSWidgetElementADBE_JSConsole = 192,
e_FSWidgetElementCaption = 193,
e_FSWidgetElementRelevant = 194,
e_FSWidgetElementFlipLabel = 195,
e_FSWidgetElementExData = 196,
e_FSWidgetElementDayNames = 197,
e_FSWidgetElementSoapAction = 198,
e_FSWidgetElementDefaultTypeface = 199,
e_FSWidgetElementManifest = 200,
e_FSWidgetElementOverflow = 201,
e_FSWidgetElementLinear = 202,
e_FSWidgetElementCurrencySymbol = 203,
e_FSWidgetElementDelete = 204,
e_FSWidgetElementDeltas = 205,
e_FSWidgetElementDigestMethod = 206,
e_FSWidgetElementInstanceManager = 207,
e_FSWidgetElementEquateRange = 208,
e_FSWidgetElementMedium = 209,
e_FSWidgetElementTextEdit = 210,
e_FSWidgetElementTemplateCache = 211,
e_FSWidgetElementCompressObjectStream = 212,
e_FSWidgetElementDataValue = 213,
e_FSWidgetElementAccessibleContent = 214,
e_FSWidgetElementNodeList = 215,
e_FSWidgetElementIncludeXDPContent = 216,
e_FSWidgetElementXmlConnection = 217,
e_FSWidgetElementValidateApprovalSignatures = 218,
e_FSWidgetElementSignData = 219,
e_FSWidgetElementPackets = 220,
e_FSWidgetElementDatePattern = 221,
e_FSWidgetElementDuplexOption = 222,
e_FSWidgetElementBase = 223,
e_FSWidgetElementBind = 224,
e_FSWidgetElementCompression = 225,
e_FSWidgetElementUser = 226,
e_FSWidgetElementRectangle = 227,
e_FSWidgetElementEffectiveOutputPolicy = 228,
e_FSWidgetElementADBE_JSDebugger = 229,
e_FSWidgetElementAcrobat7 = 230,
e_FSWidgetElementInteractive = 231,
e_FSWidgetElementLocale = 232,
e_FSWidgetElementCurrentPage = 233,
e_FSWidgetElementData = 234,
e_FSWidgetElementDate = 235,
e_FSWidgetElementDesc = 236,
e_FSWidgetElementEncrypt = 237,
e_FSWidgetElementDraw = 238,
e_FSWidgetElementEncryption = 239,
e_FSWidgetElementMeridiemNames = 240,
e_FSWidgetElementMessaging = 241,
e_FSWidgetElementSpeak = 242,
e_FSWidgetElementDataGroup = 243,
e_FSWidgetElementCommon = 244,
e_FSWidgetElementSharptext = 245,
e_FSWidgetElementPaginationOverride = 246,
e_FSWidgetElementReasons = 247,
e_FSWidgetElementSignatureProperties = 248,
e_FSWidgetElementThreshold = 249,
e_FSWidgetElementAppearanceFilter = 250,
e_FSWidgetElementFill = 251,
e_FSWidgetElementFont = 252,
e_FSWidgetElementForm = 253,
e_FSWidgetElementMediumInfo = 254,
e_FSWidgetElementCertificate = 255,
e_FSWidgetElementPassword = 256,
e_FSWidgetElementRunScripts = 257,
e_FSWidgetElementTrace = 258,
e_FSWidgetElementFloat = 259,
e_FSWidgetElementRenderPolicy = 260,
e_FSWidgetElementLogPseudoModel = 261,
e_FSWidgetElementDestination = 262,
e_FSWidgetElementValue = 263,
e_FSWidgetElementBookend = 264,
e_FSWidgetElementExObject = 265,
e_FSWidgetElementXMLData = 266,
e_FSWidgetElementOpenAction = 267,
e_FSWidgetElementNeverEmbed = 268,
e_FSWidgetElementBindItems = 269,
e_FSWidgetElementCalculate = 270,
e_FSWidgetElementPrint = 271,
e_FSWidgetElementExtras = 272,
e_FSWidgetElementProto = 273,
e_FSWidgetElementDSigData = 274,
e_FSWidgetElementCreator = 275,
e_FSWidgetElementConnect = 276,
e_FSWidgetElementPermissions = 277,
e_FSWidgetElementConnectionSet = 278,
e_FSWidgetElementSubmit = 279,
e_FSWidgetElementRange = 280,
e_FSWidgetElementLinearized = 281,
e_FSWidgetElementPacket = 282,
e_FSWidgetElementRootElement = 283,
e_FSWidgetElementPlaintextMetadata = 284,
e_FSWidgetElementNumberSymbols = 285,
e_FSWidgetElementPrintHighQuality = 286,
e_FSWidgetElementDriver = 287,
e_FSWidgetElementIncrementalLoad = 288,
e_FSWidgetElementSubjectDN = 289,
e_FSWidgetElementCompressLogicalStructure = 290,
e_FSWidgetElementIncrementalMerge = 291,
e_FSWidgetElementRadial = 292,
e_FSWidgetElementVariables = 293,
e_FSWidgetElementTimePatterns = 294,
e_FSWidgetElementEffectiveInputPolicy = 295,
e_FSWidgetElementNameAttr = 296,
e_FSWidgetElementConformance = 297,
e_FSWidgetElementTransform = 298,
e_FSWidgetElementLockDocument = 299,
e_FSWidgetElementBreakAfter = 300,
e_FSWidgetElementLine = 301,
e_FSWidgetElementList = 302,
e_FSWidgetElementSource = 303,
e_FSWidgetElementOccur = 304,
e_FSWidgetElementPickTrayByPDFSize = 305,
e_FSWidgetElementMonthNames = 306,
e_FSWidgetElementSeverity = 307,
e_FSWidgetElementGroupParent = 308,
e_FSWidgetElementEncryptData = 309,
e_FSWidgetElementDocumentAssembly = 310,
e_FSWidgetElementNumberSymbol = 311,
e_FSWidgetElementTagged = 312,
e_FSWidgetElementItems = 313,
}FSWidgetElement;



typedef enum _FSWidgetAttributeType {
e_FSWidgetAttributeTypeH = 0,
e_FSWidgetAttributeTypeW = 1,
e_FSWidgetAttributeTypeX = 2,
e_FSWidgetAttributeTypeY = 3,
e_FSWidgetAttributeTypeLineThrough = 4,
e_FSWidgetAttributeTypeLineHAlign = 5,
e_FSWidgetAttributeTypeTypeface = 6,
e_FSWidgetAttributeTypeFontHorizontalScale = 7,
e_FSWidgetAttributeTypeTextIndent = 8,
e_FSWidgetAttributeTypeLeftInset = 9,
e_FSWidgetAttributeTypeBottomInset = 10,
e_FSWidgetAttributeTypeAllowRichText = 11,
e_FSWidgetAttributeTypeTopInset = 12,
e_FSWidgetAttributeTypeAccess = 13,
e_FSWidgetAttributeTypeMarginRight = 14,
e_FSWidgetAttributeTypeRotate = 15,
e_FSWidgetAttributeTypeUnderline = 16,
e_FSWidgetAttributeTypeBaselineShift = 17,
e_FSWidgetAttributeTypeOverlinePeriod = 18,
e_FSWidgetAttributeTypeFracDigits = 19,
e_FSWidgetAttributeTypeMarginLeft = 20,
e_FSWidgetAttributeTypeStroke = 21,
e_FSWidgetAttributeTypePresence = 22,
e_FSWidgetAttributeTypeMultiLine = 23,
e_FSWidgetAttributeTypeSpaceBelow = 24,
e_FSWidgetAttributeTypeNumberOfCells = 25,
e_FSWidgetAttributeTypeLetterSpacing = 26,
e_FSWidgetAttributeTypePasswordChar = 27,
e_FSWidgetAttributeTypeVAlign = 28,
e_FSWidgetAttributeTypeMaxH = 29,
e_FSWidgetAttributeTypeMaxW = 30,
e_FSWidgetAttributeTypeMinH = 31,
e_FSWidgetAttributeTypeMinW = 32,
e_FSWidgetAttributeTypeLayout = 33,
e_FSWidgetAttributeTypeRightInset = 34,
e_FSWidgetAttributeTypeLineThroughPeriod = 35,
e_FSWidgetAttributeTypeShape = 36,
e_FSWidgetAttributeTypeBorderWidth = 37,
e_FSWidgetAttributeTypeLocale = 38,
e_FSWidgetAttributeTypeWeight = 39,
e_FSWidgetAttributeTypeUnderlinePeriod = 40,
e_FSWidgetAttributeTypeOverline = 42,
e_FSWidgetAttributeTypeLineHeight = 43,
e_FSWidgetAttributeTypeValue = 44,
e_FSWidgetAttributeTypeTextEncoding = 45,
e_FSWidgetAttributeTypeLeadDigits = 46,
e_FSWidgetAttributeTypeSpaceAbove = 47,
e_FSWidgetAttributeTypePlacement = 48,
e_FSWidgetAttributeTypeBorderColor = 49,
e_FSWidgetAttributeTypeFillColor = 50,
e_FSWidgetAttributeTypeFontColor = 51,
e_FSWidgetAttributeTypeWidgetAttributeTypeUnknown = 52,
}FSWidgetAttributeType;


typedef struct _FSXFAWidgetModifyInfo {
  FSEventType event_type;
  int page_index;
  FSWidgetElement element;
  FSWidgetAttributeType attribute_type;
  FS_WSTR old_value;
  FS_WSTR new_value;
  FS_WSTR widget_name;
}FSXFAWidgetModifyInfo;

FSErrorCode FSDK_XFAWidget_IsEmpty(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_Release(FS_XFAWIDGET_HANDLE xfawidget_handle);
FSErrorCode FSDK_XFAWidget_GetXFAPage(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_XFAPAGE_HANDLE* return_value);
FSErrorCode FSDK_XFAWidget_GetIndex(FS_XFAWIDGET_HANDLE xfawidget_handle, int* return_value);
FSErrorCode FSDK_XFAWidget_ResetData(FS_XFAWIDGET_HANDLE xfawidget_handle);
FSErrorCode FSDK_XFAWidget_GetRect(FS_XFAWIDGET_HANDLE xfawidget_handle, FSRectF* return_value);
FSErrorCode FSDK_XFAWidget_GetValue(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_WSTR* return_value);
FSErrorCode FSDK_XFAWidget_SetValue(FS_XFAWIDGET_HANDLE xfawidget_handle, const wchar_t* value);
FSErrorCode FSDK_XFAWidget_GetDefaultValue(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_WSTR* return_value);
FSErrorCode FSDK_XFAWidget_SetDefaultValue(FS_XFAWIDGET_HANDLE xfawidget_handle, const wchar_t* value);
FSErrorCode FSDK_XFAWidget_GetName(FS_XFAWIDGET_HANDLE xfawidget_handle, FSWidgetNameType type, FS_WSTR* return_value);
FSErrorCode FSDK_XFAWidget_GetOptions(FS_XFAWIDGET_HANDLE xfawidget_handle, FSWidgetChoiceOption* return_widget_choice_option_array, FS_UINT32* return_array_length);
FSErrorCode FSDK_XFAWidget_SetOptions(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSWidgetChoiceOption* widget_choice_option_array, FS_UINT32 array_length_option_array, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_IsChecked(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_SetCheckState(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL is_checked);
FSErrorCode FSDK_XFAWidget_IsListBox(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_IsSupportMultiline(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_IsSupportMultiSelect(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_GetPresence(FS_XFAWIDGET_HANDLE xfawidget_handle, FSPresenceProperty* return_value);
FSErrorCode FSDK_XFAWidget_OnMouseEnter(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnMouseExit(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnLButtonDown(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSPointF point, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnLButtonUp(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSPointF point, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnLButtonDoubleClick(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSPointF point, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnMouseMove(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSPointF point, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnRButtonDown(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSPointF point, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnRButtonUp(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSPointF point, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnKeyDown(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_UINT32 key_code, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnKeyUp(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_UINT32 key_code, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnChar(FS_XFAWIDGET_HANDLE xfawidget_handle, int input_char, FS_UINT32 flags, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_OnHitTest(FS_XFAWIDGET_HANDLE xfawidget_handle, const FSPointF point, FSHitTestArea* return_value);
FSErrorCode FSDK_XFAWidget_GetType(FS_XFAWIDGET_HANDLE xfawidget_handle, FSWidgetType* return_value);
FSErrorCode FSDK_XFAWidget_GetHAlign(FS_XFAWIDGET_HANDLE xfawidget_handle, FSWidgetHAlignType* return_value);
FSErrorCode FSDK_XFAWidget_GetVAlign(FS_XFAWIDGET_HANDLE xfawidget_handle, FSWidgetVAlignType* return_value);
FSErrorCode FSDK_XFAWidget_HasEdge(FS_XFAWIDGET_HANDLE xfawidget_handle, FSWidgetEdgePosition edge_pos, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_GetSignature(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_SIGNATURE_HANDLE* return_value);
FSErrorCode FSDK_XFAWidget_GetToolTip(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_WSTR* return_value);
FSErrorCode FSDK_XFAWidget_GetBitmap(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BITMAP_HANDLE* return_value);
FSErrorCode FSDK_XFAWidget_SetImage(FS_XFAWIDGET_HANDLE xfawidget_handle, const FS_IMAGE_HANDLE image);
FSErrorCode FSDK_XFAWidget_IsAllowRichText(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_IsReadOnly(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_IsRequired(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_ValidateValue(FS_XFAWIDGET_HANDLE xfawidget_handle, const wchar_t* value, FS_WSTR* format, FS_BOOL* return_value);
FSErrorCode FSDK_XFAWidget_GetJavaScript(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_WSTR* return_value);
FSErrorCode FSDK_XFAWidget_GetXMLContent(FS_XFAWIDGET_HANDLE xfawidget_handle, FS_BSTR* return_value);
FSErrorCode FSDK_WidgetMenu_Create(const FS_XFAWIDGET_HANDLE xfa_widget, FS_WIDGETMENU_HANDLE* widgetmenu_return_value);
FSErrorCode FSDK_WidgetMenu_Release(FS_WIDGETMENU_HANDLE widgetmenu_handle);
FSErrorCode FSDK_WidgetMenu_IsEmpty(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanCopy(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanCut(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanPaste(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanSelectAll(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanDelete(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanDeSelect(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Copy(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_WSTR* return_value);
FSErrorCode FSDK_WidgetMenu_Cut(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_WSTR* return_value);
FSErrorCode FSDK_WidgetMenu_Paste(FS_WIDGETMENU_HANDLE widgetmenu_handle, const wchar_t* text, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_SelectAll(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Delete(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_DeSelect(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanUndo(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_CanRedo(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Undo(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Redo(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Bold(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Italic(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Underline(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Superscript(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_Subscript(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
FSErrorCode FSDK_WidgetMenu_ClearStyle(FS_WIDGETMENU_HANDLE widgetmenu_handle, FS_BOOL* return_value);
#ifdef __cplusplus
}
#endif
#endif
