Skip to content

Commit 5f861d0

Browse files
Atlas editor: use custom tabs for better behavior on Mac.
1 parent 1558440 commit 5f861d0

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

source/phasereditor/phasereditor.atlas.ui/src/phasereditor/atlas/ui/editors/AtlasGeneratorEditor.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,8 @@
7575
import org.eclipse.jface.window.Window;
7676
import org.eclipse.swt.SWT;
7777
import org.eclipse.swt.SWTException;
78+
import org.eclipse.swt.custom.CTabFolder;
79+
import org.eclipse.swt.custom.CTabItem;
7880
import org.eclipse.swt.custom.SashForm;
7981
import org.eclipse.swt.dnd.DND;
8082
import org.eclipse.swt.dnd.DropTarget;
@@ -97,8 +99,6 @@
9799
import org.eclipse.swt.widgets.Composite;
98100
import org.eclipse.swt.widgets.Display;
99101
import org.eclipse.swt.widgets.Shell;
100-
import org.eclipse.swt.widgets.TabFolder;
101-
import org.eclipse.swt.widgets.TabItem;
102102
import org.eclipse.swt.widgets.Table;
103103
import org.eclipse.swt.widgets.ToolBar;
104104
import org.eclipse.ui.IEditorInput;
@@ -108,6 +108,7 @@
108108
import org.eclipse.ui.part.EditorPart;
109109
import org.eclipse.ui.part.FileEditorInput;
110110
import org.eclipse.wb.swt.ResourceManager;
111+
import org.eclipse.wb.swt.SWTResourceManager;
111112
import org.json.JSONObject;
112113

113114
import com.badlogic.gdx.files.FileHandle;
@@ -125,7 +126,6 @@
125126
import phasereditor.ui.IEditorSharedImages;
126127
import phasereditor.ui.IconCache;
127128
import phasereditor.ui.PhaserEditorUI;
128-
import org.eclipse.wb.swt.SWTResourceManager;
129129

130130
public class AtlasGeneratorEditor extends EditorPart implements IEditorSharedImages, IResourceChangeListener {
131131
class FramesLabelProvider extends LabelProvider {
@@ -172,7 +172,7 @@ public Image getImage(Object element) {
172172
private Action _settingsAction;
173173
private SashForm _sashForm;
174174
private Action _layoutAction;
175-
private TabFolder _tabsFolder;
175+
private CTabFolder _tabsFolder;
176176
private List<IFile> _guessLastOutputFiles;
177177
private boolean _showFileList;
178178
private MenuManager _popupManager;
@@ -221,7 +221,7 @@ public void keyReleased(KeyEvent e) {
221221
});
222222
_framesViewer.setLabelProvider(new FramesLabelProvider());
223223
_framesViewer.setContentProvider(new ArrayContentProvider());
224-
_tabsFolder = new TabFolder(_sashForm, SWT.NONE);
224+
_tabsFolder = new CTabFolder(_sashForm, SWT.NONE);
225225
_tabsFolder.setBackground(SWTResourceManager.getColor(SWT.COLOR_WIDGET_BACKGROUND));
226226

227227
_sashForm.setWeights(new int[] { 20, 100 });
@@ -729,17 +729,17 @@ public void setFocus() {
729729
public void doSave(IProgressMonitor monitor) {
730730
try {
731731
refreshFolder(monitor);
732-
732+
733733
List<IFile> toDelete = new ArrayList<>(_guessLastOutputFiles);
734-
734+
735735
{
736736
// save editor model
737737
JSONObject json = _model.toJSON();
738738
ByteArrayInputStream source = new ByteArrayInputStream(json.toString(2).getBytes());
739739
IFile file = _model.getFile();
740740
file.setContents(source, true, false, monitor);
741741
}
742-
742+
743743
{
744744
// save image
745745
int i = 0;
@@ -760,7 +760,7 @@ public void doSave(IProgressMonitor monitor) {
760760
i++;
761761
}
762762
}
763-
763+
764764
{
765765
// save atlas model
766766
int i = 0;
@@ -778,7 +778,7 @@ public void doSave(IProgressMonitor monitor) {
778778
i++;
779779
}
780780
}
781-
781+
782782
{
783783
// delete previous generates files
784784
for (IFile file : toDelete) {
@@ -855,7 +855,7 @@ void postBuild(Result result) {
855855
for (ResultPage page : result.getPages()) {
856856
AtlasCanvas canvas;
857857
canvas = createAtlasCanvas();
858-
TabItem item = createTabItem();
858+
CTabItem item = createTabItem();
859859
item.setText("page " + i);
860860
item.setControl(canvas);
861861
canvas.setImage(page.getImage());
@@ -962,7 +962,7 @@ protected void atlasCanvasHover(AtlasCanvas canvas) {
962962
}
963963

964964
private void addMainTab() {
965-
TabItem item = createTabItem();
965+
CTabItem item = createTabItem();
966966
item.setText("page 1");
967967
AtlasCanvas canvas = createAtlasCanvas();
968968
canvas.setNoImageMessage("(drop image files here)");
@@ -974,8 +974,8 @@ private void addMainTab() {
974974
/**
975975
* @return
976976
*/
977-
private TabItem createTabItem() {
978-
return new TabItem(_tabsFolder, SWT.NONE);
977+
private CTabItem createTabItem() {
978+
return new CTabItem(_tabsFolder, SWT.NONE);
979979
}
980980

981981
public IFile getEditorInputFile() {

0 commit comments

Comments
 (0)