Fix functions

This commit is contained in:
Danis
2025-08-15 15:33:59 +04:00
parent c8b6079b31
commit dc03a863f0
2 changed files with 29 additions and 55 deletions

View File

@ -214,52 +214,30 @@ class EditTableController extends Component {
api.tblApply(properties);
}
onChangeRowHeight (height, isDecrement) {
onChangeTableDimension (type, value, isDecrement) {
const api = Common.EditorApi.get();
const properties = new Asc.CTableProp();
let step, newHeight;
const maxValue = Common.Utils.Metric.fnRecalcFromMM(558.8);
if (Common.Utils.Metric.getCurrentMetric() === Common.Utils.Metric.c_MetricUnits.pt) {
step = 1;
} else {
step = 0.1;
const step = Common.Utils.Metric.getCurrentMetric() === Common.Utils.Metric.c_MetricUnits.pt ? 1 : 0.1;
const newValue = isDecrement
? Math.max(0, value - step)
: Math.min(maxValue, value + step);
const convertedValue = Common.Utils.Metric.fnRecalcToMM(newValue);
if (type === 'row') {
properties.put_RowHeight(convertedValue);
} else if (type === 'column') {
properties.put_ColumnWidth(convertedValue);
}
if (isDecrement) {
newHeight = Math.max(-1, height - step)
} else {
newHeight = Math.min(maxValue, height + step);
}
properties.put_RowHeight(Common.Utils.Metric.fnRecalcToMM(newHeight));
api.tblApply(properties);
}
onChangeColumnWidth (width, isDecrement) {
const api = Common.EditorApi.get();
const properties = new Asc.CTableProp();
let step, newWidth;
const maxValue = Common.Utils.Metric.fnRecalcFromMM(558.8);
if (Common.Utils.Metric.getCurrentMetric() === Common.Utils.Metric.c_MetricUnits.pt) {
step = 1;
} else {
step = 0.1;
}
if (isDecrement) {
newWidth = Math.max(-1, width - step)
} else {
newWidth = Math.min(maxValue, width + step);
}
properties.put_ColumnWidth(Common.Utils.Metric.fnRecalcToMM(newWidth));
api.tblApply(properties);
}
onDistributeColumns () {
onDistributeTable (isColumn) {
const api = Common.EditorApi.get();
api.asc_DistributeTableCells(true)
}
onDistributeRows () {
const api = Common.EditorApi.get();
api.asc_DistributeTableCells(false)
api.asc_DistributeTableCells(isColumn)
}
render () {
@ -283,10 +261,8 @@ class EditTableController extends Component {
onFillColor={this.onFillColor}
onBorderTypeClick={this.onBorderTypeClick}
onGetTableStylesPreviews = {this.onGetTableStylesPreviews}
onChangeRowHeight = {this.onChangeRowHeight}
onChangeColumnWidth = {this.onChangeColumnWidth}
onDistributeColumns = {this.onDistributeColumns}
onDistributeRows = {this.onDistributeRows}
onDistributeTable = {this.onDistributeTable}
onChangeTableDimension = {this.onChangeTableDimension}
/>
)
}

View File

@ -48,8 +48,8 @@ const PageTableOptions = props => {
isResize = storeTableSettings.getResizeOption(tableObject);
rowHeight = Common.Utils.Metric.fnRecalcFromMM(storeTableSettings.getRowHeight(tableObject));
columnWidth = Common.Utils.Metric.fnRecalcFromMM(storeTableSettings.getColumnWidth(tableObject));
displayRowHeight = Number(Common.Utils.Metric.fnRecalcFromMM(storeTableSettings.getRowHeight(tableObject)).toFixed(2));
displayColumnWidth = Number(Common.Utils.Metric.fnRecalcFromMM(storeTableSettings.getColumnWidth(tableObject)).toFixed(2));
displayRowHeight = Number(rowHeight.toFixed(2));
displayColumnWidth = Number(columnWidth.toFixed(2));
}
const [stateDistance, setDistance] = useState(distance);
@ -86,13 +86,13 @@ const PageTableOptions = props => {
{!isAndroid && <div slot='after-start'>{displayRowHeight + ' ' + metricText}</div>}
<div slot='after'>
<Segmented>
<Button outline className='decrement item-link' onClick={() => {props.onChangeRowHeight(rowHeight, true)}}>
<Button outline className='decrement item-link' onClick={() => {props.onChangeTableDimension('row', rowHeight, true)}}>
{isAndroid ?
<SvgIcon symbolId={IconExpandDownAndroid.id} className={'icon icon-svg'} />
: ' - '}
</Button>
{isAndroid && <label>{displayRowHeight + ' ' + metricText}</label>}
<Button outline className='increment item-link' onClick={() => {props.onChangeRowHeight(rowHeight, false)}}>
<Button outline className='increment item-link' onClick={() => {props.onChangeTableDimension('row', rowHeight, false)}}>
{isAndroid ?
<SvgIcon symbolId={IconExpandUp.id} className={'icon icon-svg'} />
: ' + '}
@ -104,13 +104,13 @@ const PageTableOptions = props => {
{!isAndroid && <div slot='after-start'>{displayColumnWidth + ' ' + metricText}</div>}
<div slot='after'>
<Segmented>
<Button outline className='decrement item-link' onClick={() => {props.onChangeColumnWidth(columnWidth, true)}}>
<Button outline className='decrement item-link' onClick={() => {props.onChangeTableDimension('column', columnWidth, true)}}>
{isAndroid ?
<SvgIcon symbolId={IconExpandDownAndroid.id} className={'icon icon-svg'} />
: ' - '}
</Button>
{isAndroid && <label>{displayColumnWidth + ' ' + metricText}</label>}
<Button outline className='increment item-link' onClick={() => {props.onChangeColumnWidth(columnWidth, false)}}>
<Button outline className='increment item-link' onClick={() => {props.onChangeTableDimension('column', columnWidth, false)}}>
{isAndroid ?
<SvgIcon symbolId={IconExpandUp.id} className={'icon icon-svg'} />
: ' + '}
@ -120,12 +120,12 @@ const PageTableOptions = props => {
</ListItem>
<ListItem className='buttons'>
<div className="row">
<a className={'item-link button'} onClick={() => {props.onDistributeColumns()}}>
<SvgIcon slot="media" symbolId={IconDistributeColumns.id} className={'icon icon-svg'} />
</a>
<a className={'item-link button'} onClick={() => {props.onDistributeRows()}}>
<a className={'item-link button'} onClick={() => {props.onDistributeTable(false)}}>
<SvgIcon slot="media" symbolId={IconDistributeRows.id} className={'icon icon-svg'} />
</a>
<a className={'item-link button'} onClick={() => {props.onDistributeTable(true)}}>
<SvgIcon slot="media" symbolId={IconDistributeColumns.id} className={'icon icon-svg'} />
</a>
</div>
</ListItem>
</List>
@ -689,10 +689,8 @@ const EditTable = props => {
onCellMargins: props.onCellMargins,
onOptionResize: props.onOptionResize,
onOptionRepeat: props.onOptionRepeat,
onChangeRowHeight: props.onChangeRowHeight,
onChangeColumnWidth: props.onChangeColumnWidth,
onDistributeColumns: props.onDistributeColumns,
onDistributeRows: props.onDistributeRows
onDistributeTable: props.onDistributeTable,
onChangeTableDimension: props.onChangeTableDimension,
}}></ListItem>
<ListItem title={_t.textStyle} link='/edit-table-style/' routeProps={{
onStyleClick: props.onStyleClick,