Rev 9731 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9731 | Rev 9902 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | (* |
1 | (* |
2 | Copyright 2021, 2022 Anton Krotov |
2 | Copyright 2021-2023 Anton Krotov |
Line 3... | Line 3... | ||
3 | 3 | ||
Line 4... | Line 4... | ||
4 | This file is part of CEdit. |
4 | This file is part of CEdit. |
5 | 5 | ||
Line 236... | Line 236... | ||
236 | PROCEDURE exit (m: tMenu); |
236 | PROCEDURE exit (m: tMenu); |
237 | BEGIN |
237 | BEGIN |
238 | m.active := FALSE; |
238 | m.active := FALSE; |
239 | resetTimer; |
239 | resetTimer; |
240 | m.tid := 0; |
240 | m.tid := 0; |
- | 241 | G.destroy(m.canvas); |
|
241 | K.Exit |
242 | K.Exit |
242 | END exit; |
243 | END exit; |
Line 243... | Line 244... | ||
243 | 244 | ||
Line 247... | Line 248... | ||
247 | m.active := FALSE; |
248 | m.active := FALSE; |
248 | IF m.parent = NIL THEN |
249 | IF m.parent = NIL THEN |
249 | resetTimer |
250 | resetTimer |
250 | END; |
251 | END; |
251 | m.tid := 0; |
252 | m.tid := 0; |
- | 253 | G.destroy(m.canvas); |
|
252 | K.Exit |
254 | K.Exit |
253 | END escape; |
255 | END escape; |
Line 254... | Line 256... | ||
254 | 256 | ||
Line 352... | Line 354... | ||
352 | close(m.child); |
354 | close(m.child); |
353 | m.child := NIL |
355 | m.child := NIL |
354 | END; |
356 | END; |
355 | temp := m.tid; |
357 | temp := m.tid; |
356 | m.tid := 0; |
358 | m.tid := 0; |
- | 359 | G.destroy(m.canvas); |
|
357 | K.ExitID(temp); |
360 | K.ExitID(temp); |
358 | m.active := FALSE |
361 | m.active := FALSE |
359 | END |
362 | END |
360 | END close; |
363 | END close; |
Line 507... | Line 510... | ||
507 | ELSE |
510 | ELSE |
508 | IF getShortcut(key) THEN |
511 | IF getShortcut(key) THEN |
509 | IF m.parent # NIL THEN |
512 | IF m.parent # NIL THEN |
510 | temp := m.parent.tid; |
513 | temp := m.parent.tid; |
511 | m.parent.tid := 0; |
514 | m.parent.tid := 0; |
- | 515 | G.destroy(m.parent.canvas); |
|
512 | K.ExitID(temp) |
516 | K.ExitID(temp) |
513 | END; |
517 | END; |
514 | exit(m) |
518 | exit(m) |
515 | END |
519 | END |
516 | END; |
520 | END; |
Line 565... | Line 569... | ||
565 | IF m.tid = 0 THEN |
569 | IF m.tid = 0 THEN |
566 | L := level(m); |
570 | L := level(m); |
567 | IF K.GetThreadSlot(TIDs[L]) = 0 THEN |
571 | IF K.GetThreadSlot(TIDs[L]) = 0 THEN |
568 | m.winX := x; |
572 | m.winX := x; |
569 | m.winY := y; |
573 | m.winY := y; |
- | 574 | IF m.canvas = NIL THEN |
|
- | 575 | m.canvas := G.CreateCanvas(m.width + 1, m.height + 1); |
|
- | 576 | G.SetFont(m.canvas, m.font) |
|
- | 577 | END; |
|
570 | SYSTEM.PUT(SYSTEM.ADR(stack[L][LEN(stack[0]) - 1]), m); |
578 | SYSTEM.PUT(SYSTEM.ADR(stack[L][LEN(stack[0]) - 1]), m); |
571 | m.tid := K.CreateThread(SYSTEM.ADR(window), stack[L]); |
579 | m.tid := K.CreateThread(SYSTEM.ADR(window), stack[L]); |
572 | TIDs[L] := m.tid |
580 | TIDs[L] := m.tid |
573 | END |
581 | END |
574 | END |
582 | END |
Line 676... | Line 684... | ||
676 | item := item.next(tItem) |
684 | item := item.next(tItem) |
677 | END; |
685 | END; |
678 | m.width := maxLength*fontWidth + LEFT + RIGHT; |
686 | m.width := maxLength*fontWidth + LEFT + RIGHT; |
679 | m.height := items.count*itemHeight - 2; |
687 | m.height := items.count*itemHeight - 2; |
680 | m.font := G.fonts[1]; |
688 | m.font := G.fonts[1]; |
681 | m.canvas := G.CreateCanvas(m.width + 1, m.height + 1); |
689 | (* m.canvas := G.CreateCanvas(m.width + 1, m.height + 1); |
682 | G.SetFont(m.canvas, m.font) |
690 | G.SetFont(m.canvas, m.font)*) |
683 | RETURN m |
691 | RETURN m |
684 | END create; |
692 | END create; |
Line 685... | Line 693... | ||
685 | 693 |