Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 9451 → Rev 9452

/programs/develop/cedit/CEDIT
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/programs/develop/cedit/SRC/CEdit.ob07
28,7 → 28,7
RW, Ini, EB := EditBox, Tabs, Toolbar;
 
CONST
HEADER = "CEdit (20-dec-2021)";
HEADER = "CEdit (21-dec-2021)";
 
ShellFilter = "";
EditFilter = "SH|INC|TXT|ASM|OB07|C|CPP|H|PAS|PP|LUA|INI|JSON";
/programs/develop/cedit/SRC/ChangeLog.ob07
27,7 → 27,9
END;
 
tBoolItem = POINTER TO RECORD (List.tItem)
adr: INTEGER; val: BOOLEAN; save: BOOLEAN
line: Lines.tLine;
adr: INTEGER;
val, save: BOOLEAN
END;
 
tUntypedPtr = POINTER TO RECORD (List.tItem)
119,6 → 121,9
PROCEDURE save* (guard: tGuard);
VAR
item: List.tItem;
boolItem: tBoolItem;
cur: List.tItem;
del: BOOLEAN;
BEGIN
item := CL.Log.first;
WHILE item # NIL DO
127,7 → 132,22
END;
item := item.next
END;
guard.saved := TRUE
guard.saved := TRUE;
 
cur := CL.guard.prev;
WHILE cur # NIL DO
IF cur IS tBoolItem THEN
boolItem := cur(tBoolItem);
del := boolItem.save & boolItem.line.modified
ELSE
del := FALSE
END;
cur := cur.prev;
IF del THEN
List.delete(CL.Log, boolItem);
DISPOSE(boolItem)
END
END
END save;
 
 
145,11 → 165,12
END changeWord;
 
 
PROCEDURE changeBool (VAR v: BOOLEAN; x: BOOLEAN);
PROCEDURE changeBool (line: Lines.tLine; VAR v: BOOLEAN; x: BOOLEAN);
VAR
item: tBoolItem;
BEGIN
NEW(item);
item.line := line;
item.adr := SYSTEM.ADR(v);
item.val := x;
item.save := FALSE;
207,30 → 228,15
END delCurSaved;
 
 
PROCEDURE changeBool2 (VAR v: BOOLEAN; x: BOOLEAN);
PROCEDURE changeBool2 (line: Lines.tLine; VAR v: BOOLEAN; x: BOOLEAN);
VAR
item, boolItem: tBoolItem;
cur: List.tItem;
del: BOOLEAN;
item: tBoolItem;
BEGIN
NEW(item);
item.line := line;
item.adr := SYSTEM.ADR(v);
item.val := x;
item.save := TRUE;
cur := CL.guard.prev;
WHILE cur # NIL DO
IF cur IS tBoolItem THEN
boolItem := cur(tBoolItem);
del := boolItem.save & (boolItem.adr = SYSTEM.ADR(v)) & (boolItem.val = x)
ELSE
del := FALSE
END;
cur := cur.prev;
IF del THEN
List.delete(CL.Log, boolItem);
DISPOSE(boolItem)
END
END;
List.insert(CL.Log, CL.guard.prev, item)
END changeBool2;
 
/programs/develop/cedit/SRC/Lines.ob07
38,7 → 38,7
END;
 
PmovInt = PROCEDURE (VAR v: INTEGER; x: INTEGER);
PmovBool = PROCEDURE (VAR v: BOOLEAN; x: BOOLEAN);
PmovBool = PROCEDURE (line: tLine; VAR v: BOOLEAN; x: BOOLEAN);
PmovPtr = PROCEDURE (VAR v: List.tItem; x: List.tItem);
 
PTypedPtr = PROCEDURE (p: List.tItem);
63,15 → 63,15
END movInt;
 
 
PROCEDURE movBool (VAR v: BOOLEAN; x: BOOLEAN);
PROCEDURE movBool (line: tLine; VAR v: BOOLEAN; x: BOOLEAN);
BEGIN
_movBool(v, x)
_movBool(line, v, x)
END movBool;
 
 
PROCEDURE movBool2 (VAR v: BOOLEAN; x: BOOLEAN);
PROCEDURE movBool2 (line: tLine; VAR v: BOOLEAN; x: BOOLEAN);
BEGIN
_movBool2(v, x)
_movBool2(line, v, x)
END movBool2;
 
 
146,8 → 146,8
line.modified := FALSE;
line.saved := FALSE;
IF ~temp THEN
movBool(line.modified, FALSE);
movBool(line.saved, FALSE)
movBool(line, line.modified, FALSE);
movBool(line, line.saved, FALSE)
END;
line.cin := 0;
line.cout := 0;
194,8 → 194,8
PROCEDURE save* (line: tLine);
BEGIN
IF ~line.temp THEN
movBool2(line.saved, TRUE);
movBool2(line.modified, FALSE)
movBool2(line, line.saved, TRUE);
movBool2(line, line.modified, FALSE)
END;
line.modified := FALSE;
line.saved := TRUE
384,8 → 384,8
PROCEDURE modify* (line: tLine);
BEGIN
IF ~line.temp THEN
movBool(line.modified, TRUE);
movBool(line.saved, FALSE)
movBool(line, line.modified, TRUE);
movBool(line, line.saved, FALSE)
END;
line.modified := TRUE;
line.saved := FALSE;
/programs/develop/cedit/SRC/Text.ob07
1368,9 → 1368,6
IF RW.putString(file, line, Len) # Len THEN
res := FALSE
END;
IF line.modified THEN
Lines.save(line)
END;
NextLine(line);
IF line # NIL THEN
IF ~RW.newLine(file) THEN
1389,6 → 1386,15
IF res THEN
text.modified := FALSE;
ChangeLog.save(text.edition);
 
line := text.first(tLine);
WHILE line # NIL DO
IF line.modified THEN
Lines.save(line)
END;
NextLine(line)
END;
 
IF File.Delete(tempFile) THEN END
END
END;
1495,7 → 1501,7
n := selEnd.Y - selBeg.Y;
cnt := 0;
WHILE n >= 0 DO
INC(cnt, line.length + lenEOL);
INC(cnt, line.length + (lenEOL + 1));
NextLine(line);
DEC(n)
END;