.. _group__a3d__pdf__widget__module:

##################################
Interactive Layout Entities Module
##################################

Module for interactive widgets on a PDF page. 

This module describes the functions and structures that allow you to define or retrieve widgets on a PDF Page. Widgets are interactive entitities that can be modified with JavaScript coding at runtime. Functions exist to create widgets on a page, or retrieve widgets on an existing page.

Widgets are divided in two categories: the Fields, and the High Level widgets. Fields are Acrobat Forms entities existing on a page. These Fields can be authored using Acrobat. High Level widgets are HOOPS Publish entities. They usually are built from a set of Fields. High Level widgets can only be authored by HOOPS Publish functions. 

**Parameters**


   **pPage**\ : The Page object to work with. 

   **pcFieldName**\ : The name of the form field. Only Acroform fields are supported. 

   **pcItemValue**\ : The item string which will be visible to the user in the list field. 

   **pcItemExportValue**\ : The export value for the item. This value acts as a 'symbolic value' for the item.


**Returns**


   A3D_SUCCESS in case of success or an error code


.. rst-class:: kind-group kind-topic

.. rubric:: Topics
   :class: kind-group-title


.. rst-class:: api-xref-list


* :ref:`Check Box Module <group__a3d__pdffield__checkbox>`
* :ref:`Radio Button Module <group__a3d__pdffield__radiobutton>`
* :ref:`ListBox Module <group__a3d__pdffield__listbox>`
* :ref:`Drop down List Module <group__a3d__pdffield__dropdownlist>`
* :ref:`View Carousel Module <group__a3d__pdfwidget__carousel>`
* :ref:`Scroll Table Module <group__a3d__pdfwidget__scrolltable>`
* :ref:`Button Module <group__a3d__pdffield__button>`
* :ref:`Text Field Module <group__a3d__pdffield__text>`
* :ref:`Digital Signature Module <group__a3d__pdffield__signature>`

.. rst-class:: kind-group kind-record

.. rubric:: Structures
   :class: kind-group-title


.. rst-class:: api-xref-list


* :c:struct:`~A3DPDFFieldData`

.. rst-class:: kind-group kind-enumeration

.. rubric:: Enumerations
   :class: kind-group-title


.. rst-class:: api-xref-list


* :c:enum:`~A3DPDFEFieldType`
* :c:enum:`~A3DPDFEFormField`
* :c:enum:`~A3DPDFETextOrientation`
* :c:enum:`~A3DPDFEThicknessBorder`
* :c:enum:`~A3DPDFELineStyleBorder`

.. rst-class:: kind-group kind-function

.. rubric:: Functions
   :class: kind-group-title


.. rst-class:: api-xref-list


* :c:func:`~A3DPDFPageFieldListAddItem`
* :c:func:`~A3DPDFPageGetFields`
* :c:func:`~A3DPDFPageGetField`
* :c:func:`~A3DPDFFieldGetInformation`
* :c:func:`~A3DPDFWidgetGetPosition`
* :c:func:`~A3DPDFWidgetGetName`
* :c:func:`~A3DPDFPageFieldSetVisibility`

.. toctree::
   :maxdepth: 1
   :hidden:

   a3d_pdffield_checkbox
   a3d_pdffield_radiobutton
   a3d_pdffield_listbox
   a3d_pdffield_dropdownlist
   a3d_pdfwidget_carousel
   a3d_pdfwidget_scrolltable
   a3d_pdffield_button
   a3d_pdffield_text
   a3d_pdffield_signature
   ../structures/A3DPDFFieldData
   ../enums/A3DPDFEFieldType
   ../enums/A3DPDFEFormField
   ../enums/A3DPDFETextOrientation
   ../enums/A3DPDFEThicknessBorder
   ../enums/A3DPDFELineStyleBorder
   ../functions/A3DPDFPageFieldListAddItem
   ../functions/A3DPDFPageGetFields
   ../functions/A3DPDFPageGetField
   ../functions/A3DPDFFieldGetInformation
   ../functions/A3DPDFWidgetGetPosition
   ../functions/A3DPDFWidgetGetName
   ../functions/A3DPDFPageFieldSetVisibility


