Short description
๐ AnnoAllOff is an AutoCAD and Civil 3D AutoLISP utility that sets ANNOALLVISIBLE to 0 for selected Model/Layout tabs through a DCL picker.
๐๏ธ It helps users turn off global annotative visibility per tab while keeping control over which layouts are updated.

Command:
๐ Main command: AAOFF
๐๏ธ Dialog title: ANNOALLVISIBLE -> 0 (Choose Tabs)
๐งญ Workflow: choose Model and/or Layout tabs, then apply ANNOALLVISIBLE = 0 to the selected tabs.
Description:
๐ AnnoAllOff is an SEO-friendly AutoCAD annotation visibility control tool for managing annotative object display across Model Space and Paper Space layouts.
๐งฉ The routine dynamically writes a temporary DCL file, lists all layout tab names from the active drawing, selects all tabs by default, and lets the user choose All, None, or a custom multi-selection.
๐ For each selected tab, the command switches CTAB to that tab, forces Paper Space when required, runs ANNOALLVISIBLE 0, and then restores the previous CTAB, TILEMODE, and MSPACE state.
๐ This is useful for AutoCAD and Civil 3D production drawings where annotative objects, labels, text, dimensions, and multileaders need controlled visibility per tab before review, plotting, or cleanup.
๐ง The script notes that ANNOALLVISIBLE is stored per Model tab and per Layout tab, not per viewport entity.
Helper function: (if any)โ
๐งฉ AAOFF:WriteDcl writes the temporary DCL picker for selecting Model/Layout tabs.
๐งฉ AAOFF:GetTabNames reads the active drawing Layouts collection and returns the available tab names.
๐งฉ AAOFF:MakeAllIndexString builds the DCL list-box selection string for selecting every tab by default.
๐งฉ AAOFF:IdxList->Names converts selected DCL list-box indices into layout tab names.
๐งฉ AAOFF:SetAnnoAllVisible0 switches through selected tabs, sets ANNOALLVISIBLE to 0, and restores the previous drawing tab state.
๐งฉ c:AAOFF loads the DCL dialog, fills the tab list, handles All/None/OK/Cancel actions, applies the setting, unloads the dialog, and deletes the temporary DCL file.
Functionalities:
โ
๐ Sets ANNOALLVISIBLE to 0 for selected tabs.
โ
๐๏ธ Uses a DCL dialog to choose Model and Layout tabs.
โ
โ
Selects all tabs by default for fast drawing-wide annotation visibility cleanup.
โ
๐ Allows multi-select tab control with Ctrl/Shift selection.
โ
๐ข Provides All and None buttons for quick selection management.
โ
๐งญ Switches CTAB to each selected tab before applying the setting.
โ
๐ Forces Paper Space when processing layout tabs.
โ
๐ Restores the previous CTAB, TILEMODE, and MSPACE values after completion.
โ
๐งน Cleans up the temporary DCL file after use.
โ
๐ Avoids viewport-level confusion by treating ANNOALLVISIBLE as a per-tab setting.
Result:
๐ฏ The result is a controlled annotation visibility cleanup workflow for AutoCAD and Civil 3D drawings.
๐ Users can turn off ANNOALLVISIBLE on all tabs or only selected layouts without manually switching each tab and typing the system variable.
๐ This supports plotting preparation, layout QA, annotative object cleanup, and drawing-standard workflows where visible annotation scales must be controlled per tab.
Images, animations etc.

