cgl.ui.widgets package

Subpackages

Submodules

cgl.ui.widgets.base module

class cgl.ui.widgets.base.LJDialog(parent=None, force_top_level=True, dockable=False)[source]

Bases: QDialog

mouseMoveEvent(self, event: PySide6.QtGui.QMouseEvent) None[source]
mousePressEvent(self, event: PySide6.QtGui.QMouseEvent) None[source]
mouseReleaseEvent(self, event: PySide6.QtGui.QMouseEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LJDialog" inherits "QDialog": )
class cgl.ui.widgets.base.LJMainWindow(default_size=None)[source]

Bases: QMainWindow

closeEvent(self, event: PySide6.QtGui.QCloseEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LJMainWindow" inherits "QMainWindow": )
class cgl.ui.widgets.base.LJWidgetWrapper(parent=None, title='', widget=None)[source]

Bases: LJDialog

staticMetaObject = PySide6.QtCore.QMetaObject("LJWidgetWrapper" inherits "LJDialog": )
class cgl.ui.widgets.base.LJWindow(parent, default_size=None)[source]

Bases: QWidget

closeEvent(self, event: PySide6.QtGui.QCloseEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LJWindow" inherits "QWidget": )
class cgl.ui.widgets.base.StateSavers[source]

Bases: QObject

SAVERS = None
classmethod notify_savers()[source]
classmethod remember_me(obj)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("StateSavers" inherits "QObject": )
cgl.ui.widgets.base.clear_layout(to_clear, layout=None)[source]
cgl.ui.widgets.base.restore_size(widget, default_size=None)[source]

cgl.ui.widgets.button module

class cgl.ui.widgets.button.HoverButton(*icon, parent=None)[source]

Bases: QToolButton

enterEvent(self, arg__1: PySide6.QtGui.QEnterEvent) None[source]
get_hovered_icon(*icon)[source]
leaveEvent(self, arg__1: PySide6.QtCore.QEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("HoverButton" inherits "QToolButton": )
class cgl.ui.widgets.button.LJButton(parent=None)[source]

Bases: QPushButton

staticMetaObject = PySide6.QtCore.QMetaObject("LJButton" inherits "QPushButton": )
class cgl.ui.widgets.button.VersionButton(parent)[source]

Bases: LJButton

empty_version_up
selected_version_up
set_new_version()[source]
set_version_selected()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("VersionButton" inherits "LJButton": Methods:   #46 type=Signal, signature=empty_version_up()   #47 type=Signal, signature=selected_version_up() )

cgl.ui.widgets.combo module

class cgl.ui.widgets.combo.AdvComboBox(parent=None)[source]

Bases: QComboBox

on_completer_activated(text)[source]
populate_from_project(keys)[source]
setModel(self, model: PySide6.QtCore.QAbstractItemModel) None[source]
setModelColumn(self, visibleColumn: int) None[source]
set_placeholder_text(text='Type or Choose below...')[source]
staticMetaObject = PySide6.QtCore.QMetaObject("AdvComboBox" inherits "QComboBox": )
class cgl.ui.widgets.combo.AdvComboBoxLabeled(label)[source]

Bases: QVBoxLayout

staticMetaObject = PySide6.QtCore.QMetaObject("AdvComboBoxLabeled" inherits "QVBoxLayout": )
class cgl.ui.widgets.combo.LabelComboRow(label, button=True, bold=True, text='')[source]

Bases: QVBoxLayout

hide()[source]
show()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LabelComboRow" inherits "QVBoxLayout": )

cgl.ui.widgets.dialog module

class cgl.ui.widgets.dialog.CheckFailedDialog(title='Check Failed', message='', force_top_level=True, parent=None)[source]

Bases: LJDialog

staticMetaObject = PySide6.QtCore.QMetaObject("CheckFailedDialog" inherits "LJDialog": )
class cgl.ui.widgets.dialog.ConfirmationDialog(parent=None, title=None, message=None, image_path=None)[source]

Bases: QDialog

ok_clicked()[source]
reject(self) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("ConfirmationDialog" inherits "QDialog": )
class cgl.ui.widgets.dialog.FileTableModel(data_list: List[List[dict | QPixmap | str]], header_titles: List[str] | None = None, data_filter: bool = False, icon_height: int = 30)[source]

Bases: ListItemModel

data(index, role)[source]

Provides the appropriate data based on the given QModelIndex index and the role role.

Parameters:
  • index (QModelIndex) – The QModelIndex of the data.

  • role (int) – The role of the data (e.g., Qt.DisplayRole, Qt.DecorationRole).

Returns:

The data to be displayed or decorated, or None if not applicable.

Return type:

Optional[Union[QtGui.QPixmap, str]]

staticMetaObject = PySide6.QtCore.QMetaObject("FileTableModel" inherits "ListItemModel": )
class cgl.ui.widgets.dialog.FrameRange(parent=None, title='Frame Range', sframe=None, eframe=None, minframe=None, maxframe=None, camera=None, message='Animation Frame Range to Publish', both=False)[source]

Bases: LJDialog

button = True
cancel_clicked()[source]
cancel_signal
line_edit_changed()[source]
on_button_clicked()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("FrameRange" inherits "LJDialog": Methods:   #42 type=Signal, signature=cancel_signal() )
class cgl.ui.widgets.dialog.InputDialog(parent=None, title='Attention:', message='message', buttons=None, line_edit=False, line_edit_text=False, combo_box_items=None, combo_box2_items=None, regex=None, name_example=None, line_edit2=False, force_top_level=False)[source]

Bases: LJDialog

button_clicked
on_button_clicked()[source]
on_text_changed_regex()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("InputDialog" inherits "LJDialog": Methods:   #42 type=Signal, signature=button_clicked(PyObject), parameters=PyObject )
class cgl.ui.widgets.dialog.ItemTable(parent, title)[source]

Bases: LJTableWidget

delete_item_signal
item_right_click(position)[source]
rename_item_signal
show_in_folder_signal
staticMetaObject = PySide6.QtCore.QMetaObject("ItemTable" inherits "LJTableWidget": Methods:   #111 type=Signal, signature=delete_item_signal()   #112 type=Signal, signature=rename_item_signal()   #113 type=Signal, signature=show_in_folder_signal() )
class cgl.ui.widgets.dialog.MagicList(parent=None, title='Dialog Title', list_items=None, buttons=None, message=None, combo_box=None, combo_label='Label', combo=False, button_functions=None, auto_close=True, on_selection=None, on_button_clicked=None)[source]

Bases: LJDialog

Magic List is an incredibly useful dialog that allows you a lot of flexibility when creating custom “list” dialogs

button_name = ''
button_signal
combo_changed_signal
static get_data_info(data)[source]
item_selected
load_combo()[source]
load_items()[source]

loads items, set up initially to handle a list only. :return:

on_button_clicked()[source]
on_combo_changed()[source]
on_selected(data)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("MagicList" inherits "LJDialog": Methods:   #42 type=Signal, signature=combo_changed_signal()   #43 type=Signal, signature=item_selected(PyObject), parameters=PyObject   #44 type=Signal, signature=button_signal(PyObject), parameters=PyObject )
class cgl.ui.widgets.dialog.PlaylistDialog(parent=None, project_name=None)[source]

Bases: InputDialog

on_day_chosen()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("PlaylistDialog" inherits "InputDialog": )
class cgl.ui.widgets.dialog.TimeTracker[source]

Bases: LJDialog

add_task_clicked()[source]

Function to add new task to time card table when add_task button is clicked

Returns:

None

get_projects_from_ftrack()[source]

Function to collect list of project names and fill project combo box

Returns:

get_timelogs(month, date, year)[source]

Function to create list of tuples containing existing timelog information

Returns:

List of tuples(project, asset, task, hours, task_name, hours worked, bid hours) of timelog info

load_task_hours()[source]

Function to load existing timelogs into gui whenever a date is selected or Time Tracker is first run

Returns:

None

lock_table()[source]
on_hours_changed(item)[source]

Function to add timelog_id to edited_logs list whenever an existing log’s hours are edited

Parameters:

item – Box in table being edited

Returns:

None

on_project_select()[source]

Function to fill task combo box with the tasks of the selected project

Returns:

None

on_task_changed()[source]

Function to ensure add_task button only shows after a task has been selected

Returns:

None

open_calendar()[source]

Function to open calendar gui when icon is clicked :return: None

set_date(new_date)[source]
setup_connections()[source]
setup_ui()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("TimeTracker" inherits "LJDialog": )
submit_button_clicked()[source]
class cgl.ui.widgets.dialog.UploadGlobals(parent=None, cfg=None, company=None, project=None)[source]

Bases: LJDialog

on_button_clicked()[source]
on_radio_clicked()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("UploadGlobals" inherits "LJDialog": )

cgl.ui.widgets.help module

cgl.ui.widgets.notes module

class cgl.ui.widgets.notes.InfoMetaTab(parent=None)[source]

Bases: QWidget

staticMetaObject = PySide6.QtCore.QMetaObject("InfoMetaTab" inherits "QWidget": )
class cgl.ui.widgets.notes.Note(data, parent=None)[source]

Bases: QWidget

staticMetaObject = PySide6.QtCore.QMetaObject("Note" inherits "QWidget": )
class cgl.ui.widgets.notes.NotesDockWidget(parent=None)[source]

Bases: QWidget

scroll_notes()[source]
set_data(path: str)[source]
setup_connections()[source]
setup_ui()[source]
show(self) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("NotesDockWidget" inherits "QWidget": )
update_notes()[source]
class cgl.ui.widgets.notes.NotesTab(parent=None)[source]

Bases: QWidget

scroll_notes()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("NotesTab" inherits "QWidget": )
class cgl.ui.widgets.notes.NotesWidget(source, parent=None)[source]

Bases: QWidget

add_new_note()[source]
add_note_to_display(data, po)[source]
remove_all_notes()[source]
scroll_to_bottom()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("NotesWidget" inherits "QWidget": )
update_display(po: PathObject)[source]
class cgl.ui.widgets.notes.ThumbWidget(parent=None)[source]

Bases: QWidget

Custom widget for displaying and updating thumbnails.

crop_image(image: QImage, target_width: int, target_height: int) QImage[source]

Crop the image_plane to the target size while maintaining the original aspect ratio.

select_image() None[source]

Open file dialog to select new image_plane.

set_image(image_path: str) None[source]

Save the selected image_plane to thumbnail path and update the QLabel.

staticMetaObject = PySide6.QtCore.QMetaObject("ThumbWidget" inherits "QWidget": )
update_display(po: PathObject) None[source]

Update the QLabel with the new image_plane.

class cgl.ui.widgets.notes.TransparentBackgroundWidget(parent=None)[source]

Bases: QWidget

paintEvent(self, event: PySide6.QtGui.QPaintEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("TransparentBackgroundWidget" inherits "QWidget": )
cgl.ui.widgets.notes.add_comment(path_object)[source]

This is meant to run inside an already running QApp it will prompt the user for a note and add it

Parameters:

path_object (_type_) – _description_

cgl.ui.widgets.path_fixer module

cgl.ui.widgets.progress_gif module

cgl.ui.widgets.publish_dialog module

class cgl.ui.widgets.publish_dialog.ListWidget[source]

Bases: QListWidget

sizeHint(self) PySide6.QtCore.QSize[source]
staticMetaObject = PySide6.QtCore.QMetaObject("ListWidget" inherits "QListWidget": )
class cgl.ui.widgets.publish_dialog.PublishDialog(parent=None, path_object=None, verbose=False, cfg=None)[source]

Bases: LJDialog

do_publish
hide_details()[source]
on_check_box_clicked()[source]
on_publish_clicked()[source]
on_render_selected()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("PublishDialog" inherits "LJDialog": Methods:   #42 type=Signal, signature=do_publish() )

cgl.ui.widgets.search module

class cgl.ui.widgets.search.LJSearchEdit(parent, button=False)[source]

Bases: QLineEdit

staticMetaObject = PySide6.QtCore.QMetaObject("LJSearchEdit" inherits "QLineEdit": )

cgl.ui.widgets.test module

cgl.ui.widgets.text module

class cgl.ui.widgets.text.Highlighter(parent=None)[source]

Bases: QSyntaxHighlighter

highlightBlock(self, text: str) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("Highlighter" inherits "QSyntaxHighlighter": )

cgl.ui.widgets.thumb module

cgl.ui.widgets.widgets module

class cgl.ui.widgets.widgets.AdvComboBox(parent=None, editable=True)[source]

Bases: QComboBox

find_text(text)[source]
on_completer_activated(text)[source]
populate_from_project(keys)[source]
setModel(self, model: PySide6.QtCore.QAbstractItemModel) None[source]
setModelColumn(self, visibleColumn: int) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("AdvComboBox" inherits "QComboBox": )
class cgl.ui.widgets.widgets.AdvComboBoxLabeled(label)[source]

Bases: QVBoxLayout

staticMetaObject = PySide6.QtCore.QMetaObject("AdvComboBoxLabeled" inherits "QVBoxLayout": )
class cgl.ui.widgets.widgets.AssetWidget(parent, title, filter_string=None, search_box=None)[source]

Bases: QWidget

GUI Element for Displaying shots, assets, and “my tasks”

add_clicked
assign_clicked
button_clicked
filter_changed
on_add_button_clicked()[source]
on_assign_button_clicked()[source]
on_hide_button_clicked()[source]
on_show_button_clicked()[source]
set_icon(scope='assets')[source]
set_title(new_title)[source]
setup(mdl)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("AssetWidget" inherits "QWidget": Methods:   #34 type=Signal, signature=button_clicked(PyObject), parameters=PyObject   #35 type=Signal, signature=filter_changed()   #36 type=Signal, signature=add_clicked()   #37 type=Signal, signature=assign_clicked(PyObject), parameters=PyObject )
class cgl.ui.widgets.widgets.CreateProjectDialog(parent, company, variable)[source]

Bases: QDialog

adjust_to_variable()[source]
hide_api_info()[source]
on_cancel_clicked()[source]
on_ok_clicked()[source]
on_pm_changed()[source]
on_project_text_changed()[source]
path_object = None
set_colors()[source]
set_project_management(proj_man=None)[source]
show_api_info()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("CreateProjectDialog" inherits "QDialog": )
class cgl.ui.widgets.widgets.EmptyStateWidget(parent=None, path_object=None, text='Drag/Drop to Add Files', files=False)[source]

Bases: QPushButton

dragEnterEvent(self, event: PySide6.QtGui.QDragEnterEvent) None[source]
dragMoveEvent(self, event: PySide6.QtGui.QDragMoveEvent) None[source]
dropEvent(self, event: PySide6.QtGui.QDropEvent) None[source]
files_added
handle_dropped_files(urls)[source]
mouseReleaseEvent(self, e: PySide6.QtGui.QMouseEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("EmptyStateWidget" inherits "QPushButton": Methods:   #46 type=Signal, signature=files_added() )
class cgl.ui.widgets.widgets.FileTableModel(data_list: List[List[dict | QPixmap | str]], header_titles: List[str] | None = None, data_filter: bool = False, icon_height: int = 30)[source]

Bases: ListItemModel

data(index, role)[source]

Provides the appropriate data based on the given QModelIndex index and the role role.

Parameters:
  • index (QModelIndex) – The QModelIndex of the data.

  • role (int) – The role of the data (e.g., Qt.DisplayRole, Qt.DecorationRole).

Returns:

The data to be displayed or decorated, or None if not applicable.

Return type:

Optional[Union[QtGui.QPixmap, str]]

staticMetaObject = PySide6.QtCore.QMetaObject("FileTableModel" inherits "ListItemModel": )
class cgl.ui.widgets.widgets.GifWidget(parent=None, gif_path=None, animated=True)[source]

Bases: QWidget

start()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("GifWidget" inherits "QWidget": )
stop()[source]
class cgl.ui.widgets.widgets.HelpMenu(parent)[source]

Bases: LJButton

This is the the hat menu that appears on the UI

IT_request_clicked()[source]
clear_widget_clicked()[source]

Clears the table widget Returns:

documentation_clicked()[source]

sends the user to alchemy’s code documentation. Returns:

load_msd_clicked()[source]

Loads the msd from the filesystem Returns:

report_bug_clicked()[source]
request_feature_clicked()[source]
setup_menu()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("HelpMenu" inherits "LJButton": )
tutorials_clicked()[source]

Returns:

class cgl.ui.widgets.widgets.LJListWidget(label, pixmap, empty_state_text='', empty_state_icon=None, search_box=None)[source]

Bases: QWidget

hide(self) None[source]
set_icon(icon)[source]
show(self) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LJListWidget" inherits "QWidget": )
class cgl.ui.widgets.widgets.LJTag(parent=None, text='Tab Text', height=30)[source]

Bases: QFrame

close_clicked
delete_tag()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LJTag" inherits "QFrame": Methods:   #34 type=Signal, signature=close_clicked() )
class cgl.ui.widgets.widgets.LJToolButton(svg_path, default_color='black', hover_color='blue', width=40, height=40, parent=None)[source]

Bases: QToolButton

enterEvent(event)[source]

Event handler for mouse hover enter.

leaveEvent(event)[source]

Event handler for mouse hover leave.

set_color(color)[source]

Convenience method to change the color of the SVG icon.

set_svg_icon_color(color=None)[source]

Set the SVG icon with the given color.

staticMetaObject = PySide6.QtCore.QMetaObject("LJToolButton" inherits "QToolButton": )
class cgl.ui.widgets.widgets.LoginMenu(parent)[source]

Bases: LJButton

get_current_user()[source]
login_clicked()[source]
logout_clicked()[source]
settings_clicked()[source]
setup_menu()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LoginMenu" inherits "LJButton": )
class cgl.ui.widgets.widgets.QHLine[source]

Bases: QFrame

staticMetaObject = PySide6.QtCore.QMetaObject("QHLine" inherits "QFrame": )
class cgl.ui.widgets.widgets.QVLine[source]

Bases: QFrame

staticMetaObject = PySide6.QtCore.QMetaObject("QVLine" inherits "QFrame": )
class cgl.ui.widgets.widgets.TagFrame(parent=None, tag_height=34, entry_type='line_edit', validation_list=None)[source]

Bases: QFrame

add_tag(tag_text)[source]
find_tag_widget(tag_text)[source]
get_tags()[source]
on_text_entry_changed()[source]
on_text_entry_return()[source]

Adds a tag to the tag widget Returns:

remove_all_tags()[source]

Removes all tags from the tag widget

remove_tag(tag_text=None)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("TagFrame" inherits "QFrame": Methods:   #34 type=Signal, signature=tags_changed(PyObject), parameters=PyObject )
tags_changed
validate_tag(tag_text)[source]

Validates the tag against the validation list Returns:

class cgl.ui.widgets.widgets.TagWidget(parent=None, entry_type='line_edit', validation_list=None)[source]

Bases: QWidget

staticMetaObject = PySide6.QtCore.QMetaObject("TagWidget" inherits "QWidget": )
class cgl.ui.widgets.widgets.VersionButton(parent)[source]

Bases: LJButton

set_new_version()[source]
set_version_selected()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("VersionButton" inherits "LJButton": )
cgl.ui.widgets.widgets.svg_icon(svg_path, color=None, size=16)[source]

Set the SVG icon with the given color.

Module contents