Feat/gh1458 possible to drag and drop usages to re-parent them and bumped devexpress to 23.2.15#1459
Open
rdevoogtatstariongroup wants to merge 2 commits into
Open
Conversation
Align all project references to DevExpress 23.2.15 to resolve the NU1605 package-downgrade conflict: transitive DevExpress.CodeParser/DataAccess resolve to 23.2.15 and demand DevExpress.Data/Xpo = 23.2.15, which conflicted with the 23.2.5 direct pins. Restore and build now succeed.
This file contains hidden or 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
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.
Prerequisites
Description
Move an Element Usage to another Element Definition (drag & drop) — closes #1458
Adds drag-and-drop reparenting of an
ElementUsage. Drag a usage onto anElementDefinition(in the Element Definitions browser or the Product Tree; in theProduct Tree also onto another usage) and it is moved into that definition —
keeping its
Iid, name, short-name, owner, excluded options and allParameterOverrides (values included). Previously the only workaround was tore-create the usage manually, losing all of that.
How
IThingCreator.MoveElementUsage(usage, targetDefinition, session)re-parents theusage in a single
ThingTransaction(same pattern asRequirementRowViewModel.ChangeRequirementContainer).CDP4Composition/DragDrop/ElementUsageDropValidatorcentralizes the dropguards so both browsers stay consistent and cannot create invalid models:
write permission, same-model only, and
ElementDefinition.HasUsageOf(...)to blockself-drop and transitive containment loops.
ElementDefinitionRowViewModel(EngineeringModel + ProductTree) and theProductTree
ElementUsageRowViewModel; a tooltip documents the gesture.Not included
Duplicating a usage is intentionally left out: the data-source only supports a
server-side copy of an
ElementDefinition("Only Element-Definition may be copied"),and a client-side deep-create could not reliably restore override values. Tracked
separately (see linked web/SDK tickets); move already preserves everything.
Note for reviewers
This branch also bumps DevExpress 23.2.5 → 23.2.15 across all
.csprojto fix thelocal
NU1605restore conflict. CI/AppVeyor must serve 23.2.15. Happy to split thisinto its own commit/PR if preferred.