@flashist/appframework 0.0.147 → 0.0.149
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.
- package/display/views/button/SimpleButtonConfig.d.ts +5 -0
- package/display/views/button/SimpleButtonConfig.js.map +1 -1
- package/display/views/button/SimpleButtonState.d.ts +9 -11
- package/display/views/button/SimpleButtonState.js +11 -26
- package/display/views/button/SimpleButtonState.js.map +1 -1
- package/display/views/button/SimpleButtonView.d.ts +4 -1
- package/display/views/button/SimpleButtonView.js +24 -3
- package/display/views/button/SimpleButtonView.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IFLabelConfig } from "@flashist/flibs";
|
|
2
|
+
import { SimpleButtonState } from "./SimpleButtonState";
|
|
2
3
|
export declare const SimpleButtonDefaultConfig: {
|
|
3
4
|
labelConfig: IFLabelConfig;
|
|
4
5
|
states: {
|
|
@@ -10,5 +11,9 @@ export declare const SimpleButtonDefaultConfig: {
|
|
|
10
11
|
};
|
|
11
12
|
export interface ISingleButtonStateConfig {
|
|
12
13
|
alpha: number;
|
|
14
|
+
icon?: string;
|
|
13
15
|
}
|
|
16
|
+
export type ISimpleButtonStatesConfig = {
|
|
17
|
+
[key in SimpleButtonState]?: ISingleButtonStateConfig;
|
|
18
|
+
};
|
|
14
19
|
export type SimpleButtonConfig = Partial<typeof SimpleButtonDefaultConfig>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleButtonConfig.js","sourceRoot":"","sources":["../../../../src/display/views/button/SimpleButtonConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SimpleButtonConfig.js","sourceRoot":"","sources":["../../../../src/display/views/button/SimpleButtonConfig.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACrC,WAAW,EAAE,EAAmB;IAChC,MAAM,EAAE;QACJ,MAAM,EAAE;YACJ,KAAK,EAAE,IAAI;SACc;QAC7B,IAAI,EAAE;YACF,KAAK,EAAE,CAAC;SACiB;QAC7B,KAAK,EAAE;YACH,KAAK,EAAE,CAAC;SACiB;QAC7B,QAAQ,EAAE;YACN,KAAK,EAAE,GAAG;SACe;KAChC;CACJ,CAAA;AAaD,yCAAyC;AACzC,sBAAsB;AACtB,uBAAuB;AACvB,kCAAkC;AAClC,gBAAgB;AAEhB,wBAAwB;AACxB,kCAAkC;AAClC,sCAAsC;AACtC,kCAAkC;AAClC,wCAAwC;AACxC,wCAAwC;AACxC,wCAAwC;AACxC,eAAe;AAEf,iCAAiC;AACjC,YAAY;AAEZ,mCAAmC;AACnC,IAAI"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
export declare
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
static NORMAL_TO_SELECTED_MAP: any;
|
|
11
|
-
static SELECTED_TO_NORMAL_MAP: any;
|
|
1
|
+
export declare enum SimpleButtonState {
|
|
2
|
+
NORMAL = "normal",
|
|
3
|
+
OVER = "over",
|
|
4
|
+
PRESS = "press",
|
|
5
|
+
DISABLED = "disabled",
|
|
6
|
+
SELECTED_NORMAL = "selected_normal",
|
|
7
|
+
SELECTED_OVER = "selected_over",
|
|
8
|
+
SELECTED_PRESS = "selected_press",
|
|
9
|
+
SELECTED_DISABLED = "selected_disabled"
|
|
12
10
|
}
|
|
@@ -1,27 +1,12 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
SimpleButtonState
|
|
4
|
-
SimpleButtonState
|
|
5
|
-
SimpleButtonState
|
|
6
|
-
SimpleButtonState
|
|
7
|
-
SimpleButtonState
|
|
8
|
-
SimpleButtonState
|
|
9
|
-
SimpleButtonState
|
|
10
|
-
SimpleButtonState
|
|
11
|
-
SimpleButtonState
|
|
12
|
-
let result = {};
|
|
13
|
-
result[SimpleButtonState.NORMAL] = SimpleButtonState.SELECTED_NORMAL;
|
|
14
|
-
result[SimpleButtonState.OVER] = SimpleButtonState.SELECTED_OVER;
|
|
15
|
-
result[SimpleButtonState.PRESS] = SimpleButtonState.SELECTED_PRESS;
|
|
16
|
-
result[SimpleButtonState.DISABLED] = SimpleButtonState.SELECTED_DISABLED;
|
|
17
|
-
return result;
|
|
18
|
-
})();
|
|
19
|
-
SimpleButtonState.SELECTED_TO_NORMAL_MAP = (() => {
|
|
20
|
-
let result = {};
|
|
21
|
-
result[SimpleButtonState.SELECTED_NORMAL] = SimpleButtonState.NORMAL;
|
|
22
|
-
result[SimpleButtonState.SELECTED_OVER] = SimpleButtonState.OVER;
|
|
23
|
-
result[SimpleButtonState.SELECTED_PRESS] = SimpleButtonState.PRESS;
|
|
24
|
-
result[SimpleButtonState.SELECTED_DISABLED] = SimpleButtonState.DISABLED;
|
|
25
|
-
return result;
|
|
26
|
-
})();
|
|
1
|
+
export var SimpleButtonState;
|
|
2
|
+
(function (SimpleButtonState) {
|
|
3
|
+
SimpleButtonState["NORMAL"] = "normal";
|
|
4
|
+
SimpleButtonState["OVER"] = "over";
|
|
5
|
+
SimpleButtonState["PRESS"] = "press";
|
|
6
|
+
SimpleButtonState["DISABLED"] = "disabled";
|
|
7
|
+
SimpleButtonState["SELECTED_NORMAL"] = "selected_normal";
|
|
8
|
+
SimpleButtonState["SELECTED_OVER"] = "selected_over";
|
|
9
|
+
SimpleButtonState["SELECTED_PRESS"] = "selected_press";
|
|
10
|
+
SimpleButtonState["SELECTED_DISABLED"] = "selected_disabled";
|
|
11
|
+
})(SimpleButtonState || (SimpleButtonState = {}));
|
|
27
12
|
//# sourceMappingURL=SimpleButtonState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleButtonState.js","sourceRoot":"","sources":["../../../../src/display/views/button/SimpleButtonState.ts"],"names":[],"mappings":"AAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"SimpleButtonState.js","sourceRoot":"","sources":["../../../../src/display/views/button/SimpleButtonState.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBAUX;AAVD,WAAY,iBAAiB;IACzB,sCAAiB,CAAA;IACjB,kCAAa,CAAA;IACb,oCAAe,CAAA;IACf,0CAAqB,CAAA;IAErB,wDAAmC,CAAA;IACnC,oDAA+B,CAAA;IAC/B,sDAAiC,CAAA;IACjC,4DAAuC,CAAA;AAC3C,CAAC,EAVW,iBAAiB,KAAjB,iBAAiB,QAU5B"}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
import { FContainer, FLabel } from "@flashist/flibs";
|
|
1
|
+
import { FContainer, FLabel, Sprite } from "@flashist/flibs";
|
|
2
2
|
import { SimpleButtonConfig } from "./SimpleButtonConfig";
|
|
3
3
|
import { ResizableContainer } from "../resize/ResizableContainer";
|
|
4
4
|
import { IToggableItem } from "../togglegroup/IToggableItem";
|
|
5
5
|
export declare class SimpleButtonView<DataType extends object = object> extends ResizableContainer<DataType> implements IToggableItem {
|
|
6
|
+
static NORMAL_TO_SELECTED_MAP: any;
|
|
7
|
+
static SELECTED_TO_NORMAL_MAP: any;
|
|
6
8
|
id: string;
|
|
7
9
|
private _enabled;
|
|
8
10
|
protected _state: string;
|
|
9
11
|
protected _selected: boolean;
|
|
10
12
|
protected config: SimpleButtonConfig;
|
|
11
13
|
protected contentCont: FContainer;
|
|
14
|
+
protected icon: Sprite;
|
|
12
15
|
protected label: FLabel;
|
|
13
16
|
constructor(config: SimpleButtonConfig);
|
|
14
17
|
protected construction(config: SimpleButtonConfig): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FContainer, FLabel, InteractiveEvent } from "@flashist/flibs";
|
|
1
|
+
import { FContainer, FLabel, Texture, InteractiveEvent, Sprite } from "@flashist/flibs";
|
|
2
2
|
import { SimpleButtonDefaultConfig } from "./SimpleButtonConfig";
|
|
3
3
|
import { SimpleButtonState } from "./SimpleButtonState";
|
|
4
4
|
import { ResizableContainer } from "../resize/ResizableContainer";
|
|
@@ -17,6 +17,8 @@ export class SimpleButtonView extends ResizableContainer {
|
|
|
17
17
|
this.addChild(this.contentCont);
|
|
18
18
|
// this.bg = this.createBg();
|
|
19
19
|
// this.contentCont.addChild(this.bg);
|
|
20
|
+
this.icon = new Sprite();
|
|
21
|
+
this.contentCont.addChild(this.icon);
|
|
20
22
|
this.label = new FLabel(this.config.labelConfig);
|
|
21
23
|
this.contentCont.addChild(this.label);
|
|
22
24
|
//
|
|
@@ -94,7 +96,7 @@ export class SimpleButtonView extends ResizableContainer {
|
|
|
94
96
|
let tempConfigState = this.state;
|
|
95
97
|
if (!this.config.states[tempConfigState]) {
|
|
96
98
|
if (this.selected) {
|
|
97
|
-
tempConfigState =
|
|
99
|
+
tempConfigState = SimpleButtonView.SELECTED_TO_NORMAL_MAP[this.state];
|
|
98
100
|
}
|
|
99
101
|
}
|
|
100
102
|
if (!this.config.states[tempConfigState]) {
|
|
@@ -102,6 +104,9 @@ export class SimpleButtonView extends ResizableContainer {
|
|
|
102
104
|
}
|
|
103
105
|
let tempConfig = this.config.states[tempConfigState];
|
|
104
106
|
this.alpha = tempConfig.alpha;
|
|
107
|
+
if (tempConfig.icon) {
|
|
108
|
+
this.icon.texture = Texture.from(tempConfig.icon);
|
|
109
|
+
}
|
|
105
110
|
if (this.enabled) {
|
|
106
111
|
this.interactive = true;
|
|
107
112
|
}
|
|
@@ -123,7 +128,7 @@ export class SimpleButtonView extends ResizableContainer {
|
|
|
123
128
|
findStateValue(normalState) {
|
|
124
129
|
let result;
|
|
125
130
|
if (this.selected) {
|
|
126
|
-
result =
|
|
131
|
+
result = SimpleButtonView.NORMAL_TO_SELECTED_MAP[normalState];
|
|
127
132
|
}
|
|
128
133
|
if (!result) {
|
|
129
134
|
result = normalState;
|
|
@@ -131,4 +136,20 @@ export class SimpleButtonView extends ResizableContainer {
|
|
|
131
136
|
return result;
|
|
132
137
|
}
|
|
133
138
|
}
|
|
139
|
+
SimpleButtonView.NORMAL_TO_SELECTED_MAP = (() => {
|
|
140
|
+
let result = {};
|
|
141
|
+
result[SimpleButtonState.NORMAL] = SimpleButtonState.SELECTED_NORMAL;
|
|
142
|
+
result[SimpleButtonState.OVER] = SimpleButtonState.SELECTED_OVER;
|
|
143
|
+
result[SimpleButtonState.PRESS] = SimpleButtonState.SELECTED_PRESS;
|
|
144
|
+
result[SimpleButtonState.DISABLED] = SimpleButtonState.SELECTED_DISABLED;
|
|
145
|
+
return result;
|
|
146
|
+
})();
|
|
147
|
+
SimpleButtonView.SELECTED_TO_NORMAL_MAP = (() => {
|
|
148
|
+
let result = {};
|
|
149
|
+
result[SimpleButtonState.SELECTED_NORMAL] = SimpleButtonState.NORMAL;
|
|
150
|
+
result[SimpleButtonState.SELECTED_OVER] = SimpleButtonState.OVER;
|
|
151
|
+
result[SimpleButtonState.SELECTED_PRESS] = SimpleButtonState.PRESS;
|
|
152
|
+
result[SimpleButtonState.SELECTED_DISABLED] = SimpleButtonState.DISABLED;
|
|
153
|
+
return result;
|
|
154
|
+
})();
|
|
134
155
|
//# sourceMappingURL=SimpleButtonView.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleButtonView.js","sourceRoot":"","sources":["../../../../src/display/views/button/SimpleButtonView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"SimpleButtonView.js","sourceRoot":"","sources":["../../../../src/display/views/button/SimpleButtonView.ts"],"names":[],"mappings":"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"}
|