@shijiu/jsview-vue 0.0.1-beta.0

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.
Files changed (252) hide show
  1. package/docs/IMPORT_CHANGE_LOG.txt +3 -0
  2. package/docs/git_commit.md +15 -0
  3. package/docs/test_version_up.txt +1 -0
  4. package/dom/bin/jsview-dom-1.0.313.tgz +0 -0
  5. package/dom/browser-root-style.css +21 -0
  6. package/dom/jsv-browser-debug-dom.js +8 -0
  7. package/dom/jsv-dom.js +6 -0
  8. package/dom/jsv-forge-define.js +6 -0
  9. package/dom/target_core_revision.js +14 -0
  10. package/load/header_script_loader.js +134 -0
  11. package/load/jsview-main.js +42 -0
  12. package/load/jsview.config.default.js +37 -0
  13. package/load/jsview.default.config.js +37 -0
  14. package/load/loader.js +172 -0
  15. package/load/loader_webkit.js +40 -0
  16. package/package.json +27 -0
  17. package/patch/node_modules/@babel/preset-env/lib/available-plugins.js +219 -0
  18. package/patch/node_modules/@vue/cli-plugin-typescript/index.js +100 -0
  19. package/patch/node_modules/@vue/cli-service/lib/commands/serve.js +395 -0
  20. package/patch/node_modules/@vue/cli-service/lib/config/app.js +272 -0
  21. package/patch/node_modules/@vue/cli-service/lib/config/assets.js +70 -0
  22. package/patch/node_modules/@vue/cli-service/lib/config/base.js +212 -0
  23. package/patch/node_modules/@vue/compiler-sfc/dist/compiler-sfc.cjs.js +2566 -0
  24. package/patch/node_modules/@vue/compiler-sfc/dist/jsview-css-to-js.js +274 -0
  25. package/patch/node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js +1596 -0
  26. package/patch/node_modules/postcss-js/objectifier.js +90 -0
  27. package/patch/node_modules/vue-loader/dist/resolveScript.js +70 -0
  28. package/patch/package-lock.json +30051 -0
  29. package/samples/AdvanceMetroWidget/App.vue +123 -0
  30. package/samples/AdvanceMetroWidget/Frame.vue +101 -0
  31. package/samples/AdvanceMetroWidget/Item.vue +58 -0
  32. package/samples/AdvanceMetroWidget/data.js +137 -0
  33. package/samples/AnimPicture/App.vue +224 -0
  34. package/samples/AnimPicture/assets/animated_webp.webp +0 -0
  35. package/samples/AnimPicture/assets/ball_3.webp +0 -0
  36. package/samples/AnimPicture/assets/girl_run.gif +0 -0
  37. package/samples/AnimPicture/assets/quan.webp +0 -0
  38. package/samples/Basic/App.vue +129 -0
  39. package/samples/Basic/assets/border.png +0 -0
  40. package/samples/Basic/assets/border2.png +0 -0
  41. package/samples/Basic/assets/icon.png +0 -0
  42. package/samples/Basic/assets/test.jpg +0 -0
  43. package/samples/Basic/components/ContentBlock.vue +36 -0
  44. package/samples/Basic/components/FontStyle.css +10 -0
  45. package/samples/Basic/components/TitleBar.vue +29 -0
  46. package/samples/Basic/components/anim/AnimGroup.vue +68 -0
  47. package/samples/Basic/components/anim/AnimKeyframeBasic.vue +102 -0
  48. package/samples/Basic/components/anim/AnimKeyframeComposite.vue +53 -0
  49. package/samples/Basic/components/anim/AnimTransition.vue +116 -0
  50. package/samples/Basic/components/div/DivBackground.vue +15 -0
  51. package/samples/Basic/components/div/DivClip.vue +81 -0
  52. package/samples/Basic/components/div/DivCssScoped.vue +27 -0
  53. package/samples/Basic/components/div/DivCssVar.vue +50 -0
  54. package/samples/Basic/components/div/DivGroup1.vue +33 -0
  55. package/samples/Basic/components/div/DivGroup2.vue +41 -0
  56. package/samples/Basic/components/div/DivLayout.vue +12 -0
  57. package/samples/Basic/components/div/DivRadius.vue +47 -0
  58. package/samples/Basic/components/text/TextAlign.vue +48 -0
  59. package/samples/Basic/components/text/TextFontStyle.vue +58 -0
  60. package/samples/Basic/components/text/TextGroup.vue +32 -0
  61. package/samples/Basic/components/text/TextOverflow.vue +78 -0
  62. package/samples/BasicFocusControl/App.vue +125 -0
  63. package/samples/BasicFocusControl/components/BaseBlock.vue +51 -0
  64. package/samples/BasicFocusControl/components/MainArea.vue +98 -0
  65. package/samples/BasicFocusControl/components/MainAreaLeftBlock.vue +21 -0
  66. package/samples/BasicFocusControl/components/MainAreaRightBlock.vue +30 -0
  67. package/samples/BasicFocusControl/components/SideBar.vue +73 -0
  68. package/samples/BasicFocusControl/components/SideBarBlock.vue +30 -0
  69. package/samples/ClassNameDemo/App.vue +119 -0
  70. package/samples/ClassNameDemo/assets/bg.jpg +0 -0
  71. package/samples/ClassNameDemo/assets/coupon_content.png +0 -0
  72. package/samples/ClassNameDemo/assets/coupon_left.png +0 -0
  73. package/samples/ClassNameDemo/assets/coupon_mid.png +0 -0
  74. package/samples/ClassNameDemo/assets/coupon_right.png +0 -0
  75. package/samples/ClassNameDemo/assets/focus_border.png +0 -0
  76. package/samples/ClassNameDemo/assets/holder_logo.png +0 -0
  77. package/samples/ClassNameDemo/assets/jrbm.png +0 -0
  78. package/samples/ClassNameDemo/assets/line_left.png +0 -0
  79. package/samples/ClassNameDemo/assets/line_mid.png +0 -0
  80. package/samples/ClassNameDemo/assets/line_right.png +0 -0
  81. package/samples/ClassNameDemo/assets/loading.png +0 -0
  82. package/samples/ClassNameDemo/assets/logo.png +0 -0
  83. package/samples/ClassNameDemo/assets/mcjx.png +0 -0
  84. package/samples/ClassNameDemo/assets/tao.png +0 -0
  85. package/samples/ClassNameDemo/assets/tmall.png +0 -0
  86. package/samples/ClassNameDemo/components/ContentItem.vue +253 -0
  87. package/samples/ClassNameDemo/components/LoadingView.vue +43 -0
  88. package/samples/ClassNameDemo/components/TitleView.vue +24 -0
  89. package/samples/ClassNameDemo/data.js +24 -0
  90. package/samples/ColorSpace/App.vue +135 -0
  91. package/samples/ColorSpace/bmpDemo.bmp +0 -0
  92. package/samples/ColorSpace/jpegDemo.jpeg +0 -0
  93. package/samples/ColorSpace/pngDemo.png +0 -0
  94. package/samples/ColorSpace/pngNoAlphaDemo.png +0 -0
  95. package/samples/DemoHomepage/App.vue +31 -0
  96. package/samples/DemoHomepage/components/BodyFrame.vue +82 -0
  97. package/samples/DemoHomepage/components/Dialog.vue +94 -0
  98. package/samples/DemoHomepage/components/Item.vue +77 -0
  99. package/samples/DemoHomepage/components/TabFrame.vue +86 -0
  100. package/samples/DemoHomepage/router.js +132 -0
  101. package/samples/DemoHomepage/views/Homepage.vue +186 -0
  102. package/samples/FlipCard/App.vue +80 -0
  103. package/samples/FlipCard/FlipCard.vue +124 -0
  104. package/samples/FlipCard/assets/blue_egg.png +0 -0
  105. package/samples/FlipCard/assets/red_egg.png +0 -0
  106. package/samples/FlipCard/data.js +13 -0
  107. package/samples/FlowMultiWidget/App.vue +91 -0
  108. package/samples/FlowMultiWidget/assets/nine_patch_focus.png +0 -0
  109. package/samples/FlowMultiWidget/components/Block.vue +107 -0
  110. package/samples/FlowMultiWidget/components/FlowPage.vue +60 -0
  111. package/samples/FlowMultiWidget/components/Item.vue +103 -0
  112. package/samples/FlowMultiWidget/components/MenuItem.vue +72 -0
  113. package/samples/FlowMultiWidget/components/MyMenu.vue +90 -0
  114. package/samples/FlowMultiWidget/data.js +446 -0
  115. package/samples/HashHistory/App.vue +124 -0
  116. package/samples/HashHistory/components/HorizontalButtonList.vue +114 -0
  117. package/samples/HashHistory/components/Item.vue +74 -0
  118. package/samples/HashHistory/router.js +30 -0
  119. package/samples/HashHistory/views/BasePage.vue +19 -0
  120. package/samples/HashHistory/views/MainPage.vue +68 -0
  121. package/samples/HashHistory/views/SubPage.vue +79 -0
  122. package/samples/HashHistory/views/SubPageFirst.vue +10 -0
  123. package/samples/HashHistory/views/SubPageSecond.vue +10 -0
  124. package/samples/LongImage/App.vue +96 -0
  125. package/samples/LongImage/Button.vue +153 -0
  126. package/samples/LongImage/LongImageScroll.vue +127 -0
  127. package/samples/LongImage/Scroll.vue +16 -0
  128. package/samples/LongImage/assets/1280x7200.jpg +0 -0
  129. package/samples/LongText/App.vue +111 -0
  130. package/samples/LongText/Button.vue +153 -0
  131. package/samples/LongText/LongTextScroll.vue +225 -0
  132. package/samples/LongText/Scroll.vue +16 -0
  133. package/samples/Preload/App.vue +146 -0
  134. package/samples/Preload/data.js +23 -0
  135. package/samples/Preload/images/awesomeface.png +0 -0
  136. package/samples/Preload/images/cat.jpg +0 -0
  137. package/samples/Preload/images/rank.png +0 -0
  138. package/samples/Preload/images/rank_focus.png +0 -0
  139. package/samples/Preload/images/rule.png +0 -0
  140. package/samples/Preload/images/rule_focus.png +0 -0
  141. package/samples/Preload/images/start.png +0 -0
  142. package/samples/Preload/images/start_focus.png +0 -0
  143. package/samples/Preload/preloadItem.vue +22 -0
  144. package/samples/QrcodeDemo/App.vue +73 -0
  145. package/samples/SimpleWidgetDemo/App.vue +204 -0
  146. package/samples/SimpleWidgetDemo/Item.vue +83 -0
  147. package/samples/SimpleWidgetDemo/assets/bg.jpg +0 -0
  148. package/samples/SimpleWidgetDemo/assets/coupon_content.png +0 -0
  149. package/samples/SimpleWidgetDemo/assets/coupon_left.png +0 -0
  150. package/samples/SimpleWidgetDemo/assets/coupon_mid.png +0 -0
  151. package/samples/SimpleWidgetDemo/assets/coupon_right.png +0 -0
  152. package/samples/SimpleWidgetDemo/assets/focus_border.png +0 -0
  153. package/samples/SimpleWidgetDemo/assets/holder_logo.png +0 -0
  154. package/samples/SimpleWidgetDemo/assets/jrbm.png +0 -0
  155. package/samples/SimpleWidgetDemo/assets/line_left.png +0 -0
  156. package/samples/SimpleWidgetDemo/assets/line_mid.png +0 -0
  157. package/samples/SimpleWidgetDemo/assets/line_right.png +0 -0
  158. package/samples/SimpleWidgetDemo/assets/loading.png +0 -0
  159. package/samples/SimpleWidgetDemo/assets/logo.png +0 -0
  160. package/samples/SimpleWidgetDemo/assets/mcjx.png +0 -0
  161. package/samples/SimpleWidgetDemo/assets/tao.png +0 -0
  162. package/samples/SimpleWidgetDemo/assets/tmall.png +0 -0
  163. package/samples/SimpleWidgetDemo/border.png +0 -0
  164. package/samples/SimpleWidgetDemo/components/ContentItem.vue +412 -0
  165. package/samples/SimpleWidgetDemo/components/MyTab.vue +117 -0
  166. package/samples/SimpleWidgetDemo/data.js +110 -0
  167. package/samples/SprayView/App.vue +270 -0
  168. package/samples/SprayView/assets/snow.png +0 -0
  169. package/samples/SpriteImage/App.vue +174 -0
  170. package/samples/SpriteImage/images/cat_run.png +0 -0
  171. package/samples/SpriteImage/images/egg_break.json +116 -0
  172. package/samples/SpriteImage/images/egg_break.png +0 -0
  173. package/samples/SpriteImage/images/sprite.png +0 -0
  174. package/samples/TextBox/App.vue +179 -0
  175. package/samples/TextBox/RenderCenter.vue +109 -0
  176. package/samples/TextBox/RenderLeft.vue +109 -0
  177. package/samples/TextBox/RenderOneLine.vue +120 -0
  178. package/samples/TextBox/RenderRight.vue +107 -0
  179. package/samples/TextShadowDemo/App.vue +98 -0
  180. package/samples/TextureSize/App.vue +142 -0
  181. package/samples/TextureSize/bmpDemo.bmp +0 -0
  182. package/samples/TextureSize/jpegDemo.jpeg +0 -0
  183. package/samples/TextureSize/jpgDemo.jpg +0 -0
  184. package/samples/TextureSize/pngDemo.png +0 -0
  185. package/samples/TextureSize/pngNoAlphaDemo.png +0 -0
  186. package/samples/ThrowMoveDemo/AccelerateDemo.vue +118 -0
  187. package/samples/ThrowMoveDemo/App.vue +114 -0
  188. package/samples/ThrowMoveDemo/LRParabolicDemo.vue +116 -0
  189. package/samples/ThrowMoveDemo/TargetDemo.vue +117 -0
  190. package/samples/ThrowMoveDemo/UDParabolicDemo.vue +122 -0
  191. package/samples/TransitPage/App.vue +41 -0
  192. package/samples/VideoDemo/App.vue +137 -0
  193. package/samples/VideoDemo/components/Button.vue +69 -0
  194. package/samples/VideoDemo/components/Controllor.vue +195 -0
  195. package/samples/VideoDemo/components/VideoFrame.vue +152 -0
  196. package/scripts/git-commit-empty.js +21 -0
  197. package/scripts/install-local-packages.js +121 -0
  198. package/scripts/make-js.sh +181 -0
  199. package/scripts/post-build.js +132 -0
  200. package/scripts/post-install.js +127 -0
  201. package/scripts/pre-pack.js +2 -0
  202. package/scripts/run-android.js +64 -0
  203. package/utils/JsViewEngineWidget/bin/shijiu-jsview-vue-widget-1.0.1.tgz +0 -0
  204. package/utils/JsViewEngineWidget/index.d.ts +32 -0
  205. package/utils/JsViewEngineWidget/index.js +6 -0
  206. package/utils/JsViewVueTools/DebugContentShellJBridge.js +16 -0
  207. package/utils/JsViewVueTools/DebugTool.js +21 -0
  208. package/utils/JsViewVueTools/DefaultKeyMap.js +12 -0
  209. package/utils/JsViewVueTools/JsvDynamicCssStyle.js +73 -0
  210. package/utils/JsViewVueTools/JsvDynamicKeyFrames.js +128 -0
  211. package/utils/JsViewVueTools/JsvHashHistory.js +112 -0
  212. package/utils/JsViewVueTools/JsvRuntimeBridge.js +417 -0
  213. package/utils/JsViewVueTools/JsvStyleClass.js +290 -0
  214. package/utils/JsViewVueWidget/BrowserDebugWidget/BrowserPreload.vue +80 -0
  215. package/utils/JsViewVueWidget/BrowserDebugWidget/BrowserQrcode.vue +148 -0
  216. package/utils/JsViewVueWidget/BrowserDebugWidget/BrowserSpray.vue +55 -0
  217. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/ApicDataBase.js +29 -0
  218. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/BrowserApic.vue +124 -0
  219. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/GifData.js +83 -0
  220. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/LoopToolBase.js +25 -0
  221. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/NormalLoopTool.js +61 -0
  222. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/PartLoopTool.js +119 -0
  223. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/Viewer.js +106 -0
  224. package/utils/JsViewVueWidget/BrowserDebugWidget/JsvApic/WebpData.js +141 -0
  225. package/utils/JsViewVueWidget/BrowserDebugWidget/WidgetLoader.js +20 -0
  226. package/utils/JsViewVueWidget/BrowserDebugWidget/WidgetWrapper.js +11 -0
  227. package/utils/JsViewVueWidget/JsvActorMove/ActorControlBase.js +204 -0
  228. package/utils/JsViewVueWidget/JsvActorMove/JsvActorMove.vue +64 -0
  229. package/utils/JsViewVueWidget/JsvActorMove/JsvActorMoveControl.js +427 -0
  230. package/utils/JsViewVueWidget/JsvActorMove/index.js +12 -0
  231. package/utils/JsViewVueWidget/JsvApic/JsvApic.vue +179 -0
  232. package/utils/JsViewVueWidget/JsvApic/index.js +17 -0
  233. package/utils/JsViewVueWidget/JsvMarquee.vue +197 -0
  234. package/utils/JsViewVueWidget/JsvNativeSharedDiv.vue +92 -0
  235. package/utils/JsViewVueWidget/JsvNinePatch.vue +76 -0
  236. package/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue +351 -0
  237. package/utils/JsViewVueWidget/JsvPreload/index.js +21 -0
  238. package/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue +140 -0
  239. package/utils/JsViewVueWidget/JsvQrcode/index.js +18 -0
  240. package/utils/JsViewVueWidget/JsvSpray/JsvSpray.vue +140 -0
  241. package/utils/JsViewVueWidget/JsvSpray/index.js +15 -0
  242. package/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue +448 -0
  243. package/utils/JsViewVueWidget/JsvSpriteAnim/SpriteController.js +57 -0
  244. package/utils/JsViewVueWidget/JsvSpriteAnim/index.js +6 -0
  245. package/utils/JsViewVueWidget/JsvSwiper/Indicator.vue +35 -0
  246. package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue +495 -0
  247. package/utils/JsViewVueWidget/JsvSwiper/index.js +10 -0
  248. package/utils/JsViewVueWidget/JsvSwiper3D/Indicator.vue +35 -0
  249. package/utils/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue +404 -0
  250. package/utils/JsViewVueWidget/JsvSwiper3D/index.js +10 -0
  251. package/utils/JsViewVueWidget/JsvTextBox.vue +111 -0
  252. package/utils/JsViewVueWidget/JsvVideo.vue +36 -0
