[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]


    NAME
        bevel_ic -- create bevel BOOPSI objects

    SUPERCLASS
        imageclass

    REQUIRES
        None.

    DESCRIPTION
        This image class can create a varity of bevel boxes styles
        including those appropriate as gadget borders, titled or
        non-titled grouping boxes and more. This class is very simular
        in function to the frameiclass in OS 3.x rom, except this class
        supports the newer style bevels under OS 2.04 as well.

    METHODS
        OM_NEW -- Create the bevel image.  Passed to superclass, then OM_SET.

        OM_GET -- Get object attributes.  Passed to superclass first.

        OM_SET -- Set object attributes.  Passed to superclass first.

        IM_FRAMEBOX -- Initial attempt at this method, totally
            untested at this time. If you know what it is and need it
            then try it and report any bugs. :)

        IM_DRAW -- Renders the images.  Overrides the superclass.

        IM_DRAWFRAME -- Renders the images at the frame size.
            Any following IM_DRAW will be at this frame size w/o a
            overriding OM_SET. Overrides the superclass.

        IM_ERASE -- Erase the images.  Overrides the superclass.

        IM_ERASEFRAME -- Erase the images at the frame size.
            Overrides the superclass.

        All other methods are passed to the superclass, including OM_DISPOSE.

    ATTRIBUTES
        IA_Top (WORD)
        IA_Left (WORD)
        IA_Width (WORD)
        IA_Height (WORD)
            Set bevel image size and position.

            Applicability is (OM_NEW, OM_SET)

        IA_SupportsDisable (BOOL)
            Reports TRUE if the image class can render its own
            disable pattern.

            Applicability is (OM_GET)

        IA_APattern (UWORD *)
            Optional inner fill pattern for SetAfPt() when used in
            conjunction with BEVEL_FillPen. See also BEVEL_FillPattern.
            I missed the OS support of this tag, thus, it is duplicated
            in BEVEL_FillPattern which will remain for backwards
            compatibility.

            Defaults to NULL.

            Applicability is (OM_NEW, OM_SET)

        IA_APatSize (UWORD)
            Set pattern size for the pattern passed via IA_APattern.
            Defaults to 1. With BEVEL_FillPattern, the size was fixed.

            Applicability is (OM_NEW, OM_SET)

        IA_Recessed
            Inverts SHADOW/SHINEPEN and shading rendering pens.

            Applicability is (OM_NEW, OM_SET)

        IA_EdgesOnly
            See BEVEL_Transparent.

            Applicability is (OM_NEW, OM_SET)

        IA_FrameType
            Accepts all frameiclass frame types, and converts them
            the closest matching BEVEL_Style type honoring the
            current user preference settings.

            Applicability is (OM_SET)

        IA_Font (struct textattr *)
            text attribute to use for any label text.

            Applicability is (OM_NEW, OM_SET)

        IA_HighlightPen (UWORD)
        IA_FGPen (UWORD)
            Foreground pen.

            Defaults to SHINEPEN.

            Applicability is (OM_NEW, OM_SET)

        IA_ShadowPen (UWORD)
        IA_BGPen (UWORD)
            Background pen.

            Defaults to SHADOWPEN.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_FillPen (WORD)
            Inner bevel area rectfill() pen number, ~0 means to
            ignore, and not to rectfill().

            Defaults to ~0.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_FillPattern (UWORD *)
            Optional inner fill pattern for SetAfPt() when used in
            conjunction with BEVEL_FillPen.  See also: IA_APattern

            Defaults to NULL.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_TextPen (WORD)
            Bevel text rendering pen number, ~0 will render
            in TEXTPEN.

            Defaults to ~0.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_Style (BOOL)
            Specifies the bevel box style, may be one of the following;

                BVS_THIN       - thin/small bevel
                BVS_BUTTON     - standard button bevel (thin/thick pref)
                BVS_GROUP      - layout/grouping bevel (thin/thick pref)
                BVS_FIELD      - string/inputfield bevel (thin/thick pref)
                BVS_NONE       - no bevel
                BVS_DROPBOX    - standard dropbox
                BVS_SBAR_HORIZ - horizontal separator bar
                BVS_SBAR_VERT  - vertical separator bar
                BVS_BOX        - plain "black" box bevel
                BVS_STANDARD   - Simular to BVS_BUTTON, but no XEN!

            Defaults to BVS_BUTTON

            Applicability is (OM_NEW, OM_SET)

        BEVEL_Label (STRPTR)
            Specifies the text label for the bevel box.

            Defaults to NULL.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_LabelPlace (WORD)
            Specifies label location, may be one of the following;

                BVJ_TOP_CENTER
                BVJ_TOP_LEFT
                BVJ_TOP_RIGHT
                BVJ_IN_CENTER
                BVJ_IN_LEFT
                BVJ_IN_RIGHT

            Defaults to BVJ_TOP_CENTER.

            NOTE: BVS_BOTTOM_* settings not yet implemented

            Applicability is (OM_NEW, OM_SET)

        BEVEL_InnerTop (WORD)
            Get only attribute, returns the inside-top offset of the
            bevel box accounting for any BVJ_TOP text label placements.

            Applicability is (OM_GET)

        BEVEL_InnerLeft (WORD)
            Get only attribute, returns the inside-left offset of the
            bevel box.

            Applicability is (OM_GET)

        BEVEL_InnerWidth (WORD)
            Get only attribute, returns the inside-width of the
            bevel box, basically the same as;

                IA_Width - (BEVEL_VertSize * 2) - 1

            Except this also accounts for the BVS_TOP label placements.

            Applicability is (OM_GET)

        BEVEL_InnerHeight (WORD)
            Get only attribute, returns the inside - height of the
            bevel box, basically the same as;

                IA_Height - (BEVEL_InnerTop + BEVEL_HorzSize) - 1

            with the exception that BEVEL_InnerHeight will account for
            any text label for a BVS_GROUP style bevel.

            Applicability is (OM_GET)

        BEVEL_HorizSize (WORD)
            Get only attribute, returns the nominal size (in pixels) of
            the horizontal lines the bevel will draw for the givel style.

            Applicability is (OM_GET)

        BEVEL_VertSize (WORD)
            Get only attribute, returns the nominal size (in pixels) of
            the vertical lines the bevel will draw for the given style.

            Applicability is (OM_GET)

        BEVEL_SoftStyle (WORD)
            Font softstyles to apply.
            See <graphics/text.h> softstyle definitions.

            Defaults to 0.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_Transparent (BOOL)
            If set TRUE, bevel will not attempt to render or erase any
            part of the inner area of the bevel.

            Defaults to FALSE.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_ColorMap (struct colormap *)
            screen viewport colormap pointer, use to obtain additional
            best-match pens for XEN and possibly other future multi-pen
            beveling options. MWB or NI3 palette recommended for best
            results.

            Defaults to NULL.

            Applicability is (OM_NEW, OM_SET)

        BEVEL_Flags (UWORD)
            Intentionally left undocumented! It is used for some hidden
            BVS_BUTTON xen style magic. Class authors inquire as needed.

            Defaults to 0.

            Applicability is (OM_NEW, OM_SET)