!
! Motif
!
! Copyright (c) 1987-2012, The Open Group. All rights reserved.
!
! These libraries and programs are free software; you can
! redistribute them and/or modify them under the terms of the GNU
! Lesser General Public License as published by the Free Software
! Foundation; either version 2 of the License, or (at your option)
! any later version.
!
! These libraries and programs are distributed in the hope that
! they will be useful, but WITHOUT ANY WARRANTY; without even the
! implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
! PURPOSE. See the GNU Lesser General Public License for more
! details.
!
! You should have received a copy of the GNU Lesser General Public
! License along with these librararies and programs; if not, write
! to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
! Floor, Boston, MA 02110-1301 USA
!
!
! 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;