void mcview_display (WView * view) { if (view->hex_mode) { mcview_display_hex (view); } else { mcview_display_text (view); } mcview_display_status (view); }
void mcview_display (mcview_t * view) { if (view->hex_mode) { mcview_display_hex (view); } else if (view->text_nroff_mode) { mcview_display_nroff (view); } else { mcview_display_text (view); } mcview_display_status (view); }
void mcview_update (mcview_t * view) { static int dirt_limit = 1; if (view->dpy_bbar_dirty) { view->dpy_bbar_dirty = FALSE; mcview_set_buttonbar (view); buttonbar_redraw (find_buttonbar (view->widget.owner)); } if (view->dirty > dirt_limit) { /* Too many updates skipped -> force a update */ mcview_display (view); view->dirty = 0; /* Raise the update skipping limit */ dirt_limit++; if (dirt_limit > mcview_max_dirt_limit) dirt_limit = mcview_max_dirt_limit; } else if (view->dirty > 0) { if (is_idle ()) { /* We have time to update the screen properly */ mcview_display (view); view->dirty = 0; if (dirt_limit > 1) dirt_limit--; } else { /* We are busy -> skipping full update, only the status line is updated */ mcview_display_status (view); } /* Here we had a refresh, if fast scrolling does not work restore the refresh, although this should not happen */ } }