@@ -0,0 +1,179 @@
1
+ <!--
2
+ * 【界面概述】
3
+ * 展示文字垂直对齐方式显示控件的用法
4
+ *
5
+ * 【控件介绍】
6
+ *
7
+ * JsvTextBox:Vue高阶组件,文字的垂直对齐方式显示控件
8
+ * props说明:
9
+ * verticalAlign {string} 垂直对齐方式 (必需) top、middle、bottom
10
+ * stylesList {array} 布局样式(必需),数组中可包含样式对象或者JsvStyleClass,或者JsvTextStyleClass对象,
11
+ * 样式对象内容为{left:0, top:0, width:xxx, height:xxx},
12
+ * 布局样式为数组中所有样式的合并。
13
+ * styleToken {string} 类似于vue html元素的key,当style变化时,由使用者改变此Token通知hoc进行style重新识别。
14
+ * Token不变的场景,props变化不会引起render,以提高渲染性能
15
+ *
16
+ * 【技巧说明】
17
+ * Q: 如何实现文字居中对齐方式显示?
18
+ * A: verticalAlign属性设置为middle
19
+ *
20
+ * Q: 如何触发控件重绘?
21
+ * A: 1. 变更styleToken属性,将触发控件重新解析styles并重绘
22
+ * 2. 变更文字内容,将触发控件重绘,但不会重新解析styles
23
+ -->
24
+
25
+ <script lang="ts">
26
+ import { Options, Vue } from "vue-class-component";
27
+ import RenderLeft from "./RenderLeft.vue";
28
+ import RenderRight from "./RenderRight.vue";
29
+ import RenderCenter from "./RenderCenter.vue";
30
+ import RenderOneLine from "./RenderOneLine.vue";
31
+ import {
32
+ JsvTextStyleClass,
33
+ JsvStyleClass,
34
+ } from "jsview/utils/JsViewVueTools/JsvStyleClass.js";
35
+
36
+ @Options({
37
+ components: {
38
+ RenderLeft,
39
+ RenderRight,
40
+ RenderCenter,
41
+ RenderOneLine,
42
+ },
43
+ })
44
+ export default class App extends Vue {
45
+ constructor(props: any) {
46
+ super(props);
47
+ }
48
+
49
+ private offsetX: any = 0;
50
+ private offsetY: any = 0;
51
+ private onLineText = "abcdefghigk";
52
+ private text: any = `静夜思 --唐李白
53
+ 床前明月光,疑是地上霜;
54
+ 举头望明月,低头思故乡。`;
55
+ private text_latex: String = `静夜思 --唐李白
56
+ 床前\\textcolor{#FF0000}{明月光},疑是地上霜;
57
+ 举头\\textcolor{#0000FF}{望明月},低头思故乡。`;
58
+ private sLayoutSet: any = new JsvStyleClass({
59
+ width: 400,
60
+ height: 300,
61
+ backgroundColor: "rgba(255,255,0,0.5)",
62
+ });
63
+ private sFontSetLeft40Top: any = new JsvTextStyleClass({
64
+ fontSize: "30px", // 测试 30 和 '30px' 两种写法的兼容性
65
+ textAlign: "left",
66
+ lineHeight: "40px",
67
+ });
68
+ private sFontSetLeft40Center: any = new JsvTextStyleClass({
69
+ fontSize: "30px", // 测试 30 和 '30px' 两种写法的兼容性
70
+ textAlign: "left",
71
+ lineHeight: "40px",
72
+ });
73
+ private sFontSetLeft40Bottom: any = new JsvTextStyleClass({
74
+ fontSize: "30px",
75
+ textAlign: "left",
76
+ lineHeight: "40px",
77
+ });
78
+ private sFontSetLeft80: any = new JsvTextStyleClass({
79
+ fontSize: "30px",
80
+ textAlign: "left",
81
+ lineHeight: "80px",
82
+ });
83
+ private sFontSetCenter40: any = new JsvTextStyleClass({
84
+ fontSize: "30px",
85
+ textAlign: "center",
86
+ lineHeight: "40px",
87
+ });
88
+ private sFontSetCenter80: any = new JsvTextStyleClass({
89
+ fontSize: "30px",
90
+ textAlign: "center",
91
+ lineHeight: "80px",
92
+ });
93
+ private sFontSetRight40: any = new JsvTextStyleClass({
94
+ fontSize: "30px",
95
+ textAlign: "right",
96
+ lineHeight: "80px",
97
+ });
98
+ private sFontSetRight80: any = new JsvTextStyleClass({
99
+ fontSize: "30px",
100
+ textAlign: "right",
101
+ lineHeight: "80px",
102
+ });
103
+ private sStyleToken: String = "v1.0";
104
+ private rootRef: any = null;
105
+ private moveCount: any = 0;
106
+
107
+ onKeyDown(ev: any) {
108
+ if (ev.keyCode == 8 || ev.keyCode == 27 || ev.keyCode == 10000) {
109
+ this.$router?.go(-1); // 有router时,是从DemoHomepage进入,回退
110
+ return true;
111
+ }
112
+ switch (ev.keyCode) {
113
+ case 37:
114
+ this.offsetX += 30;
115
+ this.moveCount++;
116
+ break;
117
+ case 39:
118
+ this.offsetX -= 30;
119
+ this.moveCount++;
120
+ break;
121
+ case 38:
122
+ this.offsetY += 30;
123
+ this.moveCount++;
124
+ break;
125
+ case 40:
126
+ this.offsetY -= 30;
127
+ this.moveCount++;
128
+ break;
129
+ }
130
+ return true;
131
+ }
132
+ onFocus() {
133
+ console.log("TextBox getFocus");
134
+ }
135
+ onBlur() {
136
+ console.log("TextBox loseFocus");
137
+ }
138
+ }
139
+ </script>
140
+
141
+ <template>
142
+ <jsv-focus-block
143
+ autoFocus
144
+ :onAction="{
145
+ onKeyDown: onKeyDown,
146
+ onFocus: onFocus,
147
+ onBlur: onBlur,
148
+ }"
149
+ >
150
+ <div :style="{ top: offsetY, left: offsetX }">
151
+ <RenderLeft
152
+ :text="text"
153
+ :moveCount="moveCount"
154
+ :sStyleToken="sStyleToken"
155
+ :sLayoutSet="sLayoutSet"
156
+ :sFontSetLeft40Top="sFontSetLeft40Top"
157
+ :sFontSetLeft40Center="sFontSetLeft40Center"
158
+ :sFontSetLeft40Bottom="sFontSetLeft40Bottom"
159
+ :sFontSetLeft80="sFontSetLeft80"
160
+ />
161
+ <RenderRight
162
+ :text="text"
163
+ :sStyleToken="sStyleToken"
164
+ :sLayoutSet="sLayoutSet"
165
+ :sFontSetRight40="sFontSetRight40"
166
+ :sFontSetRight80="sFontSetRight80"
167
+ />
168
+ <RenderCenter
169
+ :text="text"
170
+ :text_latex="text_latex"
171
+ :sStyleToken="sStyleToken"
172
+ :sLayoutSet="sLayoutSet"
173
+ :sFontSetCenter40="sFontSetCenter40"
174
+ :sFontSetCenter80="sFontSetCenter80"
175
+ />
176
+ <RenderOneLine :text="onLineText" :sStyleToken="sStyleToken" />
177
+ </div>
178
+ </jsv-focus-block>
179
+ </template>
@@ -0,0 +1,109 @@
1
+ <script>
2
+ import JsvTextBox from "jsview/utils/JsViewVueWidget/JsvTextBox.vue";
3
+ export default {
4
+ props: {
5
+ text: String,
6
+ text_latex: String,
7
+ sStyleToken: String,
8
+ sLayoutSet: Object,
9
+ sFontSetCenter40: Object,
10
+ sFontSetCenter80: Object,
11
+ },
12
+ components: { JsvTextBox },
13
+ };
14
+ </script>
15
+
16
+ <template>
17
+ <div :style="{ top: 400 }">
18
+ <div
19
+ :style="{
20
+ left: 0,
21
+ top: -50,
22
+ width: 400,
23
+ height: 50,
24
+ fontSize: '20px',
25
+ textAlign: 'left',
26
+ lineHeight: '50px',
27
+ backgroundColor: '#00ff00',
28
+ }"
29
+ >
30
+ 整体垂直向上对齐、文字水平居中显示
31
+ </div>
32
+ <JsvTextBox
33
+ :verticalAlign="'top'"
34
+ :styleToken="sStyleToken"
35
+ :stylesList="[sLayoutSet, sFontSetCenter40, { left: 0, top: 0 }]"
36
+ >
37
+ {{ `[TC]${text}` }}
38
+ </JsvTextBox>
39
+ <div
40
+ :style="{
41
+ left: 410,
42
+ top: -50,
43
+ width: 400,
44
+ height: 50,
45
+ fontSize: '20px',
46
+ textAlign: 'left',
47
+ lineHeight: '50px',
48
+ backgroundColor: '#00ff00',
49
+ }"
50
+ >
51
+ 整体垂直居中对齐、文字水平居中显示
52
+ </div>
53
+ <JsvTextBox
54
+ :verticalAlign="'middle'"
55
+ :styleToken="sStyleToken"
56
+ :stylesList="[sLayoutSet, sFontSetCenter40, { left: 410, top: 0 }]"
57
+ :enableLatex="true"
58
+ >
59
+ {{ `[MC]${text_latex}` }}
60
+ </JsvTextBox>
61
+ <div
62
+ :style="{
63
+ left: 820,
64
+ top: -50,
65
+ width: 400,
66
+ height: 50,
67
+ fontSize: '20px',
68
+ textAlign: 'left',
69
+ lineHeight: '50px',
70
+ backgroundColor: '#00ff00',
71
+ }"
72
+ >
73
+ 整体垂直向下对齐、文字水平居中显示
74
+ </div>
75
+ <JsvTextBox
76
+ :verticalAlign="'bottom'"
77
+ :styleToken="sStyleToken"
78
+ :stylesList="[sLayoutSet, sFontSetCenter40, { left: 820, top: 0 }]"
79
+ >
80
+ {{ `[BC]${text}` }}
81
+ </JsvTextBox>
82
+
83
+ <div
84
+ :style="{
85
+ left: 1240,
86
+ top: -50,
87
+ width: 500,
88
+ height: 50,
89
+ fontSize: '20px',
90
+ textAlign: 'left',
91
+ lineHeight: '50px',
92
+ backgroundColor: '#00ff00',
93
+ }"
94
+ >
95
+ 整体垂直居中对齐、文字水平居中显示、行高80px
96
+ </div>
97
+ <JsvTextBox
98
+ :verticalAlign="'middle'"
99
+ :styleToken="sStyleToken"
100
+ :stylesList="[
101
+ sLayoutSet,
102
+ sFontSetCenter80,
103
+ { left: 1240, top: 0, width: 500 },
104
+ ]"
105
+ >
106
+ {{ `[MC]${text}` }}
107
+ </JsvTextBox>
108
+ </div>
109
+ </template>
@@ -0,0 +1,109 @@
1
+ <script>
2
+ import JsvTextBox from "jsview/utils/JsViewVueWidget/JsvTextBox.vue";
3
+ export default {
4
+ props: {
5
+ text: String,
6
+ moveCount: Number,
7
+ sStyleToken: String,
8
+ sLayoutSet: Object,
9
+ sFontSetLeft40Top: Object,
10
+ sFontSetLeft40Center: Object,
11
+ sFontSetLeft40Bottom: Object,
12
+ sFontSetLeft80: Object,
13
+ },
14
+ components: { JsvTextBox },
15
+ };
16
+ </script>
17
+
18
+ <template>
19
+ <div :style="{ top: 50 }">
20
+ <div
21
+ :style="{
22
+ left: 0,
23
+ top: -50,
24
+ width: 400,
25
+ height: 50,
26
+ fontSize: '20px',
27
+ textAlign: 'left',
28
+ lineHeight: '50px',
29
+ backgroundColor: '#00ff00',
30
+ }"
31
+ >
32
+ 整体向上对齐、文字居左显示
33
+ </div>
34
+ <JsvTextBox
35
+ :verticalAlign="'top'"
36
+ :styleToken="sStyleToken"
37
+ :stylesList="[sLayoutSet, sFontSetLeft40Top, { left: 0, top: 0 }]"
38
+ >
39
+ {{ `测试文字变化能引起刷新: [${moveCount}]\n[TL]${text}` }}
40
+ </JsvTextBox>
41
+ <div
42
+ :style="{
43
+ left: 410,
44
+ top: -50,
45
+ width: 400,
46
+ height: 50,
47
+ fontSize: '20px',
48
+ textAlign: 'left',
49
+ lineHeight: '50px',
50
+ backgroundColor: '#00ff00',
51
+ }"
52
+ >
53
+ 整体垂直居中对齐、文字水平居左显示
54
+ </div>
55
+ <JsvTextBox
56
+ :verticalAlign="'middle'"
57
+ :styleToken="sStyleToken"
58
+ :stylesList="[sLayoutSet, sFontSetLeft40Center, { left: 410, top: 0 }]"
59
+ >
60
+ {{ `[ML]${text}` }}
61
+ </JsvTextBox>
62
+ <div
63
+ :style="{
64
+ left: 820,
65
+ top: -50,
66
+ width: 400,
67
+ height: 50,
68
+ fontSize: '20px',
69
+ textAlign: 'left',
70
+ lineHeight: '50px',
71
+ backgroundColor: '#00ff00',
72
+ }"
73
+ >
74
+ 整体垂直向下对齐、文字水平居左显示
75
+ </div>
76
+ <JsvTextBox
77
+ :verticalAlign="'bottom'"
78
+ :styleToken="sStyleToken"
79
+ :stylesList="[sLayoutSet, sFontSetLeft40Bottom, { left: 820, top: 0 }]"
80
+ >
81
+ {{ `[BL]${text}` }}
82
+ </JsvTextBox>
83
+ <div
84
+ :style="{
85
+ left: 1240,
86
+ top: -50,
87
+ width: 500,
88
+ height: 50,
89
+ fontSize: '20px',
90
+ textAlign: 'left',
91
+ lineHeight: '50px',
92
+ backgroundColor: '#00ff00',
93
+ }"
94
+ >
95
+ 整体垂直向上对齐、文字水平居左显示、行高80px
96
+ </div>
97
+ <JsvTextBox
98
+ :verticalAlign="'top'"
99
+ :styleToken="sStyleToken"
100
+ :stylesList="[
101
+ sLayoutSet,
102
+ sFontSetLeft80,
103
+ { left: 1240, top: 0, width: 500 },
104
+ ]"
105
+ >
106
+ {{ `[TL]${text}` }}
107
+ </JsvTextBox>
108
+ </div>
109
+ </template>
@@ -0,0 +1,120 @@
1
+ <script>
2
+ import JsvTextBox from "jsview/utils/JsViewVueWidget/JsvTextBox.vue";
3
+ export default {
4
+ props: {
5
+ text: String,
6
+ sStyleToken: String,
7
+ },
8
+ components: { JsvTextBox },
9
+ };
10
+ </script>
11
+
12
+ <template>
13
+ <div :style="{ top: 750 + 300 + 50 }">
14
+ <div
15
+ :style="{
16
+ left: 0,
17
+ top: -50,
18
+ width: 400,
19
+ height: 50,
20
+ fontSize: '20px',
21
+ textAlign: 'left',
22
+ lineHeight: '50px',
23
+ backgroundColor: '#00ff00',
24
+ }"
25
+ >
26
+ 整体垂直向上对齐、文字水平居左显示
27
+ </div>
28
+ <JsvTextBox
29
+ :verticalAlign="'top'"
30
+ :styleToken="sStyleToken"
31
+ :stylesList="[
32
+ {
33
+ left: 0,
34
+ top: 0,
35
+ width: 400,
36
+ height: 80,
37
+ backgroundColor: 'rgba(255,255,0,0.5)',
38
+ },
39
+ {
40
+ backgroundColor: 'rgba(255,255,0,0.5)',
41
+ fontSize: '30px',
42
+ textAlign: 'left',
43
+ lineHeight: '80px',
44
+ },
45
+ ]"
46
+ >
47
+ {{ text }}
48
+ </JsvTextBox>
49
+ <div
50
+ :style="{
51
+ left: 410,
52
+ top: -50,
53
+ width: 400,
54
+ height: 50,
55
+ fontSize: '20px',
56
+ textAlign: 'left',
57
+ lineHeight: '50px',
58
+ backgroundColor: '#00ff00',
59
+ }"
60
+ >
61
+ 整体垂直居中对齐、文字水平居中显示
62
+ </div>
63
+ <JsvTextBox
64
+ :verticalAlign="'middle'"
65
+ :styleToken="sStyleToken"
66
+ :stylesList="[
67
+ {
68
+ left: 410,
69
+ top: 0,
70
+ width: 400,
71
+ height: 80,
72
+ backgroundColor: 'rgba(255,255,0,0.5)',
73
+ },
74
+ {
75
+ backgroundColor: 'rgba(255,255,0,0.5)',
76
+ fontSize: '30px',
77
+ textAlign: 'center',
78
+ lineHeight: '80px',
79
+ },
80
+ ]"
81
+ >
82
+ {{ text }}
83
+ </JsvTextBox>
84
+ <div
85
+ :style="{
86
+ left: 820,
87
+ top: -50,
88
+ width: 400,
89
+ height: 50,
90
+ fontSize: '20px',
91
+ textAlign: 'left',
92
+ lineHeight: '50px',
93
+ backgroundColor: '#00ff00',
94
+ }"
95
+ >
96
+ 整体垂直向下对齐、文字水平居右显示
97
+ </div>
98
+ <JsvTextBox
99
+ :verticalAlign="'bottom'"
100
+ :styleToken="sStyleToken"
101
+ :stylesList="[
102
+ {
103
+ left: 820,
104
+ top: 0,
105
+ width: 400,
106
+ height: 80,
107
+ backgroundColor: 'rgba(255,255,0,0.5)',
108
+ },
109
+ {
110
+ backgroundColor: 'rgba(255,255,0,0.5)',
111
+ fontSize: '30px',
112
+ textAlign: 'right',
113
+ lineHeight: '80px',
114
+ },
115
+ ]"
116
+ >
117
+ {{ text }}
118
+ </JsvTextBox>
119
+ </div>
120
+ </template>
@@ -0,0 +1,107 @@
1
+ <script>
2
+ import JsvTextBox from "jsview/utils/JsViewVueWidget/JsvTextBox.vue";
3
+ export default {
4
+ props: {
5
+ text: String,
6
+ sStyleToken: String,
7
+ sLayoutSet: Object,
8
+ sFontSetRight40: Object,
9
+ sFontSetRight80: Object,
10
+ },
11
+ components: { JsvTextBox },
12
+ };
13
+ </script>
14
+
15
+ <template>
16
+ <div :style="{ top: 750 }">
17
+ <div
18
+ :style="{
19
+ left: 0,
20
+ top: -50,
21
+ width: 400,
22
+ height: 50,
23
+ fontSize: '20px',
24
+ textAlign: 'left',
25
+ lineHeight: '50px',
26
+ backgroundColor: '#00ff00',
27
+ }"
28
+ >
29
+ 整体垂直向上对齐、文字水平居右显示
30
+ </div>
31
+ <JsvTextBox
32
+ :verticalAlign="'top'"
33
+ :styleToken="sStyleToken"
34
+ :stylesList="[sLayoutSet, sFontSetRight40, { left: 0, top: 0 }]"
35
+ >
36
+ {{ `[TR]${text}` }}
37
+ </JsvTextBox>
38
+ <div
39
+ :style="{
40
+ left: 410,
41
+ top: -50,
42
+ width: 400,
43
+ height: 50,
44
+ fontSize: '20px',
45
+ textAlign: 'left',
46
+ lineHeight: '50px',
47
+ backgroundColor: '#00ff00',
48
+ }"
49
+ >
50
+ 整体垂直居中对齐、文字水平居右显示
51
+ </div>
52
+ <JsvTextBox
53
+ :verticalAlign="'middle'"
54
+ :styleToken="sStyleToken"
55
+ :stylesList="[sLayoutSet, sFontSetRight40, { left: 410, top: 0 }]"
56
+ >
57
+ {{ `[MR]${text}` }}
58
+ </JsvTextBox>
59
+ <div
60
+ :style="{
61
+ left: 820,
62
+ top: -50,
63
+ width: 400,
64
+ height: 50,
65
+ fontSize: '20px',
66
+ textAlign: 'left',
67
+ lineHeight: '50px',
68
+ backgroundColor: '#00ff00',
69
+ }"
70
+ >
71
+ 整体垂直向下对齐、文字水平居右显示
72
+ </div>
73
+ <JsvTextBox
74
+ :verticalAlign="'bottom'"
75
+ :styleToken="sStyleToken"
76
+ :stylesList="[sLayoutSet, sFontSetRight40, { left: 820, top: 0 }]"
77
+ >
78
+ {{ `[BR]${text}` }}
79
+ </JsvTextBox>
80
+
81
+ <div
82
+ :style="{
83
+ left: 1240,
84
+ top: -50,
85
+ width: 500,
86
+ height: 50,
87
+ fontSize: '20px',
88
+ textAlign: 'left',
89
+ lineHeight: '50px',
90
+ backgroundColor: '#00ff00',
91
+ }"
92
+ >
93
+ 整体垂直向下对齐、文字水平居右显示、行高80px
94
+ </div>
95
+ <JsvTextBox
96
+ :verticalAlign="'bottom'"
97
+ :styleToken="sStyleToken"
98
+ :stylesList="[
99
+ sLayoutSet,
100
+ sFontSetRight80,
101
+ { left: 1240, top: 0, width: 500 },
102
+ ]"
103
+ >
104
+ {{ `[BR]${text}` }}
105
+ </JsvTextBox>
106
+ </div>
107
+ </template>