public formatted_text override_print(match_item i, string text, int row_idx, int col_idx) { if (!can_cache(col_idx)) return override_print_no_cache(i, text, col_idx); if (cache_.Count >= max_cache_size) drop_old_items(); if (next_cache_index_ % 500 == 0) dump_cache_info(); var key = new Tuple<int,int>(row_idx, col_idx); cache_data in_cache; if (cache_.TryGetValue(key, out in_cache)) { in_cache.cache_index = ++next_cache_index_; return in_cache.format; } var print = override_print_no_cache(i, text, col_idx); if (cache_.TryGetValue(key, out in_cache)) { // we can sometimes get here - seems a call to top_row_idx => visible_row_indexes() => gets us here, within another overrideprint in_cache.cache_index = ++next_cache_index_; return in_cache.format; } cache_.Add(key, new cache_data { format = print, cache_index = ++next_cache_index_ }); return print; }
private formatted_text override_print_no_cache(match_item i, string text, int col_idx) { var print = i.override_print(parent_, text, col_idx, location_).format_text; var type = log_view_cell.cell_idx_to_type(col_idx); if (info_type_io.can_be_multi_line(type)) print = print.get_most_important_single_line(); return print; }
private formatted_text override_print_no_cache(match_item i, string text, int col_idx) { var print = i.override_print(parent_, text, col_idx, location_).format_text; var type = log_view_cell.cell_idx_to_type(col_idx); if (info_type_io.can_be_multi_line(type)) { print = print.get_most_important_single_line(); } return(print); }
internal bool matches(match_item item) { lock (this) foreach (var snoop in snoops_) { if (snoop.Value.snoop_selection.Count > 0 && snoop.Value.selection_used) { var cur_value = (item as filter.match).line.part(snoop.Key); if (!snoop.Value.snoop_selection.Contains(cur_value)) { return(false); } } } return(true); }
public format_cell(match_item item, log_view parent, int col_idx, info_type col_type, formatted_text text, int row_index, int top_row_index, int sel_index, bool is_bookmark, string prev_text, location_type location) { this.item = item; this.parent = parent; this.col_idx = col_idx; this.col_type = col_type; this.format_text = text; this.row_index = row_index; this.top_row_index = top_row_index; this.prev_text = prev_text; this.location = location; this.sel_index = sel_index; this.is_bookmark = is_bookmark; fg_color = item.fg(parent); bg_color = item.bg(parent); }
public formatted_text override_print(match_item i, string text, int row_idx, int col_idx) { if (!can_cache(col_idx)) { return(override_print_no_cache(i, text, col_idx)); } if (cache_.Count >= max_cache_size) { drop_old_items(); } if (next_cache_index_ % 500 == 0) { dump_cache_info(); } var key = new Tuple <int, int>(row_idx, col_idx); cache_data in_cache; if (cache_.TryGetValue(key, out in_cache)) { in_cache.cache_index = ++next_cache_index_; return(in_cache.format); } var print = override_print_no_cache(i, text, col_idx); if (cache_.TryGetValue(key, out in_cache)) { // we can sometimes get here - seems a call to top_row_idx => visible_row_indexes() => gets us here, within another overrideprint in_cache.cache_index = ++next_cache_index_; return(in_cache.format); } cache_.Add(key, new cache_data { format = print, cache_index = ++next_cache_index_ }); return(print); }
// IMPORTANT: here, when doing preview, we don't show any results from find/find-as-you-type/running filters private formatted_text override_print(match_item i, string text, int col_idx, column_formatter_base.format_cell.location_type location) { int row_idx = list_.IndexOf(i); Debug.Assert(row_idx >= 0); int top_row_idx = top_idx(); string prev_text = ""; if (row_idx > 0) { prev_text = log_view_cell.cell_value(list_.GetItem(row_idx - 1).RowObject as match_item, col_idx); } int sel_index = parent_.sel_row_idx_ui_thread; bool is_bokmark = parent_.has_bookmark(i.line_idx); var cell = new column_formatter_base.format_cell(i, parent_, col_idx, log_view_cell.cell_idx_to_type(col_idx), new formatted_text(text), row_idx, top_row_idx, sel_index, is_bokmark, prev_text, location); formatter_.format_before(cell); formatter_.format_after(cell); return(cell.format_text); }
// IMPORTANT: here, when doing preview, we don't show any results from find/find-as-you-type/running filters private formatted_text override_print(match_item i, string text, int col_idx, column_formatter_base.format_cell.location_type location) { int row_idx = list_.IndexOf(i); Debug.Assert(row_idx >= 0); int top_row_idx = top_idx(); string prev_text = ""; if (row_idx > 0) prev_text = log_view_cell.cell_value( list_.GetItem(row_idx - 1).RowObject as match_item , col_idx); int sel_index = parent_.sel_row_idx_ui_thread; bool is_bokmark = parent_.has_bookmark(i.line_idx); var cell = new column_formatter_base.format_cell(i, parent_, col_idx, log_view_cell.cell_idx_to_type(col_idx), new formatted_text(text), row_idx, top_row_idx, sel_index, is_bokmark, prev_text, location); formatter_.format_before(cell); formatter_.format_after(cell); return cell.format_text; }