You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
149 lines
4.4 KiB
Fortran
149 lines
4.4 KiB
Fortran
5 years ago
|
Subroutine NodeDisp(nin)
|
||
|
|
||
|
USE WINTERACTER
|
||
|
USE BLK1MOD
|
||
|
!
|
||
|
include 'd.inc'
|
||
|
! INCLUDE 'BLK1.COM'
|
||
|
|
||
|
INCLUDE 'TXFRM.COM'
|
||
|
!IPK MAY02 COMMON /TXFRM/ XS, YS, TXSCAL
|
||
|
!
|
||
|
!
|
||
|
! Declare window-type and message variables
|
||
|
!
|
||
|
TYPE(WIN_STYLE) :: WINDOW
|
||
|
|
||
|
TYPE(WIN_MESSAGE) :: MESSAGE
|
||
|
|
||
|
INTEGER :: N,IBOX,NN
|
||
|
INTEGER :: IERR
|
||
|
CHARACTER*1 :: IFLAG
|
||
|
|
||
|
if(nin .eq. 0) then
|
||
|
n=1
|
||
|
else
|
||
|
n=nin
|
||
|
endif
|
||
|
ims=0
|
||
|
100 continue
|
||
|
call wdialogload(IDD_NODEDATA)
|
||
|
ierr=infoerror(1)
|
||
|
|
||
|
CALL WDialogPutInteger(IDF_INTEGER1,N)
|
||
|
NN=N
|
||
|
XTEMP=XUSR(N)
|
||
|
YTEMP=YUSR(N)
|
||
|
WDTEMP=WIDTH(N)
|
||
|
CALL WDialogPutReal(IDF_REAL1,XTEMP,'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL2,YTEMP,'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL3,WD(N),'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL4,WDTEMP,'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL5,SS1(N),'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL6,SS2(N),'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL7,WIDS(N),'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL8,WIDBS(N),'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL9,SSO(N),'(F10.2)')
|
||
|
CALL WDialogPutReal(IDF_REAL10,BS1(N),'(F10.4)')
|
||
|
IF(LOCK(N) .NE. 0) then
|
||
|
CALL WDialogPutCheckBox(IDF_CHECK1,1)
|
||
|
ELSE
|
||
|
CALL WDialogPutCheckBox(IDF_CHECK1,0)
|
||
|
ENDIF
|
||
|
|
||
|
CALL WDialogSelect(IDD_NODEDATA)
|
||
|
ierr=infoerror(1)
|
||
|
|
||
|
CALL WDialogShow(-1,-1,0,Modeless)
|
||
|
ierr=infoerror(1)
|
||
|
|
||
|
if(ims .eq. 1 .or. nin .gt. 0) go to 200
|
||
|
150 CONTINUE
|
||
|
call wdialogload(IDD_SELNODE)
|
||
|
ierr=infoerror(1)
|
||
|
|
||
|
CALL WDialogPutInteger(IDF_INTEGER1,N)
|
||
|
|
||
|
CALL WDialogSelect(IDD_SELNODE)
|
||
|
ierr=infoerror(1)
|
||
|
|
||
|
CALL WDialogShow(-1,-1,0,ModaL)
|
||
|
ierr=infoerror(1)
|
||
|
|
||
|
do
|
||
|
IF (WInfoDialog(ExitButton) .EQ. IDOK) THEN
|
||
|
CALL WDialogGetInteger(IDF_INTEGER1,N)
|
||
|
ims=1
|
||
|
go to 100
|
||
|
endif
|
||
|
!ipk sep02
|
||
|
ims=1
|
||
|
go to 100
|
||
|
enddo
|
||
|
|
||
|
200 continue
|
||
|
! CALL WDialogSelect(IDD_NODEDATA)
|
||
|
! ierr=infoerror(1)
|
||
|
! Branch depending on type of message.
|
||
|
!
|
||
|
! CALL WDialogGetInteger(IDF_INTEGER1,N)
|
||
|
! WRITE(90,*) 'IN NODEDISP N,NN', N,NN
|
||
|
! IF(N .NE. NN) go to 100
|
||
|
|
||
|
DO
|
||
|
!WHILE(.NOT.QUIT)
|
||
|
CALL WMessage(ITYPE,MESSAGE)
|
||
|
SELECT CASE (ITYPE)
|
||
|
CASE (PushButton)
|
||
|
IF(MESSAGE%VALUE1.EQ.IDOK) THEN
|
||
|
CALL WDialogGetInteger(IDF_INTEGER1,N)
|
||
|
CALL WDialogGetReal(IDF_REAL1,XTEMP)
|
||
|
CALL WDialogGetReal(IDF_REAL2,YTEMP)
|
||
|
XUSR(N)=XTEMP
|
||
|
YUSR(N)=YTEMP
|
||
|
CALL WDialogGetReal(IDF_REAL3,WD(N))
|
||
|
CALL WDialogGetReal(IDF_REAL4,WDTEMP)
|
||
|
CALL WDialogGetReal(IDF_REAL5,SS1(N))
|
||
|
CALL WDialogGetReal(IDF_REAL6,SS2(N))
|
||
|
CALL WDialogGetReal(IDF_REAL7,WIDS(N))
|
||
|
CALL WDialogGetReal(IDF_REAL8,WIDBS(N))
|
||
|
CALL WDialogGetReal(IDF_REAL9,SSO(N))
|
||
|
CALL WDialogGetReal(IDF_REAL10,BS1(N))
|
||
|
CORD(N,1)=(XUSR(N)+XS)/TXSCAL
|
||
|
CORD(N,2)=(YUSR(N)+YS)/TXSCAL
|
||
|
call WDialogHide()
|
||
|
call wdialogUNload()
|
||
|
WIDTH(N)=WDTEMP
|
||
|
RETURN
|
||
|
ELSEIF(MESSAGE%VALUE1.EQ.IDNEXT) THEN
|
||
|
CALL WDialogGetInteger(IDF_INTEGER1,N)
|
||
|
CALL WDialogGetReal(IDF_REAL1,XTEMP)
|
||
|
CALL WDialogGetReal(IDF_REAL2,YTEMP)
|
||
|
XUSR(N)=XTEMP
|
||
|
YUSR(N)=YTEMP
|
||
|
CALL WDialogGetReal(IDF_REAL3,WD(N))
|
||
|
CALL WDialogGetReal(IDF_REAL4,WDTEMP)
|
||
|
CALL WDialogGetReal(IDF_REAL5,SS1(N))
|
||
|
CALL WDialogGetReal(IDF_REAL6,SS2(N))
|
||
|
CALL WDialogGetReal(IDF_REAL7,WIDS(N))
|
||
|
CALL WDialogGetReal(IDF_REAL8,WIDBS(N))
|
||
|
CALL WDialogGetReal(IDF_REAL9,SSO(N))
|
||
|
CALL WDialogGetReal(IDF_REAL10,BS1(N))
|
||
|
CORD(N,1)=(XUSR(N)+XS)/TXSCAL
|
||
|
CORD(N,2)=(YUSR(N)+YS)/TXSCAL
|
||
|
WIDTH(N)=WDTEMP
|
||
|
GO TO 150
|
||
|
ELSEIF(MESSAGE%VALUE1.EQ.IDCANCEL) THEN
|
||
|
call WDialogHide()
|
||
|
call wdialogUNload()
|
||
|
RETURN
|
||
|
ENDIF
|
||
|
END SELECT
|
||
|
END DO
|
||
|
|
||
|
|
||
|
|
||
|
RETURN
|
||
|
END
|
||
|
|
||
|
|