Skip to content

Commit

Permalink
SG-34683 - Rebranding (#183)
Browse files Browse the repository at this point in the history
  • Loading branch information
julien-lang authored Mar 20, 2024
2 parents 794f7ed + 23ff7f3 commit cfa8ab1
Show file tree
Hide file tree
Showing 18 changed files with 125 additions and 113 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@

## Documentation

This repository is a part of the ShotGrid Pipeline Toolkit.
This repository is a part of the Flow Production Tracking Toolkit.

- For more information about this engine and for release notes, *see the wiki section*.
- For general information and documentation, click here: https://help.autodesk.com/view/SGDEV/ENU/?contextId=SA_INTEGRATIONS_USER_GUIDE
- For information about ShotGrid in general, click here: https://help.autodesk.com/view/SGSUB/ENU
- For information about Flow Production Tracking in general, click here: https://help.autodesk.com/view/SGSUB/ENU

## Using this engine in your Setup

Expand Down
8 changes: 4 additions & 4 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@

At Autodesk, we know that the security of your data is critical to your studio’s
operation.
As the industry shifts to the cloud, ShotGrid knows that security and service
As the industry shifts to the cloud, Flow Production Tracking knows that security and service
models are more important than ever.

The confidentiality, integrity, and availability of your content is at the top
of our priority list.
Not only do we have a team of ShotGrid engineers dedicated to platform security
Not only do we have a team of Flow Production Tracking engineers dedicated to platform security
and performance, we are also backed by Autodesk’s security team, also invests
heavily in the security for broad range of industries and customers.
We constantly reassess, develop, and improve our risk management program because
we know that the landscape of security is ever-changing.

If you believe you have found a security vulnerability in any ShotGrid-owned
If you believe you have found a security vulnerability in any Flow Production Tracking-owned
repository, please report it to us as described below.


Expand All @@ -32,4 +32,4 @@ configurations, reproduction steps, exploit code, impact, etc.

## Additional Information

Please check out the [ShotGrid Security White Paper](https://help.autodesk.com/view/SGSUB/ENU/?guid=SG_Administrator_ar_general_security_ar_security_white_paper_html).
Please check out the [Flow Production Tracking Security White Paper](https://help.autodesk.com/view/SGSUB/ENU/?guid=SG_Administrator_ar_general_security_ar_security_white_paper_html).
2 changes: 1 addition & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ The Alias Engine
Overview
***********

The ShotGrid Toolkit Engine for Alias contains a standard platform for integrating ShotGrid App into Alias. It adds a ShotGrid menu to the Alias menu, where the Engine's configured Toolkit Apps can be launched.
The Flow Production Tracking Toolkit Engine for Alias contains a standard platform for integrating Flow Production Tracking App into Alias. It adds a Flow Production Tracking menu to the Alias menu, where the Engine's configured Toolkit Apps can be launched.

See the :ref:`engine` for implementation details.

Expand Down
60 changes: 33 additions & 27 deletions engine.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@


class AliasEngine(sgtk.platform.Engine):
"""Alias engine for ShotGrid Toolkit."""
"""Alias engine for Flow Production Tracking Toolkit."""

# The name of the hidden window, used to parent SG widgets to the Alias main window.
__PROXY_WINDOW_TITLE = "sgtk dialog owner proxy"
Expand All @@ -40,11 +40,11 @@ def __init__(self, tk, context, engine_instance_name, env):
# The tk-alias python module
self._tk_alias = None

# Keep track of the ShotGrid context by stage name and path to allow context switching.
# Keep track of the Flow Production Tracking context by stage name and path to allow context switching.
self._contexts_by_stage_name = {}
self._contexts_by_path = {}

# The menu generator is responsible for adding the ShotGrid menu to the Alias window.
# The menu generator is responsible for adding the Flow Production Tracking menu to the Alias window.
self.__menu_generator = None

# The event watcher manages handling Alias event callbacks.
Expand All @@ -65,7 +65,7 @@ def __init__(self, tk, context, engine_instance_name, env):
# calling '__init_api'
self.__alias_py = None

# Create a QWidget to parent all ShotGrid windows to. This widget will set its parent
# Create a QWidget to parent all Flow Production Tracking windows to. This widget will set its parent
# as the Alias main window.
self.__proxy_window = None

Expand All @@ -76,8 +76,8 @@ def __init__(self, tk, context, engine_instance_name, env):
if not hasattr(sys, "argv"):
sys.argv = [""]

# Flag inidicating if ShotGrid is running in the same process as Alias. This will
# determine how ShotGrid will communicate with Alias.
# Flag inidicating if Flow Production Tracking is running in the same process as Alias. This will
# determine how Flow Production Tracking will communicate with Alias.
self.__in_alias_process = os.path.basename(sys.executable) == "Alias.exe"
open_model = os.getenv("TK_ALIAS_OPEN_MODEL")
if open_model is None:
Expand Down Expand Up @@ -375,9 +375,13 @@ def restart_process(self):
if self.__menu_generator:
status = self.__menu_generator.remove_menu()
if status == self.alias_py.AlStatusCode.Success.value:
self.logger.debug("Removed ShotGrid menu from Alias successfully.")
self.logger.debug(
"Removed Flow Production Tracking menu from Alias successfully."
)
elif status == self.alias_py.AlStatusCode.Failure.value:
self.logger.error("Failed to remove ShotGrid menu from Alias")
self.logger.error(
"Failed to remove Flow Production Tracking menu from Alias"
)
else:
self.logger.warning(
f"Alias Python API menu.remove() returned non-success status code {status}"
Expand Down Expand Up @@ -410,7 +414,7 @@ def __init_qt_app(self):
"""
Initialize the Qt Application.
This should only be called when ShotGrid is running in the same process as Alias, and
This should only be called when Flow Production Tracking is running in the same process as Alias, and
Alias does not create a Qt Application (for Alias < 2024.0).
"""

Expand All @@ -435,7 +439,9 @@ def __init_qt_app(self):

self.__qt_app = QtGui.QApplication.instance()
if not self.__qt_app:
self.__qt_app = QtGui.QApplication(["ShotGrid Alias Engine"])
self.__qt_app = QtGui.QApplication(
["Flow Production Tracking Alias Engine"]
)
self.__qt_app.setQuitOnLastWindowClosed(False)

def _app_quit():
Expand Down Expand Up @@ -476,7 +482,7 @@ def post_qt_init(self):
QtCore.QTextCodec.setCodecForCStrings(utf8)
self.logger.debug("set utf-8 codec for widget text")

# Create the parent dialog for ShotGrid widgets
# Create the parent dialog for Flow Production Tracking widgets
self.__get_or_create_proxy_window()

# Check that the Alias version is supported. Pop up a warning dialog if not.
Expand All @@ -487,7 +493,7 @@ def post_qt_init(self):
self.__data_validator = self._tk_alias.data_validator.AliasDataValidator(self)
self.__event_watcher = self.__init_alias_event_watcher()

# Build the ShotGrid menu in Alias. It will be added to the Alias main menu bar.
# Build the Flow Production Tracking menu in Alias. It will be added to the Alias main menu bar.
self.__menu_generator.build()

# Run the start up commands
Expand Down Expand Up @@ -602,7 +608,7 @@ def on_stage_active(self, result):
"""
This is a callback that is triggered by Alias "StageCreated" events.
Update the ShotGrid context according to the current stage (since it may have changed).
Update the Flow Production Tracking context according to the current stage (since it may have changed).
:param result: The result of the Alias stage created event.
:type result: alias_api.PythonCallbackMessageResult
Expand Down Expand Up @@ -868,7 +874,7 @@ def __init_api(self, hostname=None, port=None, namespace=None, force=False):
return

if self.__in_alias_process:
# ShotGrid is running in the same process as Alias. This is the old way that the
# Flow Production Tracking is running in the same process as Alias. This is the old way that the
# engine was set up for, and will not work with Alias versions that use Qt for its
# GUI (>=2024.0).
try:
Expand All @@ -880,11 +886,11 @@ def __init_api(self, hostname=None, port=None, namespace=None, force=False):
api_module = alias_api

if self.__has_ui:
# When running ShotGrid in the same process as Alias, the qt app needs to be
# When running Flow Production Tracking in the same process as Alias, the qt app needs to be
# created by the engine
self.__init_qt_app()
else:
# ShotGrid is running in a separate process than Alias. This is the new way how
# Flow Production Tracking is running in a separate process than Alias. This is the new way how
# the engine operates: the Alias plugin will bootstrap the engine in a separate
# process than Alias (to avoid Qt conflicts between QtQuick/QML and QWidgets).

Expand Down Expand Up @@ -980,16 +986,16 @@ def __check_version_support(self):
"compatibility_dialog_min_version", 2020
):
msg = (
"The ShotGrid Pipeline Toolkit has not yet been fully tested with Alias %s. "
"You can continue to use the Toolkit but you may experience bugs or "
"instability. Please report any issues you see to %s"
% (self.alias_version, sgtk.support_url)
"The Flow Production Tracking Toolkit has not yet been fully tested "
"with Alias %s. You can continue to use the Toolkit but you may "
"experience bugs or instability. Please report any issues you see "
"to %s" % (self.alias_version, sgtk.support_url)
)
self.logger.warning(msg)
if self.has_ui:
QtGui.QMessageBox.warning(
self._get_dialog_parent(),
"Warning - ShotGrid Pipeline Toolkit!",
"Warning - Flow Production Tracking Toolkit!",
msg,
)
return False
Expand All @@ -998,16 +1004,16 @@ def __check_version_support(self):
"compatibility_dialog_old_version"
):
msg = (
"The ShotGrid Pipeline Toolkit is not fully capable with Alias %s. "
"You should consider upgrading to a more recent version of Alias. "
"Please report any issues you see to %s"
"The Flow Production Tracking Toolkit is not fully capable with "
"Alias %s. You should consider upgrading to a more recent version "
"of Alias. Please report any issues you see to %s"
% (self.alias_version, sgtk.support_url)
)
self.logger.warning(msg)
if self.has_ui:
QtGui.QMessageBox.warning(
self._get_dialog_parent(),
"Warning - ShotGrid Pipeline Toolkit!",
"Warning - Flow Production Tracking Toolkit!",
msg,
)
return False
Expand All @@ -1017,7 +1023,7 @@ def __check_version_support(self):

def __get_or_create_proxy_window(self):
"""
Create a widget to parent all ShotGrid windows to.
Create a widget to parent all Flow Production Tracking windows to.
This widget itself will be parented to the Alias main window.
Expand All @@ -1033,7 +1039,7 @@ def __get_or_create_proxy_window(self):
if not self.__proxy_window:
if hasattr(self.alias_py, "set_parent_window"):
# The Alias API version >= 4.0.0 provides functions to manage the Alias main
# window (e.g. set as parent to ShotGrid windows)
# window (e.g. set as parent to Flow Production Tracking windows)
self.__proxy_window = QtGui.QWidget()
self.__proxy_window.setWindowTitle(self.__PROXY_WINDOW_TITLE)
self.alias_py.set_parent_window(self.__proxy_window.winId())
Expand Down
2 changes: 1 addition & 1 deletion hooks/menu_customization.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@


class MenuCustomization(HookBaseClass):
"""Hook to allow customizing the ShotGrid menu in Alias."""
"""Hook to allow customizing the Flow Production Tracking menu in Alias."""

def sorted_menu_commands(self, commands):
"""
Expand Down
8 changes: 4 additions & 4 deletions hooks/tk-multi-loader2/basic/scene_actions.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def generate_actions(self, sg_publish_data, actions, ui_area):
one object is returned for an action, use the params key to pass additional
data into the run_action hook.
:param sg_publish_data: ShotGrid data dictionary with all the standard publish fields.
:param sg_publish_data: Flow Production Tracking data dictionary with all the standard publish fields.
:param actions: List of action strings which have been defined in the app configuration.
:param ui_area: String denoting the UI Area (see above).
:returns List of dictionaries, each with keys name, params, caption and description
Expand Down Expand Up @@ -131,7 +131,7 @@ def execute_multiple_actions(self, actions):
Each entry will have the following values:
name: Name of the action to execute
sg_publish_data: Publish information coming from ShotGrid
sg_publish_data: Publish information coming from Flow Production Tracking
params: Parameters passed down from the generate_actions hook.
.. note::
Expand All @@ -158,7 +158,7 @@ def execute_action(self, name, params, sg_publish_data):
:param name: Action name string representing one of the items returned by generate_actions.
:param params: Params data, as specified by generate_actions.
:param sg_publish_data: ShotGrid data dictionary with all the standard publish fields.
:param sg_publish_data: Flow Production Tracking data dictionary with all the standard publish fields.
:returns: No return value expected.
"""

Expand Down Expand Up @@ -210,7 +210,7 @@ def _import_file_as_reference(self, path, sg_publish_data):
Import the file as an Alias reference, converting it on the fly as wref.
:param path: Path to the file.
:param sg_publish_data: ShotGrid data dictionary with all the standard publish fields
:param sg_publish_data: Flow Production Tracking data dictionary with all the standard publish fields
"""

# get the tank of the project the file we're trying to import belongs to
Expand Down
6 changes: 3 additions & 3 deletions hooks/tk-multi-publish2/basic/publish_annotations.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ def name(self):
"""
One line display name describing the plugin
"""
return "Publish Annotations to ShotGrid"
return "Publish Annotations to Flow Production Tracking"

@property
def description(self):
Expand All @@ -33,8 +33,8 @@ def description(self):
This plugin exports all annotations created using the Locator Annotation tool in Alias.
</p>
<p>
Each annotation will create a Note in ShotGrid. All Notes are linked to this version and file. Use this to
sync all review notes made in Alias with ShotGrid.
Each annotation will create a Note in Flow Production Tracking. All Notes are linked to this version and file. Use this to
sync all review notes made in Alias with Flow Production Tracking.
</p>
"""

Expand Down
18 changes: 10 additions & 8 deletions hooks/tk-multi-publish2/basic/publish_session.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,13 @@ def description(self):
loader_url = "https://help.autodesk.com/view/SGDEV/ENU/?contextId=PC_APP_LOADER"

return """
Publishes the file to ShotGrid. A <b>Publish</b> entry will be
created in ShotGrid which will include a reference to the file's current
path on disk. If a publish template is configured, a copy of the
current session will be copied to the publish template path which
will be the file that is published. Other users will be able to access
the published file via the <b><a href='%s'>Loader</a></b> so long as
Publishes the file to Flow Production Tracking. A <b>Publish</b>
entry will be created in Flow Production Tracking which will
include a reference to the file's current path on disk. If a
publish template is configured, a copy of the current session
will be copied to the publish template path which will be the
file that is published. Other users will be able to access the
published file via the <b><a href='%s'>Loader</a></b> so long as
they have access to the file's location on disk.
If the session has not been saved, validation will fail and a button
Expand All @@ -55,8 +56,9 @@ def description(self):
file to the next version after publishing.
The <code>version</code> field of the resulting <b>Publish</b> in
ShotGrid will also reflect the version number identified in the filename.
The basic worklfow recognizes the following version formats by default:
Flow Production Tracking will also reflect the version number identified
in the filename. The basic worklfow recognizes the following version
formats by default:
<ul>
<li><code>filename.v###.ext</code></li>
Expand Down
17 changes: 9 additions & 8 deletions hooks/tk-multi-publish2/basic/publish_translation.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,14 @@ def description(self):
loader_url = "https://help.autodesk.com/view/SGDEV/ENU/?contextId=PC_APP_LOADER"

return """
Publishes the file to ShotGrid. A <b>Publish</b> entry will be
created in ShotGrid which will include a reference to the file's current
path on disk. If a publish template is configured, a copy of the
current session will be copied to the publish template path which
will be the file that is published. Other users will be able to access
the published file via the <b><a href='%s'>Loader</a></b> so long as
they have access to the file's location on disk.
Publishes the file to Flow Production Tracking. A <b>Publish</b>
entry will be created in Flow Production Tracking which will include
a reference to the file's current path on disk. If a publish template
is configured, a copy of the current session will be copied to the
publish template path which will be the file that is published. Other
users will be able to access the published file via the <b>
<a href='%s'>Loader</a></b> so long as they have access to the file's
location on disk.
<br><br><b color='red'>NOTE:</b> it's not possible to publish a WREF file
if you already have WREF files loaded in your current session.
Expand Down Expand Up @@ -401,7 +402,7 @@ def finalize(self, settings, item):
extra={
"action_show_in_shotgun": {
"label": "Show Publish",
"tooltip": "Reveal the published file in ShotGrid.",
"tooltip": "Reveal the published file in Flow Production Tracking.",
"entity": item.properties["sg_publish_data"],
}
},
Expand Down
Loading

0 comments on commit cfa8ab1

Please sign in to comment.