Operator Library ================ The **Sedaia Rig Interfaces** extension includes a central `operators` submodule that provides utility functions for both the UI and management tools. These operators are designed for efficiency and standard compliance. Standard Prefixer System ------------------------ To avoid naming conflicts within the Blender environment, all operators follow the **Prefixer** naming system. This includes the major SACR and UI versions in the ID name. **Example**: - Rig Manager Download: `SEDAIA_OT_sacr_7_ui_2_download_rig` - Skin Manager Apply: `SEDAIA_OT_sacr_7_ui_2_apply_skin` Core Utility Operators ---------------------- Several low-level utility operators are available in the `src/operators` module: File Operations ~~~~~~~~~~~~~~~ * **OP_file_open**: Opens the operating system's file explorer at a specific path. * **OP_open_addon_directory**: Quickly opens the installation directory of the Sedaia extension. Image Handling ~~~~~~~~~~~~~~ * **OP_image_pack**: Packages an external image file into the current `.blend` file. * **OP_image_reload**: Force reloads an image from disk, useful when updating skin textures externally. Rigging Tools ~~~~~~~~~~~~~ * **OP_rig_rename**: A utility to batch rename rig bones or properties according to the Sakura standard. Security and Guardrails ----------------------- All operators that perform network-sensitive tasks (like `DownloadRig` or `UpdatePlayer`) include an internal check for `allow_online()`. **Implementation details**: - The operator checks `bpy.app.online_access`. - If `False`, it calls `self.report({'WARNING'}, "Online functionality is disabled in Blender settings.")`. - The operator then returns `{'CANCELLED'}` to prevent any unapproved network requests.