
SetPlotDeviceNames_00
- SetPlotDeviceNames β set every layoutβs plot device to DWG To PDF.pc3 when available
- Iterates all layouts, refreshes device info, validates availability, then assigns the plot configuration
- Prints a warning per layout when the target device is not present

SetPublishLocation_01
Summary- This LISP provides a dialog to review and batch-edit plotting and layout settings across multiple layouts, plus viewport utilities for lock, annotation visibility, and zoom tools.
- Designed for fast QA and standardization of Plot Device, Page Setup, and Paper Size per layout.
Categories: AutoCAD_Lips
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="SetPlotDeviceNames">
<src:RibbonToolTip.ExpandedContent>
<StackPanel>
<TextBlock Background="AntiqueWhite" TextAlignment="Left">
<Bold>Function Syntax: SetPlotDeviceNames</Bold>
<LineBreak/>
<Bold>Version: 1 Date: 17.10.2025</Bold>
<Bold>Version: 2 Date: 01.01.2026</Bold>
<LineBreak/>
<LineBreak/>
<Hyperlink>AI+https://www.cadtutor.net/forum/topic/17353-change-printer/</Hyperlink>
<Hyperlink>AI+https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/assign-a-page-setup-to-all-layout-tabs-prior-to-or-without-going/m-p/11757775#M34324</Hyperlink>
<LineBreak/>
<Bold>Title</Bold><LineBreak/>
SetPlotDeviceNames LISP for AutoCAD layouts and plotting management<LineBreak/>
<LineBreak/>
<Bold>Description</Bold><LineBreak/>
This program opens a dialog that lets the user review and batch-edit plotting settings per layout, plus viewport lock, annotation visibility, and viewport zoom operations, while keeping layout selection synchronized across columns.<LineBreak/>
<LineBreak/>
<Bold><Red>How it is started</Red></Bold><LineBreak/>
<Red>Command:</Red> <Bold><DarkRed>SetPlotDeviceNames</DarkRed></Bold><LineBreak/>
The user runs <Bold><DarkRed>SetPlotDeviceNames</DarkRed></Bold> at the AutoCAD command line to open the dialog interface.<LineBreak/>
<LineBreak/>
<Bold>What the user does</Bold><LineBreak/>
β’ The user reviews a table of layouts showing <Bold>Layout Name</Bold>, <Bold>Plot Device</Bold>, <Bold>Page Setup</Bold>, <Bold>Paper Size</Bold>, plus status columns for <Bold>Lock</Bold>, <Bold>Anno</Bold>, and <Bold>Zoom</Bold>.<LineBreak/>
β’ The user filters layouts by a wildcard filter and chooses a scope: <Bold>Selected</Bold> or <Bold>All displayed</Bold>.<LineBreak/>
β’ The user optionally includes or excludes <Bold>Model</Bold> from the list and from apply operations.<LineBreak/>
β’ The user applies changes to the chosen scope using dedicated buttons for device, page setup, and paper size.<LineBreak/>
β’ The user can also run viewport utility actions (lock, annotation visibility, zoom tools) for the chosen scope.<LineBreak/>
<LineBreak/>
<Bold><Red>Key interface behaviors</Red></Bold><LineBreak/>
β’ <Bold>Multi-column synchronized selection</Bold> meaning selecting rows in any list aligns the same rows in every other list.<LineBreak/>
β’ <Bold>Horizontal scrolling per column</Bold> meaning each of the four main text columns has its own slider that shifts the visible substring left or right without changing the underlying values.<LineBreak/>
β’ <Bold>Selected full readouts</Bold> show the complete <Bold>Name</Bold> and complete <Bold>Paper</Bold> for the first selected layout.<LineBreak/>
<LineBreak/>
<Bold><DarkRed>Filtering and scope</DarkRed></Bold><LineBreak/>
β’ Filter supports wildcard patterns such as star and question mark.<LineBreak/>
β’ <Bold>Include Model in list</Bold> controls whether the Model tab appears in the layouts list.<LineBreak/>
β’ <Bold>Selected</Bold> scope applies changes only to the currently selected rows.<LineBreak/>
β’ <Bold>All displayed</Bold> scope applies changes to every layout currently shown after filtering.<LineBreak/>
β’ <Bold>Include Model in apply</Bold> controls whether apply operations are allowed to target the Model tab.<LineBreak/>
<LineBreak/>
<Bold><Red>Functionalities</Red></Bold><LineBreak/>
β’ <Bold>Apply Plot Device</Bold> changes the plotter configuration name for each targeted layout and refreshes plot device information.<LineBreak/>
β’ <Bold>Apply Page Setup</Bold> copies a named page setup into each targeted layout, or clears the page setup when the user selects <Bold>none</Bold>.<LineBreak/>
β’ <Bold>Apply Paper Size</Bold> sets the canonical media name based on the selected device and chosen paper display name.<LineBreak/>
β’ <Bold><DarkRed>Lock</DarkRed></Bold> sets all non-overall paper-space viewports in each targeted layout to <Bold>locked</Bold>.<LineBreak/>
β’ <Bold><DarkRed>Unlock</DarkRed></Bold> sets all non-overall paper-space viewports in each targeted layout to <Bold>unlocked</Bold>.<LineBreak/>
β’ <Bold><DarkRed>AnnON</DarkRed></Bold> sets <Bold>ANNOALLVISIBLE</Bold> to on for each targeted paper-space layout.<LineBreak/>
β’ <Bold><DarkRed>AnnOFF</DarkRed></Bold> sets <Bold>ANNOALLVISIBLE</Bold> to off for each targeted paper-space layout.<LineBreak/>
β’ <Bold><DarkRed>Zoom Extents</DarkRed></Bold> activates each layout, enters viewport context, zooms extents in each viewport, then marks that layout as having an extents zoom state for display purposes.<LineBreak/>
β’ <Bold><DarkRed>Zoom Window</DarkRed></Bold> prompts the user to pick two corners in a viewport on the first targeted layout, then applies the same zoom window to viewports in all targeted layouts without setting an extents zoom flag.<LineBreak/>
<LineBreak/>
<Bold><Red>Displayed status columns</Red></Bold><LineBreak/>
β’ <Bold>Lock status</Bold> shows <Bold>Locked</Bold>, <Bold>Unlocked</Bold>, <Bold>Mixed</Bold>, <Bold>NoVP</Bold>, or <Bold>Model</Bold> depending on viewport presence and lock state.<LineBreak/>
β’ <Bold>Anno status</Bold> shows <Bold>AnnOn</Bold>, <Bold>AnnOff</Bold>, or unknown if not retrievable.<LineBreak/>
β’ <Bold>Zoom status</Bold> shows <Bold><DarkRed>ZExt</DarkRed></Bold> only when the tool explicitly marked the layout after <Bold><DarkRed>Zoom Extents</DarkRed></Bold>, otherwise it shows <Bold>Z?</Bold>.<LineBreak/>
<LineBreak/>
<Bold><Red>Important system variables and state handling</Red></Bold><LineBreak/>
β’ The program temporarily switches <Bold>TILEMODE</Bold>, <Bold>CTAB</Bold>, and <Bold>MSPACE</Bold> when reading or modifying paper-space layout settings, then restores them to the prior values to avoid disrupting the user environment.<LineBreak/>
β’ <Bold>Undo grouping</Bold> is used when applying viewport lock changes so the operation can be reverted cleanly.<LineBreak/>
<LineBreak/>
<Bold><DarkRed>Prompts and user interaction</DarkRed></Bold><LineBreak/>
β’ <Bold><DarkRed>Zoom Window</DarkRed></Bold> prompts for first corner and opposite corner inside a viewport, then applies the window consistently across selected layouts.<LineBreak/>
β’ All other operations are button driven from the dialog and do not require selecting entities in the drawing.<LineBreak/>
<LineBreak/>
<Bold><Red>Safety and persistence behavior</Red></Bold><LineBreak/>
β’ Zoom state labeling is stored in the drawing named object dictionary using a dedicated dictionary name so older stored flags do not affect current display.<LineBreak/>
β’ <Bold><DarkRed>ZExt</DarkRed></Bold> is only shown when explicitly produced by this tool to prevent misleading zoom labels.<LineBreak/>
<LineBreak/>
</TextBlock>
<Grid>
<Image Source="PNG" Stretch="Uniform"/>
</Grid>
<Grid>
<MediaElement
Source="GIF"
Stretch="Uniform"
Visibility="Visible"/>
</Grid>
</StackPanel>
</src:RibbonToolTip.ExpandedContent>
</src:RibbonToolTip>
</ResourceDictionary>
Categories: AutoCAD_Lips
