Skip to content

Releases: azagoruyko/rigBuilder

v4.2.0

18 Dec 18:40
Compare
Choose a tag to compare

What's new?

UI

  • Fix recent modules duplicates.
  • Diff feature (difflib is used).

Widgets

  • Add sort items in Json Widget.
  • Set up columns correctly on loading data in Table Widget.

v4.1.0

21 Oct 08:23
Compare
Choose a tag to compare

What's new?

General

  • Add compound widget.
  • Use jsonWidget for editing comboBox and listBox items.

Fixes

  • Skip connection menu for empty named attributes.
  • Fix undo after remove for json widget.

v4.0.2

26 Aug 10:34
Compare
Choose a tag to compare

What's new?

  • Module's muted flag affects on children execution (fix after 4.0.0)
  • Fix bug with list widget and add selection.

v4.0.1

15 Aug 18:53
Compare
Choose a tag to compare

What's new?

UI

  • Update style when attribute data is edited.
  • Display errors when something happens during saving process.
  • Optimize widgetOnChange.
  • Don't auto reset widgets on error.

Generic

  • Clear modification flag for attributes on module update.

Widgets

  • lineEdit updates slider when options are edited.
  • Fix table height.
  • comboBox always adds the current value.

v3.1.1

02 Aug 10:35
Compare
Choose a tag to compare

What's new?

Widgets

  • Add blockedWidgetContext to avoid cycles inside setJsonData.
  • Fix bug with somethingChanged.

v3.1.0

02 Aug 06:54
Compare
Choose a tag to compare

What's new?

Main change is regarding the core pull and push feature.

  • Rename DataAccessor to RuntimeDataAccessor (@_data attribute accessor in the code).
  • RuntimeAttribute.get/set now accept key argument, like module.attr.input.set([1,2,3], "items")
  • RuntimeAttribute data/setData now pull/push values.

The idea behind all this is to provide a unique standardized way for working with attributes with connections and expressions.

Curve widget

  • Add epsilon argument to curve evaluation functions.
  • Always clamp param to 0..1.

v3.0.1

01 Aug 12:34
Compare
Choose a tag to compare

What's new?

  • Fix bug when there is an error in widget and it becomes blocked.
  • Fix somethingChanged emit signals

Now widgets can produce errors in setJsonData and it shouldn't crash.

v3.0.0

01 Aug 08:43
Compare
Choose a tag to compare

What's new?

That's again the large update. Completely renewed connection/expression mechanics.

Core

  • RuntimeAttribute and RuntimeModule classes instead of previous AttributeWrapper and ModuleWrapper.
    These classes should be used while working with Modules and Attributes in scripts.

  • Connection and expression are evaluated on demand by RuntimeAttribute.pull/get or by RuntimeModule.ch.
    Basically, it's like pull/push mechanics here. It results in more adequate behavior which can be used in interactive tools.
    Expression is always evaluated on top of a connection.

  • Consistent API across widgets and the code.
    You can use the same functions in widgets as you use in the code (like ch, module, copyJson, etc).

  • Widgets API.
    Widgets can expose own API which can be used anywhere in code.
    For example, curve_evaluate, listBox_selected, etc.
    This API is used for autocompletion as well.

Widgets

  • Refactor json widget, fix bugs and make it more stable.
  • Widgets support self.executor for evaluating python code within a proper context (API).
  • Widgets with code editor use correct autocompletion.
  • comboBox eliminates duplicates.
  • listBox uses roles for items and supports multiple selection. It's much more interactive now.
  • radioButton refactor.
  • vector widget supports a custom dimension, column count and precision.
  • fix curve widget somethingChanged emits(on release button) and zero division bug.

UI

  • Evaluate/Clear expression menu for attributes.
  • Highly reworked widgetOnChange and updateWidget. Now it's more suitable for interactive tools.
  • Update style for attributes with connection/expression.
  • Fix bug in dropEvent for modules! Also it always generates unique names for modules.

Other

  • Update example.xml with the latest features.
  • add runStandalone.py for running RigBuilder outside of DCC with a correct stylesheet.

v2.1.0

26 Jul 18:25
Compare
Choose a tag to compare

What's new?

  • Colorizing json values for widgets.
  • comboBox and list widgets now support json-compatible items, as well as lineEdit, lineEditAndButton, table.
  • Fix button label/command for standalone.
  • Fix font size, so rely on 3 functions: pixelSize, pointSize, pointSizeF.
  • Fix swoop (search/replace) window position in the code editor.
  • Keep track an attributes modification flag when attributes are edited.
  • Copy tool code only for modules loaded from local or server.
  • Add default css stylesheet file, not yet used, but can be used in a standalone app.
  • Fix auto size for Rig Builder tools.
  • Bug fix: don't rename attr in code and in connections when there are several attrs with the same name exist.
  • Bug fix with clear modification flag on save.

v2.0.0

19 Jul 07:54
Compare
Choose a tag to compare

What's new?

Complete refactoring update. It's full compatible with v1.0.0.

Change log

Editor

  • Highly improved search/replace dialog with flags (f3 key).
  • Add menu for duplicate and move lines.
  • Fix bug with completion widget and scrolling.
  • Fix bug with move line at the first line.
  • Place common code in utils.py.
  • Refactor code, make it more compatible with python 3+.

Classes

  • Add attribute expressions (python code).
  • Explicit declare modification flag here.

Widgets

  • Add high featured json widget for editing any json data.
  • Use code editor for editing button commands.
  • Use label/code templates for button widget.
  • Improve generic UI experience, add placeholders.
  • Add increase/decrease size for text widget.
  • Fix curve default value (get rid of tuples).
  • Show slider for lineEdit when a validator is used, default min/max 0-100.
  • Fix radioButton widget column number selector.
  • A lot of code refactoring.

UI

  • Edit attributes expressions within their context menu.
  • Edit attributes data with json widget.
  • Improve modification flags experience, now works more consistent.
  • Highly improved visual style for attributes with connection/expression.
  • Add ModuleItem which solely work with Module class using Qt data mechanics.
  • Remove main menu, use instead improved context menu.
  • Add copy tool code menu to obtain the code for running the module as a tool.
  • RigBuilderTool arguments fixes: child supports int/str, size supports number/list[2] to specify the tool's window size.
  • Completely refactored code to make it more compatible with python 3+.

utils

  • Common functions/classes live here.