ehouse
5fb7bb95d4
selInfo can't be left null when board created, as selPlayer is 0.
...
Point at pti[0] to fix crasher.
2008-07-18 09:03:54 +00:00
ehouse
52650992ee
combine all per-player arrays in board into a single array of structs.
...
access can then be via a ptr, more effecient and faster. The change
seems to save 1K of generated code. No changes to algorithms, only to
field access.
2008-07-18 07:49:00 +00:00
ehouse
3d6ab4ffb4
Implement new model for focus/tray interaction aimed at smartphones
...
with five-ways and no obvious alt key. Focus once dived into tray
moves over tiles *and* divider. Tap of center key toggles
selectedness of object under focus. Movement of focus when object is
selected drags the object (tile or divider) unless in trade mode.
This is easier to discover and behaves more like drag-and-drop -- and
lets you move the divider. Works for linux and win32. Key nav in
tray is broken on palm.
2008-07-17 05:16:09 +00:00
ehouse
e83786759c
break board.c up so isn't too large for 68K on palm when compiled for
...
debugging.
2008-07-17 05:06:08 +00:00
ehouse
89edef9c18
change API for drawing divider so it can be focussed as well as
...
selected. Being using that information in palm and wince. For GTK,
use color rather than ugly black rects to indicate focus.
2008-07-17 05:03:01 +00:00
ehouse
2923f301a5
Fix cosmetic problems when changing focus and board overlaps tray.
...
The goal is to have the tray drawn on top, even if it's otherwise
hidden, when the whole thing's focussed. Fix is to inval and
recalculate rects more often as focus changes or tray is hidden.
2008-06-07 23:14:26 +00:00
ehouse
0b5ad41899
Fix crasher: don't start a board-scroll operation and attempt to end
...
by dropping a tile. (This part is to detect that no drag actuall happened.)
2008-06-07 23:07:31 +00:00
ehouse
087a05dd6a
Fix crasher: don't start a board-scroll operation and attempt to end
...
by dropping a tile.
2008-06-07 23:05:54 +00:00
ehouse
e60d338488
Remove all tabs. No code changes.
2008-05-31 03:26:16 +00:00
ehouse
d053f0731f
Fix so curses-only builds and curses build doesn't segfault.
2008-05-26 00:27:48 +00:00
ehouse
ca7c14128a
fix bug: don't advance arrow if unable to move tile to board (introduced with recent tile index changes)
2008-05-24 16:21:03 +00:00
ehouse
73e0313263
Fix bug that number key tries to move tile to board even during trade.
...
Generalize use of number to select tile in tray so that during trade
keys will toggle selected tiles. Letters too.
2008-05-19 01:18:43 +00:00
ehouse
1d5446bfdf
Trying to give smartphone users way to use keypad to move tiles to
...
board. Enabling key-to-text works, but constants to turn it off
aren't in cegcc. So for b2 add a quick hack where 1 means first tile
in tray, 7 means last (rightmost). Enable and test on gtk.
2008-05-11 20:29:43 +00:00
ehouse
465daf0a15
While tap on draggable tile should not return it to tray, return-key on same tile should.
...
That's the only way to return a single tile on smartphone.
2008-05-11 16:20:37 +00:00
ehouse
83c6abdfae
A bit of cleanup; no code change.
2008-05-11 15:23:22 +00:00
ehouse
8a6df572ae
add some consts.
2008-05-06 12:49:37 +00:00
ehouse
d57c0f69a4
redraw tray (if dirty) even if hidden. On wince at least this
...
prevents the bottoms of the tiles from peeking out from under a
partially obscuring board, giving away information. In cases where
the board completely hides the tray this is unnecessary, but making
that optimiztion can come later. This is a bug.
2008-04-14 01:31:53 +00:00
ehouse
f1ec47aa93
force miniwindow entirely onto board even if natural position is on
...
tray; fix overdrawing onto miniwindow by making timer proc return a
boolean and only redrawing (on wince) when it's true.
2008-04-12 15:36:31 +00:00
ehouse
72457bf28c
add ability to scroll the board by dragging it. add new method
...
util_altKeyDown to allow user to choose between scrolling board and
dragging the hint rect when both are possible. add adjustYOffset;
make it and board_setYOffset more tolerant of out-of-bounds inputs and
use that to simplify calling code.
2008-04-08 03:55:53 +00:00
ehouse
120592324a
remove excessive logging
2008-04-02 03:50:55 +00:00
ehouse
f1c8dd6190
Implement scrolling during drag via timer rather than by counting on
...
getting notified when pen is dragged off the board. The latter won't
happen if the board is up against the edge of the screen.
2008-03-29 20:23:27 +00:00
ehouse
12be76bac4
If search limits in use, try vertical as well as horizontal initial moves.
2008-03-29 19:40:03 +00:00
ehouse
61272a3a7e
add assertions that formatted string returned fit within the provided space.
2008-03-23 19:14:20 +00:00
ehouse
ffd7dffd27
When scrolling in response to a drag, invalidate under the tile both
...
before and after the scroll. Otherwise on platforms where scrolling
is via a bitmove the old position gets scrolled away and never redrawn
leaving ghost tile parts lying around.
2008-03-15 14:00:05 +00:00
ehouse
ddafe8b97a
Indicate empty cell with CELL_ISEMPTY rather than an empty string; fix
...
palm to not draw star on top of placed tile.
2008-03-14 09:36:42 +00:00
ehouse
88ef41af15
rewrite invalCellsUnderRect to be less stupid: start from rect passed
...
in rather than whole board.
2008-03-14 09:20:26 +00:00
ehouse
8f7d120b8c
Remove commented-out field. (Forgot to save before checking in....)
2008-03-13 12:43:33 +00:00
ehouse
3dbf026372
fold hint-region-drag into dragdrpp, saving a bunch of code and
...
gaining scrolling during drag on small screens.
2008-03-13 12:23:22 +00:00
ehouse
93a621c65c
fix crash: check that tile exists before removing
2008-03-12 12:21:23 +00:00
ehouse
0f18efb925
Make function static
2008-03-11 12:28:57 +00:00
ehouse
20ea57cf77
Fix errors, all in debug-only code, flagged by __attribute__ format addition.
2008-03-11 12:24:23 +00:00
ehouse
1eb2933d49
Don't return tile to tray on a simple tap when drag-drop is available; move
...
function between files.
2008-03-11 12:22:10 +00:00
ehouse
0988159795
add owner param to drawTileMidDrag so can color tiles correctly
2008-03-11 11:48:53 +00:00
ehouse
42e10c2ac2
invalidate divider when first touched so that it's drawn in-drag immediately.
2008-03-10 00:49:06 +00:00
ehouse
da665d1bc9
add dragdrpp.{c,h}, since apparently merging doesn't include svn adding
2008-03-08 23:19:04 +00:00
ehouse
c26eed3462
merge with drag_n_drop branch: apply patch generated with this command on that branch: svn diff -r 2080:2087
2008-03-08 23:16:21 +00:00
ehouse
7b11fa228b
make new turnChanged notification compile-time conditional
2008-02-27 05:43:27 +00:00
ehouse
497e5beb76
remove dead code
2008-02-27 05:38:28 +00:00
ehouse
93f95588d8
add and call util_turnChanged
2008-02-26 13:46:33 +00:00
ehouse
0b5a14c424
Add ENABLE_LOGGING define so logging can be used on non-debug builds, e.g. to trace opening of non-debug saved games and prefs files.
2008-02-17 21:48:48 +00:00
ehouse
62f95cdda1
fix compile warning
2008-02-16 17:09:21 +00:00
ehouse
642e6611db
Mark params unused in compiles for standalone; remove unused param.
2008-02-16 16:02:49 +00:00
ehouse
ff457236ef
Don't hide tray if there's only one player.
2008-02-16 15:53:00 +00:00
ehouse
df4c9fe442
Don't cast char array to long and write to it! Newer arm compilers
...
don't like this -- or maybe I was just lucky until now.
2008-02-04 06:13:11 +00:00
ehouse
19ea3e1f6e
change name of field. No code change. Pending on symbian and franklin which don't compile.
2008-02-02 15:17:53 +00:00
ehouse
a05f869472
Fix to compile and run standalone
2008-01-19 16:04:48 +00:00
ehouse
bf5a1f1487
Log unusual case.
2008-01-07 01:19:47 +00:00
ehouse
0c459e007d
Error code used with method to check consistency of BT address.
2008-01-07 01:11:29 +00:00
ehouse
880fb716c6
Unify lookup by address and by channelNo; add method to check consistency of BT address.
2008-01-07 01:10:43 +00:00
ehouse
dfee56609a
Warn user, and refuse to continue, when new game is as host and has no remote players. API
...
changes, so other platforms won't compile until changed.
2008-01-04 14:47:52 +00:00