# viewport_type.h File Reference

Types related to viewports. More...

`#include "zoom_type.h"`
`#include "strings_type.h"`

Go to the source code of this file.

## Data Structures

struct | ViewPort
| Data structure for viewport, display of a part of the world. More...
struct | ViewportSign
| Location information about a sign as seen on the viewport. More...

## Enumerations

enum | ViewportSignMargin { VPSM_LEFT = 1, VPSM_RIGHT = 1, VPSM_TOP = 1, VPSM_BOTTOM = 1 }
| Margings for the viewport sign. More...
enum | { ZOOM_IN = 0, ZOOM_OUT = 1, ZOOM_NONE = 2 }
enum | { BB_HEIGHT_UNDER_BRIDGE = 6, BB_Z_SEPARATOR = 7 }
| Some values for constructing bounding boxes (BB). More...
enum | ViewportPlaceMethod { VPM_X_OR_Y = 0, VPM_FIX_X = 1, VPM_FIX_Y = 2, VPM_X_AND_Y = 3, VPM_X_AND_Y_LIMITED = 4, VPM_FIX_HORIZONTAL = 5, VPM_FIX_VERTICAL = 6, VPM_X_LIMITED = 7, VPM_Y_LIMITED = 8, VPM_RAILDIRS = 0x40, VPM_SIGNALDIRS = 0x80 }
| Viewport place method (type of highlighted area and placed objects). More...

enum

ViewportDragDropSelectionProcess {
DDSP_DEMOLISH_AREA, DDSP_RAISE_AND_LEVEL_AREA, DDSP_LOWER_AND_LEVEL_AREA, DDSP_LEVEL_AREA,
DDSP_CREATE_DESERT, DDSP_CREATE_ROCKS, DDSP_CREATE_WATER, DDSP_CREATE_RIVER,
DDSP_PLANT_TREES, DDSP_BUILD_BRIDGE, DDSP_PLACE_RAIL, DDSP_BUILD_SIGNALS,
DDSP_BUILD_STATION, DDSP_REMOVE_STATION, DDSP_CONVERT_RAIL, DDSP_PLACE_ROAD_X_DIR,
DDSP_PLACE_ROAD_Y_DIR, DDSP_PLACE_AUTOROAD
}

| Drag and drop selection process, or, what to do with an area of land when you've selected it. More...

## Functions

| DECLARE_ENUM_AS_BIT_SET (ViewportPlaceMethod)

## Detailed Description

Types related to viewports.

Definition in file viewport_type.h.

## Enumeration Type Documentation

anonymous enum

Some values for constructing bounding boxes (BB).

The Z positions under bridges are: z=0..5 Everything that can be built under low bridges. z=6 reserved, currently unused. z=7 Z separator between bridge/tunnel and the things under/above it.

Enumerator:

  BB_HEIGHT_UNDER_BRIDGE | Everything that can be built under low bridges, must not exceed this Z height.
  BB_Z_SEPARATOR | Separates the bridge/tunnel from the things under/above it.

Definition at line 66 of file viewport_type.h.

enum ViewportDragDropSelectionProcess

Drag and drop selection process, or, what to do with an area of land when you've selected it.

Enumerator:

  DDSP_DEMOLISH_AREA | Clear area.
  DDSP_RAISE_AND_LEVEL_AREA | Raise / level area.
  DDSP_LOWER_AND_LEVEL_AREA | Lower / level area.
  DDSP_LEVEL_AREA | Level area.
  DDSP_CREATE_DESERT | Fill area with desert.
  DDSP_CREATE_ROCKS | Fill area with rocks.
  DDSP_CREATE_WATER | Create a canal.
  DDSP_CREATE_RIVER | Create rivers.
  DDSP_PLANT_TREES | Plant trees.
  DDSP_BUILD_BRIDGE | Bridge placement.
  DDSP_PLACE_RAIL | Rail placement.
  DDSP_BUILD_SIGNALS | Signal placement.
  DDSP_BUILD_STATION | Station placement.
  DDSP_REMOVE_STATION | Station removal.
  DDSP_CONVERT_RAIL | Rail conversion.
  DDSP_PLACE_ROAD_X_DIR | Road placement (X axis).
  DDSP_PLACE_ROAD_Y_DIR | Road placement (Y axis).
  DDSP_PLACE_AUTOROAD | Road placement (auto).

Definition at line 89 of file viewport_type.h.

enum ViewportPlaceMethod

Viewport place method (type of highlighted area and placed objects).

Enumerator:

  VPM_X_OR_Y | drag in X or Y direction
  VPM_FIX_X | drag only in X axis
  VPM_FIX_Y | drag only in Y axis
  VPM_X_AND_Y | area of land in X and Y directions
  VPM_X_AND_Y_LIMITED | area of land of limited size
  VPM_FIX_HORIZONTAL | drag only in horizontal direction
  VPM_FIX_VERTICAL | drag only in vertical direction
  VPM_X_LIMITED | Drag only in X axis with limited size.
  VPM_Y_LIMITED | Drag only in Y axis with limited size.
  VPM_RAILDIRS | all rail directions
  VPM_SIGNALDIRS | similiar to VMP_RAILDIRS, but with different cursor

Definition at line 72 of file viewport_type.h.

enum ViewportSignMargin

Margings for the viewport sign.

Enumerator:

  VPSM_LEFT | Left margin.
  VPSM_RIGHT | Right margin.
  VPSM_TOP | Top margin.
  VPSM_BOTTOM | Bottom margin.

Definition at line 36 of file viewport_type.h.