2D Drafting 3D Modelling BIM Mechanical Applications

Custom User Interface - Customizing BricsCAD® - P5

By Ralph Grabowski 23 min 15 март 2020 г.
Custom User Interface - Customizing BricsCAD® - P5

Welcome back to Customizing BricsCAD®, a tutorial reference for users wanting to well, customize BricsCAD! This week I'll show you how to create your own BricsCAD custom user interface. In this post you'll learn how to directly change the looks of drawing tabs, LookFrom widgetRibbon and Command line.

Some of BricsCAD's customizations fall outside the realm of the Settings and Customization dialog boxes, as described in other posts in this series. Some aspects of the user interface can be changed directly in the interface, instead of indirectly through a dialog box.


The following topics are covered in this post:

  • Accessing commands in the drawing tabs
  • How to modify the LookFrom widget
  • Taking full advantage of the Command line
  • Repositioning the Ribbon

Customizing the Command line

The Command line is the primary way in which BricsCAD communicates with you. Here you can enter the names of commands, their options and specify positions in the drawing. The Command line (a.k.a. "command bar" or "command panel") is usually found along the bottom of the BricsCAD window, but it doesn't have to stay there or even look the way it does.

Custom User Interface - Picture1

Command line's default location at the bottom-left of the BricsCAD window

Since these posts are about customization, let's see how we can customize the Command line. For instance, you can make the text look different. Here I changed the font to Bauhaus and the size to 24 points (1/3" tall).

Custom User Interface - Picture2

Command line with different font and font size

THE PARTS OF THE COMMAND LINE

These are the parts to the Command line and the controls that are embedded in it:

Custom User Interface - Untitled-1-1024x206

Parts of the Command line

Resizing and Hiding the Command Line

The Command line typically displays three or four lines of history, which is the text of previously displayed prompts. When you need to see more lines of history, then you have these choices:

  • Drag the bar's top border to stretch it taller or shorter. For the exact location to do this, see the double-ended arrow cursor shown below.

Custom User Interface - Picture3

Resizing the Command line

  • Drag the bar away from its docked position and then resize it, as shown below.

Custom User Interface - Picture4

Floating Command line dragged away from its docked position

You can turn off the Command line with the CommandLineHide command --- the BIM workspace does this by default.  When the Command line is turned off, it still displays the command history in the drawing area. It looks like this:

Custom User Interface - Picture5

Prompts scrolling into the drawing area

After a few moments, the history fades from view. To change the number of lines of history appearing in the drawing area, enter the CliPromptLine variable and then change its value. Here are the valid values:

CliPrompLine Meaning
0 Turns off the prompt history
1 Minimum number of lines
4 Default number of lines of prompt history
64 Maximum number

When the Command line is turned off, the current prompt is always displayed on the status bar.

The CommandLine command turns it back on. You can use the Ctrl+9 (Cmd+9 on Macs) shortcut keystroke to toggle its visibility.

Changing Command line Actions

The Command line can be made to present different kinds of information. The easiest way to do this is by right-clicking the Command line:

Custom User Interface - Picture6

Shortcut menu presenting Command line options

The options are sometimes governed by the variables, as described here.

AutoComplete. The AutoCompleteMode variable controls the actions of the pop-up menu that displays a list of command and variable names that begin with the same letter(s) --- auto-complete mode. Illustrated below is what happens when users type an "a": they can then select one of the names or aliases from the list and then BricsCAD executes the command or variable.

Custom User Interface - Picture7

Autocomplete entries for 'a'

The default value of this variable is 15, which is the sum of 1+2+4+8, representing the options that are turned on by default. When set to 0, auto-complete is turned off.

AutoCompleteMode Meaning
0 Disable
1 Enable auto-complete (default)
2 Auto-append names (default)
4 Display names that begin with the same letter(s) (default)
8* Display icons (unsupported; default)
16 Exclude the display of system variables
32 Display preference variables found only in BricsCAD

* While the display of icons seems to be an option, BricsCAD does not do this at the time of writing. The value (8) is included for compatibility so that routines imported from other DWG editors will work smoothly.

