package org.openntf.domino.nsfdata.structs.cd; import org.openntf.domino.nsfdata.structs.SIG; import org.openntf.domino.nsfdata.structs.WSIG; /** * This structure specifies the start of a "hot" region in a rich text field. Clicking on a hot region causes some other action to occur. * For instance, clicking on a popup will cause a block of text associated with that popup to be displayed. (editods.h) * */ public class CDHOTSPOTBEGIN extends CDRecord { /** * These flags are used to define what type of hotspot is being defined by a CDHOTSPOTBEGIN data structure. (editods.h) * */ public static enum HotspotType { /** The hotspot is a popup */ POPUP, /** * The hotspot is a button whose presentation is an arbitrary region of the rich text field. This region is bounded by the * CDHOTSPOTBEGIN and CDHOTSPOTEND records. */ HOREGION, /** The hotspot is a button. */ BUTTON, /** The hotspot is a file attachment. */ FILE, UNUSED5, UNUSED6, /** The hotspot is a Notes Release 3 section field hotspot. */ SECTION, /** Unused */ ANY, UNUSED9, UNUSED10, /** * The hotspot is a document, database, or view link hotspot. The presentation of this hotspot is an arbitrary region of the rich * text field. This region is bounded by the CDHOTSPOTBEGIN and CDHOTSPOTEND records. */ HOTLINK, /** The hotspot is a standard collapsible section which is not access controlled. */ BUNDLE, /** The hotspot is an access controlled collapsible section. */ V4_SECTION, /** The hotspot is a subform. */ SUBFORM, /** The hotspot is an active object. */ ACTIVEOBJECT, UNUSED16, UNUSED17, /** The hotspot is an OLE rich text object. */ OLERICHTEXT, /** The hotspot is an embedded view. */ EMBEDDEDVIEW, /** The hotspot is an embedded folder pane. */ EMBEDDEDPANE, /** The hotspot is an embedded navigator. */ EMBEDDEDNAV, /** The hotspot is mouse over text popup. */ MOUSEOVER, UNUSED23, /** The hotspot is a file upload placeholder. */ FILEUPLOAD, UNUSED25, UNUSED26, /** The hotspot is an embedded outline. */ EMBEDDEDOUTLINE, /** The hotspot is an embedded control window. */ EMBEDDEDCTL, UNUSED29, /** The hotspot is an embedded calendar control (date picker). */ EMBEDDEDCALENDARCTL, /** The hotspot is an embedded scheduling control. */ EMBEDDEDSCHEDCTL, /** The hotspot is a resource link. */ RCLINK, UNUSED33, /** The hotspot is an embedded editor control. */ EMBEDDEDEDITCEL, UNUSED35, /** Embeddable buddy list. */ CONTACTLISTCTL; } public final WSIG Header = inner(new WSIG()); public final Enum16<HotspotType> Type = new Enum16<HotspotType>(HotspotType.values()); // TODO make enum public final Unsigned32 Flags = new Unsigned32(); public final Unsigned16 DataLength = new Unsigned16(); static { addVariableData("Data", "DataLength"); } @Override public SIG getHeader() { return Header; } public byte[] getHotspotData() { return (byte[]) getVariableElement("Data"); } // TODO add accessors for data // /* if HOTSPOTREC_RUNFLAG_SIGNED, WORD SigLen then SigData follows. */ }