NonPositionableExternalStream.st
branchjv
changeset 25462 548cb62b20c7
parent 24087 4e07aa20b902
equal deleted inserted replaced
25461:447083a77d9e 25462:548cb62b20c7
     1 "
     1 "
     2  COPYRIGHT (c) 1989 by Claus Gittinger
     2  COPYRIGHT (c) 1989 by Claus Gittinger
     3  COPYRIGHT (c) 2017 Jan Vrany
     3  COPYRIGHT (c) 2017 Jan Vrany
       
     4  COPYRIGHT (c) 2023 LabWare
     4 	      All Rights Reserved
     5 	      All Rights Reserved
     5 
     6 
     6  This software is furnished under a license and may be used
     7  This software is furnished under a license and may be used
     7  only in accordance with the terms of that license and with the
     8  only in accordance with the terms of that license and with the
     8  inclusion of the above copyright notice.   This software may not
     9  inclusion of the above copyright notice.   This software may not
    47 
    48 
    48 copyright
    49 copyright
    49 "
    50 "
    50  COPYRIGHT (c) 1989 by Claus Gittinger
    51  COPYRIGHT (c) 1989 by Claus Gittinger
    51  COPYRIGHT (c) 2017 Jan Vrany
    52  COPYRIGHT (c) 2017 Jan Vrany
       
    53  COPYRIGHT (c) 2023 LabWare
    52 	      All Rights Reserved
    54 	      All Rights Reserved
    53 
    55 
    54  This software is furnished under a license and may be used
    56  This software is furnished under a license and may be used
    55  only in accordance with the terms of that license and with the
    57  only in accordance with the terms of that license and with the
    56  inclusion of the above copyright notice.   This software may not
    58  inclusion of the above copyright notice.   This software may not
   270     aBoolean ifFalse:[
   272     aBoolean ifFalse:[
   271 	super buffered:false.
   273 	super buffered:false.
   272     ].
   274     ].
   273 !
   275 !
   274 
   276 
   275 setCommandString:dummyString
       
   276     "dummy for PipeStream compatibility"
       
   277 
       
   278     "Created: / 29-10-2018 / 18:06:44 / Claus Gittinger"
       
   279 !
       
   280 
       
   281 getTTYAttributes
   277 getTTYAttributes
   282     "Return (UNIX) TTY / PTY attributes for this stream as an instance of
   278     "Return (UNIX) TTY / PTY attributes for this stream as an instance of
   283      UnixTerminalAttributes. Throw an error if terminal attributes cannot 
   279      UnixTerminalAttributes. Throw an error if terminal attributes cannot 
   284      be retrieved (OS call fails, stream does  not refer to terminal or 
   280      be retrieved (OS call fails, stream does  not refer to terminal or 
   285      opration is not supported by this operating system. 
   281      opration is not supported by this operating system. 
   291     "
   287     "
   292     Stdout ttyAttributes
   288     Stdout ttyAttributes
   293     "
   289     "
   294 
   290 
   295     "Created: / 30-05-2017 / 20:55:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   291     "Created: / 30-05-2017 / 20:55:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   292 !
       
   293 
       
   294 setCommandString:dummyString
       
   295     "dummy for PipeStream compatibility"
       
   296 
       
   297     "Created: / 29-10-2018 / 18:06:44 / Claus Gittinger"
       
   298 !
       
   299 
       
   300 setLocalEcho: aBoolean
       
   301     | attrs |
       
   302 
       
   303     attrs := self getTTYAttributes.
       
   304     aBoolean ifTrue:[ 
       
   305         attrs c_lflag: (attrs c_lflag bitOr: ECHO).
       
   306     ] ifFalse:[ 
       
   307         attrs c_lflag: (attrs c_lflag bitClear: ECHO).
       
   308     ].
       
   309     self setTTYAttributes: attrs.
       
   310 
       
   311     "Created: / 02-08-2023 / 13:02:49 / Jan Vrany <jan.vrany@labware.com>"
       
   312 !
       
   313 
       
   314 setOutputCRLF: aBoolean
       
   315     | attrs |
       
   316 
       
   317     attrs := self getTTYAttributes.
       
   318     aBoolean ifTrue:[ 
       
   319         attrs c_oflag: (attrs c_oflag bitOr: ONLCR).
       
   320     ] ifFalse:[ 
       
   321         attrs c_oflag: (attrs c_oflag bitClear: ONLCR).
       
   322     ].
       
   323     self setTTYAttributes: attrs.
       
   324 
       
   325     "Created: / 02-08-2023 / 13:03:11 / Jan Vrany <jan.vrany@labware.com>"
   296 !
   326 !
   297 
   327 
   298 setTTYAttributes: aUnixTerminalAttributes
   328 setTTYAttributes: aUnixTerminalAttributes
   299     "Set (UNIX) TTY / PTY attributes for this stream. Throw an error if 
   329     "Set (UNIX) TTY / PTY attributes for this stream. Throw an error if 
   300      terminal attributes cannot be set (OS call fails, stream does  not 
   330      terminal attributes cannot be set (OS call fails, stream does  not