mirror of
https://github.com/mi57730/a2d.git
synced 2024-06-25 21:29:30 +00:00
Adjust vertical spacing in Selector Entry picker (Issue #126)
This commit is contained in:
parent
910d11b688
commit
2546a639db
|
@ -442,6 +442,7 @@ winfo_about_dialog_port := winfo_about_dialog::port
|
||||||
|
|
||||||
.proc winfo_entry_picker
|
.proc winfo_entry_picker
|
||||||
width = 350
|
width = 350
|
||||||
|
height = 118
|
||||||
|
|
||||||
window_id: .byte $1B
|
window_id: .byte $1B
|
||||||
options: .byte MGTK::Option::dialog_box
|
options: .byte MGTK::Option::dialog_box
|
||||||
|
@ -459,10 +460,10 @@ mincontlength: .word 50
|
||||||
maxcontwidth: .word 500
|
maxcontwidth: .word 500
|
||||||
maxcontlength: .word 140
|
maxcontlength: .word 140
|
||||||
port:
|
port:
|
||||||
viewloc: DEFINE_POINT (screen_width - width) / 2, 25
|
viewloc: DEFINE_POINT (screen_width - width) / 2, (screen_height - height) / 2
|
||||||
mapbits: .addr MGTK::screen_mapbits
|
mapbits: .addr MGTK::screen_mapbits
|
||||||
mapwidth: .word MGTK::screen_mapwidth
|
mapwidth: .word MGTK::screen_mapwidth
|
||||||
cliprect: DEFINE_RECT 0, 0, width, 110
|
cliprect: DEFINE_RECT 0, 0, width, height
|
||||||
penpattern: .res 8, $FF
|
penpattern: .res 8, $FF
|
||||||
colormasks: .byte MGTK::colormask_and, MGTK::colormask_or
|
colormasks: .byte MGTK::colormask_and, MGTK::colormask_or
|
||||||
penloc: DEFINE_POINT 0, 0
|
penloc: DEFINE_POINT 0, 0
|
||||||
|
@ -498,11 +499,12 @@ dialog_label_pos:
|
||||||
DEFINE_RECT 0, 0, 358, 100
|
DEFINE_RECT 0, 0, 358, 100
|
||||||
.endproc
|
.endproc
|
||||||
|
|
||||||
|
entry_picker_item_height = 9 ; default font height
|
||||||
|
|
||||||
entry_picker_outer_rect:
|
entry_picker_outer_rect:
|
||||||
DEFINE_RECT 4,2,346,108
|
DEFINE_RECT 4,2,winfo_entry_picker::width-4,winfo_entry_picker::height-2
|
||||||
entry_picker_inner_rect:
|
entry_picker_inner_rect:
|
||||||
DEFINE_RECT 5,3,345,107
|
DEFINE_RECT 5,3,winfo_entry_picker::width-5,winfo_entry_picker::height-3
|
||||||
|
|
||||||
;; Line endpoints
|
;; Line endpoints
|
||||||
entry_picker_line1_start:
|
entry_picker_line1_start:
|
||||||
|
@ -512,20 +514,20 @@ entry_picker_line1_end:
|
||||||
|
|
||||||
;; Line endpoints
|
;; Line endpoints
|
||||||
entry_picker_line2_start:
|
entry_picker_line2_start:
|
||||||
DEFINE_POINT 6,89
|
DEFINE_POINT 6,winfo_entry_picker::height-21
|
||||||
entry_picker_line2_end:
|
entry_picker_line2_end:
|
||||||
DEFINE_POINT 344,89
|
DEFINE_POINT 344,winfo_entry_picker::height-21
|
||||||
|
|
||||||
entry_picker_ok_rect:
|
entry_picker_ok_rect:
|
||||||
DEFINE_RECT 210,92,310,103
|
DEFINE_RECT 210,winfo_entry_picker::height-18,310,winfo_entry_picker::height-7
|
||||||
|
|
||||||
entry_picker_cancel_rect:
|
entry_picker_cancel_rect:
|
||||||
DEFINE_RECT 40,92,140,103
|
DEFINE_RECT 40,winfo_entry_picker::height-18,140,winfo_entry_picker::height-7
|
||||||
|
|
||||||
entry_picker_ok_pos:
|
entry_picker_ok_pos:
|
||||||
DEFINE_POINT 215,102
|
DEFINE_POINT 215,winfo_entry_picker::height-8
|
||||||
entry_picker_cancel_pos:
|
entry_picker_cancel_pos:
|
||||||
DEFINE_POINT 45,102
|
DEFINE_POINT 45,winfo_entry_picker::height-8
|
||||||
|
|
||||||
;; ???
|
;; ???
|
||||||
.word 130,7,220,19
|
.word 130,7,220,19
|
||||||
|
@ -568,7 +570,7 @@ entry_picker_item_rect:
|
||||||
DEFINE_RECT 0,0,0,0,entry_picker_item_rect
|
DEFINE_RECT 0,0,0,0,entry_picker_item_rect
|
||||||
|
|
||||||
entry_picker_all_items_rect:
|
entry_picker_all_items_rect:
|
||||||
DEFINE_RECT 6,23,344,87
|
DEFINE_RECT 6,23,344,winfo_entry_picker::height-23
|
||||||
|
|
||||||
LD887:
|
LD887:
|
||||||
.byte 0
|
.byte 0
|
||||||
|
|
|
@ -435,62 +435,63 @@ L9423: addr_call L94F0, run_an_entry_label
|
||||||
|
|
||||||
L942B: stx $07
|
L942B: stx $07
|
||||||
sta $06
|
sta $06
|
||||||
lda dialog_label_pos
|
lda dialog_label_pos::xcoord
|
||||||
sta L94A8
|
sta L94A8
|
||||||
tya
|
tya
|
||||||
pha
|
pha
|
||||||
cmp #$10
|
cmp #16 ; 3rd column (16-24)
|
||||||
bcc L9441
|
bcc L9441
|
||||||
sec
|
sec
|
||||||
sbc #$10
|
sbc #16
|
||||||
jmp L9448
|
jmp L9448
|
||||||
|
|
||||||
L9441: cmp #$08
|
;; 8 rows
|
||||||
|
L9441: cmp #8 ; 2nd column (8-15)
|
||||||
bcc L9448
|
bcc L9448
|
||||||
sec
|
sec
|
||||||
sbc #$08
|
sbc #8
|
||||||
L9448: ldx #$00
|
|
||||||
stx L94A7
|
;; A has row
|
||||||
asl a
|
L9448: ldx #0
|
||||||
rol L94A7
|
ldy #entry_picker_item_height
|
||||||
asl a
|
jsr Multiply_16_8_16 ; A,X = A,X * Y
|
||||||
rol L94A7
|
|
||||||
asl a
|
|
||||||
rol L94A7
|
|
||||||
clc
|
clc
|
||||||
adc #$20
|
adc #32
|
||||||
sta dialog_label_pos+2
|
sta dialog_label_pos::ycoord
|
||||||
lda L94A7
|
|
||||||
adc #0
|
|
||||||
sta dialog_label_pos+3
|
|
||||||
pla
|
|
||||||
cmp #$08
|
|
||||||
bcs L9471
|
|
||||||
lda #$00
|
|
||||||
tax
|
|
||||||
beq L947F
|
|
||||||
L9471: cmp #$10
|
|
||||||
bcs L947B
|
|
||||||
ldx #$00
|
|
||||||
lda #$73
|
|
||||||
bne L947F
|
|
||||||
L947B: ldax #220
|
|
||||||
L947F: clc
|
|
||||||
adc #10
|
|
||||||
sta dialog_label_pos
|
|
||||||
txa
|
txa
|
||||||
adc #0
|
adc #0
|
||||||
sta dialog_label_pos+1
|
sta dialog_label_pos::ycoord+1
|
||||||
|
pla
|
||||||
|
|
||||||
|
cmp #8
|
||||||
|
bcs :+
|
||||||
|
lda #0 ; col 1
|
||||||
|
tax
|
||||||
|
beq L947F ; always
|
||||||
|
|
||||||
|
: cmp #16
|
||||||
|
bcs :+
|
||||||
|
ldx #0
|
||||||
|
lda #115 ; col 2
|
||||||
|
bne L947F ; always
|
||||||
|
|
||||||
|
: ldax #220 ; col 3
|
||||||
|
|
||||||
|
L947F: clc
|
||||||
|
adc #10
|
||||||
|
sta dialog_label_pos::xcoord
|
||||||
|
txa
|
||||||
|
adc #0
|
||||||
|
sta dialog_label_pos::xcoord+1
|
||||||
MGTK_RELAY_CALL MGTK::MoveTo, dialog_label_pos
|
MGTK_RELAY_CALL MGTK::MoveTo, dialog_label_pos
|
||||||
ldax $06
|
ldax $06
|
||||||
jsr L94CB
|
jsr L94CB
|
||||||
lda L94A8
|
lda L94A8
|
||||||
sta dialog_label_pos
|
sta dialog_label_pos::xcoord
|
||||||
lda #0
|
lda #0
|
||||||
sta dialog_label_pos+1
|
sta dialog_label_pos::xcoord+1
|
||||||
rts
|
rts
|
||||||
|
|
||||||
L94A7: .byte 0
|
|
||||||
L94A8: .byte 0
|
L94A8: .byte 0
|
||||||
|
|
||||||
L94A9: MGTK_RELAY_CALL MGTK::MoveTo, entry_picker_ok_pos
|
L94A9: MGTK_RELAY_CALL MGTK::MoveTo, entry_picker_ok_pos
|
||||||
|
@ -677,17 +678,19 @@ L9716: cmp16 screentowindow_windowx, #110
|
||||||
L9732: lda #1
|
L9732: lda #1
|
||||||
bne L9738
|
bne L9738
|
||||||
L9736: lda #0
|
L9736: lda #0
|
||||||
|
|
||||||
|
;; Determine row
|
||||||
L9738: pha
|
L9738: pha
|
||||||
lsr16 screentowindow_windowy
|
ldax screentowindow_windowy
|
||||||
lsr16 screentowindow_windowy
|
ldy #entry_picker_item_height
|
||||||
lsr16 screentowindow_windowy
|
jsr Divide_16_8_16
|
||||||
lda screentowindow_windowy
|
stax screentowindow_windowy
|
||||||
cmp #8
|
cmp #8
|
||||||
bcc L9756
|
bcc :+
|
||||||
pla
|
pla
|
||||||
return #$FF
|
return #$FF
|
||||||
|
|
||||||
L9756: pla
|
: pla
|
||||||
asl a
|
asl a
|
||||||
asl a
|
asl a
|
||||||
asl a
|
asl a
|
||||||
|
@ -754,17 +757,17 @@ L97B6: clc
|
||||||
|
|
||||||
L97D1: sec
|
L97D1: sec
|
||||||
sbc #16
|
sbc #16
|
||||||
L97D4: asl a
|
L97D4: ldx #0
|
||||||
asl a
|
ldy #entry_picker_item_height
|
||||||
asl a
|
jsr Multiply_16_8_16
|
||||||
clc
|
clc
|
||||||
adc #24
|
adc #24
|
||||||
sta entry_picker_item_rect::y1
|
sta entry_picker_item_rect::y1
|
||||||
lda #0
|
txa
|
||||||
adc #0
|
adc #0
|
||||||
sta entry_picker_item_rect::y1+1
|
sta entry_picker_item_rect::y1+1
|
||||||
add16 entry_picker_item_rect::x1, #106, entry_picker_item_rect::x2
|
add16 entry_picker_item_rect::x1, #106, entry_picker_item_rect::x2
|
||||||
add16 entry_picker_item_rect::y1, #7, entry_picker_item_rect::y2
|
add16 entry_picker_item_rect::y1, #entry_picker_item_height-1, entry_picker_item_rect::y2
|
||||||
MGTK_RELAY_CALL MGTK::SetPenMode, penXOR
|
MGTK_RELAY_CALL MGTK::SetPenMode, penXOR
|
||||||
MGTK_RELAY_CALL MGTK::PaintRect, entry_picker_item_rect
|
MGTK_RELAY_CALL MGTK::PaintRect, entry_picker_item_rect
|
||||||
MGTK_RELAY_CALL MGTK::SetPenMode, pencopy
|
MGTK_RELAY_CALL MGTK::SetPenMode, pencopy
|
||||||
|
|
Loading…
Reference in New Issue
Block a user