Browse Source

添加注释

release/11.0
kerry 1 year ago
parent
commit
4531ad7d5f
  1. 20
      designer-base/src/main/java/com/fr/design/file/MultiTemplateTabUtils.java

20
designer-base/src/main/java/com/fr/design/file/MultiTemplateTabUtils.java

@ -7,6 +7,13 @@ import java.util.List;
import java.util.function.Predicate;
public class MultiTemplateTabUtils {
/**
* 计算离currentIndex最近的相同模式的模板index值优先左边
* @param currentIndex 当前index
* @param openedTemplate 模板list
* @param type 当前显示模式
* @return
*/
public static int calShowTemplateIndex(int currentIndex, List<JTemplate<?, ?>> openedTemplate, String type) {
if (currentIndex < 0 || currentIndex > openedTemplate.size() - 1) {
return -1;
@ -16,6 +23,13 @@ public class MultiTemplateTabUtils {
return getShowJTemplateTab(currentIndex, openedTemplate, template -> !showJTemplateTab(type, template));
}
/**
* 先从左找再从右找离得最近的满足条件的模板
* @param currentIndex 当前index
* @param openedTemplate 模板list
* @param predicate
* @return
*/
private static int getShowJTemplateTab(int currentIndex, List<JTemplate<?, ?>> openedTemplate, Predicate<JTemplate<?, ?>> predicate) {
for (int i = currentIndex; i >= 0; i--) {
if (predicate.test(openedTemplate.get(i))) {
@ -30,6 +44,12 @@ public class MultiTemplateTabUtils {
return -1;
}
/**
* 是否显示模板
* @param type 模板类型
* @param jTemplate 模板
* @return
*/
private static boolean showJTemplateTab(String type, JTemplate<?, ?> jTemplate) {
return ComparatorUtils.equals(type, jTemplate.getTemplateTabOperatorType());
}

Loading…
Cancel
Save