.. index:: single: Object Inspector Object Inspector ================ The Object Inspector is the right-side panel that displays and edits properties of the selected object(s), the active layer, or drawing-level settings. Toggle its visibility with the **Properties** button on the Quick Access Toolbar. .. figure:: ../../../images/inspector_overview.png :align: center The redesigned Object Inspector with collapsible categories. .. index:: single: Architecture Architecture ------------ The inspector is built on **TVirtualStringTree** — a high-performance tree control that renders property rows as tree nodes organised into collapsible **category groups**. This replaces the earlier custom panel implementation. Key design features: - **Collapsible categories** — click a category header to expand or collapse its properties. - **Owner-drawn combo editors** — Color properties show an inline colour swatch (no text). Layer combos show colour swatch + name. Linetype combos show a dash pattern preview. Lineweight combos show a thickness preview line. - **Value type colour-coding** — numeric values are shown in green, strings in orange, read-only values in grey, and multi-select differing values in dimmed italic ("Varies"). - **Keyboard navigation** — **Tab** / **Shift+Tab** cycles through editable rows; **Enter** commits a value; **Escape** reverts. - **Human-friendly labels** — PascalCase property names are automatically converted to spaced labels (e.g. ``BackgroundColor`` becomes "Background Color"). Proxies can override labels for context-aware naming (e.g. ``ShowScaleBar`` becomes "Show" under the Scale Bar group). .. index:: single: Selection Filter Selection Filter ---------------- At the top of the inspector panel is a **Selection Filter** combo box. Set it to a specific entity type (e.g. *Line*, *Polyline*, *Circle*, *Survey Point*) to restrict which entity types can be picked on the canvas. Set it to **All** (default) to allow selection of any entity type. .. figure:: ../../../images/inspector_selection_filter.png :align: center Selection filter combo restricting picks to a specific entity type. .. index:: single: Multi-Selection Multi-Selection --------------- Select multiple objects (window, crossing, Ctrl+click, or Ctrl+A) to inspect them all at once. The inspector shows properties shared by all selected entities: - Properties with the **same value** across all entities display that value normally. - Properties with **different values** display as italic *Varies*. - Editing a value applies the change to **all** selected entities simultaneously. .. figure:: ../../../images/inspector_multi_select.png :align: center Multi-selection showing "Varies" for differing property values. .. index:: single: Common Properties (All Objects) Common Properties (All Objects) --------------------------------- .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Handle** - Unique numeric identifier — read-only. * - **Name** - Optional user-assigned label for the object. * - **Layer** - The layer this object belongs to. Owner-drawn combo shows colour swatch + layer name. * - **Color** - Object colour. ``ByLayer`` inherits from the layer. Owner-drawn combo shows colour swatch only. * - **Line Type** - ``ByLayer``, a built-in type, or a custom named type loaded from a ``.LIN`` file. Owner-drawn combo shows a dash pattern preview. * - **Line Width** - Pen width. Owner-drawn combo shows a thickness preview line. .. index:: single: Canvas / Drawing Defaults Canvas / Drawing Defaults -------------------------- When **no object is selected**, the inspector shows drawing-level defaults used for new objects, organised into categories: .. list-table:: :header-rows: 1 :widths: 28 72 * - Property - Description * - **Current Color** - Default colour for new objects (``ByLayer`` recommended). * - **Current Linetype** - Default linetype for new objects. * - **Current Line Width** - Default pen width for new objects. * - **Grid Visible** - Show or hide the background grid. * - **Background Color** - Canvas background colour. .. index:: single: Line Properties Line Properties --------------- .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Start Point / End Point** - World coordinates of the endpoints. Edit to reposition precisely. .. index:: single: Polyline and Multiline Properties single: Polyline single: Multiline Properties Polyline and Multiline Properties ---------------------------------- .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Closed** - Whether the polyline is closed (last vertex connects to first). * - **Vertex** - Vertex navigation row with **[<]** and **[>]** buttons and a label showing **Vertex N of M** between them. Click the arrows or change the index to navigate. Sub-properties: **X**, **Y**, **Bulge** (Z is also shown for 3D polylines). * - **End Caps** (Multiline) - When checked, perpendicular lines are drawn across both ends of the multiline. .. index:: single: Hatch Properties Hatch Properties ---------------- Hatch properties are shown on polylines, rectangles, and other entities that support hatching: .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Hatch Pattern** - Pattern name combo (ANSI31, ANSI32, NET, DOTS, SOLID, etc.). * - **Hatch Scale** - Pattern scale factor. * - **Hatch Angle** - Pattern rotation angle in degrees. * - **Hatch Color** - Hatch line colour. * - **Hatch Background Color** - Fill colour behind the hatch pattern. * - **Hatch Transparency** - 0 (opaque) to 255 (fully transparent). .. index:: single: 3D Polyline Properties 3D Polyline Properties ----------------------- .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Closed** - Whether the 3D polyline is closed. * - **Spline Flag** - Enable Catmull-Rom spline interpolation in full 3D (X, Y, Z). * - **Spline Steps** - Number of interpolation steps per spline segment (default 20). * - **Point Count** - Number of vertices — read-only. * - **Poly Length** - Total polyline length — read-only. * - **Vertex** - Navigation row with **[<] Vertex N of M [>]**. Sub-properties: **X**, **Y**, **Z**. .. index:: single: Text Properties Text Properties --------------- .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Text** - The string content. * - **Height** - Text height in world units. * - **Style Name** - Named text style (font, width factor, oblique angle, bold/italic). * - **Bold / Italic** - Per-object override of the style's weight/style. * - **H Align / V Align** - Horizontal and vertical justification. * - **Rotation** - Rotation angle in degrees. .. index:: single: Multileader Properties Multileader Properties ---------------------- .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Text** - Label text content. * - **Arrow Style** - *Filled*, *Open*, or *None*. * - **Arrow Size** - Arrowhead size in world units. * - **Landing Gap** - Length of the horizontal dogleg connecting the leader to the label. * - **Text Height** - Label text height in world units. * - **Style Name** - Named text style for the label. .. index:: single: Arc / Circle Properties Arc / Circle Properties ------------------------ .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Centre** - World coordinates of the arc/circle centre. * - **Radius** - Radius in world units. * - **Start Angle / End Angle** (Arc) - Arc extents in degrees. 0° = east; increases counter-clockwise. .. index:: single: Dimension Properties Dimension Properties -------------------- .. list-table:: :header-rows: 1 :widths: 25 75 * - Property - Description * - **Dim Style** - Dropdown to select a named dimension style from the style library. * - **Text Override** - Custom text to display instead of the measured value. Use ``<>`` as a placeholder for the measurement (e.g. ``<> mm``). * - **Measurement** - The computed value (read-only). * - **Rotation** - Rotation angle for linear rotated dimensions. .. index:: single: AEC Survey Point Properties AEC Survey Point Properties ----------------------------- .. list-table:: :header-rows: 1 :widths: 25 75 * - Property - Description * - **Point Number** - Numeric survey identifier. * - **Point Name** - Descriptive name. * - **Northing / Easting** - World coordinates — kept in sync with the object's drawn position. * - **Elevation** - Z value (stored; not used for 2D drawing position). * - **Raw Description** - Survey field code (e.g. ``EP``, ``BM``). * - **Full Description** - Expanded description for reports. * - **Point Group** - Group name for filtering in the Civil Toolspace and exports. * - **Lock Point** - Prevents accidental moves when checked. * - **Point Style Name** - Named style from the Point Style Library (see :doc:`11_format`). .. index:: single: Surface Properties Surface Properties ------------------ .. list-table:: :header-rows: 1 :widths: 25 75 * - Property - Description * - **Style Name** - Named surface style (Standard, Triangles & Contours, Contours Only, or a user-defined style). See :doc:`11_format`. * - **Point Count** - Number of TIN vertices — read-only. * - **Triangle Count** - Number of Delaunay triangles — read-only. * - **Surface Area** - Total 3D surface area — read-only. * - **Min Elevation / Max Elevation** - Elevation range — read-only. * - **Show Contours** - Toggle contour line display. .. index:: single: Alignment Properties Alignment Properties -------------------- .. list-table:: :header-rows: 1 :widths: 25 75 * - Property - Description * - **Style Name** - Named alignment style controlling centerline, ticks, PI markers, and direction arrows. * - **Label Style Name** - Named alignment label style controlling station labels, PI data, and curve data labels. * - **Start Station** - Station value at the beginning of the alignment. * - **Total Length** - Total alignment length — read-only. .. index:: single: Table Properties Table Properties ---------------- .. list-table:: :header-rows: 1 :widths: 22 78 * - Property - Description * - **Insert X / Insert Y** *(Geometry)* - Coordinates of the table insertion point. * - **Rotation** *(Geometry)* - Table rotation angle in degrees. * - **Rows** *(Table)* - Number of rows (including title and header rows if present). * - **Cols** *(Table)* - Number of columns. * - **Style Name** *(Table)* - Named table style (Standard, Schedule, Legend, or a user-defined style). See :doc:`11_format` for style details. * - **Title** *(Table)* - Text displayed in the title row (visible only when the style has **HasTitle** enabled). .. index:: single: Image Properties Image Properties ~~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 :widths: 25 75 * - Property - Description * - **Image Path** - File path of the source image (referenced mode). * - **Pixel Size** - Pixel dimensions of the source image (read-only, "W x H"). * - **Embedded** - When True, image bytes are stored inside the drawing file. * - **World Width / World Height** - Dimensions of the image in world units. * - **Rotation** - Counter-clockwise rotation in degrees. * - **Opacity** - 0 (transparent) to 255 (fully opaque). * - **Show Image** - When False, a dashed placeholder frame is displayed instead. * - **Clip Enabled** - Enable rectangular sub-region clipping. .. index:: single: Viewport Properties Viewport Properties ------------------- When a paper-space viewport is selected, the inspector shows categories for: - **View** — scale, center position, locked flag. - **Grid** — viewport grid visibility and spacing. - **Border** — tick marks, ladder marks, crosses with coordinate labels, border interval. - **North Arrow** — visibility, size, position. - **Scale Bar** — visibility, style, position. .. index:: single: Tunnel Section Line Properties Tunnel Section Line Properties ------------------------------- See :doc:`/parts/civil/06_tunnel_transformations` for the full list of Tunnel Section Line deviation-analysis properties. .. index:: single: Set Properties Set Properties -------------- Set-type properties (e.g. ``OsnapTypes``) expand **in-place** as checkbox children instead of opening a popup dialog. Check or uncheck individual items to modify the set value. .. figure:: ../../../images/inspector_set_property.png :align: center A set property expanded as checkbox children.