Eneroth Swift Layer Visibility Control


My 40th extension is now live at the Extension Warehouse. This extension is designed to greatly speed up some of the basic and most common layer management.

I’ve noticed I often waste time searching for a specific layer in the Layer Panel so I can hide it while the entity I want to hide is just in front of me. Manually searching for the layer, sometimes even having to scroll the layer list, to do so can be a bit tedious and especially distracting. With this plugin you simply select that entity and press a button to hide its layer.

Another reason why I’ve spent time in the Layer Panel is to find a layer to show. This plugin adds a button that shows all layers used in the active drawing context in just one click. Then you can select entities of the layers you want to see and press another button to re-hide all the layers you’ve just shown, except those of the selected entities.

This plugin does not only save a few seconds every single time you need to show or hide a layer but removes the distraction caused by that delay, let you think graphically instead of in text and lets you focus more on your actual work instead of the application’s user interface.

Start the 14 day free trial today!



Just Fantastic_ I have been thinking that a click and hide is just what I needed and this morning it appeared.

Thank You !

1 Like

We already have that for a long time…

Not the same though. VisTools doesn’t have the fast way to show one specific hidden hidden layer which is something I need to do tens, if not hundreds, of times a day when modelling. However, it has numerous functions that I would consider redundant and distracting, such as freezing and unfreezing. Lastly it was quite hard merely to figure out what that extension does. The SketchUcation thread has no description of what the plugin does or what it is for, just a change log. I had to read the source code and readme file on GitHub for this. Properly documentation with examples is an important part of plugin development.

tl;dr My plugin has an important additional features, less distractions, is easier to find, easier to install, easier to use and overall much more polished.

1 Like

The plugin always had a "README.md" file in the Github repo (and hence the plugin’s main folder.)
I copied the readme file info into the SCF plugin thread. (I had assumed users came from the old thread where it was explained why the plugin was created, etc. That old thread on “FreezeTools” has since long disappeared, or been forgotten.)

Basically, VisTools was created by Dana Woodman to mimic the AutoCAD style of visibility control.

I only cleaned it up a bit, added some multi-language support, … but did not really make functional changes. Nor did I actually endorse using this workflow over other workflows or plugins.

(I’m not that interested in maintaining it much anymore, mainly because SketchUp entity locking is not the same as AutoCAD freezing. I last ran in on SUv2015 myself.)


Any improvement you can make to the SketchUp visibility control workflow should be well received by the user community.

1 Like

I’ve just installed the trial version and have found that the only “active” button on the toolbar, as well as in the Extensions Menu, is the middle one, the show all layers. The Hide Selected Layer is the one I’m most interested in. I have the other functions available in Joe Zeh’s “Layers Manager”, might there be some overlap that’s causing the problem ?

Realizing that I could/should determine the answer to the question of possible interference from other extensions I disabled Layers Manager and restarted SketchUp. The same problem with SLVC occurs, even after uninstalling and re-installing from the Extension Warehouse.

I’m working with SketchUp Pro 2017 on a year old iMac, maybe it’s a platform issue ?

You need to select entities to be able to hide their layers. With no selection there is no layers to hide, hence the buton is disabled. Regarding the third button that re-hides what was previously hidden you need to first use the middle button to show hidden layers.

Sorry, I forgot to attach this screenshot. I do understand how this should work. The middle button works as it should but the other two only show as grey versions of themselves even after I’ve selected a layer. Layers.pdf (67.6 KB)

If you select some entities in the model the button will be enabled. It cannot be enabled when nothing is selected because then there is nothing it can do.

As written, you can simply hide a layer by unchecking it in the Layers tool window (natively without a plugin.)

You are making an incorrect assumption based upon the name of the extension’s command.

There actually is no way within the SketchUp APIs, of determining what layer that the user has “selected” in the GUI (Layers manager window or tool panel.)
Coders can only determine when the active layer has been changed, or when any given layer has had it’s visibility property changed. (Joe’s plugin is different as it uses a WebDialog interface which can detect via it’s embedded Javascript what web page control the user has “selected”.)

So, …

Therefore the command is actually “Hide Layer(s) of Selected Entities”.

This is the same screenshot that I previously posted, just as a proper png file this time instead of a pdf, so no need to download, as I’ve just figured out. :slightly_smiling_face:

The top plate entity has been previously selected, as shown by the blue colour. Why the first button doesn’t enable itself after I’ve selected an entity is what concerns me. Also, the middle button works as advertised but the third button, in its turn, does not, remains grey throughout.

The other significant outcome of installing the trial version was that both SketchUp and my iMac froze after a couple of attempts to use the extension.


I have the same problem as “westsalish” , the tool bar buttons do not work correctly, & I bought the extension. I got it to work by assigning keyboard shortcuts to the functions. It would be nice if the keys worked. I’m on a mac also.


1 Like

@westsalish, @de71855

I’ve been looking into this and apparently there is a bug in the Mac version of SketchUp that prevents validation procs for commands to fire as they should. The menu should still work though (which means also shortcuts should work).

Thanks for getting back to us about the bug, besides that, its a great extension. I have a couple of other extensions you have written, use them all the time.


the menu item may fail if you have more than one SU document open…

mac SU has three types of toolbar and a multi document menu, validation procs often fails even for the native tools…

IMHO it is best to avoid validation procs completely and use messages to train the user to preselect items…


Ouch. In my experience it is very distracting to have to stop whatever you are doing to read the text of a messagebox while the same information could have been conveyed much more subtle and more clearly as a state. I’ve actually even thought about creating my own version of some existing plugin just to improve this user experience as it always bugs me.

That’s a quite severe bug in the Mac version :open_mouth: . I hope this can be fixed in a future SU version. Otherwise I’ll need to recommend people to avoid using Mac. The usability (and thus also accessibility) of a plugin should not suffer from a SketchUp bug.

I appreciate eneroth3’s extensions too. I’ve installed the trial version twice now but had to quit SketchUp and restart my mac both times. Because of this I’ve been unable to test the shortcuts or menu commands.

I take it that you’ve not had any problem with Sketchup freezing when using this particular extension ?

I haven’t had freezing on my mac from that extension, & got the keyboard shortcuts to work fine. Works good


Did you purchase the extension without installing the trial version first ?

I’ve not had any problem installing any other extension from the Warehouse.

I definitely require this first button, the Hide Layer(s) of Selected Entities button. If the keystroke works I can put in on my Space Mouse so no need for the toolbar or Menu.