The Events tool was developed to make it possible for the modules to perform certain actions according to changes made in the 3D space of Promob and which are not treated automatically. In other words, the events have the objective of making certain Action be carried out according to the event applied to it. Before applying an event, it is important that the concept of the event is understood, as each of the actions performed will generate processing on the item, which may compromise the performance of the system.
Events can be used from items that have inserts that compete with each other and need to have at least one insert checked, to items that need inserts that are children of the inserts to be reprocessed when there are certain changes in the 3D space. For these actions to work correctly, events must be applied to the item that needs to be understood, that is, when I have an event “on model type change” I need to apply it to an item where I have a model applied, if not, the event will have no effect. The same situation occurs for all other events.
Below are documentation related to the Events:
How to define events for an item?
Events can be defined both in groups and in modules, depending on the application.
Each module can have several events and each event can have several actions.
To define events and actions for an item:
1. Access the Registry - Modules menu.
2. Select the item (module or group) that should have an event applied to the Navigation Tree.
3. With Advanced mode active, in Main, access the Events tab.
4. Click Create Event and select the desired event.
5. After selecting the event, click to add action.
6. Mark the desired action in the window that will be displayed and click OK.
7. After defining the event, click the Refresh icon to apply the changes.
- On Dimension Change
This event should be used when we want an action to be performed when the dimension of the module, in 3D Space, is changed (through the tools: Arrows, Properties Panel, Editors such as geometry or another event).
- On User Dimension Change
This event should be used whenever we want the action to be performed when the dimension of the module, in 3D Space, is changed by the user (through the tools: Arrows or Properties Panel).
- On Format Model Insets Change
This event should be used whenever we want a specific action to be performed after changing a Format Template (Click here to learn more about Format Templates).
- On Model Type Change
This event must be used when we have an item with a Model applied and it is exchanged through the Tools Panel - Models. (Type Models are the color options registered in Register - Models).
- On Inverted Change
This event should be used when we want that, when an item is mirrored, perform a certain action. Example: Door that has its mirrored opening.
- On Inserts Change
This event should be used when we want the actions associated with it to be performed whenever an insert undergoes any change, be it via the Tools Panel - Inserts , or caused by some other event.
IMPORTANT: This processing will only be performed on the item's inserts with the applied event, that is, it will not validate the inserts of the inserts .
It is very important to be careful in the application of this event, as its processing is high, since each time an inserts changes, the associated actions will be performed.
On Crossbar Quantity Change
This event should be used when using the Crossbar Editor tool and we want some action to be taken when the number of crossbars is changed.
- On Value Attribute Change
This event should be used when we want an attribute, configured as Visible and Editable for the module, to be changed. For its operation it is necessary that the attribute has the property "Launch event when changing value" active.
- On Position Service Change
This event should be used when we want to make a processing when the Positioning Service (Properties Panel - Positioning) for this item is changed in 3D Space. Example: When changing the position of a handle, it is necessary to redefine the dimensions of the door.
These are the actions that will be performed when a given event is triggered. Some actions will be felt in the child items and others even in the parent items.
- Adjust inserts models
This action will check if there is any Type Removal Option registered in the item (if as removals before child items, it will also process).
In each processing, the registered conditions will be checked and after that, the Properties Panel - Models in 3D Space will be updated.
- Adjust component models
We use this action when we want the system to go through all the module's inserts and evaluate its Format Removal Options.
After all models have been revalidated, the Properties Panel - Models, in 3D Space, is also updated.
- Set dimension
This action resets the dimension of a module to the dimension registered in the action. After this redefinition was made, Promob understands that the shape of the item was changed, giving segment to the launch of events related to the shape change, causing a domino effect. That is, Promob will update values in the Properties Panel, will update the inserts (insertion of inserts or removal), etc.
- Reprocess inserts
This action goes through the list of Inserts registered for the module and checking which ones were “invisible” by the last modification. Then, the aggregates that are invisible are inserted again.
During the insertion of the module in the 3D Space, the values registered for the inserts are processed. For example, if an insert has become visible and has the width of the parent module in the Width formula minus any value, this width of the parent will be updated due to the last modification.
In this process, the following actions are basically performed:
1. All inserts that are not visible according to the Visibility Conditions applied will be removed;
2. Standard inserts will be added;
3. All model removal options will be validated again for all inserts, from the largest parent entity.
- Reprocess inserts and brothers
In this action, the item that has this event applied will have its Inserts reprocessed according to the action "Reprocess Inserts". In addition, Promob will raise another level (parent of the item with event), and modify the brothers inserts to the item that has been changed. Of these brothers inserts, only the item's size and position will be reprocessed. Therefore, the inserts will be resized and repositioned according to the modification made.
- Reprocess inserts childs
In this action, the processing follows the same logic as the action "Reprocess Inserts", however the processing will only happen in the items selected in the action. In other words, in this action, the items where reprocessing must be applied must be selected.
- Reprocess inserts without concurrents
In this action, the processing follows the same logic as the action “Reprocess Inserts”, however only items that have no competition (either by position or applied) will be processed.
- Reprocess structure
This action calls for reprocessing by the Cabinet Editor, which will process the module again, according to your settings. The cabinet will be updated according to what is installed (conditions, validations, visibility, competitions, etc.).
- Reprocess insert dimension
In this action, Promob will look for the Insertion dimension in the module register for itself and for all its inserts, and so on, adjusting the dimensions again.
In this action, the joins will also be reprocessed, as items may lose the join due to the modification of the dimension, or they can make the join due to the new dimension.
It is as if the insertion were performed again, that is, there will be a domino effect of processing Visibility Conditions, for example.