- (int) LayersUsed()
This returns a count of the layers in the layer table for the current
- (int) AddLayer(name, index)
This adds the named layer to the layer table, in the position
specified by the integer second argument. If the second argument is
negative, the new layer will be added at the end, above all existing
layers. If the index is 0, the new layer will be positioned at the
index of the current layer, and the current layer and those above
moved up. Otherwise, the index is a 1-based index into the layer
table, where the new layer will be inserted. The layer at that index
and those above will be moved up.
The name can match the name of an existing layer that has been
removed from the layer table. It can also be a unique new name,
and a new layer will be created. If the name matches an existing
layer in the table, a new layer will also be created, but with an
internally generated name.
The function will return 0 if it is not possible to create a new
layer, for example if the name is not a valid layer name. On
success 1 is returned.
If the name is not in the layer:purpose form, any
new layer created will use the default ``drawing'' purpose.
- (int) RemoveLayer(stdlyr]/)
This removes the layer indicated by the standard layer argument from
the layer table if found. This returns 1 if the layer is found and
removed, 0 otherwise.
- (int) RenameLayer(oldname, newname)
The oldname is a standard layer argument. The newname is
a string providing a new layer/purpose name in the layer[:purpose] form. If no purpose field is given, the default
``drawing'' purpose is assumed. This renames the layer
specified in oldname to newname. The renamed layer will
have any alias name removed.
This fails if oldname is unresolved or newname is null,
and returns 0 on error, with an error message available from GetError.
- (stringlist_handle) LayerHandle(down)
This function returns a handle to a list of the layer names from the
layer table. If the argument is 0, the list is in ascending order.
If the argument is nonzero, the list is in descending order. The
layers used in the current display mode are listed.
- (string) GenLayers(stringlist_handle)
This function returns a string containing a layer name from the layer
table. The argument is the handle returned by LayerHandle. A
different layer is returned for each call. The null string is
returned after all layers have been cycled through. This is
equivalent to ListNext.
- (stringlist_handle) GetLayerPalette(regnum)
The argument is an integer 0-7 corresponding to a layer palette
register, as used with the Layer Palette panel, and associated
with the PhysLayerPalette and ElecLayerPalette technology
file keyword families. The return value is a stringlist handle, where
the strings are the names of layers saved in the indexed palette
register corresponding to the display mode of the main drawing window.
If the palette register is empty, or the argument is out of range, a
scalar 0 is returned.
The register with index 0 is used internally to save the last Layer Palette user area before it pops down. Thus, this index should
not be used unless this behavior is expected.
- (int) SetLayerPalette(list, regnum)
The second argument is an integer 0-7 corresponding to a layer
palette register, as used with the Layer Palette panel, and
associated with the PhysLayerPalette and ElecLayerPalette
technology file keyword families.
The first argument provides a list of layers, or null, to be saved
in the indexed palette register corresponding to the display mode
of the main drawing window. If the argument is a scalar 0, or a
null string, the palette register will be cleared. Otherwise this
argument can be a string consisting of space-separated layer
names, or a stringlist handle, where the strings are layer names.
The handle is unaffected by this function call.
The function returns 1 on success, 0 if the register index is out
of range. The call will fail (halt the script) if a bad argument
There is no checking of the validity of the string saved as palette