## Miscellaneous

Miscellaneous

## Synopsis

    enum                GOAnchorType;
                        GODrawingAnchor;
    enum                GODrawingAnchorDir;
    enum                GOLineDashType;
    enum                GOLineInterpolation;
    const char *        (*GOTranslateFunc)                  (char const *path,
                                                             gpointer func_data);
    enum                GOFontScript;
    enum                GoResourceType;

## Object Hierarchy

      GEnum
       +----GOAnchorType

      GEnum
       +----GoResourceType

## Description

## Details

### enum GOAnchorType

    typedef enum {
      GO_ANCHOR_CENTER,
      GO_ANCHOR_NORTH,
      GO_ANCHOR_NORTH_WEST,
      GO_ANCHOR_NORTH_EAST,
      GO_ANCHOR_SOUTH,
      GO_ANCHOR_SOUTH_WEST,
      GO_ANCHOR_SOUTH_EAST,
      GO_ANCHOR_WEST,
      GO_ANCHOR_EAST,
      GO_ANCHOR_N		= GO_ANCHOR_NORTH,
      GO_ANCHOR_NW		= GO_ANCHOR_NORTH_WEST,
      GO_ANCHOR_NE		= GO_ANCHOR_NORTH_EAST,
      GO_ANCHOR_S		= GO_ANCHOR_SOUTH,
      GO_ANCHOR_SW		= GO_ANCHOR_SOUTH_WEST,
      GO_ANCHOR_SE		= GO_ANCHOR_SOUTH_EAST,
      GO_ANCHOR_W		= GO_ANCHOR_WEST,
      GO_ANCHOR_E		= GO_ANCHOR_EAST
    } GOAnchorType;

`GO_ANCHOR_CENTER` | anchor center.
`GO_ANCHOR_NORTH` | anchor top.
`GO_ANCHOR_NORTH_WEST` | anchor top left.
`GO_ANCHOR_NORTH_EAST` | anchor top left.
`GO_ANCHOR_SOUTH` | anchor bottom.
`GO_ANCHOR_SOUTH_WEST` | anchor bottom left.
`GO_ANCHOR_SOUTH_EAST` | anchor bottom left.
`GO_ANCHOR_WEST` | anchor left.
`GO_ANCHOR_EAST` | anchor right.
`GO_ANCHOR_N` | anchor top.
`GO_ANCHOR_NW` | anchor top left.
`GO_ANCHOR_NE` | anchor top left.
`GO_ANCHOR_S` | anchor bottom.
`GO_ANCHOR_SW` | anchor bottom left.
`GO_ANCHOR_SE` | anchor bottom left.
`GO_ANCHOR_W` | anchor left.
`GO_ANCHOR_E` | anchor right.

### GODrawingAnchor

    typedef struct {
    	int			pos_pts [4]; /* position in points */
    	GODrawingAnchorDir direction;
    } GODrawingAnchor;

int `pos_pts`[4]; | position in points.
GODrawingAnchorDir `direction`; | GODrawingAnchorDir

### enum GODrawingAnchorDir

    typedef enum {
    	GOD_ANCHOR_DIR_UNKNOWN    = 0xFF,
    	GOD_ANCHOR_DIR_UP_LEFT    = 0x00,
    	GOD_ANCHOR_DIR_UP_RIGHT   = 0x01,
    	GOD_ANCHOR_DIR_DOWN_LEFT  = 0x10,
    	GOD_ANCHOR_DIR_DOWN_RIGHT = 0x11,

    	GOD_ANCHOR_DIR_NONE_MASK  = 0x00,
    	GOD_ANCHOR_DIR_H_MASK	  = 0x01,
    	GOD_ANCHOR_DIR_RIGHT	  = 0x01,
    	GOD_ANCHOR_DIR_V_MASK	  = 0x10,
    	GOD_ANCHOR_DIR_DOWN	  = 0x10
    } GODrawingAnchorDir;

`GOD_ANCHOR_DIR_UNKNOWN` | unknown.
`GOD_ANCHOR_DIR_UP_LEFT` | up left.
`GOD_ANCHOR_DIR_UP_RIGHT` | up right.
`GOD_ANCHOR_DIR_DOWN_LEFT` | down left.
`GOD_ANCHOR_DIR_DOWN_RIGHT` | down right.
`GOD_ANCHOR_DIR_NONE_MASK` | mask for none.
`GOD_ANCHOR_DIR_H_MASK` | horizontal mask.
`GOD_ANCHOR_DIR_RIGHT` | right
`GOD_ANCHOR_DIR_V_MASK` | vertical mask.
`GOD_ANCHOR_DIR_DOWN` | down

