! ! @OPENGROUP_COPYRIGHT@ ! COPYRIGHT NOTICE ! Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc. ! Copyright (c) 1996, 1997, 1998, 1999, 2000 The Open Group ! ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for ! the full copyright text. ! ! This software is subject to an open license. It may only be ! used on, with or for operating systems which are themselves open ! source systems. You must contact The Open Group for a license ! allowing distribution and sublicensing of this software on, with, ! or for operating systems which are not Open Source programs. ! ! See http://www.opengroup.org/openmotif/license for full ! details of the license agreement. Any use, reproduction, or ! distribution of the program constitutes recipient's acceptance of ! this agreement. ! ! EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS ! PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ! KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY ! WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY ! OR FITNESS FOR A PARTICULAR PURPOSE ! ! EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT ! NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, ! INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ! DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED ! AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ! LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ! ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE ! EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE ! POSSIBILITY OF SUCH DAMAGES. ! ! ! HISTORY ! ! $XConsortium: menuBar.uil /main/8 1995/07/13 20:48:28 drk $ !****************************************************************************** module Test version = 'v1.0' names = case_sensitive include file "menuBar.msg"; procedure exit_test(); Report_Callback(string); value wheat : color('wheat'); navy : color('navy'); object ! The main window widget. S_MAIN_WIDGET : XmBulletinBoard { arguments { XmNx = 0; XmNy = 0; }; controls { XmBulletinBoardDialog explanation; XmMenuBar Menu_Bar; }; }; value green: color ('green'); MediumBlue: color ('MediumBlue'); black: color ('black'); navy_blue: color ('navy blue'); red: color('red'); object Menu_Bar : XmMenuBar { arguments { XmNborderWidth = 50; XmNbackground = green; XmNwidth = 200; XmNheight = 100; XmNborderColor = MediumBlue; XmNshadowThickness = 5; XmNbottomShadowColor = navy_blue; XmNmarginWidth = 10; XmNmarginHeight = 10; XmNpacking = XmPACK_COLUMN; XmNentryAlignment = XmALIGNMENT_CENTER; }; controls { XmCascadeButton cb1; XmCascadeButton cb2; }; }; ! Create Two Pulldown Menus - ! One with two toggle buttons - valueChangedCallback ON ! Another with two Pushbuttons - armCallback ON ! Both Pulldowns are controls off of CascadeButtons. object cb1 : XmCascadeButton { arguments { XmNlabelString = compound_string('PullDown 1'); XmNborderWidth = 2; }; controls { XmPulldownMenu pdm1; }; }; object cb2 : XmCascadeButton { arguments { XmNlabelString = compound_string('PullDown 2'); XmNborderWidth = 2; }; controls { XmPulldownMenu pdm2; }; }; object pdm1 : XmPulldownMenu { arguments { XmNtearOffModel = XmTEAR_OFF_ENABLED; }; callbacks { XmNtearOffMenuActivateCallback = procedure Report_Callback ('Pulldown1: tearOffMenuActivateCallback called'); XmNtearOffMenuDeactivateCallback = procedure Report_Callback ('Pulldown1: XmNtearOffMenuDeactivateCallback called'); }; controls { XmToggleButton tb1; XmToggleButton tb2; Xm_TearOffControl { arguments { XmNbackground = wheat; XmNshadowThickness = 2; XmNseparatorType = XmDOUBLE_DASHED_LINE; }; }; }; }; object pdm2 : XmPulldownMenu { arguments { XmNtearOffModel = XmTEAR_OFF_ENABLED; }; callbacks { XmNtearOffMenuActivateCallback = procedure Report_Callback ('Pulldown2: tearOffMenuActivateCallback called'); XmNtearOffMenuDeactivateCallback = procedure Report_Callback ('Pulldown2: XmNtearOffMenuDeactivateCallback called'); }; controls { XmPushButton pb1; XmPushButton pb2; Xm_TearOffControl { arguments { XmNbackground = red; XmNshadowThickness = 2; XmNseparatorType = XmDOUBLE_DASHED_LINE; }; }; }; }; object tb1 : XmToggleButton { arguments { XmNlabelString = compound_string('Toggle 1'); }; callbacks { XmNvalueChangedCallback = procedure Report_Callback ('valueChangedCallback - Toggle Button 1'); }; }; object tb2 : XmToggleButton { arguments { XmNlabelString = compound_string('Toggle 2'); }; callbacks { XmNvalueChangedCallback = procedure Report_Callback ('valueChangedCallback - Toggle Button 2'); }; }; object pb1: XmPushButton { arguments { XmNlabelString = compound_string('Push_Button 1'); }; callbacks { XmNarmCallback = procedure Report_Callback('armCallback - Push Button 1'); }; }; object pb2: XmPushButton { arguments { XmNlabelString = compound_string('Push_Button 2'); }; callbacks { XmNarmCallback = procedure Report_Callback('armCallback - Push Button 2'); }; }; object explanation : XmBulletinBoardDialog { arguments { XmNx = 500; XmNy = 0; XmNdefaultPosition = false; XmNbackground = wheat; XmNforeground = navy; }; controls { XmPushButton pushb1; XmLabel label1; XmText text1; }; }; object pushb1 : XmPushButton { arguments { XmNx = 0; XmNy = 0; XmNbackground = wheat; XmNforeground = navy; XmNlabelString = compound_string("Exit"); }; callbacks { XmNarmCallback = procedure exit_test(); }; }; object label1 : XmLabel { arguments { XmNx = 60; XmNy = 0; XmNbackground = wheat; XmNforeground = navy; XmNlabelString = compound_string("Explanation of Widget Displayed"); }; }; object text1 : XmText { arguments { XmNx = 0; XmNy = 40; XmNheight = 480; XmNwidth = 300; XmNwordWrap = true; XmNeditMode = XmMULTI_LINE_EDIT; XmNeditable = false; XmNbackground = wheat; XmNforeground = navy; XmNvalue = message; }; }; end module;