UNPKG

devexpress-diagram

Version:

DevExpress Diagram Control

61 lines (58 loc) 2.22 kB
import { ChangePagePropertyCommand } from "./ChangePagePropertyCommand"; import { Size } from "@devexpress/utils/lib/geometry/size"; import { ChangePageSizeHistoryItem } from "../../History/Page/ChangePageSizeHistoryItem"; import { HistoryItem } from "../../History/HistoryItem"; import { SimpleCommandBase } from "../SimpleCommandBase"; import { SimpleCommandState } from "../CommandStates"; export class ChangePageSizeCommand extends ChangePagePropertyCommand<Size> { getValue(): Size { return this.getModelUnitSize(this.control.model.pageSize); } createHistoryItems(parameter: any): HistoryItem[] { return [new ChangePageSizeHistoryItem( new Size( this.getModelUnitTwipsValue(parameter.width), this.getModelUnitTwipsValue(parameter.height) ) )]; } getItems(): any[] { return this.control.settings.pageSizeItems.map(i => { return { value: this.getModelUnitSize(i.size), text: i.text.replace("{width}", this.getViewUnitText(i.size.width)).replace("{height}", this.getViewUnitText(i.size.height)) }; }); } getModelUnitSize(size: Size): Size { return new Size(this.getModelUnit(size.width), this.getModelUnit(size.height)); } } export class ChangePageSizeItemsCommand extends SimpleCommandBase { isEnabled(): boolean { return true; } getValue(): any[] { return this.control.settings.pageSizeItems.map(i => { return { size: new Size( this.getModelUnit(i.width), this.getModelUnit(i.height) ), text: i.text }; }); } executeCore(state: SimpleCommandState, parameter: any[]) { this.control.settings.pageSizeItems = parameter.map(i => { return { size: new Size( this.getModelUnitTwipsValue(i.width), this.getModelUnitTwipsValue(i.height) ), text: i.text }; }); return true; } }