Delay Time. The AutoCompleteDelay variable specifies how long BricsCAD should wait before displaying the auto-complete list. The time is measured in seconds.

AutoCompleteDelay Meaning
0 Minimum value; no delay
0.3 Default value; brief delay
10 Maximum value; long delay

Copy copies the selected text from the Command line to the Clipboard. Some text has to be selected for this command to become available.

Clear erases all text from the Command line, including the history. BricsCAD asks if you are sure:

Custom User Interface - Picture8

Checking if you really want to erase the command history

Select All selects all text in the Command line, including the history.

The history consists of previous command entries. By default, the program retains 256 lines of history; you can change this number to be larger or smaller with the ScrlHist variable.

Paste pastes text from the clipboard into the Command line. This option appears only when the cursor is next to the ':' prompt and the Clipboard contains data that can be pasted; text, not images.

You can paste text previously copied to the Clipboard with the Copy option, as well as text from other programs formatted as scripts (see Chapter 20) or LISP routines (see Chapter 21).

Options displays the Command line section of the Settings dialog box. Many of the settings are discussed next.


TIP: To record the command history in a file, use the LogFileOn command to begin saving it and then use LogFileOff to turn off the recording.

Use the LogFileName to specify a different name for the .log file (the default is the name of the drawing) and LogFilePath to change the folder in which the file is stored (the default is C:\Users<login>\AppData\Local\Bricsys\BricsCAD\V20x64\en_US.

The log file system is independent of the ScrlHistory variable's limit on lines and so keeps recording everything until you turn it off.


Additional Command Line Variables

You change the look of the Command line and its close cousin the Prompt History, through variables in the Command Line section of the Settings dialog box. The settings descriptions use some unusual terms:

Command line Element Term Used by Settings Abbreviation Used by Variables
Command Line Edit CmdLine
Prompt History List CmdLineList
Text Foreground Fg (Background = Bg)
Text scrolling into the drawing area Fading log FadingLog
Text in drawing area background Frame or floating frame CmdLineFrame

Custom User Interface - Picture9

Command line section of the Settings dialog box

Command Line Font Name. The CmdLineFontName variable specifies the font used by the Command line and Prompt History window. Any TrueType font installed on your computer can be used.

CmdLineFontName Meaning
Consolas Default font name

To change the font displayed by the Command line and text window, click the field and then choose a font from the droplist.

Custom User Interface - Picture10

Selecting a font for the commandline

Command Line Font Size. The CmdLineFontSize variable sets the size of the text in the Command line and Prompt History window.


TIP To display the Prompt History window, press F2.


Command Line List Background Color. The CmdLineListBgColor variable specifies the background color of the prompt history window ("list"). The default is 250,250,250 --- a light gray.

The triplet of numbers specifies the levels of red, green and blue. The numbers indicate the strength of each component color and ranges from 0 (black or no color) to 255 as the maximum strength for each color.

CmdLineEditBgColor Meaning
0,0,0 Black
255,0,0 Red
0,255,0 Green
0,0,255 Blue
250,250,250 Light grey
255,255,255 White

To change the color, click the field in the Settings dialog box and then choose a color.

Custom User Interface - Picture11

Choosing a color

If the color you want isn't in the list, then click Select Color to access the Color dialog box. Choose a color and then click OK.

Custom User Interface - Picture12

Selecting a color

Command Line List Foreground Color. The CmdLineListFgColor variable specifies the foreground color of the history window. By "foreground," BricsCAD means the color of the text. The default is 64,64,64 --- a very, very dark blue.

Command Line Edit Background Color. The CmdLineEditBgColor variable specifies the background color of the Command line ("edit"). The default is 250,250,250, a light gray.

Command Line Edit Foreground Color. The CmdLineEditFgColor variable sets the foreground (text) color of the Command line panel. The default is 32,32,32.

(new in v20) Command Line Option Background Color. The CmdLineOptionBgColor variable sets the background color of option names. These can be selected with the cursor.

Command Line Fading Log Background Color. The CmdLineFadingLogBgColor variable sets the background color for text that appears in the drawing area ("fading log").

When the Command line is off, the last four lines of command text appear in the drawing area. After a few seconds, the text fades away. When you next enter a command or pick an option, the on-screen text reappears. This works whether or not cleanscreen is switched on.

Custom User Interface - Picture13

Command line text in the drawing area

Command Line Fading Log Foreground Color. The CmdLineFadingLogFgColor variable sets the color of the text that scrolls in the drawing area.

Command Line Fading Log Fading Delay. The CmdLineFadingLogFadeDelay variable determines how long the text appears in the drawing area before it starts to fade away; default is 2 seconds.

Command Line Fading Log Transparency. The CmdLineFadingLogTransparency variable determines the transparency of text that appears in the drawing area; default is 30%, where 0% is opaque.

Command Line Frame Transparency When Active. The CmdLineFadingActiveTransparency variable determines the transparency of the background ("fading frame") to text that appears in the drawing area; default is 10%, where 100% is fully transparent.

Command Line Frame Transparency When InActive. The CmdLineFadingInctiveTransparency variable determines the transparency of the background when the Command line is not being used; default is 10%, where 100% is fully transparent.

(new in v20) Command Line Use New Floating Frame. The CmdLineUseNewFrame variable toggles the appearance of a new frame for text that scrolls into the drawing area; this is a test variable and may be changed in the future; default is off.

Command Line State. The ClsState (read-only) variable reports whether the Command line is open or not. Because it is a read-only variable, users cannot change it.

ClsState Meaning
0 Command line is hidden
1 Command line is visible (default)

TIP Use Ctrl+9 (Cmd+9 on macOS) to turn the Command line on and off quickly.

Prompt Prefix. The CmdLnText variable specifies the prompt character(s) displayed by the Command line. While the default is a colon ( : ), BricsCAD allows you to change it to something else, such as AutoCAD's traditional prompt, 'Command:'.

CmdLnText Meaning
: Prompt text displayed by Command line

Scroll History. The ScrlHist variable determines how many lines of command history BricsCAD remembers. This affects both the Command line and the Prompt History window.

ScrlHist Meaning
0 No history is kept
256 Default value
2147483647 Maximum value

Even More Command Line Variables

There are additional variables located elsewhere in the Settings dialog box:

CliPromptLines variables determine how many lines of command history appear in the drawing area when the Command panel is turned off.

LastPrompt variable reports the name of the command entered most recently. It is read-only.

PromptOptionFormat variable determines how command options are displayed on the Command line and in the prompt menu; option 4 is meant for international versions of the software:

PromptOptionFormat Meaning
0 (default) Show description only
Set end of arc or [draw Lines/Angle/CEnter/CLose/ . . .
1 Show keywords only
Set end of arc or [Line/Angle/CEnter/CLose/ . . .
2 Show description, with keywords in brackets
Set end of arc or [Draw lines**(Line)/Angle/Center(CEnter)/Close(CLose)**/ . . .
3 Show description, with shortcuts in brackets
Set end of arc or [Draw lines**(L)/Angle/Center(CE)/Close(CL)**/ . . .
4 Show local keyword, with a global keyword in brackets

PromptOptionTranslateKeywords variable toggles the use of international commands. When off, the underscore ( _ ) prefix is not needed during command input; default = on.


Customizing the Look of the Ribbon

The Ribbon is like a series of overlapping toolbars, where a row of tabs segregate the overlapping "toolbars" that group similar functions. A tab is further segregated into a row of adjacent panels, each panel containing a group of buttons, flyouts and/or droplists --- just like toolbars!)

Custom User Interface - Picture14

Ribbon displayed by the 2D Drafting workspace

Because Bricsys wrote its own version of the Ribbon interface, it is equally available on the Windows, macOS and Linux versions --- unlike most other CAD systems. You customize the Ribbon through the Customize command.

When no drawing is open, all buttons on the Ribbon turn gray, to indicate that they are unavailable.

The blue B item is not part of the Ribbon but is a menu that accesses file-related functions, such as opening and saving drawings.

Custom User Interface - Picture15

B button displaying file-related functions

HANDLING THE RIBBON

BricsCAD comes with several Ribbons. To switch between them, you don't use the Ribbon command, as you might think. Instead, you use the Workspaces command. A Workspaces droplist is by default not available on the Ribbon, although it is on the status bar.

To switch between Ribbons, you can change the workspace using a toolbar, the status bar or the Command line, as follows:

  • Workspaces droplist on a toolbar:

Custom User Interface - Picture16

Choosing a workspace from the toolbar

  • Workspaces button on the status bar:

Custom User Interface - Picture17

Choosing a workspace from the status bar

  • Workspace command in the Command line:

: workspace
Workspace: setCurrent/SAveas/Rename/Delete/SEttings/? <setCurrent>: ? Workspace Name
--------------
BIM
Drafting
Drafting (toolbars)
Mechanical
Modeling
Modeling (toolbars)
The names of workspaces changed with BricsCAD V19 and V20:

Old Workspace Name New Workspace Name Default Display
2D Drafting Drafting Displays the Ribbon
. . . Drafting (Toolbars) Displays the menu bar and toolbars, no Ribbon
. . . Modeling Displays the Ribbon
3D Modeling Modeling (Toolbars) Displays the menu bar and toolbars, no Ribbon
BIM BIM Displays the Ribbon
Mechanical Mechanical Displays the Ribbon

You can drag the Ribbon away from its docked position; the floating Ribbon looks like this:

Custom User Interface - Picture18

Floating Ribbon

The Ribbon command displays the Ribbon; RibbonClose closes it.

Related System Variables

RibbonState (read-only) variable reports whether the Ribbon palette is open or closed. Users cannot change this variable, because it is read-only.

RibbonDockedHeight variable determines the height of the Ribbon when docked. The height is measured in pixels. (I recommend that you do not change this number.)

RibbonState Meaning
0 Ribbon sizes itself to the height of the selected tab
120 Default value
500 Maximum value

Customizing the Look of Drawing Tabs

Drawing tabs let you switch quickly between open drawings. BricsCAD calls them "document tabs."

Custom User Interface - Picture19

Each tab names the open drawing

(new in V20) The first tab accesses the Start screen. You can also access this with the GoToStart command. This tab can be turned off by clicking the gray x.

The tabs provide a shortcut to file-related commands, such as Open and Close, plus some commands you won't find elsewhere in BricsCAD. Right-click any drawing tab. The list of commands you see depends on which tab you right-click.

Custom User Interface - Picture20

Shortcut menu of commands for controlling tabs and drawings

Among the unique commands, I find Open Folder particularly useful. The unique commands perform these functions:

  • Close Left Tabs closes all drawings to the left of this tab. This is useful for closing older drawings. Drawings that were opened earlier tend to appear at the left end of the row of tabs
  • Close All But This closes all other drawings, except the current one. (I find this useful when I open an entire folder's worth of drawings and then want to keep just one open.)
  • Save All saves all drawings at once
  • Duplicate Tab makes a copy of the current drawing and then names it copy_name.dwg
  • Open Folder opens the folder from which the drawing was opened

Related System Variables

The look of drawing tabs is customized through variables. Be aware that the changes made to these variables do not take effect until the next time BricsCAD is started. So to apply the change(s), exit BricsCAD and then start it again.

DocTabPosition variable --- places the tabs at the top, bottom, left or right of the drawing area.

DocTabPosition Meaning
0 Position tabs at the top of the drawing area (default)
1 Position tabs at the bottom of the drawing area
2 Position tabs at the left edge of the drawing area
3 Position tabs at the right edge of the drawing area

The ShowDocTabs variable turns the tab row on and off.

ShowDocTabs Meaning
0 Does not display tabs
1 Displays tabs (default)

You can also access these variables in the Settings dialog box.


Customizing the Look From Control

BricsCAD has a LookFrom widget in the upper right corner of the drawing area. I find it very useful for quickly changing the 3D viewpoint.

Custom User Interface - Picture21

LookFrom widget at rest

Click on one of the triangles to see a 3D model from a different point of view:

Custom User Interface - Picture22

Viewing a 3D model from an isometric viewpoint

Here is how to use it:
  1. Pass the cursor over the widget. Notice that small triangles appear as does the preview image of a simple chair.

    Custom User Interface - Picture23

    Cursor activating the LookFrom widget

  2. Pause the cursor over a triangle:

    • You get a preview of what the 3D view will look like via the chair icon
    • A tooltip tells you name of the view, such as "Top Front Left:
    • The green dot indicates the cursor position, kind of like a laser pointer.
  3. Click the triangle to change the 3D view


TIP To see the bottom views: hold down the Ctrl (or Cmd in Mac) key while the cursor is in the LookFrom widget.To return to the home (default) view: click the center of the LookFrom control. (This is particularly helpful in Twist mode.) Or, press the Home key on the keyboard to return to the home view.


There are two ways to customize the way the LookFrom control operates. The easiest one is to right-click the control and then choose an option from the shortcut menu:

Custom User Interface - Picture24

Shortcut menu of LookFrom options

Most of the options in the shortcut menu are straight-forward, but I do want to explain the difference between Isometric and Twist modes:

  • Isometric mode is like using the Viewpoint or View commands; clicking a triangle jumps to the viewpoint.

Custom User Interface - Picture25

LookFrom widget in isometric mode

  • Twist mode is like using the RtRotF (real-time view rotation) command; clicking an arrow rotates the viewpoint.

    Custom User Interface - Picture26

    LookFrom widget in view rotation mode

LOOKFROM COMMAND

The other way to customize the widget is through the LookFrom command, from which you can turn the widget off (and on) and access its settings:

: lookfrom

LookFrom [ON/OFf/Settings] <ON>: (*Enter an option)*

The ON and OFf options turn the widget on and off.

The Settings option opens the Settings dialog box at the LookFrom section.

Custom User Interface - Picture27

LookFrom variables in the Settings dialog box

With Settings, you can adjust the properties of the widget, such as its translucency and position.

Of particular interest is the number of isometric viewpoints it can display, which is set through "Direction Mode" or the LookFromDirectionMode variable. The following table illustrates these modes:

LookFrom Direction Mode Number of Views
0 Custom User Interface - Picture39 6 orthogonal views
1 Custom User Interface - Picture38 14 views; no flat views of corners (default)
2 Custom User Interface - Picture37 18 views; top-down corners
3 Custom User Interface - Picture36 26 views; eight top-down corners
Related System Variables

The following variables control the look and action of the LookFrom widget. Some of the names begin with "NavVCube." This is AutoCAD®'s name for its "navigation view cube" widget.

The LookFromFeedback variable toggles the feedback display between tooltips and the status bar:

LookFromFeedback Meaning
0 No feedback
1 Tooltips near the LookFrom widget (default)
2 On the status bar

The LookFromDirectionMode variable selects the type of display, as illustrated above.

The LookFromZoomExtents variable toggles the use of Zoom Extents when a viewpoint changes:

LookFromZoomExtents Meaning
0 Zoom is unchanged
1 Zoom extents are executed when the view direction changes (default)

The NavVCubeDisplay variable toggles the display of the LookFrom widget:

NavVCubeDisplay Meaning
0 Not displayed
1 Displayed (default)

The NavVCubeLocation variable positions the widget in one of the four corners of the drawing area:

NavVCubeLocation Meaning
0 Top right corner of the drawing area
1 Top left corner
2 Bottom left corner
3 Bottom right corner

The NavVCubeOpacity variable determines the "see through-ness" of the widget:

NavVCubeOpacity Meaning
0 Invisible
50 Semi-transparent (default value)
1 Opaque

The NavVCubeOrient variable determines whether view changes are relative to the world coordinate system or the current user-defined coordinate system:

NavVCubeOrient Meaning
0 Relative to WCS (default)
1 Relative to UCS

Maximizing the Drawing Area

To maximize the screen, minimize the number of user interface elements. Use the CleanScreenOn command to maximize the drawing area, CleanScreenOff to return the UI to normal. Pressing Ctrl+0 (Cmd+0 on macOS) does the same thing much more quickly.

Custom User Interface - Picture32

BricsCAD's drawing area maximized

The CleanScreenOptions variable specifies which UI elements to keep on during clean screen mode. The default value is 15, which means the drawing tabs, panels, toolbars and Ribbon are hidden, while the Command line, status bar and menu bar remain visible.

CleanScreenOptions Meaning
0 Hide no elements
1(default) Hide document (drawing) tabs
2(default) Hide dockable panels (palettes)
4(default) Hide toolbars
8(default) Hide Ribbon
16 Hide Command line panel (bar)
32 Hide status bar
64 Hide menu bar

USING MULTIPLE MONITORS

Most computers, support two or three monitors.  I find it useful to place all palettes and bars on the second monitor. This maximizes the area available for the BricsCAD drawing screen.

Indeed, when I write these posts, I have five screens surrounding me. My Windows 7 workstation has three:

Custom User Interface - Picture33

Three monitors at different resolutions. Main monitor (2048×1152 resolution) for the InDesign desktop publishing software Second monitor (1360×768) for InDesign's many palettes and PaintShop Pro for editing figures Third monitor (1920×1080) for displaying BricsCAD.

I find it beneficial to have the secondary monitor run at a lower resolution because it makes the user interface larger and so easier to read.


TIP Even if your computer's graphics board is limited to working with one (or two) monitors, there is a workaround. DisplayLink is a USB dongle that allows you to add a monitor without needing a video port. Windows sees the dongle as another screen.

Several manufacturers make the hardware for under $100; see displaylink, for example. Software is included that runs on the computer to redirect the "second screen" graphics to the dongle.


Customizing Other UI Elements

To customize the look of other user interface elements, see the future blog posts!


Download BricsCAD free for 30-days

Start Using BricsCAD Today

Permanent or subscription licenses that work in all languages, in all regions.


  1. Introduction
  2. 55 Tips for BricsCAD Users
  3. Settings
  4. Changing the Environment
  5. Custom User Interface
  6. Introduction to the Customize Dialog Box
  7. Customize the Menu Bar & Context Menus
  8. Toolbars and Button Icons
  9. Writing Macros and Diesel Code
  10. Ribbon Tabs and Panels
  11. Keystroke Shortcuts, Aliases & Shell Commands
  12. Mouse, Double-click & Tablet Buttons
  13. Absolutely Everything You Need to Know About The Quad
  14. Rollover Properties
  15. Workspaces and the User Interface
  16. Designing Tool & Structure Panels
  17. Creating Simple & Complex Linetypes
  18. Patterning Hatches
  19. Decoding Shapes & Fonts
  20. Coding with Field Text
  21. Writing Scripts
  22. Programming with LISP (Introduction)
  23. LISP Functions
19 март 2024 г. 8 min

What's New in BricsCAD® V24.2

BricsCAD® V24.2 is chock full of new and enhanced features for 2D drafting, 3D modeling, civil, survey, BIM, and mechanical workflows. With this release, the Bricsys team included several new features and improvements to help you accelerate your time to deliverable and provide you with a familiar CAD experience. So, let's dive in and explore what's new in BricsCAD V24.2!

10 март 2024 г. 6 min

The path to Scan to BIM automation with BricsCAD® BIM V24

The new automation tools included in BricsCAD® BIM V24 make the Scan-to-BIM process easier and more efficient! If you want fast and accurate reality capture of existing objects, these tools will be a great addition to your arsenal. We've added tools like the Point Cloud Classifier, Point Cloud Detect Rooms, Point Cloud Fit Rooms, and Normal Calculation for structured point clouds to help you create digital twins for quantity takeoff, create accurate building plans, and with facility management.

Follow us on social media