@hailin-zheng/editor-core 1.1.4 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,7 @@
1
- import { IArrangeEvent, IMeasureEvent, IRenderData, Panel, Size } from "./Node";
1
+ import { AbsolutePanel, IRenderData } from "./Node";
2
2
  /**
3
3
  * 采用绝对布局系统的容器
4
4
  */
5
- export declare class Canvas extends Panel {
6
- constructor();
7
- measureOverride(e: IMeasureEvent, availableSize: Size): Size;
8
- protected arrangeOverride(e: IArrangeEvent, finalSize: Size): Size;
5
+ export declare class Canvas extends AbsolutePanel {
9
6
  render(e: IRenderData): void;
10
7
  }
@@ -42,6 +42,8 @@ export interface IAppState {
42
42
  export declare abstract class NodeCore {
43
43
  enableClip: boolean;
44
44
  pointEvent: boolean;
45
+ allowHitTest: boolean;
46
+ hitTest(hitPos: Position, currPos: Position): boolean;
45
47
  get enable(): boolean;
46
48
  set enable(value: boolean);
47
49
  private _enable;
@@ -171,6 +173,7 @@ export declare abstract class NodeItems extends NodeCore {
171
173
  eventMap: WeakMap<NodeCore, Array<Subscription>>;
172
174
  absoluteItems: boolean;
173
175
  containerPropName: string;
176
+ constructor();
174
177
  addChild(control: NodeCore, index?: number): void;
175
178
  getRenderItems(): Array<NodeCore>;
176
179
  removeChild(index: number | NodeCore): void;
@@ -184,6 +187,14 @@ export declare abstract class NodeItems extends NodeCore {
184
187
  }
185
188
  export declare abstract class Panel extends NodeItems {
186
189
  }
190
+ /**
191
+ * 子内容采用绝对定位的容器
192
+ */
193
+ export declare abstract class AbsolutePanel extends NodeItems {
194
+ protected constructor();
195
+ measureOverride(e: IMeasureEvent, availableSize: Size): Size;
196
+ protected arrangeOverride(e: IArrangeEvent, finalSize: Size): Size;
197
+ }
187
198
  export interface ActiveAppContext {
188
199
  root: SurfaceView;
189
200
  render: () => void;
@@ -199,6 +210,10 @@ export declare function renderNode(node: NodeCore, renderCtx: ViewPaint, appStat
199
210
  * @param renderCtx
200
211
  */
201
212
  export declare function drawBorderline(node: NodeCore, renderCtx: ViewPaint): void;
213
+ /**
214
+ * 绘制外轮廓
215
+ */
216
+ export declare function drawOutline(node: NodeCore, renderCtx: ViewPaint): void;
202
217
  export declare function clipContent(node: NodeCore, renderCtx: ViewPaint): void;
203
218
  export declare function translate(renderCtx: ViewPaint, x: number, y: number): void;
204
219
  export declare function getParents(node: NodeCore): Array<NodeCore>;
@@ -1,17 +1,18 @@
1
1
  import { Size, IRenderData, IMeasureEvent, IArrangeEvent } from "./Node";
2
2
  import { TextBase } from "./TextBase";
3
- export declare type TextVertAlign = 'superscript' | 'subscript';
4
3
  /**
5
4
  * 文本元素尺寸默认按照横向排列进行测量,内容高度等于字体大小
6
5
  * 如果有默认宽度限制,而且支持换行显示,则内容高度等于多行累计高度
7
6
  */
8
7
  export declare class LabelNode extends TextBase {
8
+ constructor();
9
9
  private _textWrapping;
10
10
  get textWrapping(): "wrap" | "no";
11
11
  set textWrapping(value: "wrap" | "no");
12
12
  protected cacheTextRect: TextMeasureRect;
13
- private textUnits;
13
+ private lines;
14
14
  measureOverride(e: IMeasureEvent, availableSize: Size): Size;
15
+ private getMuiltLines;
15
16
  protected arrangeOverride(e: IArrangeEvent, finalSize: Size): Size;
16
17
  private getTextProps;
17
18
  private measureTextRect;
@@ -17,11 +17,20 @@ export declare class ViewPaint {
17
17
  getGlobalAlpha(): number;
18
18
  clear(): void;
19
19
  drawText(text: string, textProps: TextProps, x: number, y: number, width: number, height: number): void;
20
+ drawText2(text: string, textProps: {
21
+ color: string;
22
+ fontSize: number;
23
+ fontName: string;
24
+ }, x: number, y: number): void;
20
25
  fillCircular(x: number, y: number, r: number, color?: string): void;
21
26
  measureText(text: string, textProps: TextProps): {
22
27
  width: number;
23
28
  height: number;
24
29
  };
30
+ measureText2(text: string, font: {
31
+ fontSize: number;
32
+ fontName: string;
33
+ }): number;
25
34
  measureTextUnits(units: Array<TextUnits>, textProps: TextProps): void;
26
35
  clearRect(x: number, y: number, width: number, height: number): void;
27
36
  save(): void;