/*------------------------------------------------------------\ | | | This file is part of the Alliance CAD System Copyright | | (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie| | | | Home page : http://www-asim.lip6.fr/alliance/ | | E-mail : mailto:alliance-users@asim.lip6.fr | | | | This progam is free software; you can redistribute it | | and/or modify it under the terms of the GNU General Public | | License as published by the Free Software Foundation; | | either version 2 of the License, or (at your option) any | | later version. | | | | Alliance VLSI CAD System is distributed in the hope that | | it will be useful, but WITHOUT ANY WARRANTY; | | without even the implied warranty of MERCHANTABILITY or | | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General | | Public License for more details. | | | | You should have received a copy of the GNU General Public | | License along with the GNU C Library; see the file COPYING. | | If not, write to the Free Software Foundation, Inc., | | 675 Mass Ave, Cambridge, MA 02139, USA. | | | \------------------------------------------------------------*/ /*------------------------------------------------------------\ | | | Tool : GRAAL | | | | File : Panel.c | | | | Author : Jacomme Ludovic | | | | Date : 28.03.95 | | | \------------------------------------------------------------*/ /*------------------------------------------------------------\ | | | Include Files | | | \------------------------------------------------------------*/ # include # include # include # include # include # include # include # include # include # include # include # include # include "mut.h" # include "mph.h" # include "rds.h" # include "rpr.h" # include "GSB.h" # include "GTB.h" # include "GMX.h" # include "GMH.h" # include "GMH_panel.h" # include "LIP6bw.h" /*------------------------------------------------------------\ | | | Constants | | | \------------------------------------------------------------*/ /*------------------------------------------------------------\ | | | Types | | | \------------------------------------------------------------*/ /*------------------------------------------------------------\ | | | Variables | | | \------------------------------------------------------------*/ GraalPanelItem GraalHelpPresentPanel = { "Graal present", 1, 0, GRAAL_HELP_PRESENT_X, GRAAL_HELP_PRESENT_Y, 700, 360, 1, 1, (Widget)NULL, (Widget)NULL, (Widget)NULL, (Widget)NULL, 0, (GraalPanelButtonItem *)NULL }; int GraalHelpPresentDefaultValues[ 5 ] = { GRAAL_HELP_PRESENT_X, GRAAL_HELP_PRESENT_Y, 700, 360, 0 }; /*------------------------------------------------------------\ | | | Functions | | | \------------------------------------------------------------*/ /*------------------------------------------------------------\ | | | GraalBuildPresentPanel | | | \------------------------------------------------------------*/ void GraalBuildPresentPanel() { Widget PanelLabel; Widget PanelButton; Pixmap PanelPixmap; XmString PanelString; XmString PanelString1; XmString PanelString2; XmFontList PanelFontList; XFontStruct *PanelFont; Display *PanelDisplay; char Buffer[ 64 ]; Arg Args[3]; rdsbegin(); PanelDisplay = XtDisplay( GraalMainWindow ); PanelFont = XLoadQueryFont( PanelDisplay, "-*-helvetica-bold-o-*--24-*" ); PanelFontList = XmFontListCreate( PanelFont, "Panel_charset1" ); PanelFont = XLoadQueryFont( PanelDisplay, "-*-helvetica-bold-r-*--18-*" ); PanelFontList = XmFontListAdd( PanelFontList, PanelFont, "Panel_charset2" ); PanelFont = XLoadQueryFont( PanelDisplay, "-*-helvetica-bold-r-*--12-*" ); PanelFontList = XmFontListAdd( PanelFontList, PanelFont, "Panel_charset4" ); XtSetArg( Args[0], XmNshadowType , XmSHADOW_ETCHED_IN ); XtSetArg( Args[1], XmNdeleteResponse, XmDO_NOTHING ); XtSetArg( Args[2], XmNtitle , "Graal present" ); GraalHelpPresentPanel.PANEL = XmCreateFormDialog( GraalMainWindow, GraalHelpPresentPanel.TITLE, Args, 3); XtAddCallback( GraalHelpPresentPanel.PANEL, XmNdestroyCallback, GraalDestroyDialogCallback, NULL ); GraalHelpPresentPanel.PANEL_FORM = XtVaCreateManagedWidget( "", xmFormWidgetClass, GraalHelpPresentPanel.PANEL, XmNtopAttachment , XmATTACH_FORM, XmNbottomAttachment , XmATTACH_FORM, XmNleftAttachment , XmATTACH_FORM, XmNrightAttachment , XmATTACH_FORM, NULL ); GraalHelpPresentPanel.FRAME = XtVaCreateManagedWidget( "", xmFrameWidgetClass, GraalHelpPresentPanel.PANEL_FORM, XmNtopAttachment , XmATTACH_POSITION, XmNtopPosition , 05, XmNbottomAttachment, XmATTACH_POSITION, XmNbottomPosition , 95, XmNleftAttachment , XmATTACH_POSITION, XmNleftPosition , 05, XmNrightAttachment , XmATTACH_POSITION, XmNrightPosition , 95, NULL ); GraalHelpPresentPanel.FORM = XtVaCreateManagedWidget( "", xmFormWidgetClass, GraalHelpPresentPanel.FRAME, XmNtopAttachment , XmATTACH_POSITION, XmNtopPosition , 05, XmNbottomAttachment, XmATTACH_POSITION, XmNbottomPosition , 95, XmNleftAttachment , XmATTACH_POSITION, XmNleftPosition , 05, XmNrightAttachment , XmATTACH_POSITION, XmNrightPosition , 95, NULL ); PanelPixmap = GraalCreatePixmap( GraalMainWindow, LIP6bw_bits, LIP6bw_width, LIP6bw_height); PanelLabel = XtVaCreateManagedWidget( "", xmLabelGadgetClass, GraalHelpPresentPanel.FORM, XmNlabelType , XmPIXMAP, XmNlabelPixmap , PanelPixmap, NULL ); sprintf( Buffer, "ALLIANCE CAD SYSTEM %s\n", ALLIANCE_VERSION ); PanelString = XmStringCreateLtoR( Buffer, "Panel_charset2" ); PanelLabel = XtVaCreateManagedWidget( "", xmLabelWidgetClass, GraalHelpPresentPanel.FORM, XmNfontList , PanelFontList, XmNlabelString , PanelString, XmNtopAttachment , XmATTACH_POSITION, XmNtopPosition , 15, XmNrightAttachment , XmATTACH_POSITION, XmNrightPosition , 75, XmNleftAttachment , XmATTACH_POSITION, XmNleftPosition , 25, NULL ); XmStringFree( PanelString ); PanelString1 = XmStringCreateLtoR( "Graal" , "Panel_charset1" ); PanelString2 = XmStringCreateLtoR( "\n( Click On IT )", "Panel_charset4" ); PanelString = XmStringConcat( PanelString1, PanelString2 ); PanelButton = XtVaCreateManagedWidget( "", xmPushButtonWidgetClass, GraalHelpPresentPanel.FORM, XmNfontList , PanelFontList, XmNlabelString , PanelString, XmNshadowThickness , 3, XmNtopAttachment , XmATTACH_WIDGET, XmNtopWidget , PanelLabel, XmNtopOffset , 5, XmNrightAttachment , XmATTACH_POSITION, XmNrightPosition , 60, XmNleftAttachment , XmATTACH_POSITION, XmNleftPosition , 40, NULL ); XmStringFree( PanelString ); XmStringFree( PanelString1 ); XmStringFree( PanelString2 ); XtAddCallback( PanelButton, XmNactivateCallback, GraalExitDialogCallback, NULL ); sprintf( Buffer, "\nGraphic layout editor\nVersion %s", VERSION ); PanelString = XmStringCreateLtoR( Buffer, "Panel_charset2" ); PanelLabel = XtVaCreateManagedWidget( "", xmLabelWidgetClass, GraalHelpPresentPanel.FORM, XmNfontList , PanelFontList, XmNlabelString , PanelString, XmNtopAttachment , XmATTACH_WIDGET, XmNtopWidget , PanelButton, XmNtopOffset , 5, XmNrightAttachment , XmATTACH_POSITION, XmNrightPosition , 75, XmNleftAttachment , XmATTACH_POSITION, XmNleftPosition , 25, NULL ); XmStringFree( PanelString ); PanelString = XmStringCreateLtoR( "copyright \251 1996-2004 ASIM, \ CAO-VLSI Team\nWritten by Ludovic Jacomme and Frederic Venot\nE-mail : alliance-users@asim.lip6.fr", "Panel_charset4" ); PanelLabel = XtVaCreateManagedWidget( "", xmLabelWidgetClass, GraalHelpPresentPanel.FORM, XmNfontList , PanelFontList, XmNlabelString , PanelString, XmNtopAttachment , XmATTACH_WIDGET, XmNtopWidget , PanelLabel, XmNtopOffset , 5, XmNrightAttachment , XmATTACH_FORM, XmNleftAttachment , XmATTACH_FORM, NULL ); XmStringFree( PanelString ); rdsend(); } /*------------------------------------------------------------\ | | | GraalEnterPresentPanel | | | \------------------------------------------------------------*/ void GraalEnterPresentPanel() { rdsbegin(); GraalEnterPanel( &GraalHelpPresentPanel ); GraalLimitedLoop( GraalHelpPresentPanel.PANEL ); GraalExitPanel( &GraalHelpPresentPanel ); rdsend(); }