From fa791f00418ab8bf18a00f271e5ef10d1a70e566 Mon Sep 17 00:00:00 2001 From: HYL123698745 <1252347619@qq.com> Date: Mon, 5 Jul 2021 16:11:05 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E4=BF=AE=E6=94=B9=E5=86=85=E5=AE=B9?= =?UTF-8?q?=E3=80=91=EF=BC=9A=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...isable_Left_And_Right_Refresh_Ability.java | 1 - .../com/wordplat/quickstart/json/JSON.java | 17 ++++ .../With_Pull_To_Refresh_Example_Slice.java | 5 + .../pulllistview/OnRefreshComponent.java | 10 ++ .../quickstart/xutils/common/Callback.java | 8 ++ .../xutils/common/task/AbsTask.java | 10 ++ .../xutils/common/task/PriorityExecutor.java | 15 +++ .../xutils/common/task/TaskProxy.java | 9 ++ .../xutils/common/util/DoubleKeyValueMap.java | 5 + .../xutils/common/util/KeyValue.java | 10 ++ .../quickstart/xutils/db/DbModelSelector.java | 5 + .../xutils/db/table/ColumnEntity.java | 35 +++++++ .../quickstart/xutils/ex/HttpException.java | 5 + .../xutils/http/HttpManagerImpl.java | 5 + .../quickstart/xutils/http/HttpTask.java | 3 + .../xutils/http/RequestParamsHelper.java | 16 ++++ .../xutils/http/RequestTrackerWrapper.java | 5 + .../xutils/http/body/MultipartBody.java | 10 ++ .../xutils/http/cookie/CookieEntity.java | 10 ++ .../xutils/http/request/UriRequest.java | 5 + .../quickstart/xutils/image/ImageLoader.java | 25 ++++- .../xutils/image/ReusableBitmapDrawable.java | 21 +++++ .../xutils/image/ReusableDrawable.java | 10 ++ .../xutils/view/EventListenerManager.java | 11 +++ .../quickstart/xutils/view/ViewFinder.java | 29 ++++++ .../com/wordplat/quickstart/xutils/x.java | 5 + .../quickstart/AbstractRenderTest.java | 62 ++++++++++++- .../wordplat/quickstart/ExampleOhosTest.java | 9 ++ .../InteractiveKLineLayoutTest.java | 91 ++++++++++++++++++- .../com/wordplat/quickstart/ExampleTest.java | 10 +- .../ikvstockchart/InteractiveKLineLayout.java | 29 ++++++ .../ikvstockchart/InteractiveKLineView.java | 25 +++++ .../compat/GestureMoveActionCompat.java | 13 +++ .../detector/GestureDetector.java | 20 ++++ .../detector/ScaleGestureDetector.java | 20 +++- .../detector/VelocityTracker.java | 6 ++ .../detector/ViewConfiguration.java | 46 ++++++++++ .../ikvstockchart/entry/EntrySet.java | 40 ++++++++ .../ikvstockchart/entry/StockIndex.java | 55 +++++++++++ .../ikvstockchart/render/AbstractRender.java | 9 ++ .../quickstart/AbstractRenderTest.java | 57 +++++++++++- .../InteractiveKLineLayoutTest.java | 91 ++++++++++++++++++- 42 files changed, 860 insertions(+), 13 deletions(-) diff --git a/entry/src/main/java/com/wordplat/quickstart/ability/Disable_Left_And_Right_Refresh_Ability.java b/entry/src/main/java/com/wordplat/quickstart/ability/Disable_Left_And_Right_Refresh_Ability.java index 374da95..1d0fcab 100644 --- a/entry/src/main/java/com/wordplat/quickstart/ability/Disable_Left_And_Right_Refresh_Ability.java +++ b/entry/src/main/java/com/wordplat/quickstart/ability/Disable_Left_And_Right_Refresh_Ability.java @@ -18,7 +18,6 @@ package com.wordplat.quickstart.ability; import com.wordplat.quickstart.slice.Disable_Left_And_Right_Refresh_Slice; import ohos.aafwk.content.Intent; -import ohos.agp.utils.Point; /** * Disable_Left_And_Right_Refresh_Ability diff --git a/entry/src/main/java/com/wordplat/quickstart/json/JSON.java b/entry/src/main/java/com/wordplat/quickstart/json/JSON.java index 64e39f9..7fccc96 100644 --- a/entry/src/main/java/com/wordplat/quickstart/json/JSON.java +++ b/entry/src/main/java/com/wordplat/quickstart/json/JSON.java @@ -97,6 +97,15 @@ class JSON { return null; } + /** + * typeMismatch + * + * @param indexOrName + * @param actual + * @param requiredType + * @return JSONException + * @throws JSONException + */ public static JSONException typeMismatch(Object indexOrName, Object actual, String requiredType) throws JSONException { if (actual == null) { @@ -108,6 +117,14 @@ class JSON { } } + /** + * typeMismatch + * + * @param actual + * @param requiredType + * @return JSONException + * @throws JSONException + */ public static JSONException typeMismatch(Object actual, String requiredType) throws JSONException { if (actual == null) { diff --git a/entry/src/main/java/com/wordplat/quickstart/slice/With_Pull_To_Refresh_Example_Slice.java b/entry/src/main/java/com/wordplat/quickstart/slice/With_Pull_To_Refresh_Example_Slice.java index 73ed01f..3767d89 100644 --- a/entry/src/main/java/com/wordplat/quickstart/slice/With_Pull_To_Refresh_Example_Slice.java +++ b/entry/src/main/java/com/wordplat/quickstart/slice/With_Pull_To_Refresh_Example_Slice.java @@ -86,6 +86,11 @@ public class With_Pull_To_Refresh_Example_Slice extends BaseAbilitySlice { */ private OnRefreshComponent onRefreshComponent; + /** + * setOnRefresh + * + * @param onRefreshComponent + */ public void setOnRefresh(OnRefreshComponent onRefreshComponent) { this.onRefreshComponent = onRefreshComponent; } diff --git a/entry/src/main/java/com/wordplat/quickstart/wight/PullLayout/pulllistview/OnRefreshComponent.java b/entry/src/main/java/com/wordplat/quickstart/wight/PullLayout/pulllistview/OnRefreshComponent.java index 284e5a1..ea7e87c 100644 --- a/entry/src/main/java/com/wordplat/quickstart/wight/PullLayout/pulllistview/OnRefreshComponent.java +++ b/entry/src/main/java/com/wordplat/quickstart/wight/PullLayout/pulllistview/OnRefreshComponent.java @@ -1,6 +1,16 @@ package com.wordplat.quickstart.wight.PullLayout.pulllistview; +/** + * OnRefreshComponent + * + * @since 2021-06-21 + */ public interface OnRefreshComponent { + /** + * refresh + * + * @param isRefresh + */ void refresh(boolean isRefresh); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/common/Callback.java b/entry/src/main/java/com/wordplat/quickstart/xutils/common/Callback.java index 1cd9aed..7fa798a 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/common/Callback.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/common/Callback.java @@ -165,7 +165,15 @@ public interface Callback { boolean isCancelled(); } + /** + * CancelledException + */ static class CancelledException extends RuntimeException { + /** + * CancelledException + * + * @param detailMessage + */ public CancelledException(String detailMessage) { super(detailMessage); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/AbsTask.java b/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/AbsTask.java index a35dce1..aa6372e 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/AbsTask.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/AbsTask.java @@ -107,6 +107,11 @@ public abstract class AbsTask implements Callback.Cancelable { return null; } + /** + * getExecutor + * + * @return Executor + */ public Executor getExecutor() { return null; } @@ -185,6 +190,11 @@ public abstract class AbsTask implements Callback.Cancelable { || (cancelHandler != null && cancelHandler.isCancelled()); } + /** + * isFinished + * + * @return isFinished + */ public final boolean isFinished() { return this.state.value() > State.STARTED.value(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/PriorityExecutor.java b/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/PriorityExecutor.java index 2e720ce..258fb1a 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/PriorityExecutor.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/PriorityExecutor.java @@ -83,6 +83,11 @@ public class PriorityExecutor implements Executor { FACTORY); } + /** + * getPoolSize + * + * @return getPoolSize + */ public int getPoolSize() { return mThreadPoolExecutor.getCorePoolSize(); } @@ -98,10 +103,20 @@ public class PriorityExecutor implements Executor { } } + /** + * getThreadPoolExecutor + * + * @return ThreadPoolExecutor + */ public ThreadPoolExecutor getThreadPoolExecutor() { return mThreadPoolExecutor; } + /** + * isBusy + * + * @return isBusy + */ public boolean isBusy() { return mThreadPoolExecutor.getActiveCount() >= mThreadPoolExecutor.getCorePoolSize(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/TaskProxy.java b/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/TaskProxy.java index 87962a2..458dacc 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/TaskProxy.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/common/task/TaskProxy.java @@ -222,10 +222,19 @@ class TaskProxy extends AbsTask { TaskProxy taskProxy = null; Object[] args = null; + /** + * InternalHandler + */ public InternalHandler() { super(EventRunner.create()); } + /** + * InternalHandler + * + * @param runner + * @throws IllegalArgumentException + */ public InternalHandler(EventRunner runner) throws IllegalArgumentException { super(runner); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/DoubleKeyValueMap.java b/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/DoubleKeyValueMap.java index edc6547..819ba10 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/DoubleKeyValueMap.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/DoubleKeyValueMap.java @@ -68,6 +68,11 @@ public class DoubleKeyValueMap { } } + /** + * getFirstKeys + * + * @return Set + */ public Set getFirstKeys() { return k1ConcurrentHashMapConcurrentHashMap.keySet(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/KeyValue.java b/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/KeyValue.java index f044ac8..e3405c4 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/KeyValue.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/common/util/KeyValue.java @@ -41,10 +41,20 @@ public class KeyValue { this.value = value; } + /** + * getValueStrOrEmpty + * + * @return String + */ public String getValueStrOrEmpty() { return value == null ? "" : value.toString(); } + /** + * getValueStrOrNull + * + * @return String + */ public String getValueStrOrNull() { return value == null ? null : value.toString(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/db/DbModelSelector.java b/entry/src/main/java/com/wordplat/quickstart/xutils/db/DbModelSelector.java index ca37824..3ed1ba6 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/db/DbModelSelector.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/db/DbModelSelector.java @@ -232,6 +232,11 @@ public final class DbModelSelector { return this; } + /** + * getTable + * + * @return TableEntity + */ public TableEntity getTable() { return selector.getTable(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/db/table/ColumnEntity.java b/entry/src/main/java/com/wordplat/quickstart/xutils/db/table/ColumnEntity.java index 3e5853c..4a1f89e 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/db/table/ColumnEntity.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/db/table/ColumnEntity.java @@ -158,30 +158,65 @@ public final class ColumnEntity { return fieldValue; } + /** + * getName + * + * @return getName + */ public String getName() { return name; } + /** + * getProperty + * + * @return getProperty + */ public String getProperty() { return property; } + /** + * isId + * + * @return isId + */ public boolean isId() { return isId; } + /** + * isAutoId + * + * @return isAutoId + */ public boolean isAutoId() { return isAutoId; } + /** + * getColumnField + * + * @return Field + */ public Field getColumnField() { return columnField; } + /** + * getColumnConverter + * + * @return ColumnConverter + */ public ColumnConverter getColumnConverter() { return columnConverter; } + /** + * getColumnDbType + * + * @return ColumnDbType + */ public ColumnDbType getColumnDbType() { return columnConverter.getColumnDbType(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/ex/HttpException.java b/entry/src/main/java/com/wordplat/quickstart/xutils/ex/HttpException.java index 3d71c6c..83c22a5 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/ex/HttpException.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/ex/HttpException.java @@ -43,6 +43,11 @@ public class HttpException extends BaseException { this.code = code; } + /** + * setMessage + * + * @param message + */ public void setMessage(String message) { this.customMessage = message; } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpManagerImpl.java b/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpManagerImpl.java index 0e9b282..17833f1 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpManagerImpl.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpManagerImpl.java @@ -86,6 +86,11 @@ public final class HttpManagerImpl implements HttpManager { private final Class resultType; + /** + * DefaultSyncCallback + * + * @param resultType + */ public DefaultSyncCallback(Class resultType) { this.resultType = resultType; } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpTask.java b/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpTask.java index e42df7c..26de8bd 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpTask.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/http/HttpTask.java @@ -570,6 +570,9 @@ public class HttpTask extends AbsTask implements Progres private RequestWorker() { } + /** + * request + */ public void request() { try { boolean interrupted = false; diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestParamsHelper.java b/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestParamsHelper.java index 2141e3a..796e3ee 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestParamsHelper.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestParamsHelper.java @@ -21,10 +21,26 @@ final class RequestParamsHelper { private RequestParamsHelper() { } + /** + * ParseKVListener + */ interface ParseKVListener { + /** + * onParseKV + * + * @param name + * @param value + */ void onParseKV(String name, Object value); } + /** + * parseKV + * + * @param entity + * @param type + * @param listener + */ static void parseKV(Object entity, Class type, ParseKVListener listener) { if (entity == null || type == null || type == RequestParams.class || type == Object.class) { return; diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestTrackerWrapper.java b/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestTrackerWrapper.java index 0969604..ab832e8 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestTrackerWrapper.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/http/RequestTrackerWrapper.java @@ -12,6 +12,11 @@ final class RequestTrackerWrapper implements RequestTracker { private final RequestTracker base; + /** + * RequestTrackerWrapper + * + * @param base + */ public RequestTrackerWrapper(RequestTracker base) { this.base = base; } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/http/body/MultipartBody.java b/entry/src/main/java/com/wordplat/quickstart/xutils/http/body/MultipartBody.java index fa44ecf..7ec7638 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/http/body/MultipartBody.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/http/body/MultipartBody.java @@ -231,6 +231,11 @@ public class MultipartBody implements ProgressBody { public CounterOutputStream() { } + /** + * addFile + * + * @param file + */ public void addFile(File file) { if (total.get() == -1L) { return; @@ -238,6 +243,11 @@ public class MultipartBody implements ProgressBody { total.addAndGet(file.length()); } + /** + * addStream + * + * @param inputStream + */ public void addStream(InputStream inputStream) { if (total.get() == -1L) return; long length = InputStreamBody.getInputStreamLength(inputStream); diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/http/cookie/CookieEntity.java b/entry/src/main/java/com/wordplat/quickstart/xutils/http/cookie/CookieEntity.java index 6cca900..4ba1361 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/http/cookie/CookieEntity.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/http/cookie/CookieEntity.java @@ -88,6 +88,11 @@ final class CookieEntity { this.version = cookie.getVersion(); } + /** + * toHttpCookie + * + * @return HttpCookie + */ public HttpCookie toHttpCookie() { HttpCookie cookie = new HttpCookie(name, value); cookie.setComment(comment); @@ -122,6 +127,11 @@ final class CookieEntity { this.uri = uri; } + /** + * isExpired + * + * @return isExpired + */ public boolean isExpired() { return expiry != -1L && expiry < System.currentTimeMillis(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/http/request/UriRequest.java b/entry/src/main/java/com/wordplat/quickstart/xutils/http/request/UriRequest.java index 75be74a..dd998c7 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/http/request/UriRequest.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/http/request/UriRequest.java @@ -78,6 +78,11 @@ public abstract class UriRequest implements Closeable { return params; } + /** + * getRequestUri + * + * @return getRequestUri + */ public String getRequestUri() { return queryUrl; } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/image/ImageLoader.java b/entry/src/main/java/com/wordplat/quickstart/xutils/image/ImageLoader.java index 75a9af5..b468dde 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/image/ImageLoader.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/image/ImageLoader.java @@ -570,25 +570,48 @@ final class ImageLoader implements }); } + /** + * FakeImageView + */ private static final class FakeImageView extends Image { private final int hashCode; private PixelMap drawable; - + /** + * FakeImageView + */ public FakeImageView() { + /** + * FakeImageView + */ super(x.app()); hashCode = hashCodeSeed.incrementAndGet(); } + /** + * hashCode + * + * @return int + */ @Override public int hashCode() { return hashCode; } + /** + * setImageElement + * + * @param element + */ @Override public void setImageElement(Element element) { } + /** + * getImageElement + * + * @return Element + */ @Override public Element getImageElement() { return null; diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableBitmapDrawable.java b/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableBitmapDrawable.java index 5191968..1f075e0 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableBitmapDrawable.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableBitmapDrawable.java @@ -2,18 +2,39 @@ package com.wordplat.quickstart.xutils.image; import ohos.media.image.PixelMap; +/** + * ReusableBitmapDrawable + * + * @since 2021-06-21 + */ final class ReusableBitmapDrawable extends PixelMap implements ReusableDrawable { private MemCacheKey key; + /** + * ReusableBitmapDrawable + * + * @param nativeImagePixelMap + * @param nativeAllocBytes + */ protected ReusableBitmapDrawable(long nativeImagePixelMap, long nativeAllocBytes) { super(nativeImagePixelMap, nativeAllocBytes); } + /** + * getMemCacheKey + * + * @return MemCacheKey + */ @Override public MemCacheKey getMemCacheKey() { return key; } + /** + * setMemCacheKey + * + * @param key + */ @Override public void setMemCacheKey(MemCacheKey key) { this.key = key; diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableDrawable.java b/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableDrawable.java index 8ce1a9a..c43ec38 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableDrawable.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/image/ReusableDrawable.java @@ -5,7 +5,17 @@ package com.wordplat.quickstart.xutils.image; * 使已被LruCache移除, 但还在被ImageView使用的Drawable可以再次被回收使用. */ interface ReusableDrawable { + /** + * getMemCacheKey + * + * @return MemCacheKey + */ MemCacheKey getMemCacheKey(); + /** + * setMemCacheKey + * + * @param key + */ void setMemCacheKey(MemCacheKey key); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/view/EventListenerManager.java b/entry/src/main/java/com/wordplat/quickstart/xutils/view/EventListenerManager.java index e094173..38211b7 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/view/EventListenerManager.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/view/EventListenerManager.java @@ -115,10 +115,21 @@ final class EventListenerManager { this.handlerRef = new WeakReference(handler); } + /** + * addMethod + * + * @param name + * @param method + */ public void addMethod(String name, Method method) { methodMap.put(name, method); } + /** + * getHandler + * + * @return Object + */ public Object getHandler() { return handlerRef.get(); } diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/view/ViewFinder.java b/entry/src/main/java/com/wordplat/quickstart/xutils/view/ViewFinder.java index 3853e93..f190441 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/view/ViewFinder.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/view/ViewFinder.java @@ -14,14 +14,30 @@ final class ViewFinder { private Component view; private AbilitySlice activity; + /** + * ViewFinder + * + * @param view + */ public ViewFinder(Component view) { this.view = view; } + /** + * ViewFinder + * + * @param activity + */ public ViewFinder(AbilitySlice activity) { this.activity = activity; } + /** + * findViewById + * + * @param id + * @return Component + */ public Component findViewById(int id) { if (view != null) { return view.findComponentById(id); @@ -32,10 +48,23 @@ final class ViewFinder { return null; } + /** + * findViewByInfo + * + * @param info + * @return Component + */ public Component findViewByInfo(ViewInfo info) { return findViewById(info.value, info.parentId); } + /** + * findViewById + * + * @param id + * @param pid + * @return Component + */ public Component findViewById(int id, int pid) { Component pView = null; if (pid > 0) { diff --git a/entry/src/main/java/com/wordplat/quickstart/xutils/x.java b/entry/src/main/java/com/wordplat/quickstart/xutils/x.java index b18e4b8..dcd54f2 100644 --- a/entry/src/main/java/com/wordplat/quickstart/xutils/x.java +++ b/entry/src/main/java/com/wordplat/quickstart/xutils/x.java @@ -24,6 +24,11 @@ public final class x { private x() { } + /** + * isDebug + * + * @return boolean + */ public static boolean isDebug() { return Ext.debug; } diff --git a/entry/src/ohosTest/java/com/wordplat/quickstart/AbstractRenderTest.java b/entry/src/ohosTest/java/com/wordplat/quickstart/AbstractRenderTest.java index 86f96e6..1d2ebaa 100644 --- a/entry/src/ohosTest/java/com/wordplat/quickstart/AbstractRenderTest.java +++ b/entry/src/ohosTest/java/com/wordplat/quickstart/AbstractRenderTest.java @@ -5,41 +5,101 @@ import org.junit.Test; import static org.mockito.Mockito.mock; - +/** + * AbstractRenderTest + * + * @since 2021-06-21 + */ public class AbstractRenderTest { private AbstractRender render = mock(AbstractRender.class); + + /** + * canDragging + */ @Test public void canDragging() { + /** + * canDragging + */ render.canDragging(12); } + + /** + * canScroll + */ @Test public void canScroll() { + /** + * canScroll + */ render.canScroll(12); } + + /** + * getSizeColor + */ @Test public void getSizeColor() { + /** + * getSizeColor + */ render.getSizeColor(); } + + /** + * invertMapPoints + */ @Test public void invertMapPoints() { float[] floats = {1, 2, 3, 4}; + /** + * invertMapPoints + */ render.invertMapPoints(floats); } + + /** + * onHighlight + */ @Test public void onHighlight() { + /** + * onHighlight + */ render.onHighlight(12, 12); } + + /** + * mapPoints + */ @Test public void mapPoints() { float[] floats = {1, 2, 3, 4}; + /** + * mapPoints + */ render.mapPoints(floats); } + + /** + * zoomIn + */ @Test public void zoomIn() { + /** + * zoomIn + */ render.zoomIn(12, 12); } + + /** + * zoomOut + */ @Test public void zoomOut() { + /** + * zoomOut + */ render.zoomOut(12, 12); } diff --git a/entry/src/ohosTest/java/com/wordplat/quickstart/ExampleOhosTest.java b/entry/src/ohosTest/java/com/wordplat/quickstart/ExampleOhosTest.java index 1be28c0..cd8d28d 100644 --- a/entry/src/ohosTest/java/com/wordplat/quickstart/ExampleOhosTest.java +++ b/entry/src/ohosTest/java/com/wordplat/quickstart/ExampleOhosTest.java @@ -5,8 +5,17 @@ import org.junit.Test; import static org.junit.Assert.assertEquals; +/** + * ExampleOhosTest + * + * @since 2021-06-21 + */ public class ExampleOhosTest { //(全UI应用、不支持Context等等原因)不支持单元测试 + + /** + * testBundleName + */ @Test public void testBundleName() { final String actualBundleName = AbilityDelegatorRegistry.getArguments().getTestBundleName(); diff --git a/entry/src/ohosTest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java b/entry/src/ohosTest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java index 4d584ee..c06b1bf 100644 --- a/entry/src/ohosTest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java +++ b/entry/src/ohosTest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java @@ -5,77 +5,164 @@ import org.junit.Test; import static org.mockito.Mockito.mock; - +/** + * InteractiveKLineLayoutTest + * + * @since 2021-06-21 + */ public class InteractiveKLineLayoutTest { private InteractiveKLineLayout layout = mock(InteractiveKLineLayout.class); + /** + * announceAccessibility + */ @Test public void announceAccessibility() { + /** + * announceAccessibility + */ layout.announceAccessibility("text some"); } - + /** + * arrange + */ @Test public void arrange() { + /** + * arrange + */ layout.arrange(12, 12, 12, 12); } + /** + * bindCornerMark + */ @Test public void bindCornerMark() { + /** + * bindCornerMark + */ layout.bindCornerMark(); } + /** + * callOnClick + */ @Test public void callOnClick() { + /** + * callOnClick + */ layout.callOnClick(); } + /** + * clearFocus + */ @Test public void clearFocus() { + /** + * clearFocus + */ layout.clearFocus(); } + /** + * enableCornerMark + */ @Test public void enableCornerMark() { + /** + * enableCornerMark + */ layout.enableCornerMark(true); } + /** + * simulateClick + */ @Test public void simulateClick() { + /** + * simulateClick + */ layout.simulateClick(); } + /** + * simulateDrag + */ @Test public void simulateDrag() { + /** + * simulateDrag + */ layout.simulateDrag(); } + /** + * createAnimatorProperty + */ @Test public void createAnimatorProperty() { + /** + * createAnimatorProperty + */ layout.createAnimatorProperty(); } + /** + * getKLineView + */ @Test public void getKLineView() { + /** + * getKLineView + */ layout.getKLineView(); } + /** + * isShownBOLL + */ @Test public void isShownBOLL() { + /** + * isShownBOLL + */ layout.isShownBOLL(); } + /** + * isShownBOLL + */ @Test public void isShownKDJ() { + /** + * isShownBOLL + */ layout.isShownKDJ(); } + /** + * isShownMACD + */ @Test public void isShownMACD() { + /** + * isShownMACD + */ layout.isShownMACD(); } + /** + * isShownRSI + */ @Test public void isShownRSI() { + /** + * isShownRSI + */ layout.isShownRSI(); } } diff --git a/entry/src/test/java/com/wordplat/quickstart/ExampleTest.java b/entry/src/test/java/com/wordplat/quickstart/ExampleTest.java index bd4d4e7..8715c4d 100644 --- a/entry/src/test/java/com/wordplat/quickstart/ExampleTest.java +++ b/entry/src/test/java/com/wordplat/quickstart/ExampleTest.java @@ -2,10 +2,16 @@ package com.wordplat.quickstart; import org.junit.Test; +/** + * ExampleTest + * + * @since 2021-06-21 + */ public class ExampleTest { + /** + * onStart + */ @Test public void onStart() { } - - } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineLayout.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineLayout.java index 6aa274a..d69f4d7 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineLayout.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineLayout.java @@ -218,6 +218,15 @@ public class InteractiveKLineLayout extends StackLayout implements Component.Cli addComponent(kLineView); } + /** + * setClick + * + * @param but_Group + * @param MACD_But + * @param RSI_But + * @param KDJ_But + * @param BOLL_But + */ public void setClick(RadioContainer but_Group, RadioButton MACD_But, RadioButton RSI_But, RadioButton KDJ_But, RadioButton BOLL_But) { this.But_Group = but_Group; this.MACD_But = MACD_But; @@ -363,18 +372,38 @@ public class InteractiveKLineLayout extends StackLayout implements Component.Cli currentRect = bollIndex.getRect(); } + /** + * isShownMACD + * + * @return isShownMACD + */ public boolean isShownMACD() { return macdIndex.isEnable(); } + /** + * isShownRSI + * + * @return isShownRSI + */ public boolean isShownRSI() { return rsiIndex.isEnable(); } + /** + * isShownKDJ + * + * @return isShownKDJ + */ public boolean isShownKDJ() { return kdjIndex.isEnable(); } + /** + * isShownBOLL + * + * @return isShownBOLL + */ public boolean isShownBOLL() { return bollIndex.isEnable(); } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineView.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineView.java index f80b46c..6add6d4 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineView.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/InteractiveKLineView.java @@ -341,6 +341,11 @@ public class InteractiveKLineView extends Component implements Component.DrawTas */ } + /** + * isEmpty + * + * @param isEmpty + */ public void isEmpty(boolean isEmpty) { this.isEmpty = isEmpty; } @@ -486,6 +491,11 @@ public class InteractiveKLineView extends Component implements Component.DrawTas } } + /** + * isRefreshing + * + * @return boolean + */ public boolean isRefreshing() { return kLineStatus == KLINE_STATUS_LOADING; } @@ -498,6 +508,11 @@ public class InteractiveKLineView extends Component implements Component.DrawTas this.enableRightRefresh = enableRightRefresh; } + /** + * isHighlighting + * + * @return boolean + */ public boolean isHighlighting() { return render.isHighlight(); } @@ -760,7 +775,17 @@ public class InteractiveKLineView extends Component implements Component.DrawTas this.viewOnTouchInterface = viewOnTouchInterface; } + /** + * ViewOnTouchInterface + */ public interface ViewOnTouchInterface { + /** + * touch + * + * @param getAction + * @param endUpY + * @return boolean + */ boolean touch(int getAction, float endUpY); } } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/compat/GestureMoveActionCompat.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/compat/GestureMoveActionCompat.java index b13b95a..cfc91d8 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/compat/GestureMoveActionCompat.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/compat/GestureMoveActionCompat.java @@ -29,6 +29,9 @@ import ohos.multimodalinput.event.TouchEvent; * @since 2021-05-09 */ public class GestureMoveActionCompat { + /** + * OnGestureMoveListener + */ private OnGestureMoveListener gestureMoveListener; /** @@ -61,10 +64,20 @@ public class GestureMoveActionCompat { private boolean dragging = false; + /** + * GestureMoveActionCompat + * + * @param onGestureMoveListener + */ public GestureMoveActionCompat(OnGestureMoveListener onGestureMoveListener) { gestureMoveListener = onGestureMoveListener; } + /** + * enableClick + * + * @param enableClick + */ public void enableClick(boolean enableClick) { mEnableClick = enableClick; } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/GestureDetector.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/GestureDetector.java index 38d2e1e..5bae87f 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/GestureDetector.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/GestureDetector.java @@ -408,18 +408,38 @@ public class GestureDetector { mDoubleTapSlopSquare = doubleTapSlop * doubleTapSlop; } + /** + * setOnDoubleTapListener + * + * @param onDoubleTapListener + */ public void setOnDoubleTapListener(OnDoubleTapListener onDoubleTapListener) { mDoubleTapListener = onDoubleTapListener; } + /** + * setContextClickListener + * + * @param onContextClickListener + */ public void setContextClickListener(OnContextClickListener onContextClickListener) { mContextClickListener = onContextClickListener; } + /** + * setIsLongpressEnabled + * + * @param isLongpressEnabled + */ public void setIsLongpressEnabled(boolean isLongpressEnabled) { mIsLongpressEnabled = isLongpressEnabled; } + /** + * isLongpressEnabled + * + * @return + */ public boolean isLongpressEnabled() { return mIsLongpressEnabled; } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ScaleGestureDetector.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ScaleGestureDetector.java index f37c0e4..ba03bc5 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ScaleGestureDetector.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ScaleGestureDetector.java @@ -84,15 +84,33 @@ public class ScaleGestureDetector { * {@code true}. */ public static class SimpleOnScaleGestureListener implements OnScaleGestureListener { - + /** + * onScale + * + * @param detector The detector reporting the event - use this to + * retrieve extended info about event state. + * @return boolean + */ public boolean onScale(ScaleGestureDetector detector) { return false; } + /** + * onScaleBegin + * + * @param detector The detector reporting the event - use this to + * retrieve extended info about event state. + * @return boolean + */ public boolean onScaleBegin(ScaleGestureDetector detector) { return true; } + /** + * onScaleEnd + * + * @param detector The detector reporting the event - use this to + */ public void onScaleEnd(ScaleGestureDetector detector) { // Intentionally empty } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/VelocityTracker.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/VelocityTracker.java index 267435f..56f8116 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/VelocityTracker.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/VelocityTracker.java @@ -57,6 +57,12 @@ public class VelocityTracker { return getXVelocityWithScale(vd); } + /** + * getYVelocity + * + * @param velocityDetector + * @return float + */ private float getYVelocity(VelocityDetector velocityDetector) { return velocityDetector.getVerticalVelocity(); } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ViewConfiguration.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ViewConfiguration.java index ba65ff5..b60c84c 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ViewConfiguration.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/detector/ViewConfiguration.java @@ -27,37 +27,83 @@ public class ViewConfiguration { private ViewConfiguration() { } + /** + * getLongPressTimeout + * + * @return DEFAULT_LONG_PRESS_TIMEOUT + */ public static int getLongPressTimeout() { return DEFAULT_LONG_PRESS_TIMEOUT; } + /** + * getTapTimeout + * + * @return TAP_TIMEOUT + */ public static int getTapTimeout() { return TAP_TIMEOUT; } + /** + * getDoubleTapTimeout + * + * @return DOUBLE_TAP_TIMEOUT + */ public static int getDoubleTapTimeout() { return DOUBLE_TAP_TIMEOUT; } + /** + * getDoubleTapMinTime + * + * @return DOUBLE_TAP_MIN_TIME + */ public static int getDoubleTapMinTime() { return DOUBLE_TAP_MIN_TIME; } + /** + * getTouchSlop + * + * @return TOUCH_SLOP + */ public static int getTouchSlop() { return TOUCH_SLOP; } + /** + * getDoubleTapSlop + * + * @return DOUBLE_TAP_SLOP + */ public static int getDoubleTapSlop() { return DOUBLE_TAP_SLOP; } + /** + * getMinimumFlingVelocity + * + * @return MINIMUM_FLING_VELOCITY + */ public static int getMinimumFlingVelocity() { return MINIMUM_FLING_VELOCITY; } + /** + * getMaximumFlingVelocity + * + * @return MAXIMUM_FLING_VELOCITY + */ public static int getMaximumFlingVelocity() { return MAXIMUM_FLING_VELOCITY; } + + /** + * getScaledTouchSlop + * + * @return TOUCH_SLOP + */ public static int getScaledTouchSlop() { return TOUCH_SLOP; } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/EntrySet.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/EntrySet.java index 59245f6..5fd633a 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/EntrySet.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/EntrySet.java @@ -107,34 +107,74 @@ public class EntrySet { this.entries.addAll(0, entries); } + /** + * getEntryList + * + * @return List + */ public List getEntryList() { return entries; } + /** + * getMinY + * + * @return float + */ public float getMinY() { return minY; } + /** + * getMaxY + * + * @return float + */ public float getMaxY() { return maxY; } + /** + * getDeltaY + * + * @return float + */ public float getDeltaY() { return maxY - minY; } + /** + * getMinYIndex + * + * @return float + */ public int getMinYIndex() { return minYIndex; } + /** + * getMaxYIndex + * + * @return float + */ public int getMaxYIndex() { return maxYIndex; } + /** + * getHighlightIndex + * + * @return int + */ public int getHighlightIndex() { return highlightIndex; } + /** + * setHighlightIndex + * + * @param highlightIndex + */ public void setHighlightIndex(int highlightIndex) { this.highlightIndex = highlightIndex; } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/StockIndex.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/StockIndex.java index 8f8728f..eb67d64 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/StockIndex.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/entry/StockIndex.java @@ -202,46 +202,101 @@ public abstract class StockIndex { this.paddingBottom = paddingBottom; } + /** + * isEnable + * + * @return boolean + */ public boolean isEnable() { return enable; } + /** + * setEnable + * + * @param enable + */ public void setEnable(boolean enable) { this.enable = enable; } + /** + * getMaxY + * + * @return float + */ public float getMaxY() { return maxY; } + /** + * setMaxY + * + * @param maxY + */ public void setMaxY(float maxY) { this.maxY = maxY; } + /** + * getMinY + * + * @return float + */ public float getMinY() { return minY; } + /** + * setMinY + * + * @param minY + */ public void setMinY(float minY) { this.minY = minY; } + /** + * getExtremumYScale + * + * @return getExtremumYScale + */ public float getExtremumYScale() { return extremumYScale; } + /** + * setExtremumYScale + * + * @param extremumYScale + */ public void setExtremumYScale(float extremumYScale) { this.extremumYScale = extremumYScale; } + /** + * getExtremumYDelta + * + * @return float + */ public float getExtremumYDelta() { return extremumYDelta; } + /** + * setExtremumYDelta + * + * @param extremumYDelta + */ public void setExtremumYDelta(float extremumYDelta) { this.extremumYDelta = extremumYDelta; } + /** + * getDeltaY + * + * @return + */ public float getDeltaY() { return maxY - minY; } diff --git a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/render/AbstractRender.java b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/render/AbstractRender.java index 0d815a3..6a05b0a 100644 --- a/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/render/AbstractRender.java +++ b/ikvStockChart/src/main/java/com/wordplat/ikvstockchart/render/AbstractRender.java @@ -250,6 +250,12 @@ public abstract class AbstractRender { this.extremumYDelta = extremumYDelta; } + /** + * onHighlight + * + * @param x + * @param y + */ public void onHighlight(float x, float y) { if (entrySet.getEntryList().size() > 0) { highlight = true; @@ -259,6 +265,9 @@ public abstract class AbstractRender { } } + /** + * onCancelHighlight + */ public void onCancelHighlight() { highlight = false; diff --git a/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/AbstractRenderTest.java b/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/AbstractRenderTest.java index 86f96e6..52ef191 100644 --- a/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/AbstractRenderTest.java +++ b/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/AbstractRenderTest.java @@ -5,43 +5,94 @@ import org.junit.Test; import static org.mockito.Mockito.mock; - +/** + * AbstractRenderTest + * + * @since 2021-06-21 + */ public class AbstractRenderTest { private AbstractRender render = mock(AbstractRender.class); + + /** + * canDragging + */ @Test public void canDragging() { + /** + * canDragging + */ render.canDragging(12); } + /** + * canScroll + */ @Test public void canScroll() { + /** + * canScroll + */ render.canScroll(12); } + /** + * getSizeColor + */ @Test public void getSizeColor() { + /** + * getSizeColor + */ render.getSizeColor(); } + /** + * invertMapPoints + */ @Test public void invertMapPoints() { float[] floats = {1, 2, 3, 4}; + /** + * invertMapPoints + */ render.invertMapPoints(floats); } + /** + * onHighlight + */ @Test public void onHighlight() { + /** + * onHighlight + */ render.onHighlight(12, 12); } + /** + * mapPoints + */ @Test public void mapPoints() { float[] floats = {1, 2, 3, 4}; + /** + * mapPoints + */ render.mapPoints(floats); } + /** + * zoomIn + */ @Test public void zoomIn() { + /** + * zoomIn + */ render.zoomIn(12, 12); } + /** + * zoomOut + */ @Test public void zoomOut() { + /** + * zoomOut + */ render.zoomOut(12, 12); } - - } diff --git a/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java b/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java index 4d584ee..c06b1bf 100644 --- a/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java +++ b/ikvStockChart/src/ohostest/java/com/wordplat/quickstart/InteractiveKLineLayoutTest.java @@ -5,77 +5,164 @@ import org.junit.Test; import static org.mockito.Mockito.mock; - +/** + * InteractiveKLineLayoutTest + * + * @since 2021-06-21 + */ public class InteractiveKLineLayoutTest { private InteractiveKLineLayout layout = mock(InteractiveKLineLayout.class); + /** + * announceAccessibility + */ @Test public void announceAccessibility() { + /** + * announceAccessibility + */ layout.announceAccessibility("text some"); } - + /** + * arrange + */ @Test public void arrange() { + /** + * arrange + */ layout.arrange(12, 12, 12, 12); } + /** + * bindCornerMark + */ @Test public void bindCornerMark() { + /** + * bindCornerMark + */ layout.bindCornerMark(); } + /** + * callOnClick + */ @Test public void callOnClick() { + /** + * callOnClick + */ layout.callOnClick(); } + /** + * clearFocus + */ @Test public void clearFocus() { + /** + * clearFocus + */ layout.clearFocus(); } + /** + * enableCornerMark + */ @Test public void enableCornerMark() { + /** + * enableCornerMark + */ layout.enableCornerMark(true); } + /** + * simulateClick + */ @Test public void simulateClick() { + /** + * simulateClick + */ layout.simulateClick(); } + /** + * simulateDrag + */ @Test public void simulateDrag() { + /** + * simulateDrag + */ layout.simulateDrag(); } + /** + * createAnimatorProperty + */ @Test public void createAnimatorProperty() { + /** + * createAnimatorProperty + */ layout.createAnimatorProperty(); } + /** + * getKLineView + */ @Test public void getKLineView() { + /** + * getKLineView + */ layout.getKLineView(); } + /** + * isShownBOLL + */ @Test public void isShownBOLL() { + /** + * isShownBOLL + */ layout.isShownBOLL(); } + /** + * isShownBOLL + */ @Test public void isShownKDJ() { + /** + * isShownBOLL + */ layout.isShownKDJ(); } + /** + * isShownMACD + */ @Test public void isShownMACD() { + /** + * isShownMACD + */ layout.isShownMACD(); } + /** + * isShownRSI + */ @Test public void isShownRSI() { + /** + * isShownRSI + */ layout.isShownRSI(); } } -- Gitee