247
248
249
250
251
252
253
254
255
256
257
258
259
260
|
option -leftdirvariable -default "" -configuremethod SetDirOption
option -rightdirvariable -default "" -configuremethod SetDirOption
option -statusvar -default ""
variable AfterId ""
variable PauseBgProcessing 0
variable IdleQueue {}
variable IdleQueueArr
variable leftMark ""
variable rightMark ""
variable leftDir ""
variable rightDir ""
|
>
|
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
|
option -leftdirvariable -default "" -configuremethod SetDirOption
option -rightdirvariable -default "" -configuremethod SetDirOption
option -statusvar -default ""
variable AfterId ""
variable PauseBgProcessing 0
variable ScheduledRestart 0
variable IdleQueue {}
variable IdleQueueArr
variable leftMark ""
variable rightMark ""
variable leftDir ""
variable rightDir ""
|
274
275
276
277
278
279
280
281
282
283
284
285
286
287
|
$tree configure -yscrollcommand "$vsb set" -xscrollcommand "$hsb set"
$tree columnconfigure 0 -name structure
$tree columnconfigure 1 -name leftsize -align right
$tree columnconfigure 2 -name leftdate
$tree columnconfigure 3 -name rightsize -align right
$tree columnconfigure 4 -name rightdate
set color(unknown) grey
set color(empty) grey
set color(equal) {}
set color(new) green
set color(old) blue
set color(change) red
|
>
>
|
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
|
$tree configure -yscrollcommand "$vsb set" -xscrollcommand "$hsb set"
$tree columnconfigure 0 -name structure
$tree columnconfigure 1 -name leftsize -align right
$tree columnconfigure 2 -name leftdate
$tree columnconfigure 3 -name rightsize -align right
$tree columnconfigure 4 -name rightdate
#destroy [$tree separatorpath 1] [$tree separatorpath 3]
set color(unknown) grey
set color(empty) grey
set color(equal) {}
set color(new) green
set color(old) blue
set color(change) red
|
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
|
if {$options(-rightdirvariable) eq ""} return
upvar \#0 $options(-rightdirvariable) right
if {![info exists right]} return
if {![file isdirectory $right]} return
set leftDir $left
set rightDir $right
after idle [mymethod ReStart]
}
method newTopDir {newLeft newRight} {
if {$newLeft ne "" && [file isdirectory $newLeft]} {
upvar \#0 $options(-leftdirvariable) left
set left $newLeft
set leftDir $left
}
if {$newRight ne "" && [file isdirectory $newRight]} {
upvar \#0 $options(-rightdirvariable) right
set right $newRight
set rightDir $right
}
after idle [mymethod ReStart]
}
method ReStart {} {
# Delete all idle processing
if {$AfterId ne ""} {
after cancel $AfterId
}
set AfterId ""
set IdleQueue {}
array unset IdleQueueArr
# Fill in clean root data
$tree delete 0 end
set topIndex [$tree insertchild root end {}]
set d1 [file tail $leftDir]
set d2 [file tail $rightDir]
|
>
>
|
>
>
>
|
>
>
|
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
|
if {$options(-rightdirvariable) eq ""} return
upvar \#0 $options(-rightdirvariable) right
if {![info exists right]} return
if {![file isdirectory $right]} return
set leftDir $left
set rightDir $right
if {!$ScheduledRestart} {
set ScheduledRestart 1
after idle [mymethod ReStart]
}
}
method newTopDir {newLeft newRight} {
if {$newLeft ne "" && [file isdirectory $newLeft]} {
upvar \#0 $options(-leftdirvariable) left
set left $newLeft
set leftDir $left
}
if {$newRight ne "" && [file isdirectory $newRight]} {
upvar \#0 $options(-rightdirvariable) right
set right $newRight
set rightDir $right
}
if {!$ScheduledRestart} {
set ScheduledRestart 1
after idle [mymethod ReStart]
}
}
method ReStart {} {
# Delete all idle processing
if {$AfterId ne ""} {
after cancel $AfterId
}
set AfterId ""
set IdleQueue {}
set ScheduledRestart 0
array unset IdleQueueArr
# Fill in clean root data
$tree delete 0 end
set topIndex [$tree insertchild root end {}]
set d1 [file tail $leftDir]
set d2 [file tail $rightDir]
|