Ver Fonte

File Dialog: Enter press while edit is empty

Arthur Yefimov há 3 anos atrás
pai
commit
902c8b6e41
3 ficheiros alterados com 6 adições e 4 exclusões
  1. 4 2
      src/Editor.Mod
  2. 1 1
      src/OV.Mod
  3. 1 1
      src/StrList.Mod

+ 4 - 2
src/Editor.Mod

@@ -158,12 +158,14 @@ RETURN (i < LEN(what)) & (j < LEN(where)) & (what[i] = 0X) END Match;
 
 PROCEDURE FileDialogOkClick*(c: OV.Control);
 VAR w: FileDialog;
-  s, full: ARRAY 257 OF CHAR;
+  s, full: ARRAY 256 OF CHAR;
   i, L: INTEGER;
 BEGIN w := c.parent(FileDialog); s := w.edtFilename.caption$;
   (* Replace all \ with / and set L to length of s *)
   L := 0; WHILE s[L] # 0X DO IF s[L] = '\' THEN s[L] := '/' END; INC(L) END;
-  IF L > 0 THEN
+  IF L = 0 THEN
+    IF w.colFiles.onChange # NIL THEN w.colFiles.onChange(w.colFiles) END
+  ELSE
     IF (s[L - 1] = '/') OR (s[0] = '/') THEN
       IF s[L - 1] # '/' THEN s[L] := '/'; INC(L); s[L] := 0X END;
       FileDialogApplyDir(w, s); FileDialogUpdateFileList(w)

+ 1 - 1
src/OV.Mod

@@ -657,7 +657,7 @@ TYPE
     begin*: INTEGER; (* What index list begins with visually *)
     cur*: INTEGER;
     lastMouseDownItem*: INTEGER;
-    scrollbar: Scrollbar;
+    scrollbar: Scrollbar
   END;
 
   Window* = POINTER TO WindowDesc;

+ 1 - 1
src/StrList.Mod

@@ -41,7 +41,7 @@ PROCEDURE GetCur(L: List; VAR s: ARRAY OF CHAR);
 VAR i: INTEGER; p: Item;
 BEGIN
   IF L.cur # NIL THEN L.eol := FALSE; p := L.cur; i := 0;
-    WHILE (i < LEN(s) - 1) & (p.s[i] # CHR(0)(*!FIXME*)) DO s[i] := p.s[i]; INC(i) END;
+    WHILE (i < LEN(s) - 1) & (p.s[i] # 0X) DO s[i] := p.s[i]; INC(i) END;
     s[i] := 0X
   ELSE s[0] := 0X; L.eol := TRUE
   END