VDBAbstractUnixConsoleApplication.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 13 Mar 2019 13:54:14 +0000
changeset 148 7d2d523173af
parent 143 df7f89efd39d
child 159 c00d27805420
permissions -rw-r--r--
Workaround: assume native target when issuing `run` or `attach` commands using simple console Background command execution is not supported by some targets, most notably by Windows native target. However, at the point we have to decided whether use background execution or not, we don't know which target will get connected and therefore we cannot check target features. So, make a guess and assime we gonna use native target. This is so bad, this *absolutely* has to be fixed somehow.

"
jv:vdb - Visual / VM Debugger
Copyright (C) 2015-now Jan Vrany

This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'

You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
"
"{ Package: 'jv:vdb' }"

"{ NameSpace: Smalltalk }"

VDBAbstractConsoleApplication subclass:#VDBAbstractUnixConsoleApplication
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'VDB-UI-Console-Unix'
!

!VDBAbstractUnixConsoleApplication class methodsFor:'documentation'!

copyright
"
jv:vdb - Visual / VM Debugger
Copyright (C) 2015-now Jan Vrany

This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'

You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
"
! !

!VDBAbstractUnixConsoleApplication class methodsFor:'accessing - defaults'!

defaultWindowTitle
    "Returns default window title for this application. By default,
     extracts the title from #windowSpec.
     
     Subclasses may (must) override this method."

    ^ self shouldImplement:'Override #defaultWindowTitle in concrete classes'
! !

!VDBAbstractUnixConsoleApplication class methodsFor:'startup-web applications'!

initialPageSpec
    "this is only required for web-applications"

    ^ self shouldImplement
!

pageSpecs
    "this is only required for web-applications"

    ^ self shouldImplement
! !

!VDBAbstractUnixConsoleApplication class methodsFor:'testing'!

isAbstract
    ^ self == VDBAbstractUnixConsoleApplication
! !

!VDBAbstractUnixConsoleApplication methodsFor:'aspects'!

consoleViewClass
    ^ VT100TerminalView

    "Created: / 21-01-2019 / 14:23:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!VDBAbstractUnixConsoleApplication methodsFor:'initialization & release'!

initializeConsoleView: aTerminalView forDebugger: aGDBDebugger
    aGDBDebugger notNil ifTrue:[
        aTerminalView inStream: self consoleInput.
        aTerminalView outStream: self consoleOutput. 
        aTerminalView startReaderProcessWhenVisible.
    ].

    "Created: / 25-01-2019 / 12:04:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!VDBAbstractUnixConsoleApplication class methodsFor:'documentation'!

version_HG

    ^ '$Changeset: <not expanded> $'
! !