ehouse
1de7ca6697
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
d3ce87b057
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
123923fd4b
rewrite invalCellsUnderRect to be less stupid: start from rect passed
...
in rather than whole board.
2008-03-14 09:20:26 +00:00
ehouse
cb22f01d2b
Remove commented-out field. (Forgot to save before checking in....)
2008-03-13 12:43:33 +00:00
ehouse
d00aa75a12
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
5c8756856d
fix crash: check that tile exists before removing
2008-03-12 12:21:23 +00:00
ehouse
6083142344
Make function static
2008-03-11 12:28:57 +00:00
ehouse
a3bc875191
Fix errors, all in debug-only code, flagged by __attribute__ format addition.
2008-03-11 12:24:23 +00:00
ehouse
4a6f07d1fa
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
355cfa9fcc
add owner param to drawTileMidDrag so can color tiles correctly
2008-03-11 11:48:53 +00:00
ehouse
c526d86a88
invalidate divider when first touched so that it's drawn in-drag immediately.
2008-03-10 00:49:06 +00:00
ehouse
193bc90a06
add dragdrpp.{c,h}, since apparently merging doesn't include svn adding
2008-03-08 23:19:04 +00:00
ehouse
0b1f4b8f0a
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
4c730be669
make new turnChanged notification compile-time conditional
2008-02-27 05:43:27 +00:00
ehouse
067c3c8cd0
remove dead code
2008-02-27 05:38:28 +00:00
ehouse
b397c30178
add and call util_turnChanged
2008-02-26 13:46:33 +00:00
ehouse
e6a485f653
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
3ec8ee536e
fix compile warning
2008-02-16 17:09:21 +00:00
ehouse
f3b8867518
Mark params unused in compiles for standalone; remove unused param.
2008-02-16 16:02:49 +00:00
ehouse
005694b0b1
Don't hide tray if there's only one player.
2008-02-16 15:53:00 +00:00
ehouse
1d61635ebd
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
6e715d63ee
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
f90b6d35e8
Fix to compile and run standalone
2008-01-19 16:04:48 +00:00
ehouse
b4f2df5eb5
Log unusual case.
2008-01-07 01:19:47 +00:00
ehouse
ff7a3bfe63
Error code used with method to check consistency of BT address.
2008-01-07 01:11:29 +00:00
ehouse
3374849111
Unify lookup by address and by channelNo; add method to check consistency of BT address.
2008-01-07 01:10:43 +00:00
ehouse
08da013d4d
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
ehouse
40f7295802
test for duplicate initial client message and if so drop it; add const keyword; add assertion in addr comparion in attempt to learn why duplicates are getting through.
2007-12-31 20:00:13 +00:00
ehouse
81dac2ec1b
draw hint borders wider on high-res devices so they're actually visible (part 2)
2007-12-19 05:31:53 +00:00
ehouse
02ca3eb9d7
Make initial value of confirmBTConnect true.
2007-12-15 18:55:32 +00:00
ehouse
8668420dd0
Don't end game when player has no tiles left in tray but still
...
tentative tiles on board.
2007-12-14 13:25:40 +00:00
ehouse
711bdf54f2
Instead of warning user on failure to connect via BT, add preference
...
to allow user to confirm before every attempt. Users will learn to
set this when T650s are in the mix. Save a new preference, and up the
stream version. Up beta version. Add the preference both to the prefs
dialog and to the bluetooth connection (for guest) dialog, with both
impacting the same field in gamePrefs.
2007-12-14 03:38:55 +00:00
ehouse
a07a5f2822
cleanup; replace a bunch of EvtAddEventToQueue calls with
...
postEmptyEvent; pass transport type with incoming packets so they can
be rejected if not on expected channel (to stop IR, which is always
on, from injecting into a BT game); do BT work and fire timers even
when menu is down; don't let robot run until after board is drawn for
the first time; on startup, don't let robot run until after board is
drawn once. Up version to b3.
2007-12-09 01:59:15 +00:00
ehouse
619e7d14c0
call util_addrChange prior to closing comms to fix crash moving from
...
BT to standalone game; add a couple of similar assertions; up beta
version.
2007-12-07 07:50:19 +00:00
ehouse
33cb34abfe
Remove excessive focus logging; fix timer bug for BT by posting event so EvtGetEvent can exit
2007-12-06 05:26:44 +00:00
ehouse
ad78ec1fd8
Rewrite of checkIncomingStream to be cleaner and fix bug with initial messages getting dropped
...
while heartbeat feature was enabled. Fixed the problem on Linux, but experience on Treo650
is still better without HB feature, so turning it off on Palm. This seems ready for beta,
but will test a bit more.
2007-12-05 06:33:37 +00:00
ehouse
7929865ad9
Comments only.
2007-12-05 06:31:30 +00:00
ehouse
d5d29adc0c
Change util function to use signed type; other cleanup to compile with various features.
2007-12-05 06:28:51 +00:00
ehouse
e4c2143aed
Fix dialog title; send heartbeat based on when connected even if no
...
messages yet received; reset bt connection on palm in two stages;
remove unused param. Change version number for beta.
2007-12-03 01:20:32 +00:00
ehouse
f0e21dbd86
Fix bug showing remote/robot moves only on host to include client too.
2007-12-02 22:07:24 +00:00
ehouse
5457ea1b59
replace all __FUNCTION__ with __func__
2007-12-02 19:13:25 +00:00
ehouse
e1d5632a7b
Re-add direct-via-ip transport, and implement for linux in order to
...
better test heartbeats. Fix so can play against Palm over BT.
Assertions failing on Linux when reset, but it's otherwise done.
2007-11-26 02:58:25 +00:00
ehouse
6e71f8197e
Add file and line number to debug version of realloc and free.
2007-11-22 05:04:40 +00:00
ehouse
4c8cf98d24
Add and set a compile-time option so comms will set a periodic timer
...
and use it to send and check for heartbeats over any transport.
Caller must supply a reset proc which is called when heartbeat hasn't
been received in too long. No changes required to comms protocol, but
that means the heartbeat interval is fixed at compile time: can't be
negotiated, and the two ends had better agree. Currently tested with
linux host and PalmOS guest, where only the first heartbeat failure is
recovered from. So there's some debugging to be done still.
2007-11-18 23:43:27 +00:00
ehouse
41936fe18a
Byte-swap psm field to callback on ARM: now both client and host work. Move SDP-related constants out where linux can use too.
2007-11-03 22:04:06 +00:00
ehouse
ef31e3688c
fix log_hex to print nibbles in right order.
2007-09-27 02:56:35 +00:00
ehouse
473d506611
add logging to help catch a recurring assertion
2007-09-15 13:46:59 +00:00
ehouse
eeafb5c4f2
reset in/out var before each call to util_askPassword
2007-06-10 14:54:47 +00:00
ehouse
edfdda6fd2
Fix so compiles curses-only, and so curses cell can be 2x1 (for square board)
2007-06-01 02:08:04 +00:00
ehouse
dd7a5c8104
type name change only
2007-05-26 14:14:01 +00:00
ehouse
eeebeca542
substitute macro for common sizeof(x)/sizeof(x[0]) pattern; no generated code change
2007-05-26 14:03:07 +00:00
ehouse
45d5bb6260
Hide tray on turn transitions when more than one non-robot local player present in game.
2007-05-20 20:46:29 +00:00
ehouse
aa3d3bc76c
Fix bug where arrow gets placed in wrong cell when tapping on tentative tiles to remove them while board is flipped.
2007-05-18 04:09:10 +00:00
ehouse
f832959480
Up version for ship; build LocalizedStrIncludes.h per-platform;
...
include language in all platform obj directory names
2007-05-13 21:06:42 +00:00
ehouse
2bba51f95a
cleanup (no change to generated code): remove old owner_hash code; replace empty formal lists with void.
2007-04-14 16:27:19 +00:00
ehouse
13803e2596
When showing cell values, also show tile values if the don't-show tile values preference is set.
2007-04-06 01:41:16 +00:00
ehouse
ad4fd26d88
fix bug where arrow replaces tile at edge of board by returning false
...
from figureNextLoc unless an empty space found.
2007-04-03 03:36:14 +00:00
ehouse
dfc2d679e0
Don't call comms_start while opening game. Caller may still consider
...
another game open.
2007-03-18 23:55:58 +00:00
ehouse
242e71f04a
What I meant to check in. Need to save first....
2007-03-18 23:38:53 +00:00
ehouse
a4fb5a6d5a
Always send BT reconnet message, even if there are messages to resend.
...
Fixes failure to reconnect when opening a saved BT game where the
other device is waiting and will need to resend.
2007-03-18 23:38:19 +00:00
ehouse
aad182c2e3
turn stringFromStream into macro to aid logging for leak detection. Debug builds only effected.
2007-03-18 23:31:51 +00:00
ehouse
fcb334375a
define XW_PSM in accord with palm guidelines. Doesn't seem to matter...
2007-03-17 15:33:16 +00:00
ehouse
a0919dcc54
Fix bug: scoreboard doesn't reflect connected state until some other
...
event causes update. Fix by calling turnChangeListener any time turn
changes, including on initial set.
2007-02-27 02:48:51 +00:00
ehouse
c0b515457b
Cleanup: compile warning and to make logging easier.
2007-02-08 15:17:23 +00:00
ehouse
a424d54445
Add a one-byte header to BT messages so one device can signal another
...
that a new game's begun without dropping the connection. On Palm,
remove connection-drop on new game. With this change starting a new
game takes imperciptible time, down from 30 seconds.
2007-02-08 02:53:10 +00:00
ehouse
ff82dd61c0
Fix linked-list bug in removeFromQueue.
2007-02-07 11:58:01 +00:00
ehouse
3028c9e598
deal with case where guest begins new game but connects to host that's
...
running the old game: the host may reply, but guest must not take that
as evidence of a connection having been established: don't remove sent
messages (this isn't an ACK), and don't assert later on.
2007-02-06 05:49:45 +00:00
ehouse
183f0f716f
enable juggle button after role change
2007-02-06 05:47:20 +00:00
ehouse
9a61f5c38b
Add assert; don't call comms if has been set to null (fixes device
...
reset); fix failure to install connCB (removes need to manually resend
messages when client starts up first.)
2007-02-04 17:13:01 +00:00
ehouse
7c8b7294cd
add const to a bunch of char* decls in APIs and variables; no code change
2007-02-03 17:54:20 +00:00
ehouse
3f111c5657
name change only: Connectedness becomes DeviceRole
2007-02-02 08:34:37 +00:00
ehouse
ad77b04766
When role changes from client, where only local players are shown, to
...
host or standalone where all are shown, change the number shown
appropriately. The goal is to make the experience natural,
particularly for the common case where the players aren't changing.
Give up once user manually changes number shown.
2007-02-02 08:15:07 +00:00
ehouse
f441b22e78
cleanup: only one return per function.
2007-02-02 08:11:14 +00:00
ehouse
f56b170b2a
cleanup. No change in generated code.
2007-01-27 15:07:02 +00:00
ehouse
1486c764fb
use varargs for LOG_RETURNF macro
2007-01-27 15:04:57 +00:00
ehouse
1890fcac6b
forward declaration stops compiler warning
2007-01-27 15:04:19 +00:00
ehouse
ebeefe457f
check and flip before hiliting cells. Fixes bug with feedback on hint
...
search on flipped board.
2007-01-23 04:09:26 +00:00
ehouse
a998e96de9
Tweak scroll-of-focussed-board inval code so we don't inval the whole
...
board, which looks crappy. Instead inval only what was previously a
border row, and pass a new param to draw_vertScrollBoard so the
platform can choose not to scroll cells that will just get overwritten
with different bits.
2007-01-21 22:59:29 +00:00
ehouse
15acf8c8bb
When scrolling a focussed board, inval everything. Otherwise border
...
cells scroll into the center drawn as border.
2007-01-21 18:05:25 +00:00
ehouse
6ed6fe4976
Change how flip works, keeping board data like invalFlags and limits
...
in sync with the board rather than the model and flipping coordinates
only in time to access the model or pass to engine. With that done,
drawing can skip any rows scrolled off-screen, and the board's
perimeter focus rect can be drawn and invalidated correctly on a
flipped, scrolled screen: zodiac, eventually.
2007-01-21 06:21:12 +00:00
ehouse
0a426b0876
Get rid of draw_eraseMiniWindow: just inval what's under it; make use
...
of CELL_ISCURSOR consistent: when focus not dived all elements have it
set (or only perimeter for board, settable at compile time); get rid
of draw_drawCursor since CELL_ISCURSOR is all that's needed;
2007-01-19 08:20:11 +00:00
ehouse
c01615e86b
reintroduce board_handleKey
2007-01-18 02:42:37 +00:00
ehouse
c02c3fec17
Set focusHasDived before invalidating so newly focussed object drawn correctly.
2007-01-16 02:42:58 +00:00
ehouse
1afe502436
Fix bugs in recent focus/key changes.
2007-01-12 03:37:30 +00:00
ehouse
f329966a8a
on keyDown, look at what keyUp will do and, if nothing, don't handle
...
the event. This lets focus transfer work as before there was keyDown.
2007-01-12 03:28:20 +00:00
ehouse
e6ba8c872c
fix crash when linux is bt server: if no addr provided it's not a duplicate.
2007-01-09 02:43:09 +00:00
ehouse
994ee5b254
remove dead code.
2007-01-09 02:38:22 +00:00
ehouse
fef8891e3c
fix problems created by key-nav changes: don't drop hardware scroll
...
keys, and redraw after key-repeat if either up or down handled.
2007-01-07 05:25:28 +00:00
ehouse
e0010901f1
add board_handleKeyRepeat, and call it from palm and gtk. This lets a
...
held nav key walk the cursor across the board.
2007-01-07 04:32:29 +00:00
ehouse
593980817f
Clean up for non-keyboard and non-keyboard-nav cases. Wince is the
...
latter: make it compile again.
2007-01-07 01:01:20 +00:00
ehouse
0303e56c43
Break key handling into keyUp and keyDown, and treat keyDown the same
...
as penDown. Idea is to be able to set timers to get bonus square
hints etc. without stylus. Works, but transitions are rough because
keyDown doesn't know whether keyUp will result in a focus change.
2007-01-06 17:32:08 +00:00
ehouse
02c225c413
Fix so IR-only multi-device build works again.
2007-01-06 16:46:45 +00:00
ehouse
5b34e786bc
bug fix: clear focusHasDived on pen event along with other focus state
2006-12-20 04:11:17 +00:00
ehouse
bb45f89a6f
Unfocus any board object whenever pen touches board
2006-11-27 01:13:48 +00:00
ehouse
afc302a29b
When alt key pressed cursor can move onto occupied squares it normally skips.
2006-11-22 13:49:14 +00:00
ehouse
06e6d4a903
Post-Slovak change, 7 bits required to save face and blank bit. Use 7, but expect the old 6 for previous version streams.
2006-11-19 06:40:56 +00:00
ehouse
7fe5718cc5
When "dived" focus reaches and crosses border of object, return as if
...
not handled. This causes the platform to handle the key event itself,
typically by moving the focus to the next top-level object.
2006-11-17 13:41:13 +00:00
ehouse
abca6a4092
Two big changes. Pass focus bit into all or and players when focus
...
not dived and tray or scoreboard focussed. This lets platform decide
to display top-level focus via mods to all elements. Second, when
moving focus to top level from dived, claim not to have handled the
key event (but return true if needs redraw). This allows platform to
handle shifting focus without requiring callback (which removed.)
2006-11-14 06:46:04 +00:00
ehouse
30897a709f
Debug-build macros to pass __LINE__ and __FILE__ for logging
2006-11-14 06:40:36 +00:00
ehouse
29c4cb7c10
Exit trade mode silently if user clicks 'D' when it's not his turn.
...
(Better than refusing because "not your turn".)
2006-11-13 02:01:54 +00:00