XAML code:
๏ปฟ<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:src="clr-namespace:Autodesk.Windows;assembly=AdWindows">
<src:RibbonToolTip x:Key="AnnoAllOnOff">
<src:RibbonToolTip.ExpandedContent>
<StackPanel>
<TextBlock Background="AntiqueWhite" TextAlignment="AnnoAllOnOff">
<Bold>Function Syntax: AnnoAllOnOff</Bold>
<LineBreak/>
<Bold>Version: 1.1 Date: 20.06.2026 6:38:54PM</Bold>
<LineBreak/>
<Hyperlink>AI+https://forums.autodesk.com/t5/autocad-forum/annotative-objects-not-displaying-in-layout-viewports/td-p/7949416</Hyperlink>
<LineBreak/>
<Bold><Span Foreground="DarkRed">AAVIS</Span> Description</Bold><LineBreak/>
This AutoLISP program provides a single command that lets the user set the AutoCAD system setting <Span Foreground="DarkRed">ANNOALLVISIBLE</Span> to either <Span Foreground="DarkRed">Visible</Span> (value <Span Foreground="DarkRed">1</Span>) or <Span Foreground="DarkRed">Hidden</Span> (value <Span Foreground="DarkRed">0</Span>) for a user-chosen set of drawing tabs (Model and Layouts).<LineBreak/>
It uses a dialog box (DCL) that is generated and loaded automatically from inside the LSP at runtime, so no separate DCL file is required to be installed or maintained by the user.<LineBreak/>
<Bold><Span Foreground="DarkRed">User Interaction</Span></Bold><LineBreak/>
โข Run the command <Span Foreground="DarkRed">AAVIS</Span> in the AutoCAD command line.<LineBreak/>
โข A dialog opens with two radio buttons:<LineBreak/>
โข <Span Foreground="DarkRed">Visible (AAON)</Span> sets <Span Foreground="DarkRed">ANNOALLVISIBLE = 1</Span>.<LineBreak/>
โข <Span Foreground="DarkRed">Hidden (AAOFF)</Span> sets <Span Foreground="DarkRed">ANNOALLVISIBLE = 0</Span>.<LineBreak/>
โข In the same dialog, the user selects which tabs to update from a multi-select list containing <Span Foreground="DarkRed">Model</Span> and all <Span Foreground="DarkRed">Layout</Span> tabs.<LineBreak/>
โข The user can use helper buttons:<LineBreak/>
โข <Span Foreground="DarkRed">All</Span> selects all tabs in the list.<LineBreak/>
โข <Span Foreground="DarkRed">None</Span> clears the selection in the list.<LineBreak/>
โข Clicking <Span Foreground="DarkRed">OK</Span> applies the change to the selected tabs.<LineBreak/>
โข Clicking <Span Foreground="DarkRed">Cancel</Span> exits without making changes.<LineBreak/>
<Bold><Span Foreground="DarkRed">Functionalities</Span></Bold><LineBreak/>
โข Sets the AutoCAD variable <Span Foreground="DarkRed">ANNOALLVISIBLE</Span> to the chosen mode value (<Span Foreground="DarkRed">1</Span> or <Span Foreground="DarkRed">0</Span>) for the selected tabs.<LineBreak/>
โข Supports three tab selection workflows:<LineBreak/>
โข <Span Foreground="DarkRed">All</Span> tabs selected (fast global update).<LineBreak/>
โข <Span Foreground="DarkRed">None</Span> selected (no action is performed).<LineBreak/>
โข A user-defined subset (only the chosen tabs are modified).<LineBreak/>
โข Automatically switches to each selected tab using <Span Foreground="DarkRed">CTAB</Span> and applies the setting.<LineBreak/>
โข When a Layout tab is active, forces Paperspace by setting <Span Foreground="DarkRed">MSPACE</Span> to false before running the command, ensuring consistent behavior in layouts.<LineBreak/>
โข Restores the user environment after completion by resetting:<LineBreak/>
โข The previously active tab (<Span Foreground="DarkRed">CTAB</Span>).<LineBreak/>
โข The previous Model or Layout mode (<Span Foreground="DarkRed">TILEMODE</Span>).<LineBreak/>
โข The prior viewport mode in layouts (<Span Foreground="DarkRed">MSPACE</Span>) when applicable.<LineBreak/>
<Bold><Span Foreground="DarkRed">Important Behavior Notes</Span></Bold><LineBreak/>
โข The selection list represents <Span Foreground="DarkRed">tabs</Span> (Model and Layouts), not individual viewport objects inside a layout.<LineBreak/>
โข The program changes the annotation visibility setting at the tab level by issuing the AutoCAD command <Span Foreground="DarkRed">ANNOALLVISIBLE</Span> with the appropriate value.<LineBreak/>
โข If the user selects no tabs and clicks OK, the program prints a message indicating no changes were made.<LineBreak/>
<Bold><Span Foreground="DarkRed">Files and Dependencies</Span></Bold><LineBreak/>
โข Uses <Span Foreground="DarkRed">VLAX</Span> and therefore calls <Span Foreground="DarkRed">(vl-load-com)</Span>.<LineBreak/>
โข Generates a temporary DCL file (for the dialog definition) at runtime and deletes it after the dialog closes, so no permanent DCL file remains on disk.<LineBreak/>
โข Does not require the user to select blocks, objects, or viewports in the drawing area; all interaction is via the dialog list selection.<LineBreak/>
<Bold><Run Foreground="DodgerBlue">Description</Run></Bold><LineBreak/>
<Run Foreground="White">๐งฉ AnnoAllOff is an AutoCAD and Civil 3D AutoLISP utility designed for faster, cleaner CAD layer and drawing-management workflows.</Run><LineBreak/>
<Run Foreground="LimeGreen">๐ It provides a DCL picker for setting ANNOALLVISIBLE to 0 on selected Model/Layout tabs, helping control annotative object visibility before plotting, review, or cleanup.</Run><LineBreak/>
<Bold><Run Foreground="DodgerBlue">Function Syntax</Run></Bold><LineBreak/>
<Run Foreground="White">๐ Main command: </Run><Bold><Run Foreground="Orange">AAOFF</Run></Bold><LineBreak/>
<Run Foreground="White">๐๏ธ Dialog: </Run><Bold><Run Foreground="Orange">ANNOALLVISIBLE -> 0 (Choose Tabs)</Run></Bold><LineBreak/>
<Bold><Run Foreground="DodgerBlue">SEO Optimized Overview</Run></Bold><LineBreak/>
<Run Foreground="White">๐ This AutoCAD annotation visibility tool sets </Run><Bold><Run Foreground="Orange">ANNOALLVISIBLE</Run></Bold><Run Foreground="White"> to </Run><Bold><Run Foreground="Orange">0</Run></Bold><Run Foreground="White"> for selected Model and Layout tabs.</Run><LineBreak/>
<Run Foreground="White">๐๏ธ The routine dynamically creates a DCL dialog and lists the drawing tabs so the user can process All, None, or selected layouts.</Run><LineBreak/>
<Run Foreground="White">๐ It switches through the selected tabs, applies the system variable, and restores the previous drawing state after completion.</Run><LineBreak/>
<Run Foreground="White">๐ This is useful for AutoCAD and Civil 3D drawings containing annotative text, dimensions, labels, multileaders, and layout annotation that must be controlled before plotting or review.</Run><LineBreak/>
<Bold><Run Foreground="LimeGreen">Primary Workflow</Run></Bold><LineBreak/>
<Run Foreground="White">1๏ธโฃ Run </Run><Bold><Run Foreground="Orange">AAOFF</Run></Bold><Run Foreground="White"> at the AutoCAD command line.</Run><LineBreak/>
<Run Foreground="White">2๏ธโฃ Review the list of Model/Layout tabs in the DCL dialog.</Run><LineBreak/>
<Run Foreground="White">3๏ธโฃ Use </Run><Bold><Run Foreground="DarkRed">All</Run></Bold><Run Foreground="White">, </Run><Bold><Run Foreground="DarkRed">None</Run></Bold><Run Foreground="White">, or Ctrl/Shift multi-select to choose tabs.</Run><LineBreak/>
<Run Foreground="White">4๏ธโฃ Click OK to apply </Run><Bold><Run Foreground="Orange">ANNOALLVISIBLE = 0</Run></Bold><Run Foreground="White"> to the selected tabs.</Run><LineBreak/>
<Run Foreground="White">5๏ธโฃ The routine restores the previous tab and model/paper-space state.</Run><LineBreak/>
<Bold><Run Foreground="LimeGreen">Functionalities</Run></Bold><LineBreak/>
<Run Foreground="White">โ
</Run><Bold><Run Foreground="LimeGreen">DCL tab picker</Run></Bold><Run Foreground="White"> - shows Model and Layout tabs in a multi-select list.</Run><LineBreak/>
<Run Foreground="White">โ
</Run><Bold><Run Foreground="LimeGreen">Default select all</Run></Bold><Run Foreground="White"> - prepares the dialog for full drawing processing by default.</Run><LineBreak/>
<Run Foreground="White">โ
</Run><Bold><Run Foreground="LimeGreen">Per-tab annotation visibility</Run></Bold><Run Foreground="White"> - applies ANNOALLVISIBLE to each selected tab.</Run><LineBreak/>
<Run Foreground="White">โ
</Run><Bold><Run Foreground="LimeGreen">State restoration</Run></Bold><Run Foreground="White"> - restores CTAB, TILEMODE, and MSPACE after processing.</Run><LineBreak/>
<Run Foreground="White">โ
</Run><Bold><Run Foreground="LimeGreen">Temporary DCL cleanup</Run></Bold><Run Foreground="White"> - unloads the dialog and deletes the generated DCL file.</Run><LineBreak/>
<Bold><Run Foreground="DodgerBlue">Important Commands and Functions</Run></Bold><LineBreak/>
<Run Foreground="White">๐งฉ </Run><Bold><Run Foreground="Orange">ANNOALLVISIBLE</Run></Bold><Run Foreground="White"> controls whether all annotation scales are visible.</Run><LineBreak/>
<Run Foreground="White">๐งฉ </Run><Bold><Run Foreground="Orange">CTAB</Run></Bold><Run Foreground="White"> is changed to process each selected tab.</Run><LineBreak/>
<Run Foreground="White">๐งฉ </Run><Bold><Run Foreground="Orange">TILEMODE</Run></Bold><Run Foreground="White"> and </Run><Bold><Run Foreground="Orange">MSPACE</Run></Bold><Run Foreground="White"> are restored after the operation.</Run><LineBreak/>
<Run Foreground="White">๐งฉ </Run><Bold><Run Foreground="Orange">load_dialog</Run></Bold><Run Foreground="White">, </Run><Bold><Run Foreground="Orange">new_dialog</Run></Bold><Run Foreground="White">, and </Run><Bold><Run Foreground="Orange">start_dialog</Run></Bold><Run Foreground="White"> manage the DCL picker.</Run><LineBreak/>
<Bold><Run Foreground="DarkRed">Important Notes</Run></Bold><LineBreak/>
<Run Foreground="White">โ ๏ธ The tool sets ANNOALLVISIBLE to 0; it does not delete annotation or remove annotation scales.</Run><LineBreak/>
<Run Foreground="White">โ ๏ธ The code comments specify that ANNOALLVISIBLE is stored per Model tab and per Layout tab, not per viewport entity.</Run><LineBreak/>
<Run Foreground="White">โ ๏ธ The command changes tabs during execution, then restores the previous tab and model/paper-space state.</Run><LineBreak/>
<Bold><Run Foreground="Yellow">Tags</Run></Bold><LineBreak/>
<Run Foreground="Yellow">๐ท๏ธ AutoCAD, ๐ท๏ธ Civil 3D, ๐ท๏ธ AutoLISP, ๐ท๏ธ Visual LISP, ๐ท๏ธ DCL dialog, ๐ท๏ธ Annotation visibility, ๐ท๏ธ ANNOALLVISIBLE, ๐ท๏ธ Layouts, ๐ท๏ธ Model Space, ๐ท๏ธ Paper Space, ๐ท๏ธ Annotative objects, ๐ท๏ธ Drawing cleanup, ๐ท๏ธ CAD standards, ๐ท๏ธ Viewport workflow, ๐ท๏ธ CAD productivity</Run><LineBreak/>
</TextBlock>
<Grid>
<Image Source="Image_000.jpg" Stretch="Uniform"/>
</Grid>
</StackPanel>
</src:RibbonToolTip.ExpandedContent>
</src:RibbonToolTip>
</ResourceDictionary>
