-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bugfix/windows fix configurators #11
Open
justin2wilson
wants to merge
83
commits into
generalmotors:master
Choose a base branch
from
justin2wilson:bugfix/windows-fix-configurators
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Bugfix/windows fix configurators #11
justin2wilson
wants to merge
83
commits into
generalmotors:master
from
justin2wilson:bugfix/windows-fix-configurators
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Added a virtual method to qtBaseTaskNode to setup a context menu for a qtTaskNode.
8136ca7 ENH: Added the ability to override context menus for qtTaskNodes Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3000
Also added an iterator section to an existing test. Closes #530
767b5a9 BUG: Fixing Iterator API for ValueItems Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3001
SMTK XML Attribute File now supports instantiation of templates inside the Analyses XML Element Block.
On some systems the layout was not allowing the contents to fully utilize the space available. The widget now uses 2 layouts - a VBox for the toolbar (if needed) and a HBox for the drawer and diagram itself.
This fixes #531.
014d8f4 ENH: Replaced GridLayout in qtDiagram Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3005
6501704 Fix a reference-to-temporary issue. fe03bef Fix a connect mode crash; allow modes to observe operations. Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3006
837e48a ENH: Added Template Support When Defining Analyses Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3004
You can now specify a category constraint as a category expression instead of defining it as sets of included and excluded category names. This not only provided greater flexibility but is also easier to define. For example in an SBT file this would like the following: <CategoryExpression InheritanceMode="Or">(a & !b) & (d | 'category with spaces') </CategoryExpression> Note that in XML & represents & In this example the expression will match if the test set of categories contains **a** and either **d** or **category with spaces** but not **b** Also bumped the file versions of both the XML (to version 8) and JSON (version 7) for Attribute Resources in order to support these changes.
71d276f ENH: Supporting Category Expressions Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3007
This one is actually in the source tree.
937102f smtk/attribute: install the `categories/Grammar.h` header Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Acked-by: Robert M. O'Bara <[email protected]> Merge-request: !3008
ff1731a smtk/io: fix `XmlV8StringWriter.h` filename typo Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Acked-by: Robert M. O'Bara <[email protected]> Merge-request: !3009
This updates the bundle to agree with the Xcode usage now deployed on machines.
d1a4899 ci: update superbuild bundle for Xcode update Acked-by: Kitware Robot <[email protected]> Merge-request: !3010
d1a4899 ci: update superbuild bundle for Xcode update Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3010
This allows the Diagram Drawer to be resizable.
You can now use the following symbols to represent logical operators: * And * ∧, *, & * Or * ∨, +, | * Complement * ¬, ~, ! Also expressions can now have white spaces at the beginning and end of the expression.
a09e8d4 ENH: Expanding the symbols that can be used in Category Expressions Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3013
66596af ENH: Adding Splitter to Diagram UI Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3012
Starting in Version 8 XML Template Files, you can now define vector-based Properties on Attribute Resources and Attributes. Currently vector of doubles and vectors of strings are supported but this can be easily extended. Here is an example and is available in the data/attributes/attribute_collections directory as propertiesExample.sbt. .. code-block:: XML <SMTK_AttributeResource Version="8"> <Properties> <Property Name="pi" Type="Int"> 42 </Property> <Property Name="pd" Type="double"> 3.141 </Property> <Property Name="ps" Type="STRING">Test string</Property> <Property Name="pb" Type="bool"> YES </Property> <Property Name="animals" Type="vector[string]"> <Value>the dog</Value> <Value>a cat</Value> </Property> </Properties> <Definitions> <AttDef Type="Test"/> </Definitions> <Attributes> <Att Name="foo" Type="Test"> <Properties> <Property Name="pi" Type="int"> 69 </Property> <Property Name="pd" Type="Double"> 3.141 </Property> <Property Name="ps" Type="String"></Property> <Property Name="pb" Type="Bool"> 1 </Property> <Property Name="pvd" Type="vector[double]"> <Value>10.0</Value> <Value>20.0</Value> </Property> </Properties> </Att> </Attributes> </SMTK_AttributeResource>
4ba3180 ENH: Supporting Vector Properties in XML Attribute Templates Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3014
DoubleItems can now have units explicitly assigned to them provided that their Definition does not specify units. This allows Items coming from the same Definition to have different units. Modified API * ``DoubleItemDefinition::hasSupportedUnits`` has been moved to ValueItemDefinition Added API * ValueItem * units() - returns the native units for the item * supportedUnits() - returns the supported units for the item. If there is no Units System assigned to its definition or if its units are supported by the Units System, an empty string is returned else it returns its units. * ValueItemDefinition * supportedUnits() - similar in concept as ValueItem's * DoubleItem * setUnits() - explicitly sets the units of the item * units() - overridden to support explicit units * hasExplicitUnits() - returns true if the item has explicit units. When changing the units of an Item, the system will see if the Item's current input string values are compatible, if they are not, the input value units are replaced with the new ones. See smtk/attribute/testing/cxx/unitDoubleTest.cxx for an example. Both XML and JSON formats have been updated to support this functionality as well as qtInputsItem.cxx, qtDoubleUnitsLineEdit{.h, .cxx}.
631e337 ENH: Supporting Explicit Units for DoubleItems Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3016
SMTK now supports the ability to assign a function to an Attribute Item that will be used to determine if an Item is currently relevant. ``Item::isRelevant`` method has been refactored and most of the original logic has been moved to a new method called ``Item::defaultIsRelevant``. To set a custom relevancy function, use ``Item::setCustomIsRelevant``. To determine if an Item is relevant you will still call ``isRelevant`` and it will use the custom relevancy function if one has been set, else it will call the default method. Please see ``smtk/attribute/testing/cxx/customIsRelevantTest.cxx`` for an example of how to use this functionality.
d8a4da4 Changes to "CallObserversOnMain" behaviors. Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3022
d7f0c3e BUG: Fixing Issue with Copying Items using Expressions Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3030
1d01633 TESTING: Modifying Test for XML Support for Properties on Definitions Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Merge-request: !3028
…sers Also modified unitXmlReaderProperties.cxx and propertiesExample.sbt to test these enhancements.
883db23 ENH: Adding Support for vector of int and long Properties for XML Parsers Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3031
Using the new ``qtUnitsLineEdit`` class, end-users can now set units on an Attribute (assuming that its Definition supports units). This required changes to ``qtAttribute`` to not consider an Attribute *empty* if it had no items to display but did have specified units. New XML Attribute for controlling how Units are displayed ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ You can use UnitsMode to indicate how an Attribute's units should be displayed. * none - do not display the attribute's units * viewOnly - display but do not allow the units to be changed * editable - allow the user to edit the attribute's units **Note** that these values are case insensitive See DoubleItemExample.sbt as an example that demonstrates this new functionality. Line Edit widget with unit completion ------------------------------------- The ``qtUnitsLineEdit.cxx`` class is for entering strings that represent units. The widget provides a units aware completer as well as color coding its background based on the entry being a valid unit or if the unit is the default. as in the case of ``qtDoubleUnitsLineEdit.cxx`` class, it can make use of the unit-library's ``PreferredUnits`` class to suggest unit completions. This allows workflow developers to provide a tailored list of suggested completions rather than listing every available compatible unit. Changes to ``qtBaseAttributeView`` and Derived View Classes ------------------------------------------------------------ * Added displayAttribute method that returns true if the attribute should be displayed based on its relevance. * Changed displayItem to take in a ``const smtk::attribute::ItemDefinitionPtr&`` instead of a ``smtk::attribute::ItemDefinitionPtr`` **Note** that this does break API though it is very simple to update to the new API Also added the ability to print out a reference item's acceptance/rejection criteria - for debugging purposes
6480331 ENH: Displaying Attribute with Units Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3032
Needed to use the latest version of Units Library that supports "*" units.
1861c0d ENH: Updated CI for SMTK Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Merge-request: !3033
Definitions can now be assigned "*" for their units. This indicates that Attributes being defined by the Definition or Definitions derived from it can be assigned any unit that is supported by its units system. Definitions can now inherit the units from their base Definition. When overriding the units being inherited, by default a Definition's units must be compatible with the units coming from its base Definition, though the method provides an option to force units to be set even if they are not compatible. Attributes whose Definition's units are "*" are initially considered unit-less. Please see `unitAttributeUnits <https://gitlab.kitware.com/cmb/smtk/-/blob/master/smtk/attribute/testing/cxx/unitAttributeUnits.cxx>`_ for a simple example of using units with Attributes and Definitions. **Note** The method Definition::setUnits has been renamed Definition::setLocalUnits to be in line with Attribute's API since as in the case of Attributes, Definitions can now inherit units from their base Definitions. Also moved the validator for qtUnitsLineEdit out of qtAttribute and into qtUnitsLineEdit
ee7d27c ENH: Supporting Definitions that can take any units Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Merge-request: !3034
ValueItems will now test units when assigning expressions. If the expression has units and they are not convertible to the item's units, the assignment will now fail. Also if a double item's units are different from its expression, the expression's evaluated value is converted to those of the item when calling its value methods. See smtk/attribute/testing/c++/unitInfixExpressionEvaluator and data/attribute/DoubleItemExample.sbt for examples. Also added missing data members in ReferenceItemDefinition that should have been copied in the Item's copy method as well as adding more debug information to help track down the reason for the intermittent failures related to the clone resources test.
fd29ce6 ENH: Handling Expressions with Units Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Merge-request: !3035
This MR introduces the following changes to the way operations lock resources: 1. Introduces a parent-child relationship between operations where a "child" operation that is being run by its "parent" can share resource locks with the parent. 2. In the event that an operation cannot acquire ALL of its required resource locks, it will release any resource locks it did successfully acquire and then retry later. This gives each thread that is currently attempting to acquire resource locks a chance to do so.
fffed54 Improve resource locking scheme in operations. Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3029
1ef4b4e Added an optional shortcut parameter for changing modes Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Merge-request: !3036
Properties on Definitions can now be *inherited* by Attributes and derived Definitions when creating queries and association rules. For example if Definition **A** has a floating-point property "alpha" with value 5.0, and if Definition **B** is derived from **A** and Attribute **a** is from **A** and Attribute **b** is from **B**, then all would match the rule "any[ floating-point { 'alpha' = 5.0 }]". If later **B** was to also have floating-point property "alpha" with value 10.0 associated with it, it would override the value coming from **A** so both it and **b** would no longer pass the rule. Similarly, properties on Attributes can override the values coming from its Definition. Also implemented differentiation between attributes and definitions. If the rule starts with *attribute* then only attributes have the possibility of matching the rest of the rule. Similarly, if the rule starts with *definition* then only definitions have the possibility of matching the rest of the rule. If the rule starts with *any* or * then either attributes or definitions are allowed. **Note** that the ``properties()`` methods on attribute and definition objects do not return *inherited* values but instead only those values local to the object. In the future, we may add methods to interact directly with inherited properties but for now only filter-strings process inherited properties. See smtk/attribute/testing/c++/unitPropertiesFilter.cxx and data/attribute/propertiesFilterExample.sbt for examples. Also added additional debugging methods to help track down clone resource test intermittent failures.
f4cca8d ENH: Adding Custom Filter Support for Attributes Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Merge-request: !3037
The helper implementation should use BaseKey type instead of the legacy Key type so that the behavior of operations that run in the JSON serializer/deserializer can be changed (locking, observers, etc...).
# Conflicts: # smtk/operation/Helper.h
56f3a8e Merge branch 'master' into 'feature/operation-helper-use-base-key' 9561633 Changed operation helper to use BaseKey Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3039
We no longer use Remus to communicate with external mesh/model processes.
cdac86a Fix the `testCloneResource` test. a0e1d98 Remove mesh/model-worker docs. Acked-by: Kitware Robot <[email protected]> Acked-by: buildbot <[email protected]> Acked-by: Robert M. O'Bara <[email protected]> Merge-request: !3038
Changed the ResultHandler implementation to run the event loop while waiting on the future to yield the async operation's result. This is to prevent operations from deadlocking when observers need to run on the main thread while the main thread is simultaneously waiting on the future to complete.
7876ca5 Run event loop when waiting for operation result Acked-by: Kitware Robot <[email protected]> Tested-by: buildbot <[email protected]> Reviewed-by: David Thompson <[email protected]> Merge-request: !3040
Fixes an issue on Windows where tasks and adaptors could not be serialized or deserialized because each DLL linking to SMTK will create a unique template instatiation for Configurator<Task> and Configurator<Adaptor> which causes issues for any container that looks up by type id. Exporting explicit instantiations causes every DLL to share instantiations provided by the SMTK core library.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.