NXKnowledge

NX Open C++ Reference Guide > Namespaces > NXOpen::BlockStyler

NXOpen::BlockStyler Namespace Reference (C++)

Documented purpose: "Provides classes and interfaces for Block Styler." 67 classes. This is the direct API-side counterpart to the Block UI Styler GUI tool (Tools > Block UI Styler in NX; also documented from the GUI/.bx-file-authoring side elsewhere in this knowledge base under blockstyler/). Every widget you can drag onto a canvas in the Block UI Styler editor corresponds 1:1 to a class here — the .dlx/generated code that the Styler produces literally instantiates these classes at runtime.

Base classes

Class Description
UIBlock Represents a UI Block. Created in NX6.0.0. This is the common base class for every block type below — the polymorphic type used when code needs to treat any block generically (e.g. enabling/disabling, show/hide, generic event callbacks).
BlockDialog Represents a Dialog. Created in NX6.0.0. The top-level dialog object a .bx-authored UI styler dialog compiles down to — the root container that owns and lays out all child UIBlocks.
CompositeBlock A composite block is a block that contains other blocks. Created in NX6.0.0. The base for any container/group-like block (see Group, Table, ScrolledWindow, TabControl).
DialogTester Represents Block Styler Dialog tester class that contains testing tools for Block Styler Dialogs. To obtain an instance of this class, refer to NXOpen::UI. Created in NX2206.0.0.
MessageBoxTester Testing helper counterpart for message-box-driven dialogs (pairs with DialogTester).
TestStepSequence Represents a scripted sequence of test steps, used together with DialogTester/MessageBoxTester for automated UI testing of Block Styler dialogs.

Input / value blocks

Class Description
Button Represents a button. Created in NX8.5.0.
Toggle Checkbox-style boolean toggle block.
StringBlock Single-line string/text input block.
MultilineString Multi-line text input block.
IntegerBlock Integer-valued numeric input block.
DoubleBlock Represents a Double block. Created in NX8.5.0 — floating-point numeric input.
Enumeration Enumerated/dropdown-style choice block.
ChooseExpression Block for choosing/entering an NX Expression.
ExpressionBlock Block bound directly to an NX Expression value.

Selection blocks (geometry/objects)

Class Description
SelectObject Represents a Select Object block. Created in NX8.5.0 — generic object selection.
SelectElement Select a specific element (more constrained than SelectObject).
SelectFeature Select a feature specifically.
SelectFacetRegion Select a facet region (faceted/mesh body geometry).
SelectNode Select a node (e.g. CAE mesh node).
SelectPartFromList Select a part from a list (assembly context).
BodyCollector Collector block for selecting one or more bodies.
CurveCollector Collector block for selecting one or more curves.
FaceCollector Collector block for selecting one or more faces.

Geometry-specifying blocks

Class Description
SpecifyPoint Represents a Specify Point block. Created in NX8.5.0 — the standard "point constructor" widget.
SpecifyVector Vector-constructor widget.
SpecifyPlane Plane-constructor widget.
SpecifyAxis Axis-constructor widget.
SpecifyCSYS Coordinate-system-constructor widget.
SpecifyOrientation Orientation-constructor widget.
SpecifyLocation Location-constructor widget.
ReverseDirection Small widget/button pairing with vector/direction blocks to flip direction.
Microposition Fine-positioning helper widget.

Dimension blocks

LinearDimension, AngularDimension, RadiusDimension, OnPathDimension — each represents the corresponding interactive dimension-entry widget (used when a Block Styler dialog needs to let the user set a driving dimension value directly in the graphics window).

Layout / container blocks

Class Description
Group Represents a Group Block. Created in NX8.5.0 — a labeled/bordered grouping container.
Table Represents a Table layout. Created in NX8.5.0 — grid/table layout container.
TabControl Tabbed-page container.
ScrolledWindow Scrollable container.
Separator Visual separator/divider.
Label Static text label.
DrawingArea Custom-drawable canvas area block.

List / tree blocks

Class Description
ListBox Represents a ListBox block. Created in NX6.0.0.
SetList Dual-list "set" builder widget (available/selected list pairing).
Tree Hierarchical tree control.
TreeListMenu Represents a menu class utilized by BlockStyler::Tree.
Node A single node within a Tree.
Explorer Explorer/browser-style hierarchical widget.
IntegerTable / DoubleTable Typed tabular data widgets for integer/double columns.
PropertyList Property-sheet-style list widget.

Color / appearance blocks

ObjectColorPicker, RGBColorPicker, LineColorFontWidth, LineFont, LineWidth, TextColorFontWidth — pickers for object color, direct RGB color, and line/text style (font, width) — mirroring NX's standard color/line-style dialogs as embeddable blocks.

Sketch/section-related blocks

SectionBuilder, SuperSection, SuperPoint, OrientXpress — blocks for building/editing sketch sections and orientation, used in dialogs that need inline section authoring (e.g. sweep/loft-style feature dialogs).

Higher-level composite

Class Description
Wizard Represents a Wizard block. Created in NX7.5.0 — a multi-page wizard-style dialog flow built from Block Styler pages.
FileSelection / FolderSelection File/folder browse-and-select widgets.

Cross-reference: how this maps to the Block UI Styler GUI tool

The Block UI Styler editor (documented in this knowledge base's blockstyler/ folder from the tool-usage side) lets a developer visually compose a .bx dialog file by dragging these exact block types onto a canvas, then generates NX Open source (C++/.NET/Java/Python — the generated code differs per language but instantiates the equivalent class from each language's BlockStyler namespace). The class-level catalog above is therefore the ground truth for "what a given Block UI Styler widget actually is" when reading or hand-editing generated dialog code — e.g. a Styler canvas item labeled "Specify Point" instantiates NXOpen::BlockStyler::SpecifyPoint, a "List Box" instantiates NXOpen::BlockStyler::ListBox, and the containing dialog itself is always a NXOpen::BlockStyler::BlockDialog.

Source: https://docs.sw.siemens.com/en-US/doc/209349590/PL20220512394070742.nx_open_c_plus_plus_ref · retrieved 2026-07-07