@@ -615,7 +615,7 @@ gbtTreeLayout::ComputeNextInInfoset(const std::shared_ptr<gbtNodeEntry> &p_entry
615615 std::find (infoset->GetMembers ().begin (), infoset->GetMembers ().end (), p_entry->m_node ));
616616 while (member != infoset->GetMembers ().end ()) {
617617 auto member_entry = GetNodeEntry (*member);
618- if (member_entry != nullptr && p_entry-> m_level == member_entry-> m_level ) {
618+ if (member_entry != nullptr ) {
619619 return member_entry;
620620 }
621621 ++member;
@@ -780,56 +780,50 @@ void gbtTreeLayout::RenderSubtree(wxDC &p_dc, bool p_noHints) const
780780 const int nextX = parentEntry->GetNextMember ()->m_x ;
781781 const int nextY = parentEntry->GetNextMember ()->m_y ;
782782
783- if (parentEntry->m_x == nextX) {
784783#ifdef __WXGTK__
785- // A problem with using styled pens and user scaling on wxGTK
786- p_dc.SetPen (wxPen (m_doc->GetStyle ().GetPlayerColor (parentEntry->m_node ->GetPlayer ()), 1 ,
787- wxPENSTYLE_SOLID));
784+ // A problem with using styled pens and user scaling on wxGTK
785+ p_dc.SetPen (wxPen (m_doc->GetStyle ().GetPlayerColor (parentEntry->m_node ->GetPlayer ()), 1 ,
786+ wxPENSTYLE_SOLID));
788787#else
789- p_dc.SetPen (wxPen (m_doc->GetStyle ().GetPlayerColor (parentEntry->m_node ->GetPlayer ()), 1 ,
790- wxPENSTYLE_DOT));
788+ p_dc.SetPen (wxPen (m_doc->GetStyle ().GetPlayerColor (parentEntry->m_node ->GetPlayer ()), 1 ,
789+ wxPENSTYLE_DOT));
791790#endif // __WXGTK__
792- p_dc.DrawLine (parentEntry->m_x , parentEntry->m_y , parentEntry->m_x , nextY);
793- if (settings.GetInfosetJoin () == GBT_INFOSET_JOIN_CIRCLES) {
794- p_dc.DrawLine (parentEntry->m_x + parentEntry->GetSize (), parentEntry->m_y ,
795- parentEntry->m_x + parentEntry->GetSize (), nextY);
796- }
791+ p_dc.DrawLine (parentEntry->m_x , parentEntry->m_y , parentEntry->m_x , nextY);
792+ if (settings.GetInfosetJoin () == GBT_INFOSET_JOIN_CIRCLES) {
793+ p_dc.DrawLine (parentEntry->m_x + parentEntry->GetSize (), parentEntry->m_y ,
794+ parentEntry->m_x + parentEntry->GetSize (), nextY);
795+ }
797796
798- if (parentEntry->GetNextMember ()->m_x != parentEntry->m_x ) {
799- // Draw a little arrow in the direction of the iset.
800- int startX, endX;
801- if (settings.GetInfosetJoin () == GBT_INFOSET_JOIN_LINES) {
802- startX = parentEntry->m_x ;
803- endX =
804- (startX + m_infosetSpacing *
805- ((parentEntry->GetNextMember ()->m_x > parentEntry->m_x ) ? 1 : -1 ));
806- }
807- else {
808- if (parentEntry->GetNextMember ()->m_x < parentEntry->m_x ) {
809- // information set is continued to the left
810- startX = parentEntry->m_x + parentEntry->GetSize ();
811- endX = parentEntry->m_x - m_infosetSpacing;
812- }
813- else {
814- // information set is continued to the right
815- startX = parentEntry->m_x ;
816- endX = (parentEntry->m_x + parentEntry->GetSize () + m_infosetSpacing);
817- }
818- }
819- p_dc.DrawLine (startX, nextY, endX, nextY);
820- if (startX > endX) {
821- p_dc.DrawLine (endX, nextY, endX + m_infosetSpacing / 2 ,
822- nextY + m_infosetSpacing / 2 );
823- p_dc.DrawLine (endX, nextY, endX + m_infosetSpacing / 2 ,
824- nextY - m_infosetSpacing / 2 );
797+ if (parentEntry->GetNextMember ()->m_x != parentEntry->m_x ) {
798+ // Draw a little arrow in the direction of the iset.
799+ int startX, endX;
800+ if (settings.GetInfosetJoin () == GBT_INFOSET_JOIN_LINES) {
801+ startX = parentEntry->m_x ;
802+ endX =
803+ (startX + m_infosetSpacing *
804+ ((parentEntry->GetNextMember ()->m_x > parentEntry->m_x ) ? 1 : -1 ));
805+ }
806+ else {
807+ if (parentEntry->GetNextMember ()->m_x < parentEntry->m_x ) {
808+ // information set is continued to the left
809+ startX = parentEntry->m_x + parentEntry->GetSize ();
810+ endX = parentEntry->m_x - m_infosetSpacing;
825811 }
826812 else {
827- p_dc.DrawLine (endX, nextY, endX - m_infosetSpacing / 2 ,
828- nextY + m_infosetSpacing / 2 );
829- p_dc.DrawLine (endX, nextY, endX - m_infosetSpacing / 2 ,
830- nextY - m_infosetSpacing / 2 );
813+ // information set is continued to the right
814+ startX = parentEntry->m_x ;
815+ endX = (parentEntry->m_x + parentEntry->GetSize () + m_infosetSpacing);
831816 }
832817 }
818+ p_dc.DrawLine (startX, nextY, endX, nextY);
819+ if (startX > endX) {
820+ p_dc.DrawLine (endX, nextY, endX + m_infosetSpacing / 2 , nextY + m_infosetSpacing / 2 );
821+ p_dc.DrawLine (endX, nextY, endX + m_infosetSpacing / 2 , nextY - m_infosetSpacing / 2 );
822+ }
823+ else {
824+ p_dc.DrawLine (endX, nextY, endX - m_infosetSpacing / 2 , nextY + m_infosetSpacing / 2 );
825+ p_dc.DrawLine (endX, nextY, endX - m_infosetSpacing / 2 , nextY - m_infosetSpacing / 2 );
826+ }
833827 }
834828 }
835829 }
0 commit comments