Rev 9190 | Rev 9448 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9190 | Rev 9208 | ||
---|---|---|---|
Line 214... | Line 214... | ||
214 | END escape; |
214 | END escape; |
Line 215... | Line 215... | ||
215 | 215 | ||
216 | 216 | ||
217 | PROCEDURE repaint (m: tMenu); |
217 | PROCEDURE repaint (m: tMenu); |
218 | VAR |
218 | VAR |
219 | y, i, X, Y1, Y2: INTEGER; |
219 | y, i, X, Y: INTEGER; |
220 | item: tItem; |
220 | item: tItem; |
Line 221... | Line 221... | ||
221 | BkColor, TextColor: INTEGER; |
221 | BkColor, TextColor: INTEGER; |
Line 275... | Line 275... | ||
275 | G.FillRect(canvas, 6, y + fontHeight DIV 2 - 4, 10, y + fontHeight DIV 2) |
275 | G.FillRect(canvas, 6, y + fontHeight DIV 2 - 4, 10, y + fontHeight DIV 2) |
276 | END; |
276 | END; |
Line 277... | Line 277... | ||
277 | 277 | ||
278 | IF item.child # NIL THEN |
278 | IF item.child # NIL THEN |
279 | X := m.width - 9; |
279 | X := m.width - 9; |
280 | Y1 := y + (fontHeight - 16) DIV 2 + 2; |
- | |
281 | Y2 := Y1 + 8; |
280 | Y := y + (fontHeight - 16) DIV 2 + 2; |
282 | G.Triangle(canvas, X, Y1, X, Y2, G.triRight) |
281 | G.Triangle(canvas, X, Y, X, Y + 8, G.triRight) |
Line 283... | Line 282... | ||
283 | END; |
282 | END; |
284 | 283 | ||
285 | INC(y, fontHeight); |
284 | INC(y, fontHeight); |
Line 301... | Line 300... | ||
301 | repaint(m); |
300 | repaint(m); |
302 | K.EndDraw |
301 | K.EndDraw |
303 | END draw_window; |
302 | END draw_window; |
Line 304... | Line -... | ||
304 | - | ||
305 | - | ||
306 | PROCEDURE mouse (m: tMenu; VAR x, y: INTEGER); |
- | |
307 | VAR |
- | |
308 | mouseX, mouseY: INTEGER; |
- | |
309 | BEGIN |
- | |
310 | K.MousePos(mouseX, mouseY); |
- | |
311 | x := mouseX - m.winX; |
- | |
312 | y := mouseY - m.winY; |
- | |
313 | END mouse; |
- | |
314 | 303 | ||
315 | 304 | ||
316 | PROCEDURE close* (m: tMenu); |
305 | PROCEDURE close* (m: tMenu); |
317 | VAR |
306 | VAR |
318 | temp: INTEGER; |
307 | temp: INTEGER; |
Line 467... | Line 456... | ||
467 | exit(m) |
456 | exit(m) |
468 | END |
457 | END |
469 | END; |
458 | END; |
470 | repaint(m) |
459 | repaint(m) |
471 | |6: |
460 | |6: |
472 | msState := K.MouseState(); |
- | |
473 | mouse(m, x, y); |
461 | K.mouse(msState, x, y); |
474 | IF (0 <= x) & (x < m.width) & (0 <= y) & (y < m.height) THEN |
462 | IF (0 <= x) & (x < m.width) & (0 <= y) & (y < m.height) THEN |
475 | m.active := TRUE; |
463 | m.active := TRUE; |
476 | m.selItem := (y - TOP) DIV fontHeight; |
464 | m.selItem := (y - TOP) DIV fontHeight; |
477 | IF 8 IN msState THEN |
465 | IF 8 IN msState THEN |
478 | m.cliItem := (y - TOP) DIV fontHeight |
466 | m.cliItem := (y - TOP) DIV fontHeight |