vdfsplat / AppSrc / vdfdbg.vw @ 64
History | View | Annotate | Download (22.9 KB)
| 1 |
//TH-Header |
|---|---|
| 2 |
//***************************************************************************************** |
| 3 |
// Copyright (c) 2013 Antwise Solutions |
| 4 |
// All rights reserved. |
| 5 |
// |
| 6 |
// $FileName : Vdfdbg.vw |
| 7 |
// $ProjectName : Splat ! Vdf Debugger |
| 8 |
// $Authors : Wil van Antwerpen |
| 9 |
// $Created : 12.14.2013 23:42 |
| 10 |
// $Type : GPLv2 |
| 11 |
// |
| 12 |
// Contents: |
| 13 |
// The view that hosts the various debugger controls and the codemax editor. |
| 14 |
// Pretty much everything in here gets loaded dynamically so that we can load |
| 15 |
// the debugger engine for the VDF version that we need. |
| 16 |
// |
| 17 |
//***************************************************************************************** |
| 18 |
//TH-RevisionStart |
| 19 |
//TH-RevisionEnd |
| 20 |
|
| 21 |
Use Windows.pkg |
| 22 |
Use DFClient.pkg |
| 23 |
Use vWin32fh.pkg |
| 24 |
Use cSplitterContainer.pkg |
| 25 |
Use cDebuggerEngine.pkg |
| 26 |
Use cSplatCodeMax.pkg |
| 27 |
Use cCJGrid.pkg |
| 28 |
Use cCJGridColumn.pkg |
| 29 |
//Use cComCDACTreeListCtl.pkg |
| 30 |
|
| 31 |
Class cBPOpenFileUnderCJMenuItem is a cCJMenuItem |
| 32 |
Procedure Construct_Object |
| 33 |
Forward Send Construct_Object |
| 34 |
Set psCaption To "&Open File" |
| 35 |
Set psToolTip To "Open file at selected breakpoint" |
| 36 |
Set psImage To "ActionOpen.ico" |
| 37 |
End_Procedure |
| 38 |
|
| 39 |
Procedure OnExecute Variant vCommandBarControl |
| 40 |
Handle hoGrid |
| 41 |
Handle hoEditor |
| 42 |
Integer iLine |
| 43 |
String sFileName |
| 44 |
|
| 45 |
Get phoBreakPointsGrid To hoGrid |
| 46 |
If (hoGrid) Begin |
| 47 |
Get SelectedRowValue Of (oFileNameColumn(hoGrid)) To sFileName |
| 48 |
Get SelectedRowValue Of (oLineColumn(hoGrid)) To iLine |
| 49 |
If (sFileName<>"" and iLine<>0) Begin |
| 50 |
Get phoEditor To hoEditor |
| 51 |
If (hoEditor) begin |
| 52 |
Send doOpenSourceFileAtLine of hoEditor sFileName iLine |
| 53 |
End |
| 54 |
End |
| 55 |
End |
| 56 |
End_Procedure |
| 57 |
End_Class |
| 58 |
|
| 59 |
Class cBPEnableBreakPointCJMenuItem is a cCJMenuItem |
| 60 |
Procedure Construct_Object |
| 61 |
Forward Send Construct_Object |
| 62 |
Set psCaption To "&Enable Breakpoint" |
| 63 |
Set psToolTip To "Enable Breakpoint for the selected line" |
| 64 |
//Set psImage To "ActionOpen.ico" |
| 65 |
End_Procedure |
| 66 |
|
| 67 |
Procedure OnExecute Variant vCommandBarControl |
| 68 |
Handle hoGrid |
| 69 |
Handle hoDebugger |
| 70 |
Integer iLine |
| 71 |
String sFileName |
| 72 |
|
| 73 |
Get phoBreakPointsGrid To hoGrid |
| 74 |
If (hoGrid) Begin |
| 75 |
Get SelectedRowValue Of (oFileNameColumn(hoGrid)) To sFileName |
| 76 |
Get SelectedRowValue Of (oLineColumn(hoGrid)) To iLine |
| 77 |
If (sFileName<>"" and iLine<>0) Begin |
| 78 |
Get phoDebugger to hoDebugger |
| 79 |
If (hoDebugger) begin |
| 80 |
Send EnableBreakpoint of hoDebugger sFileName iLine |
| 81 |
End |
| 82 |
End |
| 83 |
End |
| 84 |
End_Procedure |
| 85 |
End_Class |
| 86 |
|
| 87 |
Class cBPDisableBreakPointCJMenuItem is a cCJMenuItem |
| 88 |
Procedure Construct_Object |
| 89 |
Forward Send Construct_Object |
| 90 |
Set psCaption To "&Disable Breakpoint" |
| 91 |
Set psToolTip To "Disable Breakpoint for the selected line" |
| 92 |
// Set psImage To "ActionOpen.ico" |
| 93 |
End_Procedure |
| 94 |
|
| 95 |
Procedure OnExecute Variant vCommandBarControl |
| 96 |
Handle hoGrid |
| 97 |
Handle hoDebugger |
| 98 |
Integer iLine |
| 99 |
String sFileName |
| 100 |
|
| 101 |
Get phoBreakPointsGrid To hoGrid |
| 102 |
If (hoGrid) Begin |
| 103 |
Get SelectedRowValue Of (oFileNameColumn(hoGrid)) To sFileName |
| 104 |
Get SelectedRowValue Of (oLineColumn(hoGrid)) To iLine |
| 105 |
If (sFileName<>"" and iLine<>0) Begin |
| 106 |
Get phoDebugger to hoDebugger |
| 107 |
If (hoDebugger) begin |
| 108 |
Send DisableBreakpoint of hoDebugger sFileName iLine |
| 109 |
End |
| 110 |
End |
| 111 |
End |
| 112 |
End_Procedure |
| 113 |
End_Class |
| 114 |
|
| 115 |
|
| 116 |
Class cBreakPointsGridContextMenu Is a cCJContextMenu |
| 117 |
|
| 118 |
Procedure Construct_Object |
| 119 |
Forward Send Construct_Object |
| 120 |
|
| 121 |
Object oOpenFileUnderBreakPointMenuItem is a cBPOpenFileUnderCJMenuItem |
| 122 |
End_Object |
| 123 |
|
| 124 |
Object oAddBreakpoint is a cCJAddBreakpointMenuItem |
| 125 |
End_Object |
| 126 |
|
| 127 |
Object oRemoveBreakPoint is a cCJRemoveBreakpointMenuItem |
| 128 |
End_Object |
| 129 |
|
| 130 |
Object oEnableBreakPoint is a cBPEnableBreakPointCJMenuItem |
| 131 |
End_Object |
| 132 |
|
| 133 |
Object oDisableBreakPoint is a cBPDisableBreakPointCJMenuItem |
| 134 |
End_Object |
| 135 |
End_Procedure // Construct_Object |
| 136 |
|
| 137 |
End_Class // cBreakPointsGridContextMenu |
| 138 |
|
| 139 |
|
| 140 |
Deferred_View Activate_oVdfdbg for ; |
| 141 |
Object oVdfdbg is a dbView |
| 142 |
|
| 143 |
Set Border_Style to Border_Thick |
| 144 |
Set Size to 346 769 |
| 145 |
Set Location to 3 4 |
| 146 |
Set Maximize_Icon to True |
| 147 |
|
| 148 |
Set phoDebuggerHost To Self |
| 149 |
Object oVerticalSplitterContainer is a cSplitterContainer |
| 150 |
Set pbSplitVertical to True |
| 151 |
Set piSplitterLocation to 559 |
| 152 |
Object oLeftPanelSplitter is a cSplitterContainerChild |
| 153 |
Object oDebugSplitterContainer is a cSplitterContainer |
| 154 |
Set pbSplitVertical to False |
| 155 |
Set piSplitterLocation to 200 |
| 156 |
Object oTopPanelSplitter is a cSplitterContainerChild |
| 157 |
Object oCodeMax is a cSplatCodeMax |
| 158 |
Set Size to 188 553 |
| 159 |
Set Location to 6 6 |
| 160 |
Set peAnchors to anAll |
| 161 |
|
| 162 |
Set phoEditor To Self |
| 163 |
|
| 164 |
Procedure OnCreate |
| 165 |
Variant vImageList |
| 166 |
Boolean bCreated |
| 167 |
Handle hoLanguage |
| 168 |
|
| 169 |
Forward Send OnCreate |
| 170 |
|
| 171 |
// ToDo: Set the ActiveX properties here... |
| 172 |
Get ComImageList To vImageList |
| 173 |
//Set ComHImageList 0 // OLE_HANDLE value |
| 174 |
|
| 175 |
End_Procedure |
| 176 |
|
| 177 |
Embed_ActiveX_Resource |
| 178 |
6AMAAAgAAgAAAAAACAACAAAAAAAAAQEBAAAAAQEBAQAAAQAAAAAAAAAAAAAAAAHpAwAAAQEBAAEBAAEEAP//////////////////////////////////////////QwBv |
| 179 |
AHUAcgBpAGUAcgAgAE4AZQB3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAA/////wAAAAAAAAABAAAACgAAAAEAAf////// |
| 180 |
////AAAAAAABAAAAAQAAAE0uAAB2FwAA. |
| 181 |
End_Embed_ActiveX_Resource |
| 182 |
|
| 183 |
End_Object |
| 184 |
End_Object |
| 185 |
Object oBottomPanelSplitter Is a cSplitterContainerChild |
| 186 |
Object oDebug_TD is a TabDialog |
| 187 |
Set Size to 135 553 |
| 188 |
Set Location to 4 6 |
| 189 |
Set peAnchors to anAll |
| 190 |
|
| 191 |
Object oGlobalVariables_TP is a TabPage |
| 192 |
Set Label to "Global Variables" |
| 193 |
|
| 194 |
Object oGlobalVarContainer is a Container3d |
| 195 |
Set Size to 131 540 |
| 196 |
Set Location to 2 2 |
| 197 |
Set peAnchors to anAll |
| 198 |
Set Border_Style to Border_StaticEdge |
| 199 |
Set phoGlobalVarHost To Self |
| 200 |
|
| 201 |
|
| 202 |
Procedure CreateObjectCallback Handle hoObject |
| 203 |
Handle hoGlobalVar |
| 204 |
|
| 205 |
If (hoObject) Begin |
| 206 |
Get phoGlobalVariables To hoGlobalVar |
| 207 |
If (hoObject=hoGlobalVar) Begin |
| 208 |
Set Size Of hoGlobalVar To 118 359 |
| 209 |
Set Location Of hoGlobalVar To 8 8 |
| 210 |
Set peAnchors Of hoGlobalVar To anAll |
| 211 |
End |
| 212 |
End |
| 213 |
End_Procedure // CreateObjectCallback |
| 214 |
End_Object |
| 215 |
End_Object |
| 216 |
|
| 217 |
Object oWatches_TP is a TabPage |
| 218 |
Set Label to "Watches" |
| 219 |
|
| 220 |
Object oWatchesContainer is a Container3d |
| 221 |
Set Size to 131 540 |
| 222 |
Set Location to 2 2 |
| 223 |
Set peAnchors to anAll |
| 224 |
Set Border_Style to Border_StaticEdge |
| 225 |
|
| 226 |
Set phoWatchesHost To Self |
| 227 |
|
| 228 |
Procedure CreateObjectCallback Handle hoObject |
| 229 |
Handle hoWatches |
| 230 |
|
| 231 |
If (hoObject) Begin |
| 232 |
Get phoWatches To hoWatches |
| 233 |
If (hoObject=hoWatches) Begin |
| 234 |
Set Size Of hoWatches To 118 361 |
| 235 |
Set Location Of hoWatches To 9 6 |
| 236 |
Set peAnchors Of hoWatches To anAll |
| 237 |
End |
| 238 |
End |
| 239 |
End_Procedure // CreateObjectCallback |
| 240 |
End_Object |
| 241 |
End_Object |
| 242 |
|
| 243 |
Object oTrace_TP is a TabPage |
| 244 |
Set Label to "Trace" |
| 245 |
|
| 246 |
Object oTraceContainer is a Container3d |
| 247 |
Set Size to 131 540 |
| 248 |
Set Location to 2 2 |
| 249 |
Set peAnchors to anAll |
| 250 |
Set Border_Style to Border_StaticEdge |
| 251 |
Set phoTraceHost To Self |
| 252 |
|
| 253 |
Procedure CreateObjectCallback Handle hoObject |
| 254 |
Handle hoTrace |
| 255 |
|
| 256 |
If (hoObject) Begin |
| 257 |
Get phoTrace To hoTrace |
| 258 |
If (hoObject=hoTrace) Begin |
| 259 |
Set Size Of hoTrace To 118 359 |
| 260 |
Set Location Of hoTrace To 9 6 |
| 261 |
Set Label Of hoTrace To "Trace" |
| 262 |
Set peAnchors Of hoTrace To anAll |
| 263 |
End |
| 264 |
End |
| 265 |
End_Procedure // CreateObjectCallback |
| 266 |
End_Object |
| 267 |
End_Object |
| 268 |
|
| 269 |
//Object oDACTreelist_TP is a TabPage |
| 270 |
// Set Label to "DACTreeList (not used)" |
| 271 |
// // I do not think we are going to use this one. |
| 272 |
// Object oComCDACTreeListCtl1 is a cComCDACTreeListCtl |
| 273 |
// Set Size to 100 100 |
| 274 |
// Set Location to 10 35 |
| 275 |
// |
| 276 |
// Procedure OnCreate |
| 277 |
// Forward Send OnCreate |
| 278 |
// // ToDo: Set the ActiveX properties here... |
| 279 |
// End_Procedure |
| 280 |
// |
| 281 |
// End_Object |
| 282 |
//End_Object |
| 283 |
|
| 284 |
Object oTables_TP is a TabPage |
| 285 |
Set Label to "Tables" |
| 286 |
|
| 287 |
Object oTablesContainer is a Container3d |
| 288 |
Set Size to 131 540 |
| 289 |
Set Location to 2 2 |
| 290 |
Set peAnchors to anAll |
| 291 |
Set Border_Style to Border_StaticEdge |
| 292 |
Set phoTablesHost To Self |
| 293 |
|
| 294 |
|
| 295 |
Procedure CreateObjectCallback Handle hoObject |
| 296 |
Handle hoTables |
| 297 |
|
| 298 |
If (hoObject) Begin |
| 299 |
Get phoTablesWindow To hoTables |
| 300 |
If (hoObject=hoTables) Begin |
| 301 |
Set Size Of hoTables To 118 363 |
| 302 |
Set Location Of hoTables To 7 6 |
| 303 |
Set peAnchors Of hoTables To anAll |
| 304 |
End |
| 305 |
End |
| 306 |
End_Procedure // CreateObjectCallback |
| 307 |
End_Object |
| 308 |
End_Object |
| 309 |
Object oBreakpoints_TP is a TabPage |
| 310 |
Set Label to "Breakpoints" |
| 311 |
Object oBreakPointsContainer is a Container3d |
| 312 |
Set Size to 131 540 |
| 313 |
Set Location to 2 2 |
| 314 |
Set peAnchors to anAll |
| 315 |
Set Border_Style to Border_StaticEdge |
| 316 |
|
| 317 |
Object oBreakpointsGrid is a cCJGrid |
| 318 |
Set Size to 112 382 |
| 319 |
Set Location to 6 10 |
| 320 |
Set peAnchors to anAll |
| 321 |
Set pbReadOnly to True |
| 322 |
Set phoBreakpointsGrid To Self |
| 323 |
|
| 324 |
Object oBPContextMenu Is a cBreakPointsGridContextMenu |
| 325 |
End_Object |
| 326 |
|
| 327 |
Set phoContextMenu To oBPContextMenu |
| 328 |
// Need to move to subclass for this technique, maybe later. |
| 329 |
//Function CreateContextMenu Returns Handle |
| 330 |
// Handle hoMenu |
| 331 |
// |
| 332 |
// Get Create (RefClass(cBreakPointsGridContextMenu)) To hoMenu |
| 333 |
// If (hoMenu) Begin |
| 334 |
// Set Name Of hoMenu To "oBPContextMenu" |
| 335 |
// End |
| 336 |
// Function_Return hoMenu |
| 337 |
//End_Function |
| 338 |
|
| 339 |
Object oEnabledColumn is a cCJGridColumn |
| 340 |
Set piWidth to 57 |
| 341 |
Set psCaption to "Active" |
| 342 |
Set pbCheckbox to True |
| 343 |
Set pbResizable to False |
| 344 |
End_Object |
| 345 |
|
| 346 |
Object oLineColumn is a cCJGridColumn |
| 347 |
Set piWidth to 85 |
| 348 |
Set psCaption to "Line" |
| 349 |
Set peDataType to Mask_Numeric_Window |
| 350 |
Set pbResizable to False |
| 351 |
End_Object |
| 352 |
|
| 353 |
Object oFileNameColumn is a cCJGridColumn |
| 354 |
Set piWidth to 351 |
| 355 |
Set psCaption to "File" |
| 356 |
End_Object |
| 357 |
|
| 358 |
// |
| 359 |
// Procedure ComSetCaretPos Integer llLine Integer llCol |
| 360 |
// |
| 361 |
// Procedure ComSelectLine Integer llLine Boolean llMakeVisible |
| 362 |
|
| 363 |
Procedure LoadData |
| 364 |
Handle hoDataSource |
| 365 |
Handle hoDebug |
| 366 |
Boolean bFound |
| 367 |
Boolean bIsCreated |
| 368 |
Integer iBreak |
| 369 |
Integer iCount |
| 370 |
Integer iRows |
| 371 |
Integer iActive |
| 372 |
Integer iLine |
| 373 |
Integer iFile |
| 374 |
tDataSourceRow[] TheData |
| 375 |
tBreakPoints[] BP |
| 376 |
|
| 377 |
Get phoDataSource to hoDataSource |
| 378 |
Get phoDebugger to hoDebug |
| 379 |
|
| 380 |
// Get the datasource indexes of the various columns |
| 381 |
Get piColumnId of oEnabledColumn to iActive |
| 382 |
Get piColumnId of oLineColumn to iLine |
| 383 |
Get piColumnId of oFileNameColumn to iFile |
| 384 |
|
| 385 |
// Load all data into the datasource array |
| 386 |
If (hoDebug) Begin |
| 387 |
Get pBreakPoints of hoDebug To BP |
| 388 |
End |
| 389 |
Move (SizeOfArray(BP)) To iCount |
| 390 |
For iBreak from 0 To (iCount-1) |
| 391 |
// BP[iBreak].bHasCondition |
| 392 |
// BP[iBreak].sExpression |
| 393 |
|
| 394 |
//If (BP[iBreak].bEnabled) Move "Y" To TheData[iRows].sValue[iActive] |
| 395 |
//Else Move "N" To TheData[iRows].sValue[iActive] |
| 396 |
Move BP[iBreak].bEnabled To TheData[iRows].sValue[iActive] |
| 397 |
Move BP[iBreak].iLine To TheData[iRows].sValue[iLine] |
| 398 |
Move BP[iBreak].sFileName To TheData[iRows].sValue[iFile] |
| 399 |
Increment iRows |
| 400 |
Loop |
| 401 |
|
| 402 |
Get IsComObjectCreated To bIsCreated |
| 403 |
If (bIsCreated) Begin |
| 404 |
// Initialize Grid with new data |
| 405 |
Send InitializeData TheData |
| 406 |
Send MovetoFirstRow |
| 407 |
End |
| 408 |
End_Procedure |
| 409 |
|
| 410 |
End_Object |
| 411 |
|
| 412 |
Object oButton3 is a Button |
| 413 |
Set Size to 14 61 |
| 414 |
Set Location to 57 410 |
| 415 |
Set Label to "add breakpoint" |
| 416 |
Set peAnchors to anTopRight |
| 417 |
|
| 418 |
Procedure OnClick |
| 419 |
Integer iLine |
| 420 |
String sFileName |
| 421 |
Boolean bSuccess |
| 422 |
Handle hoDebugger |
| 423 |
Handle hoEditor |
| 424 |
|
| 425 |
Get phoDebugger to hoDebugger |
| 426 |
Get phoEditor to hoEditor |
| 427 |
If (hoDebugger<>0 and hoEditor<>0) Begin |
| 428 |
|
| 429 |
Get psFileName of hoEditor to sFileName |
| 430 |
Get piCurrentLine of hoEditor to iLine |
| 431 |
If (sFileName<>"" and iLine<>0) Begin |
| 432 |
Get SetBreakPoint of hoDebugger sFileName (&iLine) to bSuccess |
| 433 |
Send info_box ("Set breakpoint at line"*trim(iLine)*"success="*trim(bSuccess))
|
| 434 |
//Send ComSetMarginImages iLine 1 |
| 435 |
End |
| 436 |
End |
| 437 |
// in codemax |
| 438 |
// // turns on/off margin images for a specific line |
| 439 |
// Procedure ComSetMarginImages Integer llLine UChar llImages |
| 440 |
// |
| 441 |
// // sets the line margin images |
| 442 |
// Procedure Set ComHImageList OLE_HANDLE value |
| 443 |
// |
| 444 |
// // sets the line margin images |
| 445 |
// Function ComHImageList Returns OLE_HANDLE |
| 446 |
// // Returns the first line number with the specified margin images |
| 447 |
// Function ComFindLineMatchingMarginImages Integer llStartLine UChar llImages Returns Integer |
| 448 |
// in debugger |
| 449 |
// // Sets the specified breakpoint |
| 450 |
// Function ComSetBreakPoint String llfile UInteger ByRef llline Returns Boolean |
| 451 |
End_Procedure |
| 452 |
|
| 453 |
End_Object |
| 454 |
End_Object |
| 455 |
|
| 456 |
Procedure DisplayTabDetails |
| 457 |
Send LoadData of oBreakpointsGrid |
| 458 |
End_Procedure |
| 459 |
End_Object // TP |
| 460 |
|
| 461 |
|
| 462 |
Function Tab_Change Integer iToTab Integer ePointerMode Returns Integer |
| 463 |
Handle hoToTab |
| 464 |
Integer iCurrentTab |
| 465 |
Integer iRetVal |
| 466 |
|
| 467 |
Get Current_Tab To iCurrentTab |
| 468 |
Forward Get Tab_Change iToTab ePointerMode To iRetVal |
| 469 |
If (iCurrentTab<>-1 and iRetval=0) Begin |
| 470 |
Get Tab_Page_Id iToTab To hoToTab |
| 471 |
If (hoToTab=oBreakPoints_TP) Begin |
| 472 |
Send DisplayTabDetails of hoToTab |
| 473 |
End |
| 474 |
End |
| 475 |
Function_Return iRetVal |
| 476 |
End_Function |
| 477 |
|
| 478 |
End_Object // oDebug_TD |
| 479 |
|
| 480 |
End_Object // oDebugPanelSplitter |
| 481 |
End_Object // oSplitterContainer |
| 482 |
End_Object |
| 483 |
Object oRightPanelSplitter Is a cSplitterContainerChild |
| 484 |
Object oStackSplitterContainer is a cSplitterContainer |
| 485 |
Set pbSplitVertical to False |
| 486 |
Set piSplitterLocation to 140 |
| 487 |
Object oStackTopPanelSplitter is a cSplitterContainerChild |
| 488 |
|
| 489 |
Object oCallStackContainer is a Container3d |
| 490 |
Set Size to 131 370 |
| 491 |
Set Location to 2 2 |
| 492 |
Set peAnchors to anAll |
| 493 |
Set Border_Style to Border_StaticEdge |
| 494 |
|
| 495 |
Set phoCallStackHost To Self |
| 496 |
|
| 497 |
Procedure CreateObjectCallback Handle hoObject |
| 498 |
Handle hoCallStack |
| 499 |
|
| 500 |
If (hoObject) Begin |
| 501 |
Get phoCallStack To hoCallStack |
| 502 |
If (hoObject=hoCallStack) Begin |
| 503 |
Set Size Of hoCallStack To 118 361 |
| 504 |
Set Location Of hoCallStack To 11 5 |
| 505 |
Set Label_Justification_Mode Of hoCallStack To JMode_Top |
| 506 |
Set Label_Col_Offset Of hoCallStack To 0 |
| 507 |
Set Label Of hoCallStack To "Call Stack" |
| 508 |
Set peAnchors Of hoCallStack To anAll |
| 509 |
End |
| 510 |
End |
| 511 |
End_Procedure // CreateObjectCallback |
| 512 |
|
| 513 |
Procedure SetControlColumnWidth handle hoObject |
| 514 |
Handle hoCallStack |
| 515 |
|
| 516 |
If (hoObject) Begin |
| 517 |
Get phoCallStack To hoCallStack |
| 518 |
If (hoObject=hoCallStack) Begin |
| 519 |
Set ComObjectColumnWidth Of hoCallStack To 90 |
| 520 |
Set ComMessageColumnWidth Of hoCallStack To 265 |
| 521 |
End |
| 522 |
End |
| 523 |
End_Procedure |
| 524 |
|
| 525 |
//Procedure RepaintTabPage |
| 526 |
// Handle hWindow hVoid |
| 527 |
// Get Window_Handle To hWindow |
| 528 |
// If hWindow Move (InvalidateRect(hWindow,0,True)) To hVoid |
| 529 |
//End_Procedure // RepaintTabPage |
| 530 |
End_Object |
| 531 |
End_Object |
| 532 |
Object oStackBottomPanelSplitter Is a cSplitterContainerChild |
| 533 |
|
| 534 |
Object oLocalVarContainer is a Container3d |
| 535 |
Set Size to 200 370 |
| 536 |
Set Location to 2 2 |
| 537 |
Set peAnchors to anAll |
| 538 |
Set Border_Style To Border_StaticEdge |
| 539 |
|
| 540 |
Set phoLocalVarHost To Self |
| 541 |
|
| 542 |
Procedure CreateObjectCallback Handle hoObject |
| 543 |
Handle hoLocalVar |
| 544 |
|
| 545 |
If (hoObject) Begin |
| 546 |
Get phoLocalVariables To hoLocalVar |
| 547 |
If (hoObject=hoLocalVar) Begin |
| 548 |
Set Size Of hoLocalVar To 188 359 |
| 549 |
Set Location Of hoLocalVar To 11 5 |
| 550 |
Set Label_Justification_Mode Of hoLocalVar To JMode_Top |
| 551 |
Set Label_Col_Offset Of hoLocalVar To 0 |
| 552 |
Set Label Of hoLocalVar To "Local Variables" |
| 553 |
Set peAnchors Of hoLocalVar To anAll |
| 554 |
End |
| 555 |
End |
| 556 |
End_Procedure // CreateObjectCallback |
| 557 |
End_Object |
| 558 |
End_Object |
| 559 |
End_Object |
| 560 |
End_Object |
| 561 |
End_Object |
| 562 |
|
| 563 |
|
| 564 |
|
| 565 |
|
| 566 |
#IF (FMAC_VERSION < 14) |
| 567 |
// Seems this was required in the past? Let's assume that was for earlier versions as VDF14, no time to test. |
| 568 |
Procedure OnResize |
| 569 |
Integer cxy cx cy |
| 570 |
Integer dxy dx dy |
| 571 |
Handle hoEditor |
| 572 |
|
| 573 |
Get Client_Size To cxy |
| 574 |
Move (Hi(cxy)) To cy |
| 575 |
Move (Low(cxy)) To cx |
| 576 |
Get GUISize of oDebug_TD To dxy |
| 577 |
Move (Hi(dxy)) To dy |
| 578 |
Move (Low(dxy)) To dx |
| 579 |
Get phoEditor to hoEditor |
| 580 |
If (hoEditor) begin |
| 581 |
Set GUISize of hoEditor To (cy - (dy + 82)) (cx-143) |
| 582 |
Send Adjust_Logicals |
| 583 |
End |
| 584 |
End_Procedure // OnResize |
| 585 |
#ENDIF |
| 586 |
|
| 587 |
Procedure doSetCaptionLabel String sLabel |
| 588 |
Set Label To ("Debugging:"*sLabel)
|
| 589 |
End_Procedure // doSetCaptionLabel |
| 590 |
Cd_End_Object |