Next Routine
|
 
pro xin_event, event common info,def_value,stat on_error,1 widget_control, event.id, get_uvalue = uservalue wtype=widget_info(event.id,/type) if wtype eq 1 then begin bname=strtrim(uservalue,2) if bname eq 'CANCEL' then stat=0 else stat=1 xkill,event.top endif if wtype eq 3 then begin widget_control,event.id,get_value=def_value endif return & end ;--------------------------------------------------------------------------- pro xin,text,instruct,group=group,status=status common info,def_value,stat on_error,1 bfont="-adobe-courier-bold-r-normal--25-180-100-100-m-150-iso8859-1" bfont=(get_dfont(bfont))(0) tfont='-*-courier-*-r-normal-*-18-*-*-*-*-*-*-*' tfont=(get_dfont(tfont))(0) if tfont eq '' then tfont = '9x15bold' wbase=widget_base(title='LZ 3D INPUT',/column) if n_elements(ysize) eq 0 then ysize=1 if datatype(text) eq 'STR' then def_value=text else def_value='' def_value=strtrim(def_value,2) text=def_value sz=size(def_value) if sz(0) eq 1 then ysize=(sz(1) < 10) xsize=max(strlen(text)) + 2 if datatype(instruct) eq 'STR' then begin comment=instruct comment=[' ',comment,' '] csize=n_elements(comment) < 25 row1=widget_base(wbase,/column) wtext=widget_text(row1,xsize=max(strlen(instruct)) > xsize,ysize=csize,$ value=comment,font=tfont,scroll=csize gt 24) endif row2=widget_base(wbase,/column) wtext=widget_text(row2,xsize=xsize,ysize=ysize,/editable,/all,font=tfont,value=def_value) row3=widget_base(wbase,/row) temp1=widget_base(row3,/row) quit=widget_button(temp1,value='CANCEL',uvalue='CANCEL',font=bfont) temp2=widget_base(row3,/row) ok=widget_button(temp2,value='ACCEPT',uvalue='ACCEPT',font=bfont) if n_elements(def_value) eq 1 then text_sel= strlen(def_value)+1 else $ text_sel=1 widget_control,/realize,wbase xmanager,'xin',wbase,group=group,/modal text=def_value & status=stat return & end
Last revised: - Wed May 9 21:45:24 2007- F. Auchère