VDBWindowsDebuggerConsoleView.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 05 Oct 2018 09:11:56 +0100
changeset 117 1ae8e04f5feb
parent 71 7329192efb9d
permissions -rw-r--r--
UI: add option to change debugger layout and preference to set the default layout
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
71
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
jv:vdb - Visual / VM Debugger
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
Copyright (C) 2015-now Jan Vrany
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
"{ Package: 'jv:vdb' }"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
"{ NameSpace: Smalltalk }"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
TerminalView subclass:#VDBWindowsDebuggerConsoleView
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
	instanceVariableNames:'tabPressed completions'
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
	classVariableNames:''
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
	poolDictionaries:''
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
	category:'VDB-UI-Console-Windows'
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
!
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
!VDBWindowsDebuggerConsoleView class methodsFor:'documentation'!
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
copyright
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
jv:vdb - Visual / VM Debugger
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
Copyright (C) 2015-now Jan Vrany
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
! !
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
!VDBWindowsDebuggerConsoleView methodsFor:'event handling'!
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
keyPress:aKey x:x y:y
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
    <resource: #keyboard (#Tab)>
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
    inStream isNil ifTrue:[^ self].
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
    "aKey == #Tab"false ifTrue:[ 
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
        DebugKeyboard ifTrue:[
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
            Transcript showCR:'----'; show:'keyPress:' ; showCR:aKey printString.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
        ].
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
        tabPressed ifTrue:[ 
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
            tabPressed := false.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
            ^ self doTabTab.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
        ] ifFalse:[ 
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
            tabPressed := true.    
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
            ^ self doTab
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
        ].
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    ].
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
    tabPressed := false.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    ^ super keyPress:aKey x:x y:y
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
    "
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
     DebugKeyboard := true
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
    "
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
    "Created: / 15-09-2016 / 23:55:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
    "Modified: / 16-09-2016 / 00:56:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
    "Modified: / 04-04-2018 / 22:57:53 / jv"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
! !
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
!VDBWindowsDebuggerConsoleView methodsFor:'functions'!
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
doTab
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
"/    | line |
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
"/
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
"/    line := lineBuffer.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
"/    lineBuffer := nil.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
"/    self application completeLine: line.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
    "Created: / 15-09-2016 / 23:56:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
    "Modified: / 16-09-2016 / 01:09:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    "Modified: / 04-04-2018 / 22:58:55 / jv"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
!
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
doTabTab
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
"/    self application completeShow
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
    "Created: / 16-09-2016 / 00:56:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
    "Modified: / 04-04-2018 / 22:59:02 / jv"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
! !
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
!VDBWindowsDebuggerConsoleView methodsFor:'initialization'!
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
initialize
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
    "Invoked when a new instance is created."
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
    "/ please change as required (and remove this comment)
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    super initialize.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
    tabPressed := false.
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    "Modified: / 16-09-2016 / 00:55:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
! !
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
!VDBWindowsDebuggerConsoleView class methodsFor:'documentation'!
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
version_HG
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    ^ '$Changeset: <not expanded> $'
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
! !
7329192efb9d Win32: ressurected console implementation from 0db4a162853f
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106