Skip to content

Commit 28870b0

Browse files
table values OK
1 parent 2ca8a3a commit 28870b0

1 file changed

Lines changed: 43 additions & 24 deletions

File tree

Lines changed: 43 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,7 @@
11

22

33
proc DEM::xml::ShowMaterialRelationWindow { } {
4-
# window name
5-
set w .gid.windowmatrel
64

7-
if {[winfo exist $w]} {destroy $w}
8-
toplevel $w
9-
wm withdraw $w
10-
set x [expr [winfo rootx .gid]+[winfo width .gid]/2-[winfo width $w]/2]
11-
set y [expr [winfo rooty .gid]+[winfo height .gid]/2-[winfo height $w]/2]
12-
wm geom $w +$x+$y
13-
wm transient $w .gid
14-
InitWindow $w [_ "Kratos Multiphysics - DEM - Material Relations"] Kratos "" "" 1
155

166
set materials [list ]
177
foreach mat_node [DEM::write::GetMaterialsNodeList] {
@@ -20,22 +10,51 @@ proc DEM::xml::ShowMaterialRelationWindow { } {
2010
lappend materials $mat_name
2111
}
2212
}
23-
W $materials
24-
25-
set table $w.tree
26-
ttk::treeview $table -columns $materials -displaycolumns $materials
27-
foreach header $materials {
28-
$table heading $header -text $header -anchor center
13+
14+
set relations [dict create]
15+
16+
foreach relation [DEM::write::GetMaterialRelationsNodeList] {
17+
18+
set mat_a [write::getValueByNode [$relation selectNodes "./value\[@n = 'MATERIAL_A'\]"]]
19+
set mat_b [write::getValueByNode [$relation selectNodes "./value\[@n = 'MATERIAL_B'\]"]]
20+
dict lappend relations $mat_a $mat_b
21+
if {$mat_a ne $mat_b} { dict lappend relations $mat_b $mat_a }
2922
}
30-
pack $table
23+
24+
if {[llength $materials]>0} {
25+
# window name
26+
set w .gid.windowmatrel
27+
28+
if {[winfo exist $w]} {destroy $w}
29+
toplevel $w
30+
wm withdraw $w
31+
set x [expr [winfo rootx .gid]+[winfo width .gid]/2-[winfo width $w]/2]
32+
set y [expr [winfo rooty .gid]+[winfo height .gid]/2-[winfo height $w]/2]
33+
wm geom $w +$x+$y
34+
wm transient $w .gid
35+
InitWindow $w [_ "Kratos Multiphysics - DEM - Material Relations"] Kratos "" "" 1
36+
37+
38+
set table $w.tree
39+
ttk::treeview $table -columns $materials -displaycolumns $materials
40+
foreach header $materials {
41+
$table heading $header -text $header -anchor center
42+
}
43+
pack $table
3144

32-
set length [llength $materials]
33-
for {set i 0} { $i < $length } { incr i } {
34-
set row [list]
35-
set ref_mat_name [lindex $materials $i]
36-
for {set j 0} { $j < $length } { incr j } {
37-
lappend row X
45+
set length [llength $materials]
46+
for {set i 0} { $i < $length } { incr i } {
47+
set row [list]
48+
set ref_mat_name [lindex $materials $i]
49+
for {set j 0} { $j < $length } { incr j } {
50+
set check_mat_name [lindex $materials $j]
51+
set exists 0
52+
if {[dict exists $relations $ref_mat_name]} {
53+
if {$check_mat_name in [dict get $relations $ref_mat_name]} {set exists 1}
54+
}
55+
if {$exists} {lappend row V} {lappend row O}
56+
}
57+
$table insert "" end -id $ref_mat_name -text $ref_mat_name -values $row
3858
}
39-
$table insert "" end -id $ref_mat_name -text $ref_mat_name -values $row
4059
}
4160
}

0 commit comments

Comments
 (0)