blob: 750738b17df021e50bbe2ca09c6a5a769a21ef19 [file] [log] [blame]
// Copyright 2017 PDFium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#ifndef FXJS_XFA_CJX_FIELD_H_
#define FXJS_XFA_CJX_FIELD_H_
#include "fxjs/xfa/cjx_container.h"
#include "fxjs/xfa/jse_define.h"
class CXFA_Field;
class CJX_Field final : public CJX_Container {
public:
CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED;
~CJX_Field() override;
// CJX_Object:
bool DynamicTypeIs(TypeTag eType) const override;
JSE_METHOD(addItem);
JSE_METHOD(boundItem);
JSE_METHOD(clearItems);
JSE_METHOD(deleteItem);
JSE_METHOD(execCalculate);
JSE_METHOD(execEvent);
JSE_METHOD(execInitialize);
JSE_METHOD(execValidate);
JSE_METHOD(getDisplayItem);
JSE_METHOD(getItemState);
JSE_METHOD(getSaveItem);
JSE_METHOD(setItemState);
JSE_PROP(defaultValue); /* {default} */
JSE_PROP(editValue);
JSE_PROP(formatMessage);
JSE_PROP(formattedValue);
JSE_PROP(length);
JSE_PROP(parentSubform);
JSE_PROP(rawValue);
JSE_PROP(selectedIndex);
private:
explicit CJX_Field(CXFA_Field* field);
using Type__ = CJX_Field;
using ParentType__ = CJX_Container;
static const TypeTag static_type__ = TypeTag::Field;
static const CJX_MethodSpec MethodSpecs[];
};
#endif // FXJS_XFA_CJX_FIELD_H_