;+
; Project	: SOHO - LASCO/EIT
;
; Name		: WCURRENT 
;
; Purpose	: 
;
; Category      : Widgets
;
; Explanation	: 
;
; Syntax	: wcurrent
;
; Examples      :
;
; Inputs	: 
;
; Opt. Inputs	: 
;
; Outputs	: 
;
; Opt. Outputs	:
;
; Keywords	: 
;
; Common	:
;
; Restrictions  : None.
;
; Side effects	: None.
;
; History	: 12-jun-1994,Borut Podlipnik, MPAe, Written
;
; Contact       : BP, borut@lasco1.mpae.gwdg.de
;-
;

PRO wcurrent_event,event

COMMON current_block,WCurrBase,p_info,int_base,flag,tv_flag,image1,name1,bl,br

@lasco.com
@wload.com
@chandle.com

 WIDGET_CONTROL,event.id,GET_UVALUE=uval
 IF n_elements(image) EQ 0 THEN uval = "OK"
 CASE uval OF

       "SELECT": BEGIN
		  ind = event.index
		  IF string_name(ind) EQ 'no images' THEN RETURN
		  IF N_ELEMENTS(ind) GT 0 THEN ind = ind(0)

                  index = sel_array(ind)
                  ghandle,index
	
                 IF (XRegistered("display",/NOSHOW) NE 0) THEN BEGIN

		 ; WIDGET_CONTROL,dis.id_win3,BAD_ID=result 
		  ;IF result EQ 0 THEN BEGIN 
                    ;WIDGET_CONTROL,dis.id_th,SET_VALUE = head
                    WIDGET_CONTROL,dis.id_ln,SET_VALUE = name
       		  ;ENDIF
                   ERASE
                  ; WSET,dis.win1; & TVSCL,image>min_img<max_img,h.r1col-21,h.r1row-1
                   
                   tvscl_image,index,1,dswitch=dis.ff_dswitch,clear=1
                   
                  ; WSET,dis.win3 
                  ; TVSCL,a3>min_img<max_img,FIX((h.r1col-21)/8),FIX((h.r1row-1)/8) 
                  ; WSET,dis.win1
                    
                 ENDIF ELSE BEGIN
                   WINDOW,0,XSIZE=sz(1),YSIZE=sz(2)
                   TVSCL,image>min_img<max_img
                 ENDELSE

		 END
 
         "OK": BEGIN
                  WIDGET_CONTROL, event.top, /DESTROY
		  IF N_ELEMENTS(slidebase) GT 0 THEN BEGIN
			WIDGET_CONTROL,slidebase,BAD_ID=result
			IF result eq 0 THEN WIDGET_CONTROL,slidebase, /DESTROY
		  ENDIF
                 END

 ELSE: donothing=0 
 ENDCASE

END


PRO wcurrent,GROUP=GROUP

COMMON current_block,WCurrBase,p_info,int_base,flag,tv_flag,image1,name1,bl,br

@lasco.com
@wload.com
@chandle.com


IF (XRegistered("wcurrent") NE 0) THEN RETURN
IF xvalidl('wimg_info3', id = parent ) THEN WIDGET_CONTROL,parent,/DESTROY

IF N_ELEMENTS(tv_flag) EQ 0 THEN tv_flag = 1
;IF N_ELEMENTS(dis.id_th) EQ 0 THEN dis.id_th = -1

IF sel_array(0) EQ -1 THEN BEGIN
 wmessage,title='Warning',text=' No activ image(s) in memory !',xsize=35,ysize=2
 RETURN
ENDIF

tmp_str = hdrsinfo1(sel_array, MEM=1)
label=" FILENAME DATE_OBS TIME_OBS INST EXPTIME FILTER POLAR" + $
      " WAVELENG NAXIS1 NAXIS2 P1COL P2COL SUMROW SUMCOL"

;label = label + STRING('NAXIS1',format='(a6)')
;label = label + STRING('NAXIS1',format='(a6)')

;label = label + STRING('WAVELENG',format='(a8)')
;label = label + STRING('NAXIS1',format='(a6)')
;label = label + STRING('NAXIS2',format='(a6)')
;label = label + STRING('P1COL',format='(a6)')
;label = label + STRING('P2COL',format='(a6)')
;label = label + STRING('SUMROW',format='(a4)')
;label = label + STRING('SUMCOL',format='(a4)')

if n_elements(new_path) EQ 0 then cd, CURRENT = new_path
if n_elements(name) EQ 0 THEN name = ' '

WCurrBase = WIDGET_BASE(TITLE = " Active Image(s) ",/FRAME,/COLUMN)

bb = WIDGET_BASE(WCurrBase,/ROW)
bc = WIDGET_BASE(bb,/COLUMN)
b0 = WIDGET_BUTTON(bb,VALUE='Dismiss',UVALUE='OK',XSIZE=900,/ALIGN_CENTER)

r0 = WIDGET_BASE (WCurrBase,/FRAME,/ROW)
t1 = WIDGET_BASE (r0,/ROW)
wl = WIDGET_LABEL(t1,VALUE=label)

lcol    = WIDGET_BASE(WCurrBase, /FRAME, /ROW)
int_base = WIDGET_BASE(lcol,/COLUMN)

p_info = WIDGET_LIST(int_base ,VALUE=tmp_str,XSIZE=125,YSIZE=10, $
                           /FRAME, UVALUE='SELECT')

WIDGET_CONTROL, WCurrBase, /REALIZE
index = where(string_name EQ name)

XMANAGER,"wcurrent",WCurrBase, $               
                EVENT_HANDLER = "wcurrent_event", $
                GROUP_LEADER = GROUP

END

