From b2b2b66e51f80104a2cdb1b2d9ee174762d252ad Mon Sep 17 00:00:00 2001 From: "alex.sung" Date: Thu, 14 Feb 2019 15:47:16 +0800 Subject: [PATCH 1/3] =?UTF-8?q?REPORT-14569=2010.0release=E7=9A=84alphafin?= =?UTF-8?q?e=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98=20=E5=AE=9A=E4=BD=8D?= =?UTF-8?q?=E5=88=B0=E6=98=AF=E5=A4=9A=E7=BA=BF=E7=A8=8B=E7=9A=84bug?= =?UTF-8?q?=EF=BC=8C=E6=9F=90=E4=BA=9B=E6=83=85=E5=86=B5=E4=B8=8Blist?= =?UTF-8?q?=E9=87=8C=E6=94=BE=E5=85=A5=E4=BA=86=E4=B9=8B=E5=89=8D=E7=9A=84?= =?UTF-8?q?=E7=BA=BF=E7=A8=8B=E6=90=9C=E7=B4=A2=E7=9A=84=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E3=80=82=E7=9B=AE=E5=89=8D=E7=AD=96=E7=95=A5=E6=98=AF=E5=90=84?= =?UTF-8?q?=E7=BA=BF=E7=A8=8B=E5=90=84=E8=87=AA=E7=BB=B4=E6=8A=A4=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=E5=88=97=E8=A1=A8=EF=BC=8C=E8=8E=B7=E5=8F=96=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E5=90=8E=E5=86=8D=E8=B5=8B=E7=BB=99=E5=85=A8=E5=B1=80?= =?UTF-8?q?=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mainframe/alphafine/AlphaFineHelper.java | 6 +- .../alphafine/component/AlphaFineDialog.java | 68 ++++++++++--------- .../manager/impl/RecommendSearchManager.java | 8 ++- 3 files changed, 46 insertions(+), 36 deletions(-) diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java index 1057d9286..a1c901d9f 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java @@ -104,8 +104,10 @@ public class AlphaFineHelper { List recentList = RecentSearchManager.getInstance().getRecentModelList(); List recommendList = RecommendSearchManager.getInstance().getRecommendModelList(); SearchResult filterResult = new SearchResult(); - filterResult.addAll(recentList); - filterResult.addAll(recommendList); + if(recentList != null && recommendList != null){ + filterResult.addAll(recentList); + filterResult.addAll(recommendList); + } return filterResult; } diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java index 49f857014..c8ecd9303 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/component/AlphaFineDialog.java @@ -489,21 +489,24 @@ public class AlphaFineDialog extends UIDialog { * @param searchText */ private void dealWithSearchText(String searchText) { + SearchListModel searchListModelTemp = new SearchListModel(new SearchResult()); + searchResultList.setModel(searchListModelTemp); if (searchText.startsWith(ACTION_MARK_SHORT) || searchText.startsWith(ACTION_MARK)) { - buildActionList(new String[]{getStoreText(searchText)}); + buildActionList(new String[]{getStoreText(searchText)}, searchListModelTemp); } else if (searchText.startsWith(DOCUMENT_MARK_SHORT) || searchText.startsWith(DOCUMENT_MARK)) { - buildDocumentList(new String[]{getStoreText(searchText)}); + buildDocumentList(new String[]{getStoreText(searchText)}, searchListModelTemp); } else if (searchText.startsWith(FILE_MARK_SHORT) || searchText.startsWith(FILE_MARK)) { - buildFileList(getStoreText(searchText), new String[]{getStoreText(searchText)}); + buildFileList(getStoreText(searchText), new String[]{getStoreText(searchText)}, searchListModelTemp); } else if (searchText.startsWith(CPT_MARK) || searchText.startsWith(FRM_MARK)) { - buildFileList(getStoreText(searchText), new String[]{searchText}); + buildFileList(getStoreText(searchText), new String[]{searchText}, searchListModelTemp); } else if (searchText.startsWith(DS_MARK)) { - buildFileList(getStoreText(searchText), new String[]{DS_NAME + getStoreText(searchText)}); + buildFileList(getStoreText(searchText), new String[]{DS_NAME + getStoreText(searchText)}, searchListModelTemp); } else if (searchText.startsWith(PLUGIN_MARK_SHORT) || searchText.startsWith(PLUGIN_MARK)) { - buildPluginList(new String[]{getStoreText(searchText)}); + buildPluginList(new String[]{getStoreText(searchText)}, searchListModelTemp); } else if (searchText.startsWith(SIMILAR_MARK)) { - buildSimilarList(new String[]{getStoreText(searchText)}); + buildSimilarList(new String[]{getStoreText(searchText)}, searchListModelTemp); } + searchListModel = searchListModelTemp; } /** @@ -535,51 +538,54 @@ public class AlphaFineDialog extends UIDialog { * @param searchText */ private void doNormalSearch(String searchText) { + SearchListModel searchListModelTemp = new SearchListModel(new SearchResult()); + searchResultList.setModel(searchListModelTemp); if (segmentationResult != null) { - buildRecentList(segmentationResult); - buildRecommendList(segmentationResult); - buildActionList(segmentationResult); - buildFileList(searchText, segmentationResult); - buildDocumentList(segmentationResult); - buildPluginList(segmentationResult); - buildSimilarList(segmentationResult); + buildRecentList(segmentationResult, searchListModelTemp); + buildRecommendList(segmentationResult, searchListModelTemp); + buildActionList(segmentationResult, searchListModelTemp); + buildFileList(searchText, segmentationResult, searchListModelTemp); + buildDocumentList(segmentationResult, searchListModelTemp); + buildPluginList(segmentationResult, searchListModelTemp); + buildSimilarList(segmentationResult, searchListModelTemp); } - searchListModel.addElement(new BottomModel()); + searchListModelTemp.addElement(new BottomModel()); + searchListModel = searchListModelTemp; } - private void buildDocumentList(final String[] searchText) { - addSearchResult(DocumentSearchManager.getInstance().getLessSearchResult(searchText)); + private void buildDocumentList(final String[] searchText, SearchListModel searchListModelTemp) { + addSearchResult(DocumentSearchManager.getInstance().getLessSearchResult(searchText), searchListModelTemp); } - private void buildFileList(String searchStr, final String[] searchText) { - addSearchResult(FileSearchManager.getInstance().getLessSearchResult(searchStr, searchText)); + private void buildFileList(String searchStr, final String[] searchText, SearchListModel searchListModelTemp) { + addSearchResult(FileSearchManager.getInstance().getLessSearchResult(searchStr, searchText), searchListModelTemp); } - private void buildActionList(final String[] searchText) { - addSearchResult(ActionSearchManager.getInstance().getLessSearchResult(searchText)); + private void buildActionList(final String[] searchText, SearchListModel searchListModelTemp) { + addSearchResult(ActionSearchManager.getInstance().getLessSearchResult(searchText), searchListModelTemp); } - private void buildPluginList(final String[] searchText) { - addSearchResult(PluginSearchManager.getInstance().getLessSearchResult(searchText)); + private void buildPluginList(final String[] searchText, SearchListModel searchListModelTemp) { + addSearchResult(PluginSearchManager.getInstance().getLessSearchResult(searchText), searchListModelTemp); } - private void buildRecommendList(final String[] searchText) { - addSearchResult(RecommendSearchManager.getInstance().getLessSearchResult(searchText)); + private void buildRecommendList(final String[] searchText, SearchListModel searchListModelTemp) { + addSearchResult(RecommendSearchManager.getInstance().getLessSearchResult(searchText), searchListModelTemp); } - private void buildRecentList(final String[] searchText) { - addSearchResult(RecentSearchManager.getInstance().getLessSearchResult(searchText)); + private void buildRecentList(final String[] searchText, SearchListModel searchListModelTemp) { + addSearchResult(RecentSearchManager.getInstance().getLessSearchResult(searchText), searchListModelTemp); } - private void buildSimilarList(final String[] searchText) { - addSearchResult(SimilarSearchManager.getInstance().getLessSearchResult(searchText)); + private void buildSimilarList(final String[] searchText, SearchListModel searchListModelTemp) { + addSearchResult(SimilarSearchManager.getInstance().getLessSearchResult(searchText), searchListModelTemp); } - private synchronized void addSearchResult(SearchResult searchResult) { + private synchronized void addSearchResult(SearchResult searchResult, SearchListModel searchListModelTemp) { for (AlphaCellModel object : searchResult) { AlphaFineHelper.checkCancel(); - searchListModel.addElement(object); + searchListModelTemp.addElement(object); } } diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java index b5f01f0b0..467eee07f 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java @@ -187,9 +187,11 @@ public class RecommendSearchManager implements AlphaFineSearchProvider { public List getRecommendModelList() { SearchResult result = new SearchResult(); - result.addAll(recommendModelList); - result.addAll(modelList); - result.addAll(moreModelList); + if(recommendModelList != null){ + result.addAll(recommendModelList); + result.addAll(modelList); + result.addAll(moreModelList); + } return result; } From 7daa2f08abb9aa2e296bc4978fc9dcd878977386 Mon Sep 17 00:00:00 2001 From: Hades Date: Thu, 14 Feb 2019 15:49:08 +0800 Subject: [PATCH 2/3] =?UTF-8?q?REPORT-14465=20=E3=80=9010.0=E5=86=92?= =?UTF-8?q?=E7=83=9F=E3=80=91=20=E6=95=B0=E5=AD=97=E6=8E=A7=E4=BB=B6?= =?UTF-8?q?=E2=80=9C=E5=8F=8C=E7=B2=BE=E5=BA=A6=E5=9E=8B=E2=80=9D=20?= =?UTF-8?q?=E5=85=A8=E9=83=A8=E5=B1=95=E5=BC=80=E6=98=BE=E7=A4=BA=EF=BC=8C?= =?UTF-8?q?=E6=9C=80=E5=BA=95=E7=AB=AF=E6=96=87=E5=AD=97=E8=A2=AB=E9=81=AE?= =?UTF-8?q?=E6=8C=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/fr/design/gui/ibutton/UIButtonGroup.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java index 752681ef0..624e2e8ee 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java +++ b/designer-base/src/main/java/com/fr/design/gui/ibutton/UIButtonGroup.java @@ -26,6 +26,9 @@ import java.util.List; public class UIButtonGroup extends JPanel implements GlobalNameObserver { private static final long serialVersionUID = 1L; + private static final int TEXT_LENGTH = 3; + private static final int BUTTON_SIZE = 2; + private int currentButtonSize = 0; protected List labelButtonList; protected int selectedIndex = -1; private List objectList;// 起到一个render的作用 @@ -154,6 +157,7 @@ public class UIButtonGroup extends JPanel implements GlobalNameObserver { if (!ArrayUtils.isEmpty(objects) && textArray.length == objects.length) { this.objectList = Arrays.asList(objects); } + currentButtonSize = textArray.length; labelButtonList = new ArrayList(textArray.length); this.setLayout(getGridLayout(textArray.length)); this.setBorder(getGroupBorder()); @@ -214,11 +218,20 @@ public class UIButtonGroup extends JPanel implements GlobalNameObserver { protected void initButton(UIToggleButton labelButton) { labelButton.setBorderPainted(false); + adjustButton(labelButton); UIComponentUtils.setLineWrap(labelButton); labelButtonList.add(labelButton); this.add(labelButton); } + private void adjustButton(UIToggleButton labelButton) { + if (labelButton.getText().length() > TEXT_LENGTH && currentButtonSize > BUTTON_SIZE) { + Dimension dimension = labelButton.getPreferredSize(); + dimension.height <<= 1; + labelButton.setPreferredSize(dimension); + } + } + protected Border getGroupBorder() { return BorderFactory.createEmptyBorder(1, 1, 1, 1); } From ad14f65c1ee47a6040ceefee23b444362279e580 Mon Sep 17 00:00:00 2001 From: "alex.sung" Date: Thu, 14 Feb 2019 19:34:14 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B4=A8=E9=87=8F?= =?UTF-8?q?=EF=BC=9A=E4=BB=8E=E6=BA=90=E5=A4=B4=E8=BF=94=E5=9B=9E=E7=A9=BA?= =?UTF-8?q?list?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../design/mainframe/alphafine/AlphaFineHelper.java | 6 ++---- .../search/manager/impl/RecentSearchManager.java | 2 +- .../search/manager/impl/RecommendSearchManager.java | 12 +++++------- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java index a1c901d9f..1057d9286 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/AlphaFineHelper.java @@ -104,10 +104,8 @@ public class AlphaFineHelper { List recentList = RecentSearchManager.getInstance().getRecentModelList(); List recommendList = RecommendSearchManager.getInstance().getRecommendModelList(); SearchResult filterResult = new SearchResult(); - if(recentList != null && recommendList != null){ - filterResult.addAll(recentList); - filterResult.addAll(recommendList); - } + filterResult.addAll(recentList); + filterResult.addAll(recommendList); return filterResult; } diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecentSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecentSearchManager.java index 93fb511bc..72a485977 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecentSearchManager.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecentSearchManager.java @@ -57,7 +57,7 @@ public class RecentSearchManager implements AlphaFineSearchProvider { private Directory directory = null; private IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_40, analyzer); private IndexWriter indexWriter = null; - private SearchResult recentModelList; + private SearchResult recentModelList = new SearchResult(); public static RecentSearchManager getInstance() { diff --git a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java index 467eee07f..e15c5b966 100644 --- a/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java +++ b/designer-realize/src/main/java/com/fr/design/mainframe/alphafine/search/manager/impl/RecommendSearchManager.java @@ -26,8 +26,8 @@ import java.util.List; */ public class RecommendSearchManager implements AlphaFineSearchProvider { private static volatile RecommendSearchManager instance; - private SearchResult modelList; - private SearchResult recommendModelList; + private SearchResult modelList = new SearchResult(); + private SearchResult recommendModelList = new SearchResult(); private SearchResult complementAdviceModelList; private SearchResult moreModelList = new SearchResult(); @@ -187,11 +187,9 @@ public class RecommendSearchManager implements AlphaFineSearchProvider { public List getRecommendModelList() { SearchResult result = new SearchResult(); - if(recommendModelList != null){ - result.addAll(recommendModelList); - result.addAll(modelList); - result.addAll(moreModelList); - } + result.addAll(recommendModelList); + result.addAll(modelList); + result.addAll(moreModelList); return result; }