From 6b6175a5210d98fcb7db4bd8d986a8af868e2a3c Mon Sep 17 00:00:00 2001 From: Carl Fuchs Date: Mon, 20 Feb 2023 10:31:52 +0100 Subject: [PATCH] [Merge] Merged changes from master before further implementations --- src/Components/Canvas/DimensionLayer.ts | 11 ++++- src/Components/Canvas/SelectorSymbol.ts | 2 +- .../SVG/Elements/DimensionLayer.tsx | 43 ++----------------- 3 files changed, 14 insertions(+), 42 deletions(-) diff --git a/src/Components/Canvas/DimensionLayer.ts b/src/Components/Canvas/DimensionLayer.ts index d986de1..6b3182e 100644 --- a/src/Components/Canvas/DimensionLayer.ts +++ b/src/Components/Canvas/DimensionLayer.ts @@ -2,7 +2,13 @@ import { Orientation } from '../../Enums/Orientation'; import { Position } from '../../Enums/Position'; import { type IContainerModel } from '../../Interfaces/IContainerModel'; import { type ISymbolModel } from '../../Interfaces/ISymbolModel'; -import { SHOW_SELF_DIMENSIONS, SHOW_BORROWER_DIMENSIONS, SHOW_CHILDREN_DIMENSIONS, DIMENSION_MARGIN, SHOW_SELF_MARGINS_DIMENSIONS } from '../../utils/default'; +import { + SHOW_SELF_DIMENSIONS, + SHOW_BORROWER_DIMENSIONS, + SHOW_CHILDREN_DIMENSIONS, + DIMENSION_MARGIN, + SHOW_SELF_MARGINS_DIMENSIONS +} from '../../utils/default'; import { FindContainerById, MakeRecursionDFSIterator, Pairwise } from '../../utils/itertools'; import { TransformX, TransformY } from '../../utils/svg'; import { type IDimensionStyle } from '../SVG/Elements/Dimension'; @@ -100,6 +106,7 @@ export function AddSymbolDimensions( /** * Fonction that call another function given the positions + * @param ctx * @param dimMapped Position mapped depending on the Position enum in order: * [0:left, 1:bottom, 2:up, 3:right] * @param positions List of positions @@ -569,7 +576,7 @@ function AddHorizontalSymbolDimension( scale: number, depth: number ): void { - const width = symbol.x + (symbol.width / 2); + const width = symbol.offset + (symbol.width / 2); if (width == null || width <= 0) { return; diff --git a/src/Components/Canvas/SelectorSymbol.ts b/src/Components/Canvas/SelectorSymbol.ts index ddfbb29..fa833ce 100644 --- a/src/Components/Canvas/SelectorSymbol.ts +++ b/src/Components/Canvas/SelectorSymbol.ts @@ -24,7 +24,7 @@ export function RenderSymbolSelector( ]; const [x, y] = [ - props.selected.x + props.selected.width / 2, + props.selected.offset + props.selected.width / 2, -SYMBOL_MARGIN - height]; const text = props.selected.displayedText; diff --git a/src/Components/SVG/Elements/DimensionLayer.tsx b/src/Components/SVG/Elements/DimensionLayer.tsx index adeed20..f3634e9 100644 --- a/src/Components/SVG/Elements/DimensionLayer.tsx +++ b/src/Components/SVG/Elements/DimensionLayer.tsx @@ -182,6 +182,7 @@ function AddHorizontalSymbolDimension(symbol: ISymbolModel, const width = symbol.offset + (symbol.width / 2); if (width != null && width > 0) { const id = `dim-y-margin-left${symbol.width.toFixed(0)}-${symbol.id}`; + const style = symbol.linkedContainers.values().next().value.dimensionOptions; const offset = (DIMENSION_MARGIN * (depth + 1)) / scale; const text = width @@ -197,7 +198,7 @@ function AddHorizontalSymbolDimension(symbol: ISymbolModel, yEnd={-offset} text={text} scale={scale} - color={color}/> + style={style}/> ); } } @@ -211,6 +212,7 @@ function AddVerticalSymbolDimension(symbol: ISymbolModel, const height = symbol.offset + (symbol.height / 2); if (height != null && height > 0) { const id = `dim-x-margin-left${symbol.height.toFixed(0)}-${symbol.id}`; + const style = symbol.linkedContainers.values().next().value.dimensionOptions; const offset = (DIMENSION_MARGIN * (depth + 1)) / scale; const text = height @@ -226,7 +228,7 @@ function AddVerticalSymbolDimension(symbol: ISymbolModel, yEnd={0} text={text} scale={scale} - color={color}/> + style={style}/> ); } } @@ -680,40 +682,3 @@ function AddVerticalSelfMarginDimension( ); } } - -function AddHorizontalSymbolDimension( - symbol: ISymbolModel, - dimensions: React.ReactNode[], - scale: number, - depth: number -): void { - const width = symbol.x + (symbol.width / 2); - - if (width == null || width <= 0) { - return; - } - - const id = `dim-y-margin-left${symbol.width.toFixed(0)}-${symbol.id}`; - - const offset = (DIMENSION_MARGIN * (depth + 1)) / scale; - const text = width - .toFixed(0) - .toString(); - - // TODO: Put this in default.ts - const defaultDimensionSymbolStyle: IDimensionStyle = { - color: 'black' - }; - dimensions.push( - - ); -}