Kenneth_Smith
Joined: 18 May 2012 Posts: 697 Location: Hamilton, Lanarkshire, Scotland.
|
Posted: Tue Dec 29, 2020 2:27 am Post subject: %`fl with [height] and [vertical_fill] options |
|
|
When the new options [height] and [vertical_fill] are used with %`fl, the combo drop down boxes do not expand to display the full range of available options. If there are 9 options, only 7 are displayed. The new options when used with %fl display the full 9 options.
The sample code below illustrates the problem.
Code: | program demo_ls
use clrwin
implicit none
integer, parameter :: n = 9
real*8 :: voltage(n) = (/2.3,3.0,3.3,4.16,6.0,6.6,10.0,11.0,13.8/)
real*8 ls_number_voltage(n)
character(len=8) ls_string_voltage(n)
integer size_ls_string_voltage
integer :: v_select = 1
integer i, iw
do i = 1, n
ls_number_voltage(i) = voltage(i)
write(ls_string_voltage(i),'(F6.3,2X)') ls_number_voltage(i)
end do
size_ls_string_voltage = n
iw = winio@('%fn[Consolas]&')
iw = winio@('%ts&',1.d0)
iw = winio@('%bg&',rgb@(200,200,200))
iw = winio@('This shows a problem with `ls with new [height] and [vertical fill] options&')
iw = winio@('%nl%3.1ob&')
iw = winio@('This drop down combo %nlautomatically expands %nlshowing all 9 items&')
iw = winio@('%3nl%cn%`bg[white]&')
iw = winio@('%`ls&',ls_string_voltage,size_ls_string_voltage,v_select)
iw = winio@('%nl %cb&')
iw = winio@('%bfThis drop down combo %nlexpands to display %nlonly 7 items with [height=16]&')
iw = winio@('%nlSame behaviour with [height=24]%`bf&')
iw = winio@('%2nl%cn%`bg[white]&')
iw = winio@('%`ls[height=*]&',16,ls_string_voltage,size_ls_string_voltage,v_select)
iw = winio@('%nl %cb&')
iw = winio@('%bfThis drop down combo %nlexpands to display %nlonly 7 items [vertical_fill=0.0]&')
iw = winio@('%nlSame behaviour with [vertical_fill=0.5]%`bf&')
iw = winio@('%2nl%cn%`bg[white]&')
iw = winio@('%`ls[vertical_fill=0.0]&',ls_string_voltage,size_ls_string_voltage,v_select)
iw = winio@('%nl %cb&')
iw = winio@('%ff%nlWith the ` modifier removed new options work as expected&')
iw = winio@('%nl%3.1ob&')
iw = winio@('%cn%`bg[white]%ls%cb&',ls_string_voltage,size_ls_string_voltage,v_select)
iw = winio@('%cn%`bg[white]%ls[height=*]%cb&',24,ls_string_voltage,size_ls_string_voltage,v_select)
iw = winio@('%cn%`bg[white]%ls[vertical_fill=0.5]%cb&',ls_string_voltage,size_ls_string_voltage,v_select)
iw = winio@(' ')
end program demo_ls
|
Ken |
|