### enum GOLineDashType

    typedef enum {
    	GO_LINE_NONE,
    	GO_LINE_SOLID,
    	GO_LINE_S_DOT,
    	GO_LINE_S_DASH_DOT,
    	GO_LINE_S_DASH_DOT_DOT,
    	GO_LINE_DASH_DOT_DOT_DOT,
    	GO_LINE_DOT,
    	GO_LINE_S_DASH,
    	GO_LINE_DASH,
    	GO_LINE_LONG_DASH,
    	GO_LINE_DASH_DOT,
    	GO_LINE_DASH_DOT_DOT,
    	GO_LINE_MAX
    } GOLineDashType;

`GO_LINE_NONE` | No line displayed.
`GO_LINE_SOLID` | Solid line.
`GO_LINE_S_DOT` |
`GO_LINE_S_DASH_DOT` |
`GO_LINE_S_DASH_DOT_DOT` |
`GO_LINE_DASH_DOT_DOT_DOT` |
`GO_LINE_DOT` |
`GO_LINE_S_DASH` |
`GO_LINE_DASH` |
`GO_LINE_LONG_DASH` |
`GO_LINE_DASH_DOT` |
`GO_LINE_DASH_DOT_DOT` |
`GO_LINE_MAX` |

### enum GOLineInterpolation

    typedef enum {
    	GO_LINE_INTERPOLATION_LINEAR,
    	GO_LINE_INTERPOLATION_SPLINE,
    	GO_LINE_INTERPOLATION_CLOSED_SPLINE,
    	GO_LINE_INTERPOLATION_CUBIC_SPLINE,
    	GO_LINE_INTERPOLATION_PARABOLIC_CUBIC_SPLINE,
    	GO_LINE_INTERPOLATION_CUBIC_CUBIC_SPLINE,
    	GO_LINE_INTERPOLATION_CLAMPED_CUBIC_SPLINE,
    	GO_LINE_INTERPOLATION_STEP_START,
    	GO_LINE_INTERPOLATION_STEP_END,
    	GO_LINE_INTERPOLATION_STEP_CENTER_X,
    	GO_LINE_INTERPOLATION_STEP_CENTER_Y,
    	GO_LINE_INTERPOLATION_ODF_SPLINE,
    	GO_LINE_INTERPOLATION_MAX
    } GOLineInterpolation;

`GO_LINE_INTERPOLATION_LINEAR` | Linear interpolation.
`GO_LINE_INTERPOLATION_SPLINE` | Bezier cubic spline interpolation.
`GO_LINE_INTERPOLATION_CLOSED_SPLINE` | Closed Bezier cubic spline interpolation.
`GO_LINE_INTERPOLATION_CUBIC_SPLINE` | Cubic spline interpolation with natural limits.
`GO_LINE_INTERPOLATION_PARABOLIC_CUBIC_SPLINE` | Cubic spline interpolation with parabolic limits.
`GO_LINE_INTERPOLATION_CUBIC_CUBIC_SPLINE` | Cubic spline interpolation with cubic limits.
`GO_LINE_INTERPOLATION_CLAMPED_CUBIC_SPLINE` | Cubic spline interpolation with fixed derivatives at both ends.
`GO_LINE_INTERPOLATION_STEP_START` | Steps using first y value.
`GO_LINE_INTERPOLATION_STEP_END` | Steps using last y value.
`GO_LINE_INTERPOLATION_STEP_CENTER_X` | Steps centered around each point.
`GO_LINE_INTERPOLATION_STEP_CENTER_Y` | Steps using mean y value.
`GO_LINE_INTERPOLATION_ODF_SPLINE` | ODF compatible Bezier cubic spline interpolation, cyclic if first and last points are identical.
`GO_LINE_INTERPOLATION_MAX` | First invalid value.

### GOTranslateFunc ()

    const char *        (*GOTranslateFunc)                  (char const *path,
                                                             gpointer func_data);

### enum GOFontScript

    typedef enum {
    	GO_FONT_SCRIPT_SUB = -1,
    	GO_FONT_SCRIPT_STANDARD =  0,
    	GO_FONT_SCRIPT_SUPER =  1
    } GOFontScript;

`GO_FONT_SCRIPT_SUB` | subscript.
`GO_FONT_SCRIPT_STANDARD` | normal.
`GO_FONT_SCRIPT_SUPER` | superscript.

### enum GoResourceType

    typedef enum {
    	GO_RESOURCE_NATIVE,
    	GO_RESOURCE_RO,
    	GO_RESOURCE_RW,
    	GO_RESOURCE_CHILD,
    	GO_RESOURCE_EXTERNAL,
    	GO_RESOURCE_GENERATED,
    	GO_RESOURCE_INVALID
    } GoResourceType;

`GO_RESOURCE_NATIVE` | in goffice code resource.
`GO_RESOURCE_RO` | read only on disk resource.
`GO_RESOURCE_RW` | on disk resource which can be overwritten.
`GO_RESOURCE_CHILD` | child of another resource.
`GO_RESOURCE_EXTERNAL` | resource from a data file.
`GO_RESOURCE_GENERATED` | resource generated by the framework.
`GO_RESOURCE_INVALID` | invalid resource.