VDBSourceAndDisassemblyApplication.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 12 Dec 2018 16:35:20 +0000
changeset 127 37d9f13932c2
parent 113 1a40f33af921
child 164 364ebdd1d42c
permissions -rw-r--r--
Renamed `VDBWindowsDebuggerConole*` to `VDBSimpleDebuggerConsole*` as ot may be used on other scenarios than running on Windows, for example when GDB is run on remote machine through SSH or when using generic `GDBRemoteProcess`.

"
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 }"

VDBTabbingContainer subclass:#VDBSourceAndDisassemblyApplication
	instanceVariableNames:'frameHolder'
	classVariableNames:''
	poolDictionaries:''
	category:'VDB-UI-Source'
!

!VDBSourceAndDisassemblyApplication 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/
"
! !

!VDBSourceAndDisassemblyApplication methodsFor:'aspects'!

frameHolder
    "return/create the 'frameHolder' value holder (automatically generated)"

    frameHolder isNil ifTrue:[
        frameHolder := ValueHolder new.
        frameHolder addDependent:self.
    ].
    ^ frameHolder
!

frameHolder:aValueModel
    "set the 'frameHolder' value holder (automatically generated)"

    |oldValue newValue|

    frameHolder notNil ifTrue:[
        oldValue := frameHolder value.
        frameHolder removeDependent:self.
    ].
    frameHolder := aValueModel.
    components do:[:each | each application perform: #frameHolder: with: frameHolder ].
    frameHolder notNil ifTrue:[
        frameHolder addDependent:self.
    ].
    newValue := frameHolder value.
    oldValue ~~ newValue ifTrue:[
        self update:#value with:newValue from:frameHolder.
    ].

    "Modified: / 01-10-2018 / 13:09:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!VDBSourceAndDisassemblyApplication methodsFor:'initialization'!

initialize
    super initialize.
    self addApplication: (VDBSourceApplication new
                            debuggerHolder: self debuggerHolder;
                            frameHolder:  self frameHolder;
                            yourself).
    self addApplication: (VDBInstructionListApplication new
                            debuggerHolder: self debuggerHolder;
                            frameHolder:  self frameHolder;
                            yourself)

    "Created: / 01-10-2018 / 12:45:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !