__mark_reset(d, m, 0, 0);
}
-struct mark *doc_first_mark(struct doc *d, int view)
-{
- struct tlist_head *tl;
-
- if (view < 0 || view >= d->nviews || d->views[view].notify == NULL)
- return NULL;
- if (tlist_empty(&d->views[view].head))
- return NULL;
- tlist_for_each(tl, &d->views[view].head)
- if (TLIST_TYPE(tl) == GRP_MARK)
- return tlist_entry(tl, struct mark, view);
- return NULL;
-}
-
struct mark *doc_next_mark(struct mark *m)
{
struct tlist_head *tl = &m->view;
struct mark *doc_next_mark_all(struct mark *m);
struct mark *doc_prev_mark_all(struct mark *m);
struct mark *doc_prev_mark_all_safe(struct doc *d, struct mark *m);
-struct mark *doc_first_mark(struct doc *d, int viewnum);
struct mark *doc_next_mark(struct mark *m);
struct mark *doc_prev_mark(struct mark *m);
void point_reset(struct mark *p);
return 1;
}
if (strcmp(ci->key, "Release") == 0) {
- struct doc *d = ci->home->data;
struct mark *m;
int i = doc_find_view(ci->home, ci->comm);
if (i < 0)
return 0;
- while ((m = doc_first_mark(d, i)) != NULL)
+ while ((m = vmark_first(ci->home, i)) != NULL)
mark_free(m);
doc_del_view(ci->home, ci->comm);
}
if (type < 0)
type = doc_add_view(d->home, &count_notify, 0);
- m = doc_first_mark(d, type);
+ m = vmark_first(d->home, type);
if (m == NULL) {
/* No marks yet, let's make some */
m = doc_new_mark(d, type);