Skip to content
Snippets Groups Projects
Commit d5502edf authored by Paul McCarthy's avatar Paul McCarthy
Browse files

Refactored icon management, because of stupied OSX retina display.

parent c2c7e788
No related branches found
No related tags found
No related merge requests found
Showing
with 25 additions and 38 deletions
...@@ -27,16 +27,16 @@ class OrthoToolBar(fsltoolbar.FSLViewToolBar): ...@@ -27,16 +27,16 @@ class OrthoToolBar(fsltoolbar.FSLViewToolBar):
orthoOpts = ortho.getSceneOptions() orthoOpts = ortho.getSceneOptions()
icns = { icns = {
'screenshot' : icons.findImageFile('camera', 32)[0], 'screenshot' : icons.findImageFile('camera'),
'showXCanvas' : icons.findImageFile('sagittalSlice', 32)[0], 'showXCanvas' : icons.findImageFile('sagittalSlice'),
'showYCanvas' : icons.findImageFile('coronalSlice', 32)[0], 'showYCanvas' : icons.findImageFile('coronalSlice'),
'showZCanvas' : icons.findImageFile('axialSlice', 32)[0], 'showZCanvas' : icons.findImageFile('axialSlice'),
'more' : icons.findImageFile('gear', 32)[0], 'more' : icons.findImageFile('gear'),
'layout' : { 'layout' : {
'horizontal' : icons.findImageFile('horizontalLayout', 32)[0], 'horizontal' : icons.findImageFile('horizontalLayout'),
'vertical' : icons.findImageFile('verticalLayout', 32)[0], 'vertical' : icons.findImageFile('verticalLayout'),
'grid' : icons.findImageFile('gridLayout', 32)[0], 'grid' : icons.findImageFile('gridLayout'),
} }
} }
......
...@@ -16,6 +16,7 @@ import wx ...@@ -16,6 +16,7 @@ import wx
import props import props
import fsl.fslview.toolbar as fsltoolbar import fsl.fslview.toolbar as fsltoolbar
import fsl.fslview.icons as icons
import fsl.fslview.actions as actions import fsl.fslview.actions as actions
import fsl.utils.typedict as td import fsl.utils.typedict as td
import overlaydisplaypanel as overlaydisplay import overlaydisplaypanel as overlaydisplay
...@@ -36,7 +37,9 @@ _TOOLBAR_PROPS = td.TypeDict({ ...@@ -36,7 +37,9 @@ _TOOLBAR_PROPS = td.TypeDict({
'VolumeOpts' : [ 'VolumeOpts' : [
props.Widget('cmap'), props.Widget('cmap'),
props.Widget('displayRange', showLimits=False), props.Widget('displayRange', showLimits=False),
actions.ActionButton('VolumeOpts', 'resetDisplayRange')], actions.ActionButton('VolumeOpts',
'resetDisplayRange',
icon=icons.findImageFile('resetRange'))],
'MaskOpts' : [ 'MaskOpts' : [
...@@ -183,7 +186,9 @@ class OverlayDisplayToolBar(fsltoolbar.FSLViewToolBar): ...@@ -183,7 +186,9 @@ class OverlayDisplayToolBar(fsltoolbar.FSLViewToolBar):
more = props.buildGUI( more = props.buildGUI(
self, self,
self, self,
view=actions.ActionButton(self, 'more')) view=actions.ActionButton(self,
'more',
icon=icons.findImageFile('gear32')))
tools .append(more) tools .append(more)
labels.append(None) labels.append(None)
......
...@@ -46,14 +46,14 @@ class ListItemWidget(wx.Panel): ...@@ -46,14 +46,14 @@ class ListItemWidget(wx.Panel):
self.saveButton = wx.Button( self, style=btnStyle) self.saveButton = wx.Button( self, style=btnStyle)
self.lockButton = wx.ToggleButton(self, style=btnStyle) self.lockButton = wx.ToggleButton(self, style=btnStyle)
self.saveButton.SetBitmap(icons.loadBitmap('floppydisk', 20)) self.saveButton.SetBitmap(icons.loadBitmap('floppydisk'))
self.lockButton.SetBitmap(icons.loadBitmap('chainlink', 20)) self.lockButton.SetBitmap(icons.loadBitmap('chainlink'))
self.visibility = props.makeWidget( self.visibility = props.makeWidget(
self, self,
display, display,
'enabled', 'enabled',
icon=icons.findImageFile('eye', 20)[0]) icon=icons.findImageFile('eye'))
self.sizer = wx.BoxSizer(wx.HORIZONTAL) self.sizer = wx.BoxSizer(wx.HORIZONTAL)
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
# Author: Paul McCarthy <pauldmccarthy@gmail.com> # Author: Paul McCarthy <pauldmccarthy@gmail.com>
# #
import os.path as op import os.path as op
import glob
import wx import wx
...@@ -13,21 +12,8 @@ import wx ...@@ -13,21 +12,8 @@ import wx
_bitmapPath = op.join(op.dirname(__file__), 'icons') _bitmapPath = op.join(op.dirname(__file__), 'icons')
def findImageFile(iconId, size): def findImageFile(iconId):
return op.join(_bitmapPath, '{}.png'.format(iconId))
path = op.join(_bitmapPath, '{}_*png'.format(iconId))
files = glob.glob(path)
fileNames = map(op.basename, files)
filePrefs = [op.splitext(f)[0] for f in fileNames]
sizes = map(int, [fp.split('_')[1] for fp in filePrefs])
if len(sizes) == 0:
raise ValueError('Invalid icon ID: {}'.format(iconId))
sizeDiffs = map(abs, [s - size for s in sizes])
idx = sizeDiffs.index(min(sizeDiffs))
return files[idx], sizes[idx]
def _resizeImage(image, size): def _resizeImage(image, size):
...@@ -45,14 +31,10 @@ def _resizeImage(image, size): ...@@ -45,14 +31,10 @@ def _resizeImage(image, size):
return image return image
def loadImage(iconId, size=None): def loadBitmap(iconId):
filename, fSize = findImageFile(iconId, size)
img = wx.Image(filename)
if fSize != size: return _resizeImage(img, size)
else: return img
filename = findImageFile(iconId)
bmp = wx.EmptyBitmap(1, 1)
bmp.LoadFile(filename, wx.BITMAP_TYPE_PNG)
def loadBitmap(iconId, size=None): return bmp
return wx.BitmapFromImage(loadImage(iconId, size))
fsl/fslview/icons/axialSlice.png

743 B

fsl/fslview/icons/axialSlice@2x.png

1.59 KiB

fsl/fslview/icons/axialSlice_32.png

906 B

fsl/fslview/icons/camera.png

520 B

fsl/fslview/icons/camera@2x.png

787 B

fsl/fslview/icons/camera_32.png

456 B

fsl/fslview/icons/chainlink_16.png

338 B | W: | H:

fsl/fslview/icons/chainlink.png

338 B | W: | H:

fsl/fslview/icons/chainlink_16.png
fsl/fslview/icons/chainlink.png
fsl/fslview/icons/chainlink_16.png
fsl/fslview/icons/chainlink.png
  • 2-up
  • Swipe
  • Onion skin
fsl/fslview/icons/chainlink@2x.png

625 B

fsl/fslview/icons/chainlink_20.png

384 B

fsl/fslview/icons/coronalSlice.png

630 B

fsl/fslview/icons/coronalSlice@2x.png

1.26 KiB

fsl/fslview/icons/coronalSlice_32.png

921 B

fsl/fslview/icons/eye.png

345 B

fsl/fslview/icons/eye@2x.png

559 B

fsl/fslview/icons/eye_16.png

353 B

fsl/fslview/icons/eye_20.png

365 B

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment