Lines Matching refs:openfile

35 /* Add an entry to the openfile openfilestruct.  This should only be
39 /* If there are no entries in openfile, make the first one and
41 if (openfile == NULL) {
42 openfile = make_new_opennode();
43 splice_opennode(openfile, openfile, openfile);
44 /* Otherwise, make a new entry for openfile, splice it in after
47 splice_opennode(openfile, make_new_opennode(), openfile->next);
48 openfile = openfile->next;
55 /* Initialize the current entry of the openfile openfilestruct. */
58 assert(openfile != NULL);
60 openfile->filename = mallocstrcpy(NULL, "");
64 openfile->current_x = 0;
65 openfile->placewewant = 0;
66 openfile->current_y = 0;
68 openfile->modified = FALSE;
70 openfile->mark_set = FALSE;
72 openfile->mark_begin = NULL;
73 openfile->mark_begin_x = 0;
75 openfile->fmt = NIX_FILE;
77 openfile->current_stat = NULL;
80 openfile->colorstrings = NULL;
84 /* Initialize the text of the current entry of the openfile
88 assert(openfile != NULL);
90 openfile->fileage = make_new_node(NULL);
91 openfile->fileage->data = mallocstrcpy(NULL, "");
93 openfile->filebot = openfile->fileage;
94 openfile->edittop = openfile->fileage;
95 openfile->current = openfile->fileage;
97 openfile->totsize = 0;
104 bool new_buffer = (openfile == NULL
131 * openfile. */
138 openfile->filename = mallocstrcpy(openfile->filename, filename);
145 if (openfile->current_stat == NULL) {
146 openfile->current_stat =
148 stat(filename, openfile->current_stat);
156 openfile->current = openfile->fileage;
157 openfile->current_x = 0;
158 openfile->placewewant = 0;
188 free_filestruct(openfile->fileage);
196 openfile->current = openfile->fileage;
197 openfile->current_x = 0;
198 openfile->placewewant = 0;
223 assert(openfile != NULL);
227 if (openfile == openfile->next) {
234 openfile = next_buf ? openfile->next : openfile->prev;
237 fprintf(stderr, "filename is %s\n", openfile->filename);
245 ((openfile->filename[0] == '\0') ? _("New Buffer") :
246 openfile->filename));
249 dump_filestruct(openfile->current);
253 /* Switch to the previous entry in the openfile filebuffer. */
259 /* Switch to the next entry in the openfile filebuffer. */
265 /* Delete an entry from the openfile filebuffer, and switch to the one
270 assert(openfile != NULL);
273 if (openfile == openfile->next)
280 unlink_opennode(openfile->prev);
301 assert(openfile->fileage != NULL && strlen(buf) == buf_len);
316 fileptr->next = openfile->fileage;
323 openfile->edittop = fileptr;
325 openfile->filebot = fileptr;
326 openfile->fileage = fileptr;
355 filestruct *fileptr = openfile->current;
367 assert(openfile->fileage != NULL && openfile->current != NULL);
372 if (openfile->current == openfile->fileage)
375 fileptr = openfile->current->prev;
493 size_t current_len = strlen(openfile->current->data);
498 openfile->current_x += len;
500 openfile->current_x = len;
504 openfile->current->data =
505 charealloc(openfile->current->data, len +
507 charmove(openfile->current->data + len,
508 openfile->current->data, current_len + 1);
509 strncpy(openfile->current->data, fileptr->data, len);
512 if (fileptr == openfile->fileage)
513 openfile->fileage = openfile->current;
514 if (fileptr == openfile->edittop)
515 openfile->edittop = openfile->current;
516 if (fileptr == openfile->filebot)
517 openfile->filebot = openfile->current;
530 fileptr->next = openfile->current;
531 openfile->current->prev = fileptr;
536 renumber(openfile->current);
539 openfile->totsize += get_totsize(openfile->fileage,
540 openfile->filebot);
546 if (!ISSET(NO_NEWLINES) && openfile->filebot->data[0] != '\0') {
548 openfile->current = openfile->filebot;
549 openfile->current_x = 0;
554 openfile->placewewant = xplustabs();
563 openfile->fmt = MAC_FILE;
568 openfile->fmt = DOS_FILE;
695 filestruct *edittop_save = openfile->edittop;
696 size_t current_x_save = openfile->current_x;
697 ssize_t current_y_save = openfile->current_y;
752 size_t pww_save = openfile->placewewant;
806 filepart = partition_filestruct(openfile->current,
807 openfile->current_x, openfile->current,
808 openfile->current_x);
810 (openfile->fileage == openfile->edittop);
835 openfile->current = openfile->fileage;
836 openfile->current_x = 0;
837 openfile->placewewant = 0;
862 filestruct *top_save = openfile->fileage;
868 edittop_save = openfile->fileage;
872 openfile->current_x = strlen(openfile->filebot->data);
873 if (openfile->fileage == openfile->filebot)
874 openfile->current_x += current_x_save;
878 openfile->current_y += current_y_save;
891 openfile->edittop = edittop_save;
894 openfile->placewewant = pww_save;
1285 const filestruct *fileptr = openfile->fileage;
1355 OVERWRITE || openfile->mark_set) ||
1356 openfile->current_stat->st_mtime == st.st_mtime)) {
1363 filetime.actime = openfile->current_stat->st_atime;
1364 filetime.modtime = openfile->current_stat->st_mtime;
1435 openfile->current_stat->st_mode) == -1) {
1455 openfile->current_stat->st_uid,
1456 openfile->current_stat->st_gid) == -1 ||
1578 assert(openfile->fileage != NULL && openfile->filebot != NULL);
1603 if (fileptr == openfile->filebot) {
1608 if (openfile->fmt == DOS_FILE || openfile->fmt ==
1618 if (openfile->fmt != MAC_FILE) {
1666 openfile->filename = mallocstrcpy(openfile->filename,
1677 if (openfile->colorstrings != NULL &&
1685 if (openfile->current_stat == NULL)
1686 openfile->current_stat =
1688 stat(realname, openfile->current_stat);
1694 openfile->modified = FALSE;
1715 bool old_modified = openfile->modified;
1722 assert(openfile->mark_set);
1735 (added_magicline = (openfile->filebot->data[0] != '\0')))
1773 if (exiting && openfile->filename[0] != '\0' && ISSET(TEMP_FILE)) {
1774 retval = write_file(openfile->filename, NULL, FALSE, OVERWRITE,
1784 (!exiting && openfile->mark_set) ? "" :
1786 openfile->filename);
1793 formatstr = (openfile->fmt == DOS_FILE) ?
1794 _(" [DOS Format]") : (openfile->fmt == MAC_FILE) ?
1803 if (!ISSET(RESTRICTED) && !exiting && openfile->mark_set)
1818 openfile->filename[0] == '\0',
1857 openfile->fmt = (openfile->fmt == DOS_FILE) ? NIX_FILE :
1861 openfile->fmt = (openfile->fmt == MAC_FILE) ? NIX_FILE :
1908 full_filename = get_full_path(openfile->filename);
1911 if (openfile->filename[0] == '\0')
1916 openfile->filename : full_filename) != 0);
1944 if (exiting || !openfile->mark_set)
1966 (!ISSET(RESTRICTED) && !exiting && openfile->mark_set) ?