If the user cancels the dialog, this will return `None` and cause a traceback:

```
Traceback (most recent call last):
  File "/Users/rkern/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/pyface/ui/qt4/action/action_item.py", line 163, in _qt4_on_triggered
    self.controller.perform(action, action_event)
  File "/Users/rkern/git/et/enable/enable/tools/pyface/context_menu_tool.py", line 36, in perform
    return action.perform(event)
  File "/Users/rkern/git/et/ensemble/ensemble/ctf/menu_tool.py", line 61, in perform
    new_value = (color_val[0],) + self.prompt_color(color_val[1:])
  File "ctf_demo.py", line 39, in get_color
    return color_as_tuple(ColorDialog.get_color(**dlg_kwargs))
  File "ctf_demo.py", line 30, in color_as_tuple
    return (color.red/255., color.green/255., color.blue/255.)
AttributeError: 'NoneType' object has no attribute 'red'
```