build_marker_nodes Subroutine

private subroutine build_marker_nodes(self, compile)

The start, end and intermediate marker nodes, in the artist's group (compiled now if it is already shown).

Arguments

Type IntentOptional Attributes Name
type(MarkerArtist), intent(inout) :: self
logical, intent(in) :: compile

true: compiled now (if shown)


Calls

proc~~build_marker_nodes~~CallsGraph proc~build_marker_nodes build_marker_nodes proc~init LineChain%init proc~build_marker_nodes->proc~init proc~marker_style marker_style proc~build_marker_nodes->proc~marker_style proc~marker_uses_colors marker_uses_colors proc~build_marker_nodes->proc~marker_uses_colors proc~redraw_markers redraw_markers proc~build_marker_nodes->proc~redraw_markers proc~reserve LineChain%reserve proc~build_marker_nodes->proc~reserve proc~set_compile LineChain%set_compile proc~build_marker_nodes->proc~set_compile proc~is_colored LineChain%is_colored proc~marker_style->proc~is_colored proc~set_marker_style LineChain%set_marker_style proc~marker_style->proc~set_marker_style num_colors num_colors proc~marker_uses_colors->num_colors interface~vkf_compile_node vkf_compile_node proc~reserve->interface~vkf_compile_node interface~vkf_line_create vkf_line_create proc~reserve->interface~vkf_line_create interface~vkf_line_create_colored vkf_line_create_colored proc~reserve->interface~vkf_line_create_colored interface~vkf_marker_create vkf_marker_create proc~reserve->interface~vkf_marker_create interface~vkf_node_add_child vkf_node_add_child proc~reserve->interface~vkf_node_add_child interface~vkf_ribbon_create vkf_ribbon_create proc~reserve->interface~vkf_ribbon_create proc~apply_style apply_style proc~reserve->proc~apply_style proc~check_status check_status proc~reserve->proc~check_status proc~line_set_segments line_set_segments proc~reserve->proc~line_set_segments proc~move_chunks move_chunks proc~reserve->proc~move_chunks proc~apply_style->proc~check_status interface~vkf_line_set_dash_mode vkf_line_set_dash_mode proc~apply_style->interface~vkf_line_set_dash_mode interface~vkf_line_set_highlight vkf_line_set_highlight proc~apply_style->interface~vkf_line_set_highlight interface~vkf_line_set_trail vkf_line_set_trail proc~apply_style->interface~vkf_line_set_trail proc~line_set_pattern line_set_pattern proc~apply_style->proc~line_set_pattern proc~line_set_style line_set_style proc~apply_style->proc~line_set_style proc~marker_set_style marker_set_style proc~apply_style->proc~marker_set_style interface~vkf_line_style vkf_line_style proc~line_set_segments->interface~vkf_line_style interface~vkf_line_style_changed vkf_line_style_changed proc~line_set_segments->interface~vkf_line_style_changed proc~set_marker_style->proc~apply_style proc~line_set_pattern->interface~vkf_line_style proc~line_set_pattern->interface~vkf_line_style_changed proc~line_set_style->interface~vkf_line_style proc~line_set_style->interface~vkf_line_style_changed proc~marker_set_style->interface~vkf_line_style proc~marker_set_style->interface~vkf_line_style_changed

Called by

proc~~build_marker_nodes~~CalledByGraph proc~build_marker_nodes build_marker_nodes proc~marker_build MarkerArtist%marker_build proc~marker_build->proc~build_marker_nodes proc~rebuild_markers rebuild_markers proc~rebuild_markers->proc~build_marker_nodes proc~marker_set_point_colors MarkerArtist%marker_set_point_colors proc~marker_set_point_colors->proc~rebuild_markers proc~marker_update MarkerArtist%marker_update proc~marker_update->proc~rebuild_markers proc~set_marker_image MarkerArtist%set_marker_image proc~set_marker_image->proc~rebuild_markers

Source Code

    subroutine build_marker_nodes(self, compile)
        type(MarkerArtist), intent(inout) :: self
        logical, intent(in) :: compile                      !! true: compiled now (if shown)
        logical :: colored
        colored = marker_uses_colors(self)
        call self%start_node%init(self%group, CHAIN_MARKERS, self%image, colored=colored)
        call self%end_node%init(self%group, CHAIN_MARKERS, self%image, colored=colored)
        call self%inter%init(self%group, CHAIN_MARKERS, self%image, colored=colored)
        call self%start_node%set_compile(compile .and. self%shown)
        call self%end_node%set_compile(compile .and. self%shown)
        call self%inter%set_compile(compile .and. self%shown)
        call self%start_node%reserve(1)
        call self%end_node%reserve(1)
        call self%inter%reserve(1)
        call self%start_node%set_compile(self%shown)
        call self%end_node%set_compile(self%shown)
        call self%inter%set_compile(self%shown)
        call marker_style(self)
        call redraw_markers(self)
    end subroutine build_marker_nodes