Lines Matching refs:dir
90 char *dir; member
177 static int SFgetDir(SFDir *dir);
208 char *dir; member
241 SFDir *dir; in SFfree() local
244 dir = &(SFdirs[i]); in SFfree()
246 for (j = dir->nEntries - 1; j >= 0; j--) in SFfree()
248 if (dir->entries[j].shown != dir->entries[j].real) in SFfree()
249 XtFree(dir->entries[j].shown); in SFfree()
250 XtFree(dir->entries[j].real); in SFfree()
253 XtFree((char *)dir->entries); in SFfree()
254 XtFree(dir->dir); in SFfree()
256 dir->dir = NULL; in SFfree()
266 SFunreadableDir(SFDir *dir) in SFunreadableDir() argument
270 dir->entries = (SFEntry *) XtMalloc(sizeof(SFEntry)); in SFunreadableDir()
271 dir->entries[0].statDone = 1; in SFunreadableDir()
272 SFstrdup(&dir->entries[0].real, cannotOpen); in SFunreadableDir()
273 dir->entries[0].shown = dir->entries[0].real; in SFunreadableDir()
274 dir->nEntries = 1; in SFunreadableDir()
275 dir->nChars = strlen(cannotOpen); in SFunreadableDir()
279 SFreplaceText(SFDir *dir, char *str) in SFreplaceText() argument
283 *(dir->path) = 0; in SFreplaceText()
303 SFDir *dir; in SFexpand() local
308 dir = &(SFdirs[SFdirEnd - 1]); in SFexpand()
310 if (dir->beginSelection == -1) in SFexpand()
313 SFreplaceText(dir, str); in SFexpand()
317 else if (dir->beginSelection == dir->endSelection) in SFexpand()
319 SFreplaceText(dir, dir->entries[dir->beginSelection].shown); in SFexpand()
323 max = &(dir->entries[dir->endSelection + 1]); in SFexpand()
325 name = dir->entries[dir->beginSelection].shown; in SFexpand()
331 entry = &(dir->entries[dir->beginSelection]); in SFexpand()
347 SFreplaceText(dir, growing); in SFexpand()
352 SFfindFile(SFDir *dir, char *str) in SFfindFile() argument
371 max = dir->nEntries; in SFfindFile()
373 entries = dir->entries; in SFfindFile()
409 if ((dir->beginSelection != begin) || (dir->endSelection != end - 1)) in SFfindFile()
411 dir->changed = 1; in SFfindFile()
412 dir->beginSelection = begin; in SFfindFile()
414 dir->endSelection = begin; in SFfindFile()
416 dir->endSelection = end - 1; in SFfindFile()
419 else if (dir->beginSelection != -1) in SFfindFile()
421 dir->changed = 1; in SFfindFile()
422 dir->beginSelection = -1; in SFfindFile()
423 dir->endSelection = -1; in SFfindFile()
427 || ((begin > dir->vOrigin) && (end < dir->vOrigin + SFlistSize))) in SFfindFile()
439 if (dir->vOrigin != i) in SFfindFile()
441 dir->vOrigin = i; in SFfindFile()
442 dir->changed = 1; in SFfindFile()
451 SFDir *dir; in SFunselect() local
453 dir = &(SFdirs[SFdirEnd - 1]); in SFunselect()
454 if (dir->beginSelection != -1) in SFunselect()
455 dir->changed = 1; in SFunselect()
456 dir->beginSelection = -1; in SFunselect()
457 dir->endSelection = -1; in SFunselect()
486 SFstrdup(&SFlogins[0].dir, pw ? pw->pw_dir : "/"); in SFgetHomeDirs()
509 SFstrdup(&SFlogins[i].dir, pw->pw_dir); in SFgetHomeDirs()
513 SFhomeDir.dir = XtMalloc(1); in SFgetHomeDirs()
514 SFhomeDir.dir[0] = 0; in SFgetHomeDirs()
549 SFlogins[i].dir), "/"), theRest); in SFfindHomeDir()
571 SFDir *dir; in SFupdatePath() local
576 dir = &(SFdirs[0]); in SFupdatePath()
577 SFstrdup(&dir->dir, "/"); in SFupdatePath()
579 (void) SFgetDir(dir); in SFupdatePath()
581 SFdirs[j].dir = NULL; in SFupdatePath()
582 dir->path = SFcurrentPath + 1; in SFupdatePath()
583 dir->vOrigin = 0; in SFupdatePath()
584 dir->hOrigin = 0; in SFupdatePath()
585 dir->changed = 1; in SFupdatePath()
586 dir->beginSelection = -1; in SFupdatePath()
587 dir->endSelection = -1; in SFupdatePath()
588 SFhomeDir.dir = NULL; in SFupdatePath()
604 dir = &(SFdirs[0]); in SFupdatePath()
605 SFrootDir = *dir; in SFupdatePath()
606 if (!SFhomeDir.dir) in SFupdatePath()
608 *dir = SFhomeDir; in SFupdatePath()
609 dir->changed = 1; in SFupdatePath()
620 dir = &(SFdirs[0]); in SFupdatePath()
621 *dir = SFrootDir; in SFupdatePath()
622 dir->changed = 1; in SFupdatePath()
664 SFdirs[j].dir = NULL; in SFupdatePath()
666 dir = &(SFdirs[i]); in SFupdatePath()
667 if ((!(dir->dir)) || prevChange || strcmp(dir->dir, begin)) in SFupdatePath()
669 if (dir->dir) in SFupdatePath()
672 SFstrdup(&dir->dir, begin); in SFupdatePath()
673 dir->path = end; in SFupdatePath()
674 dir->vOrigin = 0; in SFupdatePath()
675 dir->hOrigin = 0; in SFupdatePath()
676 dir->changed = 1; in SFupdatePath()
677 dir->beginSelection = -1; in SFupdatePath()
678 dir->endSelection = -1; in SFupdatePath()
679 (void)SFfindFile(dir - 1, begin); in SFupdatePath()
680 if (SFchdir(SFcurrentPath) || SFgetDir(dir)) in SFupdatePath()
682 SFunreadableDir(dir); in SFupdatePath()
704 if (SFdirs[i].dir) in SFupdatePath()
817 SFDir *dir; in SFbuttonReleaseList() local
826 dir = &(SFdirs[SFdirPtr + n]); in SFbuttonReleaseList()
827 SFreplaceText(dir, in SFbuttonReleaseList()
828 dir->entries[dir->vOrigin + SFcurrentInvert[n]].shown); in SFbuttonReleaseList()
834 SFcheckDir(int n, SFDir *dir) in SFcheckDir() argument
839 if ((!mch_stat(".", &statBuf)) && (statBuf.st_mtime != dir->mtime)) in SFcheckDir()
860 for (i = dir->nEntries - 1; i >= 0; i--) in SFcheckDir()
862 if (dir->entries[i].shown != dir->entries[i].real) in SFcheckDir()
863 XtFree(dir->entries[i].shown); in SFcheckDir()
864 XtFree(dir->entries[i].real); in SFcheckDir()
866 XtFree((char *) dir->entries); in SFcheckDir()
867 if (SFgetDir(dir)) in SFcheckDir()
868 SFunreadableDir(dir); in SFcheckDir()
869 if (dir->vOrigin > dir->nEntries - SFlistSize) in SFcheckDir()
870 dir->vOrigin = dir->nEntries - SFlistSize; in SFcheckDir()
871 if (dir->vOrigin < 0) in SFcheckDir()
872 dir->vOrigin = 0; in SFcheckDir()
873 if (dir->hOrigin > dir->nChars - SFcharsPerEntry) in SFcheckDir()
874 dir->hOrigin = dir->nChars - SFcharsPerEntry; in SFcheckDir()
875 if (dir->hOrigin < 0) in SFcheckDir()
876 dir->hOrigin = 0; in SFcheckDir()
877 dir->beginSelection = -1; in SFcheckDir()
878 dir->endSelection = -1; in SFcheckDir()
880 if ((dir + 1)->dir) in SFcheckDir()
881 (void) SFfindFile(dir, (dir + 1)->dir); in SFcheckDir()
883 (void) SFfindFile(dir, dir->path); in SFcheckDir()
896 SFcheckFiles(SFDir *dir) in SFcheckFiles() argument
908 from = dir->vOrigin; in SFcheckFiles()
909 to = dir->vOrigin + SFlistSize; in SFcheckFiles()
910 if (to > dir->nEntries) in SFcheckFiles()
911 to = dir->nEntries; in SFcheckFiles()
915 str = dir->entries[i].real; in SFcheckFiles()
937 SFDir *dir; in SFdirModTimer() local
949 dir = &(SFdirs[SFdirPtr + n]); in SFdirModTimer()
950 save = *(dir->path); in SFdirModTimer()
951 *(dir->path) = 0; in SFdirModTimer()
954 *(dir->path) = save; in SFdirModTimer()
959 *(dir->dir) = 0; in SFdirModTimer()
965 *(dir->path) = save; in SFdirModTimer()
966 if (SFcheckDir(n, dir) || ((f == n) && SFcheckFiles(dir))) in SFdirModTimer()
1148 SFDir *dir; in SFclearList() local
1158 dir = &(SFdirs[SFdirPtr + n]); in SFclearList()
1160 if ((SFdirPtr + n < SFdirEnd) && dir->nEntries && dir->nChars) in SFclearList()
1165 (float) (((double) dir->vOrigin) / in SFclearList()
1166 dir->nEntries), in SFclearList()
1167 (float) (((double) ((dir->nEntries < SFlistSize) in SFclearList()
1168 ? dir->nEntries : SFlistSize)) / in SFclearList()
1169 dir->nEntries)); in SFclearList()
1173 (float) (((double) dir->vOrigin) / in SFclearList()
1174 dir->nEntries), in SFclearList()
1175 (float) (((double) ((dir->nEntries < SFlistSize) in SFclearList()
1176 ? dir->nEntries : SFlistSize)) / in SFclearList()
1177 dir->nEntries), in SFclearList()
1178 (double)dir->nEntries); in SFclearList()
1184 (float) (((double) dir->hOrigin) / dir->nChars), in SFclearList()
1185 (float) (((double) ((dir->nChars < in SFclearList()
1186 SFcharsPerEntry) ? dir->nChars : in SFclearList()
1187 SFcharsPerEntry)) / dir->nChars)); in SFclearList()
1191 (float) (((double) dir->hOrigin) / dir->nChars), in SFclearList()
1192 (float) (((double) ((dir->nChars < in SFclearList()
1193 SFcharsPerEntry) ? dir->nChars : in SFclearList()
1194 SFcharsPerEntry)) / dir->nChars), in SFclearList()
1195 (double)dir->nChars); in SFclearList()
1219 SFdeleteEntry(SFDir *dir, SFEntry *entry) in SFdeleteEntry() argument
1226 idx = entry - dir->entries; in SFdeleteEntry()
1228 if (idx < dir->beginSelection) in SFdeleteEntry()
1229 dir->beginSelection--; in SFdeleteEntry()
1230 if (idx <= dir->endSelection) in SFdeleteEntry()
1231 dir->endSelection--; in SFdeleteEntry()
1232 if (dir->beginSelection > dir->endSelection) in SFdeleteEntry()
1233 dir->beginSelection = dir->endSelection = -1; in SFdeleteEntry()
1235 if (idx < dir->vOrigin) in SFdeleteEntry()
1236 dir->vOrigin--; in SFdeleteEntry()
1240 end = &(dir->entries[dir->nEntries - 1]); in SFdeleteEntry()
1245 if (!(--dir->nEntries)) in SFdeleteEntry()
1248 n = dir - &(SFdirs[SFdirPtr]); in SFdeleteEntry()
1255 (float) (((double) dir->vOrigin) / dir->nEntries), in SFdeleteEntry()
1256 (float) (((double) ((dir->nEntries < SFlistSize) ? in SFdeleteEntry()
1257 dir->nEntries : SFlistSize)) / dir->nEntries)); in SFdeleteEntry()
1261 (float) (((double) dir->vOrigin) / dir->nEntries), in SFdeleteEntry()
1262 (float) (((double) ((dir->nEntries < SFlistSize) ? in SFdeleteEntry()
1263 dir->nEntries : SFlistSize)) / dir->nEntries), in SFdeleteEntry()
1264 (double)dir->nEntries); in SFdeleteEntry()
1278 SFstatAndCheck(SFDir *dir, SFEntry *entry) in SFstatAndCheck() argument
1287 save = *(dir->path); in SFstatAndCheck()
1288 *(dir->path) = 0; in SFstatAndCheck()
1321 SFdeleteEntry(dir, entry); in SFstatAndCheck()
1323 *(dir->path) = save; in SFstatAndCheck()
1333 *(dir->path) = save; in SFstatAndCheck()
1341 SFDir *dir, in SFdrawStrings() argument
1349 x = SFtextX - dir->hOrigin * SFcharWidth; in SFdrawStrings()
1351 if (dir->vOrigin + to >= dir->nEntries) in SFdrawStrings()
1352 to = dir->nEntries - dir->vOrigin - 1; in SFdrawStrings()
1355 entry = &(dir->entries[dir->vOrigin + i]); in SFdrawStrings()
1358 if (SFstatAndCheck(dir, entry)) in SFdrawStrings()
1360 if (dir->vOrigin + to >= dir->nEntries) in SFdrawStrings()
1361 to = dir->nEntries - dir->vOrigin - 1; in SFdrawStrings()
1386 if (dir->vOrigin + i == dir->beginSelection) in SFdrawStrings()
1397 if ((dir->vOrigin + i >= dir->beginSelection) && in SFdrawStrings()
1398 (dir->vOrigin + i <= dir->endSelection)) in SFdrawStrings()
1411 if (dir->vOrigin + i == dir->endSelection) in SFdrawStrings()
1428 SFDir *dir; in SFdrawList() local
1435 dir = &(SFdirs[SFdirPtr + n]); in SFdrawList()
1443 SFtextX - dir->hOrigin * SFcharWidth, in SFdrawList()
1445 dir->dir, in SFdrawList()
1446 strlen(dir->dir)); in SFdrawList()
1452 SFtextX - dir->hOrigin * SFcharWidth, in SFdrawList()
1454 dir->dir, in SFdrawList()
1455 strlen(dir->dir)); in SFdrawList()
1457 SFdrawStrings(w, dir, 0, SFlistSize - 1); in SFdrawList()
1513 SFDir *dir; in SFscrollTimer() local
1519 dir = &(SFdirs[SFdirPtr + n]); in SFscrollTimer()
1520 save = dir->vOrigin; in SFscrollTimer()
1524 if (dir->vOrigin > 0) in SFscrollTimer()
1525 SFvSliderMovedCallback(selFileVScrolls[n], n, dir->vOrigin - 1); in SFscrollTimer()
1529 if (dir->vOrigin < dir->nEntries - SFlistSize) in SFscrollTimer()
1530 SFvSliderMovedCallback(selFileVScrolls[n], n, dir->vOrigin + 1); in SFscrollTimer()
1533 if (dir->vOrigin != save) in SFscrollTimer()
1535 if (dir->nEntries) in SFscrollTimer()
1540 (float) (((double) dir->vOrigin) / dir->nEntries), in SFscrollTimer()
1541 (float) (((double) ((dir->nEntries < SFlistSize) ? in SFscrollTimer()
1542 dir->nEntries : SFlistSize)) / dir->nEntries)); in SFscrollTimer()
1546 (float) (((double) dir->vOrigin) / dir->nEntries), in SFscrollTimer()
1547 (float) (((double) ((dir->nEntries < SFlistSize) ? in SFscrollTimer()
1548 dir->nEntries : SFlistSize)) / dir->nEntries), in SFscrollTimer()
1549 (double)dir->nEntries); in SFscrollTimer()
1575 SFDir *dir = &(SFdirs[SFdirPtr + n]); in SFnewInvertEntry() local
1584 if (dir->vOrigin + nw >= dir->nEntries) in SFnewInvertEntry()
1682 SFDir *dir; in SFvSliderMovedCallback() local
1684 dir = &(SFdirs[SFdirPtr + n]); in SFvSliderMovedCallback()
1686 old = dir->vOrigin; in SFvSliderMovedCallback()
1687 dir->vOrigin = nw; in SFvSliderMovedCallback()
1718 SFdrawStrings(win, dir, SFlistSize - (nw - old), in SFvSliderMovedCallback()
1742 SFdrawStrings(win, dir, 0, old - nw); in SFvSliderMovedCallback()
1755 SFdrawStrings(win, dir, 0, SFlistSize - 1); in SFvSliderMovedCallback()
1762 SFDir *dir; in SFvAreaSelectedCallback() local
1765 dir = &(SFdirs[SFdirPtr + (int)(long)n]); in SFvAreaSelectedCallback()
1783 nw += dir->vOrigin; in SFvAreaSelectedCallback()
1785 if (nw > dir->nEntries - SFlistSize) in SFvAreaSelectedCallback()
1786 nw = dir->nEntries - SFlistSize; in SFvAreaSelectedCallback()
1791 if (dir->nEntries) in SFvAreaSelectedCallback()
1795 f = ((double) nw) / dir->nEntries; in SFvAreaSelectedCallback()
1801 (float) (((double) ((dir->nEntries < SFlistSize) ? in SFvAreaSelectedCallback()
1802 dir->nEntries : SFlistSize)) / dir->nEntries)); in SFvAreaSelectedCallback()
1807 (float) (((double) ((dir->nEntries < SFlistSize) ? in SFvAreaSelectedCallback()
1808 dir->nEntries : SFlistSize)) / dir->nEntries), in SFvAreaSelectedCallback()
1809 (double)dir->nEntries); in SFvAreaSelectedCallback()
1819 SFDir *dir; in SFhSliderMovedCallback() local
1822 dir = &(SFdirs[SFdirPtr + (int)(long)n]); in SFhSliderMovedCallback()
1823 save = dir->hOrigin; in SFhSliderMovedCallback()
1824 dir->hOrigin = (*(float *)nw) * dir->nChars; in SFhSliderMovedCallback()
1825 if (dir->hOrigin == save) in SFhSliderMovedCallback()
1834 SFDir *dir; in SFhAreaSelectedCallback() local
1837 dir = &(SFdirs[SFdirPtr + (int)(long)n]); in SFhAreaSelectedCallback()
1855 nw += dir->hOrigin; in SFhAreaSelectedCallback()
1857 if (nw > dir->nChars - SFcharsPerEntry) in SFhAreaSelectedCallback()
1858 nw = dir->nChars - SFcharsPerEntry; in SFhAreaSelectedCallback()
1863 if (dir->nChars) in SFhAreaSelectedCallback()
1867 f = ((double) nw) / dir->nChars; in SFhAreaSelectedCallback()
1873 (float) (((double) ((dir->nChars < SFcharsPerEntry) ? in SFhAreaSelectedCallback()
1874 dir->nChars : SFcharsPerEntry)) / dir->nChars)); in SFhAreaSelectedCallback()
1879 (float) (((double) ((dir->nChars < SFcharsPerEntry) ? in SFhAreaSelectedCallback()
1880 dir->nChars : SFcharsPerEntry)) / dir->nChars), in SFhAreaSelectedCallback()
1881 (double)dir->nChars); in SFhAreaSelectedCallback()
1894 SFDir *dir; in SFpathSliderMovedCallback() local
1910 dir = &(SFdirs[SFdirPtr + n]); in SFpathSliderMovedCallback()
1912 pos = dir->path - SFcurrentPath; in SFpathSliderMovedCallback()
1978 SFDir *dir; in SFworkProc() local
1981 for (dir = &(SFdirs[SFdirEnd - 1]); dir >= SFdirs; dir--) in SFworkProc()
1983 if (!(dir->nEntries)) in SFworkProc()
1985 for (entry = &(dir->entries[dir->nEntries - 1]); in SFworkProc()
1986 entry >= dir->entries; in SFworkProc()
1991 (void)SFstatAndCheck(dir, entry); in SFworkProc()
2012 SFDir *dir) in SFgetDir() argument
2024 maxChars = strlen(dir->dir) - 1; in SFgetDir()
2026 dir->entries = NULL; in SFgetDir()
2027 dir->nEntries = 0; in SFgetDir()
2028 dir->nChars = 0; in SFgetDir()
2038 dir->mtime = statBuf.st_mtime; in SFgetDir()
2064 dir->entries = result; in SFgetDir()
2065 dir->nEntries = i; in SFgetDir()
2066 dir->nChars = maxChars + 1; in SFgetDir()