FUNCTION qImage_cw_Show, state, event, update=update

;+
; NAME:
;	qImage_cw_Show
; PURPOSE:
;	Handles zooming and rebinning in qImage_cw
; CATEGORY:
;	sat/idl/widget/qimage_cw
; CALLING SEQUENCE:
;	qImage_cw_Show, state, event
; INPUTS:
; OPTIONAL INPUT PARAMETERS:
; OUTPUTS:
; OPTIONAL OUTPUT PARAMETERS:
; INCLUDE:
	@compile_opt.pro		; On error, return to caller
; CALLS:
;	IsType
; PROCEDURE:
; MODIFICATION HISTORY:
;	JUL-2005, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
;-

InitVar, update, /key

set_image_value = 1

CASE update OF

0: BEGIN

	event_name = tag_names(event, /structure_name)

	CASE event_name EQ 'QSHOW_SEND' OF

	0: BEGIN						; Event from state.wid_show button

		widget_control, state.wid_show, get_uvalue=show_state, /no_copy
		qShow, group=event.handler, state=show_state;, destroy=1-event.select
		widget_control, state.wid_show, set_uvalue=show_state, /no_copy

	END

	1: BEGIN

		widget_control, state.wid_show, get_uvalue=show_state, /no_copy

		show_state.send   = event 	; Event from qShow widget
		;show_state.update = 1
		update = show_state.send.update

		widget_control, state.wid_show, set_uvalue=show_state, /no_copy

		set_image_value = 0

		CASE update OF
		1	: qImage_cw_Update, state, /no_zupdate
		2	: qImage_cw_ctable, state
		3	: 
		4	: BEGIN
			qImage_cw_Box, state, /fullsize
			qImage_cw_Update, state
		END
		5	: qImage_cw_Histogram, state, event
		6	: set_image_value = event.fixz AND event.zmin LT event.zmax
		7	: set_image_value = 1
		8	: set_image_value = 1
		9	: set_image_value = event.fixz AND event.zmin LT event.zmax
		10	: set_image_value = event.fixz AND event.zmin LT event.zmax
		ELSE: set_image_value = 1
		ENDCASE

	END

	ENDCASE 

END

1: BEGIN

	widget_control, state.wid_show, get_uvalue=show_state, /no_copy
	qShow, state=show_state, /update
	widget_control, state.wid_show, set_uvalue=show_state, /no_copy

END

ENDCASE

RETURN, set_image_value  &  END
