Re: Can I make entries in CW_PDMENU insensitive? [message #14392 is a reply to message #14385] |
Wed, 24 February 1999 00:00   |
Liam Gumley
Messages: 473 Registered: November 1994
|
Senior Member |
|
|
Steffen Luesse wrote:
> I am using IDL 5.2 on solaris 2.6. I want to use the CW_PDMENU routine
> to create a pull-down menu in my widget programs. In principle,
> everything works well. However, I am wondering if it is possible to make
> some menu entries insensitive like I can do it with buttons or sliders
> when they should not be used. I did not find any information about my
> problem in the IDL documentation and would appreciate if anybody could
> give me a hint.
The following example expands a little on the excellent tip by David
Fanning. Here I've tried to replicate part of the menu bar of a well
known word processor. I think it demonstrates the concepts that are of
interest in this case.
Does anyone know how to include a separator line between menu items,
e.g. between 'Close' and 'Send To'?
Cheers,
Liam.
;---cut here---
PRO MENU_TEST
;- Create top level base with menu bar
base = widget_base( title = 'Menu Test', mbar=menu_bar )
;- Create File menu
file_menu = widget_button( menu_bar, value='File', /menu )
file_but1 = widget_button( file_menu, value='New... Ctrl+N' )
file_but2 = widget_button( file_menu, value='Open... Ctrl+O' )
file_but3 = widget_button( file_menu, value='Close' )
file_but4 = widget_button( file_menu, value='Send To', /menu )
send_but1 = widget_button( file_but4, value='Mail Recipient...' )
send_but2 = widget_button( file_but4, value='Routing Recipient...' )
send_but3 = widget_button( file_but4, value='Exchange Folder...' )
send_but4 = widget_button( file_but4, value='Fax Recipient...' )
file_but5 = widget_button( file_menu, value='Exit' )
;- Create Edit menu
edit_menu = widget_button( menu_bar, value='Edit', /menu )
edit_but1 = widget_button( edit_menu, value='Cut Ctrl+X' )
edit_but2 = widget_button( edit_menu, value='Copy Ctrl+C' )
edit_but3 = widget_button( edit_menu, value='Paste Ctrl+V' )
edit_but4 = widget_button( edit_menu, value='Paste Special...' )
;- Make Cut and Copy items insensitive
widget_control, edit_but1, sensitive=0
widget_control, edit_but2, sensitive=0
;- Realize widgets
widget_control, base, /realize
END
;---cut here---
---
Liam E. Gumley
Space Science and Engineering Center, UW-Madison
http://cimss.ssec.wisc.edu/~gumley
|
|
|