SketchUp C API

- Main Page
- Related Pages
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Related Functions
SUOptionsProviderRef Struct Reference

Provides ability to get and set options on an options provider object. Available options providers are: PageOptions, SlideshowOptions, UnitsOptions and PrintOptions. More...

`#include <SketchUpAPI/model/options_provider.h>`

## Related Functions
(Note that these are not member functions.)
enum SUResult | SUOptionsProviderGetNumKeys (SUOptionsProviderRef options_provider, size_t *count)
| Gets the number of available option keys. More...
enum SUResult | SUOptionsProviderGetKeys (SUOptionsProviderRef options_provider, size_t len, SUStringRef keys[], size_t *count)
| Retrieves options providers associated with the options manager. More...
enum SUResult | SUOptionsProviderGetValue (SUOptionsProviderRef options_provider, const char *key, SUTypedValueRef *value)
| Gets the value of the given option. More...
enum SUResult | SUOptionsProviderSetValue (SUOptionsProviderRef options_provider, const char *key, SUTypedValueRef value)
| Sets the value of the given option. More...
enum SUResult | SUOptionsProviderGetName (SUOptionsProviderRef options_provider, SUStringRef *name)
| Retrieves the name of the options provider. More...

## Detailed Description

Provides ability to get and set options on an options provider object. Available options providers are: PageOptions, SlideshowOptions, UnitsOptions and PrintOptions.

## Friends And Related Function Documentation

enum SUResult SUOptionsProviderGetKeys | ( | SUOptionsProviderRef | options_provider,
|  | size_t | len,
|  | SUStringRef | keys[],
|  | size_t * | count
| ) |  |
| related

Retrieves options providers associated with the options manager.

Parameters

  [in] | options_provider | The options provider object.
  [in] | len | The number of keys to retrieve.
  [out] | keys | The keys retrieved.
  [out] | count | The number of keys retrieved.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_INVALID_INPUT if options_provider is not a valid object
  - SU_ERROR_NULL_POINTER_OUTPUT if keys or count is NULL
  - SU_ERROR_INVALID_OUTPUT if any of the strings in the keys array are invalid.

enum SUResult SUOptionsProviderGetName | ( | SUOptionsProviderRef | options_provider,
|  | SUStringRef * | name
| ) |  |
| related

Retrieves the name of the options provider.

Since
  SketchUp 2016, API 4.0

Parameters

  [in] | options_provider | The options provider object.
  [out] | name | The name retrieved.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_INVALID_INPUT if options_provider or value is not valid
  - SU_ERROR_NULL_POINTER_OUTPUT if name is NULL
  - SU_ERROR_INVALID_OUTPUT if name does not point to a valid SUStringRef object

enum SUResult SUOptionsProviderGetNumKeys | ( | SUOptionsProviderRef | options_provider,
|  | size_t * | count
| ) |  |
| related

Gets the number of available option keys.

Parameters

  [in] | options_provider | The options provider object.
  [out] | count | The number of keys available.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_INVALID_INPUT if options_provider is not valid
  - SU_ERROR_NULL_POINTER_OUTPUT if count is NULL

enum SUResult SUOptionsProviderGetValue | ( | SUOptionsProviderRef | options_provider,
|  | const char * | key,
|  | SUTypedValueRef * | value
| ) |  |
| related

Gets the value of the given option.

Parameters

  [in] | options_provider | The options provider object.
  [in] | key | The key that indicates which option to get.
  [out] | value | The value to get the current option setting.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_INVALID_INPUT if options_provider is not valid
  - SU_ERROR_NULL_POINTER_INPUT if key is NULL
  - SU_ERROR_NULL_POINTER_OUTPUT if value is NULL
  - SU_ERROR_INVALID_OUTPUT if value is invalid

The breakdown of options and value types for each options provider is shown in the table below.

Options Provider | Option | Value Type | Meaning
--- | --- | --- | ---
NamedOptions |  |  | (SketchUp 2022.0, API 10.0) Removed from API
PageOptions |  |  | Options for the Scene
| ShowTransition | SUTypedValueType_Bool | Show scene transitions
| TransitionTime | SUTypedValueType_Double | Number of seconds between each scene transition
SlideshowOptions |  |  | Options for the slideshow
| LoopSlideshow | SUTypedValueType_Bool | Causes the slideshow to loop
| SlideTime | SUTypedValueType_Double | Number of seconds that each slide is shown
UnitsOptions |  |  | Options for units display in the model
| LengthPrecision | SUTypedValueType_Int32 | Number of decimal places of precision shown for length
| LengthFormat | SUTypedValueType_Int32 | Default units format for the model
| LengthUnit | SUTypedValueType_Int32 | Units format for the model
| LengthSnapEnabled | SUTypedValueType_Bool | Indicates whether length snapping is enabled
| LengthSnapLength | SUTypedValueType_Double | Controls the snapping length size increment
| AreaPrecision | SUTypedValueType_Int32 | (SketchUp 2020.0, API Version 8.0) Number of decimal places of precision shown for area units
| AreaUnit | SUTypedValueType_Int32 | (SketchUp 2019.2, API Version 7.1) Area units format for the model
| VolumePrecision | SUTypedValueType_Int32 | (SketchUp 2020.0, API Version 8.0) Number of decimal places of precision shown for volume units
| VolumeUnit | SUTypedValueType_Int32 | (SketchUp 2019.2, API Version 7.1) Volume units format for the model
| AnglePrecision | SUTypedValueType_Int32 | Number of decimal places of precision shown for angles
| AngleSnapEnabled | SUTypedValueType_Bool | Indicates whether angle snapping is enabled
| SnapAngle | SUTypedValueType_Double | Controls the angle snapping size increment
| SuppressUnitsDisplay | SUTypedValueType_Bool | Display the units format if LengthFormat is Decimal or Fractional
| ForceInchDisplay | SUTypedValueType_Bool | Force displaying 0" if LengthFormat is Architectural

Some of the options map to enumerated values, as shown in the table below.

Option | Value | Meaning
--- | --- | ---
LengthFormat | 0: | Decimal
| 1: | Architectural
| 2: | Engineering
| 3: | Fractional
LengthUnit | 0: | Inches
| 1: | Feet
| 2: | Millimeter
| 3: | Centimeter
| 4: | Meter
| 5: | Yard
AreaUnit | 0: | Square Inches
| 1: | Square Feet
| 2: | Square Millimeter
| 3: | Square Centimeter
| 4: | Square Meter
| 5: | Square Yard
VolumeUnit | 0: | Cubic Inches
| 1: | Cubic Feet
| 2: | Cubic Millimeter
| 3: | Cubic Centimeter
| 4: | Cubic Meter
| 5: | Cubic Yard
| 6: | Liter
| 7: | US Gallon

Note that LengthUnit will be overridden by LengthFormat if LengthFormat is not set to Decimal. Architectural defaults to inches, Engineering defaults to feet, and Fractional defaults to inches.

enum SUResult SUOptionsProviderSetValue | ( | SUOptionsProviderRef | options_provider,
|  | const char * | key,
|  | SUTypedValueRef | value
| ) |  |
| related

Sets the value of the given option.

Parameters

  [in] | options_provider | The options provider object.
  [in] | key | The key that indicates which option to set.
  [in] | value | The value to set the option to.

Returns
  - SU_ERROR_NONE on success
  - SU_ERROR_INVALID_INPUT if options_provider or value is not valid
  - SU_ERROR_NULL_POINTER_INPUT if key is NULL

The documentation for this struct was generated from the following files:

- SketchUpAPI/model/defs.h
- SketchUpAPI/model/options_provider.h