Browse Source

REPORT-11121 统一用unix文件路径分割

research/10.0
yaoh.wu 6 years ago
parent
commit
f0854ca7d6
  1. 12
      designer-base/src/main/java/com/fr/design/file/HistoryTemplateListCache.java
  2. 11
      designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java
  3. 2
      designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java

12
designer-base/src/main/java/com/fr/design/file/HistoryTemplateListCache.java

@ -184,9 +184,9 @@ public class HistoryTemplateListCache implements CallbackEvent {
*/ */
public int contains(String filename) { public int contains(String filename) {
for (int i = 0; i < historyList.size(); i++) { for (int i = 0; i < historyList.size(); i++) {
String historyPath = historyList.get(i).getPath().replaceAll("/", "\\\\"); String historyPath = historyList.get(i).getPath();
//文件路径是全路径,历史路径是reportlets/模板名 //文件路径和历史路径都是 reportlets/xxx/xxx/xxx/xx.suffix
if (filename.endsWith(historyPath)) { if (filename.equals(historyPath)) {
return i; return i;
} }
} }
@ -233,16 +233,16 @@ public class HistoryTemplateListCache implements CallbackEvent {
public void deleteFile(FileNodeFILE file) { public void deleteFile(FileNodeFILE file) {
boolean isDir = file.isDirectory(); boolean isDir = file.isDirectory();
String suffix = isDir ? "\\" : StringUtils.EMPTY; String suffix = isDir ? CoreConstants.SEPARATOR : StringUtils.EMPTY;
// path like reportlets/xx/xxx/xxx // path like reportlets/xx/xxx/xxx
String path = file.getPath().replaceAll("/", "\\\\") + suffix; String path = file.getPath() + suffix;
ListIterator<JTemplate<?, ?>> iterator = historyList.listIterator(); ListIterator<JTemplate<?, ?>> iterator = historyList.listIterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
JTemplate<?, ?> template = iterator.next(); JTemplate<?, ?> template = iterator.next();
String tPath = template.getPath().replaceAll("/", "\\\\"); String tPath = template.getPath();
if (isDir ? tPath.startsWith(path) : tPath.equals(path)) { if (isDir ? tPath.startsWith(path) : tPath.equals(path)) {
iterator.remove(); iterator.remove();
int index = iterator.nextIndex(); int index = iterator.nextIndex();

11
designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java

@ -13,12 +13,10 @@ import com.fr.design.mainframe.JTemplate;
import com.fr.design.utils.gui.GUICoreUtils; import com.fr.design.utils.gui.GUICoreUtils;
import com.fr.design.utils.gui.GUIPaintUtils; import com.fr.design.utils.gui.GUIPaintUtils;
import com.fr.file.FILE; import com.fr.file.FILE;
import com.fr.file.FileNodeFILE;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.stable.Constants; import com.fr.stable.Constants;
import com.fr.stable.ProductConstants; import com.fr.stable.ProductConstants;
import com.fr.stable.project.ProjectConstants;
import com.fr.third.org.apache.commons.io.FilenameUtils; import com.fr.third.org.apache.commons.io.FilenameUtils;
import com.fr.workspace.WorkContext; import com.fr.workspace.WorkContext;
import com.fr.workspace.server.lock.TplOperator; import com.fr.workspace.server.lock.TplOperator;
@ -54,7 +52,6 @@ import java.awt.geom.GeneralPath;
import java.awt.geom.Line2D; import java.awt.geom.Line2D;
import java.awt.geom.Path2D; import java.awt.geom.Path2D;
import java.awt.geom.RoundRectangle2D; import java.awt.geom.RoundRectangle2D;
import java.io.File;
import java.util.List; import java.util.List;
/** /**
@ -679,12 +676,10 @@ public class MutilTempalteTabPane extends JComponent {
} }
//当前激活的模板 //当前激活的模板
String filename = openedTemplate.get(selectedIndex).getEditingFILE().getPath(); String filename = openedTemplate.get(selectedIndex).getPath();
if (filename.startsWith(ProjectConstants.REPORTLETS_NAME)) {
filename = ((FileNodeFILE) openedTemplate.get(selectedIndex).getEditingFILE()).getEnvPath() + File.separator + filename;
}
filename = FilenameUtils.normalize(filename); filename = FilenameUtils.standard(filename);
if (!specifiedTemplate.isALLSaved() && !DesignerMode.isVcsMode()) { if (!specifiedTemplate.isALLSaved() && !DesignerMode.isVcsMode()) {
specifiedTemplate.stopEditing(); specifiedTemplate.stopEditing();

2
designer-base/src/main/java/com/fr/design/mainframe/DesignerFrame.java

@ -757,7 +757,7 @@ public class DesignerFrame extends JFrame implements JTemplateActionListener, Ta
} else if (path.startsWith(ProjectConstants.REPORTLETS_NAME)) { } else if (path.startsWith(ProjectConstants.REPORTLETS_NAME)) {
path = workspace.getPath() + File.separator + path; path = workspace.getPath() + File.separator + path;
} }
defaultTitleSB.append(" " + path); defaultTitleSB.append(" ").append(path);
} }
setTitle(defaultTitleSB.toString()); setTitle(defaultTitleSB.toString());

Loading…
Cancel
Save