From: Laurent MAZET Date: Thu, 9 Jan 2025 12:09:42 +0000 (+0100) Subject: Adapt to mingw X-Git-Tag: v1.0~60 X-Git-Url: https://secure.softndesign.org/git/?a=commitdiff_plain;h=51d6f4c3406d9d50f2d8d9195bf2298c96e77f68;p=fm.git Adapt to mingw --- diff --git a/display.c b/display.c index c96b573..32736a8 100644 --- a/display.c +++ b/display.c @@ -309,17 +309,17 @@ char *getwindow (char *msg, window_t *win, int length) int yoffset = win->yoffset + (win->ysize - 1) / 2; set_color (black); - _dobound (strlen (msg) + 1 + length, 1, xoffset, yoffset); + _dobound (strlen (msg) + 1 + length, 2, xoffset, yoffset); mvaddstr (yoffset, xoffset, msg); set_color (white); - xoffset += strlen (msg) + 1; + //xoffset += strlen (msg) + 1; int i = 0, j; int stop = 0; while (!stop) { for (j = 0; j < length; j++) { set_color ((j == i) ? yellow : black); - mvaddch (yoffset, xoffset + j, name[j]); + mvaddch (yoffset + 1, xoffset + j, name[j]); set_color (white); } int ch = getch (); diff --git a/fm.c b/fm.c index e59ca5c..e2253ec 100644 --- a/fm.c +++ b/fm.c @@ -19,6 +19,12 @@ #define MAXPANES 2 #define MAXSTATUS 128 +#ifdef PDCURSES +#define ALT_(x) ALT_##x +#else +#define ALT_(x) '#x' +#endif + /* static variables */ char *progname = NULL; char *version = "0.1"; @@ -289,44 +295,51 @@ int main (int argc, char *argv[]) case 'u': index[pane]--; break; +#ifndef PDCURSES case KEY_ESC: switch (getch ()) { - case 'c': /* copy */ +#endif /* PDCURSES */ + case ALT_(C): /* copy */ break; - case 'd': /* delete */ + case ALT_(D): /* delete */ break; - case 'e': /* edit */ + case ALT_(E): /* edit */ break; - case 'f': /* filter */ - filter = getwindow ("Set filter", windir[pane], 32); - filterlist (list[pane], filter); - free (filter); + case ALT_(F): /* filter */ + VERBOSE(DEBUG, fprintf (stderr, "ALT F\n")); + filter = getwindow ("Set filter", windir[pane], 16); + if (filter) { + filterlist (list[pane], filter); + free (filter); + } break; - case 'h': /* help */ + case ALT_(H): /* help */ helpwindow (help, (width - strmaxlen (help, '\n')) / 2, 3 * yoffset); while (getch () == ERR) { usleep (200 * 1000); } break; - case 'm': /* move */ + case ALT_(M): /* move */ break; - case 'n': /* new dir */ + case ALT_(N): /* new dir */ break; - case 'q': /* quit */ + case ALT_(Q): /* quit */ if (askwindow (" Restart (Y/N) ", max (windir[pane]->xoffset + (windir[pane]->xsize - 15) / 2, 1), windir[pane]->yoffset + (windir[pane]->ysize - 1) / 2, "Yy", "Nn") == 1) { stop = 1; } break; - case 'r': /* rename */ + case ALT_(R): /* rename */ break; - case 's': /* select */ + case ALT_(S): /* select */ current = list[pane]->tab + windir[pane]->index; current->selected = (current->selected) ? 0 : 1; break; - case 'v': /* view */ + case ALT_(V): /* view */ break; +#ifndef PDCURSES } break; +#endif /* PDCURSES */ } }