All Collections
Community
Announcements
Gantt Chart statuses, custom panels, sketch comments
Gantt Chart statuses, custom panels, sketch comments
Cerebro Support avatar
Written by Cerebro Support
Updated over a week ago
  • New Cerebro Client for Windows, Mac Os X and Linux Operation operating systems.

Mirada: duplicating sketch comments

Drawings can now be duplicated in the comparison mode.

Gantt chart: filter by status

We have added the ability to display the timeline by task status — you can see what status the tasks had and for how long.

Specifying time in reports

In the new update, the requirement to specify time in reports is configured in the project menu.

If you enable the checkbox, the system will not require you to specify the elapsed time.

Message visibility in parent tasks

Now users with conditional access rights (can view tasks when chosen as executors) have an option to hide or show messages in parent tasks.

By default, such users can view messages.

Embedding custom panels in desktop

It is now possible to create embedded custom panels in the main Cerebro window using the API.

Panels can be embedded on both the right and left side. Panels must be implemented in PyQt, and they can be embedded using the gui.py module.

Code {plugin}/gui.py

import cerebro

def init_panels():
tabs = cerebro.gui.MainTabWidget()
side = cerebro.gui.SideTabWidget()

icon = os.path.join(os.path.dirname(file), 'resources', 'icon.png')

# add main (left) panel
w = MyTabWidget() # your widget
my_panel = tabs.add_panel('My tab', icon, 'My tab tooltip')
my_panel.set_widget(w)
my_panel.add_callback(my_panel.CALLBACK_PANELVISIBLE, w.setPanelVisible)
my_panel.add_callback(my_panel.CALLBACK_CURRENTTASK, w.setCurrentTask)

# add side (right) panel
w2 = MySideWidget() # your widget
my_panel = side.add_panel('My side tab')
my_panel.set_widget(w2)
my_panel.add_callback(my_panel.CALLBACK_CURRENTTASK, w2.setCurrentTask) # signal argument - task id (int)
my_panel.add_callback(my_panel.CALLBACK_PANELVISIBLE, w2.setPanelVisible) # signal argument - is visible (bool)

This module must be included in your plugin, and adding panels must be described in the def init_panels(): function.

Panels receive signals from the application:

  • Change the current task

  • Show/hide panel

Did this answer your question?