[Update] Translation and fix

This commit is contained in:
Carl Fuchs 2023-02-21 15:02:53 +01:00
parent 174767f22c
commit 4c2cf66667
6 changed files with 49 additions and 11 deletions

View file

@ -7,7 +7,7 @@ export function ApplySymbol(containers: Map<string, IContainerModel>,
container: IContainerModel, container: IContainerModel,
symbol: ISymbolModel): IContainerModel { symbol: ISymbolModel): IContainerModel {
if (symbol.isVertical) { if (symbol.isVertical) {
container.properties.y = TransformY(symbol.offset + (symbol.height / 2), container.properties.y = TransformY(symbol.offset,
symbol.height, symbol.height,
symbol.config.PositionReference); symbol.config.PositionReference);
container.properties.y = RestoreY(container.properties.y, container.properties.y = RestoreY(container.properties.y,

View file

@ -167,11 +167,11 @@ function Dimensions({ containers, symbols, root, scale }: IDimensionLayerProps):
for (const symbol of symbols) { for (const symbol of symbols) {
if (symbol[1].showDimension) { if (symbol[1].showDimension) {
startDepthHorizontalSymbols++;
startDepthVerticalSymbols++;
if (symbol[1].isVertical) { if (symbol[1].isVertical) {
startDepthVerticalSymbols++;
AddVerticalSymbolDimension(symbol[1], dimensions, scale, startDepthVerticalSymbols); AddVerticalSymbolDimension(symbol[1], dimensions, scale, startDepthVerticalSymbols);
} else { } else {
startDepthHorizontalSymbols++;
AddHorizontalSymbolDimension(symbol[1], dimensions, scale, startDepthHorizontalSymbols); AddHorizontalSymbolDimension(symbol[1], dimensions, scale, startDepthHorizontalSymbols);
} }
} }

View file

@ -37,11 +37,11 @@ export function Symbol(props: ISymbolProps): JSX.Element {
); );
} }
if (props.model.isVertical) { if (props.model.isVertical) {
x = (-SYMBOL_MARGIN - props.model.height) / props.scale; x = (-SYMBOL_MARGIN - props.model.width) / props.scale;
y = (props.model.offset + props.model.height / 2) - (props.model.height / props.scale / 2); y = (props.model.offset + props.model.height / 2) - (props.model.height / props.scale / 2);
} else { } else {
x = (props.model.offset + props.model.width / 2) - (props.model.width / props.scale / 2); x = (props.model.offset + props.model.width / 2) - (props.model.width / props.scale / 2);
y = (-SYMBOL_MARGIN - props.model.width) / props.scale; y = (-SYMBOL_MARGIN - props.model.height) / props.scale;
} }
return ( return (
<image <image

View file

@ -4,8 +4,8 @@ import { RestoreX, RestoreY, TransformX, TransformY } from '../../utils/svg';
import { InputGroup } from '../InputGroup/InputGroup'; import { InputGroup } from '../InputGroup/InputGroup';
import { TextInputGroup } from '../InputGroup/TextInputGroup'; import { TextInputGroup } from '../InputGroup/TextInputGroup';
import { Text } from '../Text/Text'; import { Text } from '../Text/Text';
import { PropertyType } from '../../Enums/PropertyType';
import { ToggleButton } from '../ToggleButton/ToggleButton'; import { ToggleButton } from '../ToggleButton/ToggleButton';
import { type PositionReference } from '../../Enums/PositionReference';
interface ISymbolFormProps { interface ISymbolFormProps {
symbol: ISymbolModel symbol: ISymbolModel
@ -13,6 +13,29 @@ interface ISymbolFormProps {
onChange: (key: string, value: string | number | boolean) => void onChange: (key: string, value: string | number | boolean) => void
} }
function Restore(offset: number,
isVertical: boolean,
height: number,
width: number,
position: PositionReference | undefined): number {
if (isVertical) {
return RestoreY(offset, height, position);
} else {
return RestoreX(offset, width, position);
}
}
function Transform(offset: number,
isVertical: boolean,
height: number,
width: number,
position: PositionReference | undefined): number {
if (isVertical) {
return TransformY(offset, height, position);
} else {
return TransformX(offset, width, position);
}
}
export function SymbolForm(props: ISymbolFormProps): JSX.Element { export function SymbolForm(props: ISymbolFormProps): JSX.Element {
return ( return (
<div className='grid grid-cols-2 gap-y-4'> <div className='grid grid-cols-2 gap-y-4'>
@ -40,10 +63,21 @@ export function SymbolForm(props: ISymbolFormProps): JSX.Element {
labelClassName='' labelClassName=''
inputClassName='' inputClassName=''
type='number' type='number'
value={TransformX(props.symbol.offset, props.symbol.width, props.symbol.config.PositionReference).toString()} value={Transform(props.symbol.offset,
onChange={(value) => { props.onChange('offset', RestoreX(Number(value), props.symbol.width, props.symbol.config.PositionReference)); }} /> props.symbol.isVertical,
props.symbol.height,
props.symbol.width,
props.symbol.config.PositionReference).toString()}
onChange={(value) => {
props.onChange('offset',
Restore(Number(value),
props.symbol.isVertical,
props.symbol.height,
props.symbol.width,
props.symbol.config.PositionReference));
}} />
<ToggleButton <ToggleButton
labelText={Text({ textId: '@isVertical' })} labelText={Text({ textId: '@IsVertical' })}
inputKey='isVertical' inputKey='isVertical'
labelClassName='' labelClassName=''
inputClassName='' inputClassName=''

View file

@ -76,7 +76,9 @@
"@SymbolName": "Name", "@SymbolName": "Name",
"@SymbolDisplayedText": "Displayed text", "@SymbolDisplayedText": "Displayed text",
"@SymbolX": "x", "@SymbolOffset" : "Offset",
"@IsVertical" : "Vertical",
"@ShowDimension" : "Dimension",
"@SymbolHeight": "Height", "@SymbolHeight": "Height",
"@SymbolWidth": "Width" "@SymbolWidth": "Width"
} }

View file

@ -76,7 +76,9 @@
"@SymbolName": "Nom", "@SymbolName": "Nom",
"@SymbolDisplayedText": "Texte affiché", "@SymbolDisplayedText": "Texte affiché",
"@SymbolX": "x", "@SymbolOffset" : "Décalage",
"@IsVertical" : "Vertical",
"@ShowDimension" : "Cotation",
"@SymbolHeight": "Hauteur", "@SymbolHeight": "Hauteur",
"@SymbolWidth": "Largeur" "@SymbolWidth": "Largeur"
} }