Commit graph

2730 commits

Author SHA1 Message Date
ehouse
e178b7ccf5 Use SHInitDialog on smartphone to create fullscreen dialogs. Move
test for smartphone into util functions so can't forget it.  This
fixes scrolling on smartphone.
2008-05-10 15:42:52 +00:00
ehouse
ebad668227 add some consts. 2008-05-06 12:49:37 +00:00
ehouse
6c81a63fce 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
ac63d5621f Clean up saved games dialogs, and remove (temporarily) controls that
won't do anything for b2.  Rename a couple of structs.
2008-04-13 17:14:16 +00:00
ehouse
63419db11a Put game name in title bar on launch as well as after opening saved
game.  Clear when opening unnamed/defaultnamed game
2008-04-13 17:01:09 +00:00
ehouse
18ea57fa38 Set clip rect before scrolling screen. Fixes bug where scroll forced
by hint left board drawn incorrectly.
2008-04-12 19:29:20 +00:00
ehouse
4730a23188 fix gtk_draw_vertScrollBoard to scroll bits rather than just letting
board inval everything.
2008-04-12 16:50:46 +00:00
ehouse
b085e0cea7 Fix drawing of cursor arrow by moving the clip rect. 2008-04-12 15:47:15 +00:00
ehouse
c2fbb06438 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
ff254fcef4 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
fd4cc02c13 shorten dialog 2008-04-02 03:51:12 +00:00
ehouse
97b8d81d40 remove excessive logging 2008-04-02 03:50:55 +00:00
ehouse
11b0b4d254 up version number; test for CELL_DRAGSRC and treat same as empty. 2008-04-01 13:00:10 +00:00
ehouse
0225343c09 Remove params from ceDlgSetup and ceDoDlgFocusScroll; use the right
message to fetch text from listbox on CE.
2008-03-31 00:26:18 +00:00
ehouse
4516cde69c Force redraw after timer fires. This allows scrolling to happen
during drag, but isn't the right fix.  The timerProc should probably
return a boolean indicating whether redraw is needed.
2008-03-31 00:25:18 +00:00
ehouse
6c0d196f6c Remove params from ceDlgSetup and ceDoDlgFocusScroll; use DM_SETDEFID
message to make self-drawn buttons respond to cr key.
2008-03-31 00:24:04 +00:00
ehouse
10c9b15980 Remove params from ceDlgSetup and ceDoDlgFocusScroll 2008-03-31 00:23:07 +00:00
ehouse
7790bf13ff make ceDlgSetup figure out from sizes whether to scroll; make
ceDoDlgFocusScroll parse params passed into WM_NEXTDLGCTL message to
figure out what object is about to get focus.
2008-03-31 00:22:24 +00:00
ehouse
da118a485a Tweak layouts. Wrap color prefs dialog controls in macros so easier to tweak. Up version number. 2008-03-31 00:17:41 +00:00
ehouse
9e38eb7336 name change only 2008-03-30 23:58:04 +00:00
ehouse
1e7bc3839b 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
1172502b04 If search limits in use, try vertical as well as horizontal initial moves. 2008-03-29 19:40:03 +00:00
ehouse
75ab88565d implement util_yOffsetChange; increase pen timer to half second. 2008-03-27 04:12:16 +00:00
ehouse
ae67a58a26 Attempt to find font that best fits string to encosing rect. Works
but only with a hack: need to understand pango better.
2008-03-25 12:47:05 +00:00
ehouse
a6dda53907 Use new APIs to scroll dialogs; use new saved games dialogs. 2008-03-24 12:41:12 +00:00
ehouse
3aaebbc1da constants for new savegame dialogs 2008-03-23 19:39:08 +00:00
ehouse
8e285f1097 rename ceStackButtonsRight ceDlgSetup, and make it do more general
setup of dialogs on CE.  No need to move buttons, but now scrolling
may need to be enabled, dialogs made fullscreen, and softkeys added.
Add functions to be called from dialog's wndprocs to implement
scrolling.
2008-03-23 19:37:53 +00:00
ehouse
c06434dd5c Lots of changes for smartphone, in particular removing Ok and cancel
buttons for non-win32 dialogs where they'll be replaced by softkeys.
Also, new dialogs to replace OpenFileName etc. that don't exist on
Smartphone.
2008-03-23 19:29:51 +00:00
ehouse
7759cc98be New functions to replace OpenFileName etc. that don't exist on Smartphone. 2008-03-23 19:25:49 +00:00
ehouse
ed2452cbc2 add assertions that formatted string returned fit within the provided space. 2008-03-23 19:14:20 +00:00
ehouse
5fd535d853 Break Czech into two "languages" as a way to support the two encodings in common use. 2008-03-19 04:47:03 +00:00
ehouse
996e88a575 Pick fonts for tray and board based on sizes at runtime; bury tile
values menuitem.
2008-03-16 14:23:57 +00:00
ehouse
a69092bc53 Use clipping to prevent spillage when cells are very small. 2008-03-15 23:06:06 +00:00
ehouse
f0658b3b20 Use MessageBox instead of my StrBox on Smarthphone; do away with
scrollbar on Smarthphone since there's no touchscreen and I want the
space.  Still need to find a way to scroll screen.
2008-03-15 21:56:37 +00:00
ehouse
0bf21a1b5e Change About box implementation from separate dialog to str resource
passed to MessageBox
2008-03-15 19:24:59 +00:00
ehouse
b7f35d2958 Don't subtract command bar height from client rect height on
smartphone.  This prevents windows from being too small in
non-fullscreen mode.  Make ceSizeIfFullscreen work based on state
rather than assuming it's toggling.
2008-03-15 18:32:22 +00:00
ehouse
cae88f5b6c Rework dialogs to fit or (eventually) scroll on small screen; put
dialogs in fullscreen mode; switch from dropdowns to spinbuttons on
CE; grab OS version on startup (not yet used.)
2008-03-15 15:39:58 +00:00
ehouse
dda5042690 Remove windows LF chars just in case; take SOURCEDICT via cmdline; add emacs modeline. 2008-03-15 15:00:46 +00:00
ehouse
a028b34a11 Compile dict2dawg by default since dict2dawg.pl has problems; fix warnings. 2008-03-15 14:52:23 +00:00
ehouse
439dd4d84a add __attribute__ format and fix resulting compile warnings; add a few
new WM_ strings for debugging.
2008-03-15 14:14:39 +00:00
ehouse
4beb818de3 use sigaction rather than signal 2008-03-15 14:04:02 +00:00
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
bc873169f1 Add __attribute__ ((format)) and fix problem it flags. 2008-03-10 12:02:53 +00:00
ehouse
559700e27b Quick drawTileMidDrag() so doesn't crash. Still needs to set
background color.
2008-03-10 11:59:30 +00:00
ehouse
244d58b957 Work on soft key and menu: derive text from menu item being moved so
that we can pull out and later replace any item by id alone.  Do
something similar on Win32 to ease development.  Remove '&' from
menuitem text, allowing winders to assign command keys, so that we
don't have to pull it before assigning text to softkey.
2008-03-10 01:47:46 +00:00
ehouse
f30dd17e00 rename constants to begin with GTK so they're unique. 2008-03-10 00:51:20 +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
963c59b0b5 implement drawTileMidDrag (same as tile in tray for now) 2008-03-09 23:32:24 +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
885e7f0192 Put back "turn done" menu, and add call to change the left softkey.
Call it when turn changes, new game is begun, and hint feature has
been used.  Currently menuitem is duplicated.  Goal is to remove the
item being attached to the left button and to replace it when another
is chosen.
2008-02-26 13:49:41 +00:00
ehouse
da60e6211c add -D_WIN32_IE=0x0400 (needed for some structs in mingw headers) 2008-02-26 13:47:28 +00:00
ehouse
b397c30178 add and call util_turnChanged 2008-02-26 13:46:33 +00:00
ehouse
dfe0249490 Add name of color edited to title of color edited. Clean up names and constants in support. 2008-02-26 13:31:36 +00:00
ehouse
a6575b1a2c Convert prefs in old format to new when encountered so that users
don't lose settings on upgrading.
2008-02-23 22:06:05 +00:00
ehouse
04ff991298 Add more message strings 2008-02-23 22:02:10 +00:00
ehouse
551cad98ed put file menu last where easier to get to 2008-02-23 22:01:36 +00:00
ehouse
9d0231a8b7 line column heads up correctly again 2008-02-23 22:00:40 +00:00
ehouse
907838591e Fix to work with BYOD: pass -r rather than use grep to pull illegal words; fix language code; include charset. 2008-02-23 21:59:38 +00:00
ehouse
bbbad5cbd8 Draw color samples to look more like buttons including thicker border to indicate focus. 2008-02-22 13:27:33 +00:00
ehouse
f0b53fd605 First cut at handling Czech. Correspondent says the Palm dict looks right. Still need to test on Windows and on BYOD. 2008-02-20 03:50:32 +00:00
ehouse
ab73fc4d38 cleanup; add lineno so number of letters is apparent 2008-02-20 03:44:31 +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
5a951647e2 add mingwm10.dll to .cab files 2008-02-16 20:26:47 +00:00
ehouse
f5ae6b9809 add -Werror 2008-02-16 19:05:30 +00:00
ehouse
ccb8fb4df7 Fix timers to work even when message queue is full; make fullScreen
choice persistent; clean up resource file and add missing strings.
2008-02-16 17:36:46 +00:00
ehouse
a79dfdecc0 fix warning 2008-02-16 17:19:31 +00:00
ehouse
02f3e10edc move or add ceStackButtonsRight 2008-02-16 17:19:06 +00:00
ehouse
4a464b6ef5 modify ceStackButtonsRight to place dialog ok/cancel buttons in
bottom menubar where possible; move XP_LOGW to cedebug.c
2008-02-16 17:14:35 +00:00
ehouse
3ec8ee536e fix compile warning 2008-02-16 17:09:21 +00:00
ehouse
e3b39a9834 Add missing files. 2008-02-16 16:36:37 +00:00
ehouse
de6e0d4f2d Make cegcc the default build environment for wince. Make inclusion of hacks needed to work with mingw/pocketpc-sdk conditional. 2008-02-16 16:33:46 +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
c3555440fd get rid of const-related warnings 2008-02-16 15:49:03 +00:00
ehouse
0913936486 Add resource for two-soft-key commandbar and put it up. The single item is "Done" for now. 2008-02-05 04:57:58 +00:00
ehouse
a05138790c Modify to switch between cegcc and pocketpc-sdk, with pocketpc-sdk
choice commented out.  cegcc builds it about 30% smaller, in line with
what the older M$ tools could do.
2008-02-05 03:45:24 +00:00
ehouse
3532f7fa61 make "next hint" top sub-item since it'll be most frequently used 2008-02-05 03:38:15 +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
ea7949dd22 Make a couple of dialogs format for narrower screen and respect keypad buttons. 2008-02-02 20:58:44 +00:00
ehouse
2910bab3a0 fix perimeter focus clearing and board size setting. 2008-02-02 17:21:57 +00:00
ehouse
b98b7fd993 Move toward running curses on a small screen: replace omnipresent menu
with one drawn on demand; change size and location of scoreboard and
tray if needed; use wgetch rather than reading stdin to support keypad
keys for navigation.  Also stick g_ in front of some frequently used
global names.
2008-02-02 16:56:20 +00:00
ehouse
bae6890c35 fix to build without Bluetooth headers 2008-02-02 16:53:36 +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
1ac6326563 Add full-screen mode and menu to get to it (leaving the cmdbar/softkey
area in place until I figure out how to work a UI without a visible
menu); rework menu to launch new-style from a single softkey; remove
cmdbuttons and associated resources; limited progress on handling
return key/timeouts for keyboard navigation.
2008-01-20 15:36:17 +00:00
ehouse
211100c247 Turn off experimental multi-device features; up copyright; define XP_UCHAR as signed char to fix lots of warnings. 2008-01-19 16:34:21 +00:00
ehouse
f90b6d35e8 Fix to compile and run standalone 2008-01-19 16:04:48 +00:00
ehouse
6e9e5b5c99 Fix to compile and run standalone 2008-01-19 16:03:53 +00:00
ehouse
3d314081b2 Latest strings translated. 2008-01-08 14:35:41 +00:00
ehouse
f0bad7dc38 Tweak text around locating host device 2008-01-07 13:56:53 +00:00
ehouse
f2e5f4f2a4 fix so non-debug builds compile 2008-01-07 13:56:20 +00:00
ehouse
3e04e89803 remove newly-added palm_bt_nameForAddr 2008-01-07 13:36:00 +00:00
ehouse
7153bbb574 Add method to lookup hostname without access to btlib state. Some cleanup. 2008-01-07 01:27:45 +00:00
ehouse
b4f2df5eb5 Log unusual case. 2008-01-07 01:19:47 +00:00
ehouse
c6a6ec1fb0 Get rid of unused enum. 2008-01-07 01:19:24 +00:00
ehouse
e9ac7f53c4 Error code used with method to check consistency of BT address. 2008-01-07 01:18:51 +00:00
ehouse
3de08b9908 non-code change to make debugging easier 2008-01-07 01:17:42 +00:00
ehouse
9246ca78a5 Revert to default values for conType-specific fields for all types but
the current.  This prevents random-string hostnames when switching
from IR to BT.  Also some code cleanup.
2008-01-07 01:15:18 +00:00
ehouse
92c37d836c Error string used with method to check consistency of BT address. 2008-01-07 01:12:12 +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
b333476d48 Update to use modified newg_store 2008-01-05 16:37:49 +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
81c3d1681a when variables in callback indicate we're running in another app's context, do nothing 2008-01-02 01:46:35 +00:00
ehouse
bad6415484 log date on startup; don't always put up about dialog on first boot; remove excessive logging 2008-01-02 01:45:58 +00:00
ehouse
22909ce6fb add target for dict2dawg 2008-01-02 01:44:12 +00:00
ehouse
b115cc6f0c fix unused param warning 2008-01-02 01:43:45 +00:00
ehouse
1828cfcf11 up copyright date and beta version number 2008-01-02 01:28:30 +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
4074417b33 ignore timers if state changes after they're set; take down links when resetting 2007-12-31 01:22:03 +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
f1ee7db34c Add what may be final French translations; remove pre-release part of aboutbox text. 2007-12-19 05:30:51 +00:00
ehouse
995990d70a draw hint borders wider on high-res devices so they're actually visible 2007-12-19 05:29:53 +00:00
ehouse
02ca3eb9d7 Make initial value of confirmBTConnect true. 2007-12-15 18:55:32 +00:00
ehouse
9292e38cab Substitute name of remote host into request for connection
initialization confirmation.
2007-12-15 07:22:12 +00:00
ehouse
484025a21f Catch French up with change for BT connect confirmation (pending
translation.)
2007-12-14 13:37:12 +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
3b1fcceb16 Fix compilation errors due to constant name changes -- no change to binary. 2007-12-14 13:06:44 +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
872ae90c94 fix bug using same string and code to warn and to reject phonies. 2007-12-14 03:21:46 +00:00
ehouse
d6a161b939 fix bug introduced by what was supposed to be risk-free change: send prefsChangedEvent rather than the wrong one so preferences get honored again. 2007-12-13 14:44:29 +00:00
ehouse
5cf30db8f0 Change Resend menu text, and to make it clearer put up an error message when it's used in a standalone game. 2007-12-12 04:23:42 +00:00
ehouse
01fec3742c Substitute French translations of new BT-related strings; since this
results in overlapping buttons, add code to space them evenly across
window.
2007-12-11 04:36:50 +00:00
ehouse
8035955814 Add non-sf.net contact options; make params const. 2007-12-09 23:37:47 +00:00
ehouse
4c686bdaa0 Add strings and make other changes needed for compilation with BT on
for French, marked for translation.  Fix formatting and add emacs
compile string for English.
2007-12-09 04:02:24 +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
8dfff86cff Fix crash on restart when app had been exited with some form other
than main on top.  focusOwner was saved based on front form but on
startup I tried to set it in the main form.  This will need to be
merged into a branch based on the 4.2.1 release for a 4.2.1.
2007-12-08 21:04:44 +00:00
ehouse
75a3c36ad6 Remove unused code and constants; fix to compile with relay; don't
show connection type dialog unless more than IR is available and
supported, and then build the dropdown dynamically based on what's
compiled-in and available on the device.  This means you don't see the
BT option at all if you don't have BT.
2007-12-08 18:11:42 +00:00
ehouse
348111ece2 Remove unused FindTrustedDevice calls; don't try to become master or slave
until we know which we'll be.  This likely fixes the problem where devices
have trouble connecting after switching roles.
2007-12-07 09:50:48 +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
acc7b5be52 Don't respawn if child died in less than a second. 2007-12-05 06:30:45 +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
1926c84825 Change state icon even when not doing work to get it to show up (unconnected) earlier. 2007-12-05 06:26:21 +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
9ec0177592 Log BT lib version -- toward refusing to run or alerting user of broken Treo650 (version 1). 2007-12-03 01:18:59 +00:00
ehouse
86f5193801 Fix compilation errors. Not tested. 2007-12-03 01:18:13 +00:00
ehouse
da93ed5b31 Don't use uninitialized values as port numbers; use match for set as well as get. 2007-12-03 00:45:09 +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
25c4368231 Start adding ability to listen on multiple sockets and to dynamically
change the set listened on.  There's still some debugging to do but
nothing that worked before is broken.  Also begin to accept unique
prefixes (e.g. g for get) for commands and attributes on the control
port.  Note that relay-related code in comms seems broken now, but is
without this checkin.
2007-12-01 15:00:30 +00:00
ehouse
a560c9f8a8 Add files forgotten with last checkin; add additional parameter to
addListener so listeners can be removed on reset.
2007-11-28 03:59:26 +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
ee726968b0 Don't draw negative number of tiles left. 2007-11-25 15:12:22 +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
022317b47a Exit on unexpected params; better testing when launching; use bash to create pid file. 2007-11-22 04:59:11 +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
cb1222c0f9 Make cooperation in a heartbeat scheme a compile-time option. This is
meant to allow comms to take over heartbeats.
2007-11-18 23:38:56 +00:00
ehouse
f3d67cfb6c Fix bug reassembling packets; advance credit on each send/receive.
With this checkin rfcomm works between two Treos and between Treos and
linux, though with plenty of bugs around reconnecting yet to find.
However, it turns out that even using rfcomm a Treo650 gives no notice
to the other device when shutting down the connection, so rfcomm
doesn't help.  Rfcomm is probably not worth using, but the code's now
here and can be turned on in the Makefiles.
2007-11-18 17:57:28 +00:00
ehouse
cfb01d8f3d Deal with incoming fragmented rfcomm packets; log packet contents. 2007-11-15 14:40:56 +00:00
ehouse
d6163b62ff Add code, disabled in Makefile, to use rfcomm rather than l2cap for
data with the goal of detecting disconnects more quickly.  Stops
working after a few packets (client only tested against host on linux
so far), and doesn't compile for ARM yet, but the framework is there.
Am framing packets on Palm side which may not be necessary.
2007-11-15 14:39:33 +00:00
ehouse
ac42b5e7d6 fix oversized font when scoreboard miniwindow has two lines. 2007-11-14 05:57:12 +00:00
ehouse
1094680ee7 quick hack at framing rfcomm packets 2007-11-14 05:53:28 +00:00
ehouse
6b834cce4a Add ability via compile-time flag to connect via rfcom rather than
l2cap.  Works with two caveats: assumes l2cap-style complete packets
(no framing), and has problems with linux sdp system's tendency to
retain records long after sessions are closed.
2007-11-13 15:20:33 +00:00
ehouse
8dbfe4ed79 fix new compiler warnings; daemonize, and add handler to kill child if
parent dies so that script can kill based on pid file.
2007-11-13 03:53:10 +00:00
ehouse
74a30ffe82 init.d style script for starting and stopping relay 2007-11-13 03:50:41 +00:00
ehouse
ef19abbfd9 Fix reconnect bug: when master's in initial state but listening socket
already inited, shift state to listening
2007-11-10 17:54:05 +00:00
ehouse
0291ec1e75 Turn on self-spawning: main loop should never crash but exists only to
respawn child when it does.  Add crash command to test this.  Add
ability to set logging level from ctrl port.
2007-11-10 05:41:49 +00:00
ehouse
6db5eed156 Add English strings as starting point for translation 2007-11-08 05:18:04 +00:00
ehouse
bdb06cbdf8 Use a single general-purpose callback passed into palm_bt_doWork where
it's needed, removing those passed into _init and _send.  When client
is unable to connect to host, raise alert to user and give choice to
continue trying.  Clear 'suspendBT' flag when user manually resends or
opens different game.  Currently this happens only on guest's failure
to find registered SDP; should also extend to remote device not
running at all and to host failure to send to guest.
2007-11-07 13:40:56 +00:00
ehouse
36c40f3375 Use fixed action queue and memcpy rather than rotating buffer; eliminate sequential duplicates of most actions. 2007-11-06 04:05:11 +00:00
ehouse
383847e75c Fix typo breaking compile. 2007-11-05 03:42:27 +00:00
ehouse
3060888264 Update BT code to advertise and search sdp records and use psm reported to work with new Palm
code.  Log btaddr after converting from name.
2007-11-05 03:38:00 +00:00
ehouse
de640cda98 Update BT code to advertise and search sdp records and use psm reported to work with new Palm
code.  Get rid of pthreads dependency which was for logging only.
2007-11-05 03:17:07 +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
880254c17f Fix tray hanging below main window; draw pending tiles white-on-black as on other platforms. 2007-10-24 12:46:15 +00:00
ehouse
e0f5fcf280 Instead of three fixed-sized fonts, choose fonts (lazily) based on the size of the rect into which it's to be drawn. 2007-10-23 03:08:47 +00:00
ehouse
3480df738c Add ARM support for functions and types required for UUID/PSM lookup.
Almost works: if the ARM build is running as host, all's well; but if
it's client, gets btLibL2DiscConnPsmUnsupported after trying to make
an l2c connection.
2007-09-30 17:33:19 +00:00
ehouse
556dbf46e3 move LOG_OFFSET 2007-09-30 17:22:38 +00:00
ehouse
ef31e3688c fix log_hex to print nibbles in right order. 2007-09-27 02:56:35 +00:00
ehouse
104a173c5d Publish (master) and look for (slave) SPD record so that we're looking for our app and not just BT when connecting. I hoped this would prevent T650s from crashing when nothing's running. It doesn't, but it's the right way to connect, and will allow better error messages or retry logic. Compiles only on 68K at the moment. 2007-09-15 13:50:07 +00:00
ehouse
cc4aeaee8c Turn BT back on as default and up version preparing for next release. 2007-09-15 13:47:28 +00:00
ehouse
473d506611 add logging to help catch a recurring assertion 2007-09-15 13:46:59 +00:00
ehouse
40fdec22a2 up version number for dot release. 2007-08-27 12:43:26 +00:00
ehouse
f0b36895d7 If we get keyUp event, override earlier determination that this device doesn't get them. This works around Tungsten double-key bug. Better fix will be to use the right FtrGet constants to set generatesKeyUp. 2007-08-22 02:36:13 +00:00
ehouse
ab6ed444bb add fnav resource for password dialog, and use it if device has fiveway.
Otherwise use FrmSetFocus.  This works around a bug where key event that
leaks through from parent dialog dismisses dialog (whereupon another comes
up, and eventually cursor is left flashing on parent.)
2007-06-18 13:21:36 +00:00
ehouse
eeafb5c4f2 reset in/out var before each call to util_askPassword 2007-06-10 14:54:47 +00:00
ehouse
719fc3889c turn off BT; remove rc designation so can ship 2007-06-09 18:09:21 +00:00
ehouse
c911780c37 fix to build with relay turned on (part 2) 2007-06-08 03:20:09 +00:00
ehouse
a1ebd16a5a fix to build with relay turned on 2007-06-08 03:15:52 +00:00
ehouse
2f925349a6 Fix so can without BT, and so compiler can be specified to Makefile. 2007-06-02 02:07:45 +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
f12bf79101 turn on BT; up alpha version number. 2007-05-27 16:59:24 +00:00
ehouse
a527e426d6 Revert version number to rc3 for 4.2. 2007-05-26 22:59:32 +00:00
ehouse
d58789c493 Use a timer to avoid trying to get an ACL connection too frequetly.
This seems to trigger crash Treo650s far less often than constantly
retrying.
2007-05-26 22:51:25 +00:00
ehouse
a2f60cb1f8 Makefile for Collins dict 2007-05-26 14:47:46 +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
8a074126db Turn of BT for rc2 release 2007-04-28 23:34:44 +00:00
ehouse
934f90efbc up alpha version number 2007-04-28 22:53:21 +00:00
ehouse
42f8a55220 A few more translations and moving of widgets to accomodate strings 2007-04-27 07:08:09 +00:00
ehouse
96ae1292bf A couple of additional translations; back out debug-only translations; mark strings that may still need translation. 2007-04-26 01:24:23 +00:00
ehouse
c9e1cab5ee Make "Cur" string in tile-picker dialog localizable; move buttons in same for French to fit. 2007-04-24 13:34:21 +00:00
ehouse
ee636886a1 Additional French corrections. 2007-04-23 03:24:34 +00:00
ehouse
a1a0f9934a Call HsNavDrawFocusRing on Treo600, FrmNavDrawFocusRing on later
devices.  Fixes crasher on devices that don't have the former.  Up version.
2007-04-23 03:20:37 +00:00
ehouse
630d9e391b add no-bt state so there can be no icon when bt's been left off; up
version and turn BT on by default for a8 release.
2007-04-16 05:22:49 +00:00
ehouse
0b0143fa92 If BT is off, ask user to turn it on only once. If cancels, warn that
it must be turned on, and don't attempt to turn it on again.  This
prevents BTLib from repeatedly asking for permission to turn BT on.
2007-04-15 16:46:17 +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
ca7c69bff1 include Makefile.langcommon 2007-04-14 16:03:31 +00:00
ehouse
b1de2cb575 Return null rather than allocing bt storage if unable to open bt library. 2007-04-13 08:47:22 +00:00
ehouse
f141078e1f More translation tweaks 2007-04-13 08:45:48 +00:00
ehouse
555d8f9a82 include LANG in obj dir name 2007-04-12 01:22:31 +00:00
ehouse
0bc445f2ad Fix to compile with XWFEATURE_FIVEWAY undefined 2007-04-12 01:19:56 +00:00
ehouse
9b7e0c76a3 Text tweaks from Francis; widget resizings from Eric. 2007-04-12 01:17:33 +00:00
ehouse
0d8545426d First pass at translation. 2007-04-10 13:23:39 +00:00
ehouse
df1f14b41f Copy English files preparatory to French localization. 2007-04-10 13:19:04 +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
128d9c56ef Turn off BT, and up version for first RC release. 2007-04-05 04:19:44 +00:00
ehouse
d1c36681f3 pass -D options to gen_pace.pl 2007-04-05 04:18:42 +00:00
ehouse
959357f0f6 wrap BT APIs in ifdef 2007-04-05 04:18:05 +00:00
ehouse
039a730217 merge changes 1895 and 1899 for allowing ifdefs in funcfile.txt 2007-04-05 04:17:43 +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
539912b8b2 Make gadget and bitmap size match. 2007-03-18 23:58:32 +00:00
ehouse
03433901fc Closing BT lib from datahandler (since don't want to close on game
close in case next game will use); erase BT status icon when not BT
game; plug leak of dict name.
2007-03-18 23:57:30 +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
0d286632be palm_dictionary_make makes copy of name if needed. Helps plug memory leak. 2007-03-18 23:49:15 +00:00
ehouse
90d285c593 add consts; remove logging. 2007-03-18 23:48:00 +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
3974ac4639 Fix crash on ARM: don't compare dummy strings. 2007-03-18 14:45:51 +00:00
ehouse
e22a131687 include ability to choose arm or 68K in combined-arch release builds too 2007-03-18 00:05:15 +00:00
ehouse
d9e29674cd comment out assert that doesn't seem to matter 2007-03-17 17:31:01 +00:00
ehouse
08901ca548 include ability to choose arm or 68K in combined-arch debug builds 2007-03-17 17:30:30 +00:00
ehouse
ecba9df348 Pad prefs struct so ARM and 68K versions are using same addresses
(fixes crash opening game in ARM version that was saved in 68K);
2007-03-17 17:29:32 +00:00
ehouse
0fd0692748 better logging: include function name 2007-03-17 15:38:44 +00:00
ehouse
c7b46cffbf Pad prefs struct so ARM and 68K versions are using same addresses
(fixes crash opening game in ARM version that was saved in 68K);
renumber resource IDs so can be logged via a switch.
2007-03-17 15:37:15 +00:00
ehouse
e111c2d89c Remove excess logging. 2007-03-17 15:35:14 +00:00
ehouse
bf7833c420 Put back code to associate service record with listening socket, but
ifdef'd out as it doesn't seem to make any difference.
2007-03-17 15:34:24 +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
aa4333903f compare only six bytes of struct ARM pads to 8. 2007-03-15 05:06:56 +00:00
ehouse
19ac39010f Enable BT; up version number for a3. 2007-03-15 01:21:56 +00:00
ehouse
b72aba3a9a Don't store procptr stubs in Ftrs across app boots! Fixes device-resetting crash. 2007-03-15 01:20:11 +00:00
ehouse
a0eeafb226 Don't store procptr stubs in Ftrs across app boots! Fixes device-resetting crash. 2007-03-15 01:19:35 +00:00
ehouse
252c07c6ee Print param lists under 80 columns. 2007-03-15 01:14:15 +00:00
ehouse
97cddf35ff define constant so tests work on ARM too. 2007-03-09 03:00:44 +00:00
ehouse
c00dad745d Add APIs needed to compile and use BT APIs. ARM version works now well enough to play games, but often crashes on app exit having done so. 2007-03-09 02:58:57 +00:00
ehouse
3535a2c846 update to die when func not found, and to handle BT APIs 2007-03-09 02:56:02 +00:00
ehouse
5478dbeb43 Add one-bit bluetooth status indicators 2007-02-28 02:32:49 +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
971bfc280f Save and restore focus owner across app restarts (includes working around
OS's insistence on sending focusTake event on formOpen); up version numbers; turn off BT prior to beta release.
2007-02-24 03:35:51 +00:00
ehouse
5d867cd81c Target to build tarball for uploading to byod. 2007-02-20 07:24:18 +00:00
ehouse
8faacfcede Fix to work with new byod scheme. 2007-02-20 05:49:57 +00:00
ehouse
621e049962 Cleanup for a5 release: always use status icons when building for bluetooth. 2007-02-18 03:33:17 +00:00
ehouse
b2ed436b74 Add support for Russian. So that Russian text can be processed on systems without setting LANG=ru_RU.CP1251, modify dict2dawg to skip duplicates and words outside of specified lengths. Modify all info.txt files for the new scheme (which includes change to byod.cgi not kept on sourceforge.) 2007-02-17 17:06:05 +00:00
ehouse
3b7e680f2c increment internal tile values by one so strings can be null-terminated 2007-02-14 15:17:00 +00:00
ehouse
f273e93c86 code to use bitmaps instead of letters to show bt conn status. 2007-02-12 08:05:35 +00:00
ehouse
13c425f005 Add bitmaps to replace letters as indicators of bluetooth connnect state. Still to go: lowres equivalents. 2007-02-12 07:54:23 +00:00
ehouse
c0b515457b Cleanup: compile warning and to make logging easier. 2007-02-08 15:17:23 +00:00
ehouse
b1d4a800c8 Fix nav for tungsten: test for lack rather than presence of keyUp events. 2007-02-08 15:16:46 +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
9f23c4b4d9 Replace ints with bools; add rev command; fix bug by reiniting args with each
command so they don't hold previous values.
2007-02-07 13:22:40 +00:00
ehouse
ff82dd61c0 Fix linked-list bug in removeFromQueue. 2007-02-07 11:58:01 +00:00
ehouse
a8d3dbda66 Print svn rev number as part of usage() 2007-02-07 11:56:30 +00:00
ehouse
edd1ce9455 up version number for alpha 2007-02-06 05:55:21 +00:00
ehouse
767b9f2908 initialize mutex before using; fixes a hang since could never aquire
lock.  (This bug has always been there, but didn't matter before;
maybe pthreads changed.)  Comment out self-spawning stuff until can
fix df-transfer problems.  Other minor changes around logging.
2007-02-06 05:52:22 +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
f2ae7cb716 close and reopen bt module with every new game to fix, badly, client's
failure to connect if it's restarted before host; add event and use to
retry BtLibSocketListen when fails (since failure is usually
temporary).
2007-02-05 04:20:13 +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
363cfdce04 Drop keyUp events not preceeded by keyDowns to catch leaks from
dismissed dialogs; don't drop first keyDown on OS4 since the bug that
works around isn't there; turn BT back off by default.
2007-02-04 04:10:11 +00:00
ehouse
5fbc89ae76 add tarball target for exporting enough code to build relay. 2007-02-04 01:22:31 +00:00
ehouse
5afdcc20db include result of strerror in messages logging errno; turn relay on by default (linux) 2007-02-04 01:22:00 +00:00
ehouse
4c2259400a include result of strerror in messages logging errno 2007-02-03 21:35:07 +00:00
ehouse
e8f2215221 Turn on BT so 4.3a4 can have a non-M rev number; up version for 4.2. 2007-02-03 20:36:22 +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
e6ec790305 eType_2str replaces logEvent. Only effects debug builds. 2007-02-03 17:41:46 +00:00
ehouse
1fb61d9a7f don't set INITIALOBJECTID for main form 2007-02-03 17:39:48 +00:00
ehouse
83a25455bb Fix Zodiac-only bug: printing keys generate only keyDown event, so
must use different handler than for nav keys; fix treo bug where forms
brought up during key handling get spurious key events by adding
keySafeCustomAlert that consumes up to the first keyDown before
calling FrmCustomAlert.
2007-02-03 17:36:56 +00:00
ehouse
3f111c5657 name change only: Connectedness becomes DeviceRole 2007-02-02 08:34:37 +00:00
ehouse
b2f3e73672 Don't make any btlib calls until the main form is up. This works
around an (OS?) bug where, apparently, the confirm-turn-on-bt dialog
eats pending events, including frmLoadEvent, so that the form never
loads or is very broken if that dialog is allowed to come up too
early.
2007-02-02 08:24:06 +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
c2d67e16da debugging: add custom events to logEvent 2007-02-02 08:11:42 +00:00
ehouse
f441b22e78 cleanup: only one return per function. 2007-02-02 08:11:14 +00:00
ehouse
599b43ab78 Y counts as a vowel when removing non-words. 2007-01-30 04:53:32 +00:00
ehouse
aaeb58e993 Remove excess logging 2007-01-27 15:12:13 +00:00
ehouse
9d74699181 Work around what looks like a PalmOS bug that generates a spurious
keyDown event to a form put up while processing a keyUp event in the
main form: set a flag while handling key events, and drop the first
keyDown in child forms when it's set.
2007-01-27 15:10:10 +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
0313a89553 Test and special-case for zodiac, which gets events in the same way
has Treo but doesn't have OS support for moving focus among objects.
And since zodiac doesn't support the std Palm hires APIs don't try to
use them.  Up version string to b4.
2007-01-21 23:27:46 +00:00
ehouse
7ed3ad89b7 Remove assert that's firing; don't inval_all from util_yOffsetChange:
that blocks testing common inval code.
2007-01-21 23:00:52 +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
45ad5bc5df Fix drawing highlighted cells on perimeter. 2007-01-20 04:30:02 +00:00
ehouse
0b68a917f7 preliminary addition of xplatform-only focus, esp drawing of cursor
and handling of arrow keys via WM_KEYUP; added focus/cursor color to
prefs and color edit dialog.  Tested only on win32 (WINE), and not
integrated with platform nav/focus model.
2007-01-19 08:24:02 +00:00
ehouse
2fabf70396 use new perimeter feature and conditionally replace manual board
framing with it.  Off for now.
2007-01-19 08:22:14 +00:00
ehouse
20ecd5f7d7 get rid of draw methods; always highlight cursor same way;
board_handleKeyUp becomse board_handleKey for curses
2007-01-19 08:20:58 +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
e9871b1fb6 change constant names. No change to code compiled. 2007-01-19 06:43:52 +00:00
ehouse
68730379b4 add five-way support for Tungstens; don't move cursor when keys are
meant for menu; redraw after hiding miniwindow when OS brings up
dialog;
2007-01-18 05:49:54 +00:00
ehouse
d350151659 remove code to save bits behind miniwindow 2007-01-18 05:49:07 +00:00
ehouse
c01615e86b reintroduce board_handleKey 2007-01-18 02:42:37 +00:00
ehouse
5decd9bbf3 run svnversion on parent to catch changes in common or other shared dirs 2007-01-16 02:48:27 +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
5a87db48bd keep track of last key down so can fake key up event when palm won't
be giving us one, e.g. when holding key results in a system window
coming up;
2007-01-12 03:34:43 +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
cf0f88cf36 up version to b3 2007-01-07 05:23:06 +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
8f924e9dc9 Don't show about dialog (with its alpha message) except when BT enabled. 2007-01-06 18:31:16 +00:00
ehouse
31b6526917 handle both keyUp and keyDown events, including dealing with devices
that don't generate the former.  Break key-handling code into separate
function.
2007-01-06 17:50:43 +00:00
ehouse
098a2ec5c4 Use new keydown/up APIs from linux, and add key support and drawing
changes to implement keyboard navigation/focus in gtk port.
2007-01-06 17:46:02 +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
d23539536e 2007 copyright in about box 2007-01-06 16:45:39 +00:00
ehouse
5b8e0e89d3 remove duplicates as part of sort process 2007-01-06 04:43:22 +00:00
ehouse
68e2f821d6 beta 2; redraw focus ring after redrawing tray buttons; move board
focus border so it coincides with regular border.
2006-12-21 07:55:19 +00:00
ehouse
f1380a6a70 incorporate svn version number in .prc file name 2006-12-20 04:57:36 +00:00
ehouse
1808fa804c When palm button loses focus to board obj, post event to be handled
after focus event, and on handling it inval rect of focus ring on
button.  This fixes drawing glitch where palm remembers pixels behind
focus ring but they're not right.
2006-12-20 04:49:24 +00:00
ehouse
5d99928dea place initial focus on scoreboard since OS insists on putting it somewhere. Need to fix that. 2006-12-20 04:16:22 +00:00
ehouse
72228104ec fix for non-BT compile 2006-12-20 04:15:40 +00:00
ehouse
884cb8d186 prevent tray buttons overwriting tray by removing border and moving same distance to right 2006-12-20 04:14:41 +00:00
ehouse
1f6d5b6012 add new file palmdbg.c 2006-12-20 04:13:30 +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
23b85f5437 BT work is now 4.3. Nav work moves into beta as 4.2. 2006-12-13 05:03:19 +00:00
ehouse
ebfd85019d add hand-coded implementation of HsNavDrawFocusRing. This works, but
should be replaced by generated code.
2006-11-29 04:11:24 +00:00
ehouse
4b5acc257f back out unintended change 2006-11-27 04:52:27 +00:00
ehouse
f0f8eccbe1 include Hs (nav) files for ARM build too 2006-11-27 04:50:53 +00:00
ehouse
4f0a0593e7 add type for ui color table; get a jump on Hs nav functions 2006-11-27 04:48:28 +00:00
ehouse
2fa63a74b9 temporarily comment out for arm code that won't compile on arm 2006-11-27 04:40:18 +00:00
ehouse
424718b5bb swap focus-related event data, and include the UI color table call used to
determine the color of self-drawn focus elements.  I can't draw the nav
ring on ARM, but otherwise five-way nav works on arm with this checkin.
2006-11-27 04:39:36 +00:00
ehouse
bb45f89a6f Unfocus any board object whenever pen touches board 2006-11-27 01:13:48 +00:00
ehouse
4207a6ae66 get rid of initial focus object for main board 2006-11-27 01:07:22 +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
53765169be Draw focus differently in tray if whole thing has it, to include borders
between the tiles.
2006-11-17 13:46:06 +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
a67be62069 Remove old focus-change callback; use extended handleKey API to allow
Palm to own all top-level focus change decisions (in accord with fnav
resource)
2006-11-14 06:54:14 +00:00
ehouse
91cf8543f5 Draw all focus indications ourselves: no more broken Palm API. Draw a
thick blue rect around board, and color all tiles and score positions
within the draw routines.
2006-11-14 06:52:11 +00:00
ehouse
aaf73a0543 tweak prefs checkbox text: covers remote as well as robot players. 2006-11-14 06:49:20 +00:00
ehouse
f8031a422f reorganize fnav resource for main board, using rows. Allows for
faster travel between the main elements.
2006-11-14 06:48:46 +00:00
ehouse
cac0fd94d7 Use new top-level focus drawing model, and new API indicating whether
key handled.
2006-11-14 06:47:50 +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
4ccddbd93f add a done button 2006-11-13 02:02:15 +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
ehouse
bfd555c22f bug: need to OR in inval value rather than replace. 2006-11-12 21:03:15 +00:00
ehouse
8125f8405b Break scoreboard code out into a new module. board.o was getting too
big on palm.
2006-11-12 20:09:00 +00:00
ehouse
84321fa158 fix drawing of empty tray space. 2006-11-12 15:39:10 +00:00
ehouse
382848f556 Fix to work with draw API changes 2006-11-12 15:22:26 +00:00
ehouse
a37fab39e8 new UNUSED macro for keynav 2006-11-12 15:20:36 +00:00
ehouse
eb32609a1d Fix to compile and work with draw API changes 2006-11-12 14:51:47 +00:00
ehouse
d3812271a2 Add to draw APIs of individual elements (e.g. board cells) whether
they're focussed so that they can draw that during rather than after
everything else.  On palm, use this to draw focus using the system
selected color rather than with the blue nav rect.  Since a new param
was too much, add new enum type CellFlags and pass as bitvector to
draw APIs.
2006-11-12 14:36:15 +00:00
ehouse
b174b89bda fix compile error when FIVEWAY not on. 2006-11-12 14:29:35 +00:00
ehouse
86e2a2d26a fix crash when FIVEWAY not on. 2006-11-12 14:28:43 +00:00
ehouse
f0d3148a49 Force file logging on to report an assertion failure. 2006-11-11 22:53:30 +00:00
ehouse
74b6d76182 Fix messages getting dropped when remote device isn't connected by, on
getting a new connection, making a callback that calls resend_all().
This means a lot of duplication, but duplication is free with
bluetooth.  The underlying problem is that packets are reported as
sent not when acked by the other side, but when passed to a lower
level that may not be connected at all.
2006-11-11 22:52:39 +00:00
ehouse
b39d0ad600 Add missing question to phonies warning message. 2006-11-11 22:45:13 +00:00
ehouse
2945a120f9 resend_all when a socket connects. This is the strategy needed with
Palm where apps quit and reopen connections many times during a game.
2006-11-11 22:44:31 +00:00
ehouse
9f0db2d9c5 add -lmcheck, which purports to catch memory errors 2006-11-11 22:42:40 +00:00
ehouse
130c0f5a92 Refactor to not return from middle of function. No behavior change. 2006-11-11 22:38:20 +00:00
ehouse
e2f3a55611 reject initial messages coming in on the same address a second time.
Fixes problem that surfaces when clients are more agressive about
resending early in game.
2006-11-11 22:37:36 +00:00
ehouse
1838640823 Fix bug where sign extention on 16-bit processors caused too many bits
set in crosschecks.
2006-11-10 08:08:59 +00:00
ehouse
b171900dfb When moving focus through tray, skip empty space; when through board,
skip cells with tiles permanently played.  Space char raises focus but does
not move it laterally.
2006-11-09 06:05:40 +00:00
ehouse
1f5ec02172 If no arrow visible, use cursor loc as destination when moving tile to tray. 2006-11-08 13:44:34 +00:00
ehouse
708e270b2a add palm_util_notifyFocusChange to handle focus transitions away from
xplat code
2006-11-08 05:06:51 +00:00
ehouse
e8b74e1cc3 set focus to board if not held prior to passing keys 2006-11-08 05:05:11 +00:00
ehouse
414580904f board doesn't handle focus-related keys unless it has the focus. 2006-11-08 05:04:44 +00:00
ehouse
dd5fa134a5 function turning object id constants to strings for logging 2006-11-08 05:04:13 +00:00
ehouse
2e9afb1ff2 remove typo blocking compilation 2006-11-07 13:43:30 +00:00
ehouse
2aa9664884 When internal focus reaches edge of object, move it back up and onto
the next object using a callback to the platform to determine what, if
any, object is next.  Adjust curses platform to cooperate.  Works
well.  Palm is next.
2006-11-07 05:46:44 +00:00
ehouse
44eaa36319 More progress on one-handed navigation: fix ncurses board clipped to
bottom of tray; add focus-related params to draw*Finished routines
(and simplify to one) so platforms don't have to save from Begin
routines (and stop palm doing that); check version of saved game, and
handle case where older binary tries to open newer version; redraw
Palm tray buttons after focus change to stop focus-rect ghosting; fix
annoying overlap in saved games dialog; palm version goes to a3.
2006-11-05 16:54:18 +00:00
ehouse
3153e2b867 Lots of progress on one-handed navigation: add gadgets to stand in for board
scoreboard and tray on palm; make center drill into the focussed object and
spacebar come back up then move the focus among them.  Integrate with other
focussable objects on main form.  Go from separate drawCursor routines to
same for all three, with cursor only visible when focus is drilled down.
On curses, add a hilite rect routine that can be called after text is laid
down, and use for cursors.
2006-11-03 06:23:54 +00:00
ehouse
57f2f4ba2a debug functions to turn enums and defines into loggable strings 2006-11-03 06:19:27 +00:00
ehouse
7c2e09cca5 Simple fnav resource for main form: a start 2006-10-30 00:28:46 +00:00
ehouse
935f87979e Use color rather than period to separate score from tiles left in
scoreboard.
2006-10-29 18:24:50 +00:00
ehouse
a5f71143c0 Fix crash on pre-fiveway palmos where FrmGetFocus always returns -1;
add new preference for whether small value nums are drawn in tiles in
tray.
2006-10-29 17:41:14 +00:00
ehouse
f1def437c3 Use new XP_TriEnable type; begin work to support bluetooth by tracking
connType and adding choice how to connect.  Bt connect dialog is
invoked, but the fields won't be populated.  Pass conn type into
socket constructor, assuming socket code doesn't change much to use BT
rather than TCP.
2006-10-28 14:56:04 +00:00
ehouse
a735cfab03 use new XP_TriEnable type 2006-10-28 14:49:49 +00:00
ehouse
b9cc093820 Many many changes improving newgame dialog by using a three-way rather
than two-way enabled state, but mostly about getting focus ring
working for five-way-equipped devices.  Add fnav resources to the two
dialogs with gadgets, and code so the gadgets are included in the
focus rotation.  The move to three-way means that disabled controls
can visible while excluded from the rotation.  There's cleanup and
polish to be done still, and five-way navigation doesn't work for the
main form yet. No changes to bluetooth at all.
2006-10-28 14:48:08 +00:00
ehouse
266355b7b2 New type XP_TriEnable meant to be used more than just for new games:
controls are hidden, disabled but visible, or enabled.
2006-10-28 13:21:32 +00:00
ehouse
2639c80c84 add uninited state so can reload dialog with no assumptions about platform
widget state.
2006-10-23 13:56:43 +00:00
ehouse
07e2717cc8 add a few consts decls where APIs changed; use XWFEATURE_RELAY rather
than BEYOND_IR
2006-10-22 19:44:30 +00:00
ehouse
da7a9dd562 When bt init fails, put up alert; check for failure after and don't
crash; erase bt status area even when no comms in order to erase after
turning bt off; in connect dlg, use a trigger rather than field and
button for host name.
2006-10-15 16:14:42 +00:00
ehouse
8c42b56c26 Cleanup logging macros and get rid of p_ignore. 2006-10-15 14:33:55 +00:00
ehouse
b73ac76775 Build with Bluetooth on; add alpha-only text to About dlg; show About
dlg on startup first time; fix null ptr deref bug.
2006-10-15 14:22:32 +00:00
ehouse
c695d8644c remove unused field 2006-10-15 14:20:14 +00:00
ehouse
d234fc637d make IR the default conn type on Palm, where it's been the only type
until now.
2006-10-15 14:09:17 +00:00
ehouse
04f99aa2c4 fix non-bt compile by ifdef-ing bt-only ui elements 2006-10-15 14:05:23 +00:00
ehouse
0506069f47 remove duplicate #definition 2006-10-15 13:54:31 +00:00
ehouse
cb2990b720 add const to a few formal param declarations 2006-10-15 13:53:17 +00:00
ehouse
9aa8faa1d1 Switch player count string for client in new game case. 2006-10-12 13:55:16 +00:00
ehouse
d123d6c352 Make self-restarting: fork child and wait (to deal with asserts). 2006-10-11 02:06:20 +00:00
ehouse
ed6cf517ea get rid of extra log statement 2006-10-11 02:02:53 +00:00
ehouse
8e4a9072e5 better message when relay disabled 2006-10-11 02:02:09 +00:00
ehouse
5f25ba9f57 remove BEYOND_IR, replacing with XWFEATURE_RELAY and
XWFEATURE_BLUETOOTH.  The goal is to be able to build to support
bluetooth only, or relay/ip only, e.g. for a palm bluetooth beta.
Seems to work.
2006-10-10 01:34:37 +00:00
ehouse
b8107cbd6e Add a bit more logging; do a better job of changing roles. Now can switch
roles with a new game and communication starts without a restart of the
app.
2006-10-07 03:40:29 +00:00
ehouse
f6c0ea92e0 Raise status char a bit. 2006-10-07 03:38:36 +00:00
ehouse
277624eb81 Don't return from middle of function. 2006-10-07 03:37:40 +00:00
ehouse
878acbc759 Fix opening games and messages saved by last shipping version on Palm
by checking version and loading new fields conditionally.  (Not yet
tested for current wince version.)
2006-10-05 01:17:03 +00:00
ehouse
715d01b8a4 Put relay-only fields into a struct for easier identification. No code change. 2006-10-02 14:26:56 +00:00
ehouse
9837d8cca7 Fix longstanding bug removing too few messages from queue on ACK.
Print queue as part of stats.
2006-09-27 01:54:53 +00:00
ehouse
ef97beaf2c Tweak enable/disable logic to show fields for remote players for the
informational case that are hidden for new game case -- e.g.  name,
which can be read but not set.
2006-09-24 21:10:17 +00:00
ehouse
0b0aef0908 Add quick hack to show BT connect state on main board, to be replace
by icons or something prettier later.  For new games dialog, replace
hard-coded list of controls to ignore with a runtime list.  This
allows checkboxes and fields to be enabled and disabled more easily.
Works around Palm's lack of a control state meaning "visible but
inactive" that works for all form elements.
2006-09-24 17:56:14 +00:00
ehouse
d6ef943a5f add linux_dict_getShortName 2006-09-24 15:35:33 +00:00
ehouse
6bae3385f4 fix compile warnings; disable board size combo when not new game. 2006-09-24 15:34:46 +00:00
ehouse
edd48174a3 Add more consts. 2006-09-24 15:28:15 +00:00
ehouse
d78f9dd720 Add debug menu and in response dump bt state to stream for display.
Track sends and receives.  Add listening state for master, and don't
reset its acl when slave goes away.
2006-09-23 22:58:33 +00:00
ehouse
415148e771 tweaks to compile both standalone and for relay use. Remember: Symbian
code hasn't been run in over a year.
2006-09-23 20:40:36 +00:00
ehouse
5e09041d8b bug: even empty strings need to be terminated. 2006-09-23 16:05:41 +00:00
ehouse
12731c59cb fix ARM crash loading bt game saved on 68K: specify sizeof array
rather than struct wrapping it.
2006-09-23 16:04:53 +00:00
ehouse
95fe18c4c7 Don't use service records; don't reset connection state as part of
reset for new game; handle case where callback happens inside of
BtLibLinkDisconnect call.
2006-09-23 15:24:30 +00:00
ehouse
04c5401711 What I meant to check in. F***ing emacs. :-) 2006-09-23 15:22:26 +00:00
ehouse
57a636618c "IR" -> "Beaming" 2006-09-23 15:19:29 +00:00
ehouse
9ab6ac701c cleanup and remove logging. 2006-09-23 15:18:44 +00:00
ehouse
e10d05eff0 On bringup for bluetooth, resend any waiting messages rather than an
empty new one to get the connection started.  This increases the
chances new games will connect without user having to hit resend.
2006-09-23 15:18:01 +00:00
ehouse
b3af1d4d2a When a client registering n players with server, send the first n,
ignoring local flag which nwgamest doesn't set in client case.  When
resetting, destroy any engine allocated: plugs new leak.
2006-09-23 15:15:57 +00:00
ehouse
213cfbb050 set crosschecks inline 2006-09-23 15:12:10 +00:00
ehouse
d46723eb6a use gtk_combo_box instead of whatever and fix inability to set current
num players and role as dialog comes up.
2006-09-21 01:34:29 +00:00
ehouse
9137eff9fa Largely untested changes to allow BT in ncurses mode, centered around
integrating sockets into poll fdset; move relay and bt globals out of
a union so can test if in use without knowing current connection method.
2006-09-19 03:39:08 +00:00
ehouse
7b7b7006a7 clean scoreboard rects before drawing in case player's location has changed as new players added 2006-09-19 03:35:26 +00:00
ehouse
fd5117fa28 Tweaks toward a dual ARM/68K binary where only 68K supports bluetooth.
Don't try to not show the BT option for connecting, but in the case
where it's not actually supported say so in the dialog.
2006-09-18 04:40:27 +00:00
ehouse
db3a8fe6e4 Remove dependency on non-existant file: should not have been checked in. 2006-09-17 13:33:45 +00:00
ehouse
3b280f8c4d remove dead code using IR libs directly (no exchange mgr); rename
#define to be consistent with same for bluetooth.
2006-09-17 06:16:05 +00:00
ehouse
ecb8664e1b remove dead code using IR libs directly (no exchange mgr); rename
#define to be consistent with same for bluetooth.
2006-09-17 06:15:37 +00:00
ehouse
8667bb77bf remove over-agressive attempt to detect out-of-order messages that was
breaking IR comms.
2006-09-17 05:06:46 +00:00
ehouse
d03ef80b3e What I mean to check in... 2006-09-17 05:04:32 +00:00
ehouse
65a82b1c3b Punt on problem of svn version in about box changing: comment in
makefile, and make it the last string.
2006-09-17 05:03:59 +00:00
ehouse
4bdef12c3e Prune excessive logging 2006-09-17 04:45:19 +00:00
ehouse
6cf4d50ee4 fix ARM build so DEBUG setting is passed to compiler, and code so it
compiles that way.
2006-09-16 22:09:28 +00:00
ehouse
31532c06ca pass debug -D options to .rcp files to to include debug menus 2006-09-16 16:08:33 +00:00
ehouse
0f271d707f revert change 1593: FEATURE_HIGHRES is no longer defined. This brings
highres icons back.
2006-09-16 15:53:14 +00:00
ehouse
ed1a7e6fc9 be a better master: don't try to send when not connected. 2006-09-16 15:21:27 +00:00
ehouse
72cd7c7ec7 tweak svnversion output so make stays happy 2006-09-15 07:52:45 +00:00
ehouse
40563a6790 strutils macro change; log PID on startup for easier attaching 2006-09-15 07:45:40 +00:00
ehouse
8f5bdf1163 strutils macro change 2006-09-15 07:43:21 +00:00
ehouse
63afad6482 strutils macro change; tweak so compiles non-DEBUG and without Bluetooth 2006-09-15 07:42:10 +00:00
ehouse
a292e33c03 catch up with recent API changes; fix bug in newgame dialog. 2006-09-15 07:39:57 +00:00
ehouse
9239d34f19 strutils syntax changes. Rough cut at reordering loading in game
info: when the device is a client and is starting a new game, we want
to start presenting only the local players.  So load them first, and
reduce nPlayers down to the count of current local players.  Works
well, but can probably be simplified.
2006-09-15 07:36:51 +00:00
ehouse
4029120fc6 do a better job of rejecting messages that have strayed in from a
different game; strutils syntax changes.
2006-09-15 07:34:39 +00:00
ehouse
e627d7f670 do a better job of rejecting messages that have strayed in from a different game. 2006-09-15 07:33:59 +00:00
ehouse
7e049bb986 new strutils macro syntax 2006-09-15 07:32:39 +00:00
ehouse
804b3c5f76 params become const 2006-09-15 07:32:04 +00:00
ehouse
a82e84c177 params become const; new macro syntax for strutils 2006-09-15 07:31:24 +00:00
ehouse
d7a2fadd39 modify MEM_DEBUG versions of strdup utils to record the __FILE__ and
__LINE__ of callers rather than their own to assist in leak detection.
2006-09-15 07:30:00 +00:00
ehouse
4e60a477e4 Names change only: it's actions, not events, that are postponed. 2006-09-14 01:57:40 +00:00
ehouse
6e143e0b87 Remove dead code 2006-09-14 01:48:22 +00:00
ehouse
3645481a53 New addr param to checkAndDeliver so address can be passed back to
comms; Add debug-only menus to toggle logging to file and memopad.
2006-09-14 01:46:41 +00:00
ehouse
07f21767fc New addr param to checkAndDeliver so address can be passed back to
comms.
2006-09-14 01:41:37 +00:00
ehouse
3866d898f4 Better handling of disconnect and reconnect; esp. slave will keep
trying to connect after losing contact with server.  With this
checkin, a game between palm and linux can be interrupted by either or
both and restarted, with either in either role.  Haven't tested
palm-on-palm yet.  App stop speed is much better now too.
2006-09-14 01:38:09 +00:00
ehouse
4b953e8891 Add debug-only menus to toggle logging to file and memopad 2006-09-14 01:34:22 +00:00
ehouse
7cf02f322e Don't typedef array; make array field of struct. 2006-09-14 01:31:13 +00:00
ehouse
100598a35f Make formal param const; add initial value to relay-only field so
asserts don't fail b/c of uninitialized value; don't typedef array:
make array field of struct.
2006-09-14 01:25:40 +00:00
ehouse
4479cf530d Get rid of separate accept thread, instead integrating listening
socket into main event loop (poll underneath).  Works for gtk; still
debugging ncurses.
2006-09-10 19:01:06 +00:00
ehouse
0339de1de6 Check state before accepting post-connection messages; and always set
state when completing connection process.
2006-09-10 18:58:10 +00:00
ehouse
1be6172e16 use tmp buffer to avoid copying one byte at a time. 2006-09-10 18:53:03 +00:00
ehouse
7d1d4d23c4 tweaks to re/connect logic; process incoming data from main event loop
and enqueue more than one at a time; wipe existing queue when reinited.
2006-09-10 18:34:57 +00:00
ehouse
c27abcd486 Attempt to listen for connections on a separate thread so connected
game could disconnect and reconnect, but still need work on adding a
socket to the main thread's io queue from a different thread.
2006-09-08 07:23:19 +00:00
ehouse
2c5d15a8dd remove param from util_addrChange; add comms_getIsServer; save bt_addr
as part of comms.
2006-09-08 07:14:24 +00:00
ehouse
c4b0f350e1 Lots of changes aimed at allowing to quit and restart in the middle of
a BT game: track states so can shutdown cleanly; transition from
master to slave; mechanism to defer work from callbacks to the main
loop.  Can now quit and restart as guest against host on linux.  Have
not tested between two Treos.
2006-09-08 07:06:21 +00:00
ehouse
148e711e54 init address field with current bt_adddr 2006-09-08 07:02:16 +00:00
ehouse
96dd01cbe5 cleanup: add missing consts. 2006-09-08 06:43:59 +00:00
ehouse
22f4edfd89 add ability to log to non-Memo db (to be read off device). 2006-09-08 06:39:35 +00:00
ehouse
3db4dc8a27 make formal params const where possible 2006-09-02 05:30:51 +00:00
ehouse
6b527014c8 when logging state transitions, don't unless there's a change 2006-09-02 05:29:59 +00:00
ehouse
16519a2070 fix bug checking crosschecks with more than 32 tiles. 2006-09-02 05:29:13 +00:00
ehouse
5d043e349e add __FUNCTION__ to assert macro 2006-09-01 04:39:56 +00:00
ehouse
e0edcb52a8 bug fix: reset stack data stream before getting length and writing. Assert
so easier to catch similar problems.
2006-09-01 04:32:57 +00:00
ehouse
9aa0e41eed hardcode psm (for now), and remove spd lookup stuff. Was needed to
connect to linux server which doesn't add spd records yet.
2006-08-29 13:23:00 +00:00
ehouse
f3eb95b891 Make linux client work as host. Currently accepts only one connection
and blocks in accept.  Need threads and a piconet.
2006-08-29 13:20:09 +00:00
ehouse
209da1b042 use stream_getSize to detect corrupt (truncated) messages. 2006-08-29 13:18:12 +00:00
ehouse
12f115b2ac make getSize return diff between what's been written and what's already
been read.
2006-08-29 13:13:43 +00:00
ehouse
fb87fd31d2 Start adding bt support to linux port. Required removing assumptions
that all connectivity was with relay and over streaming sockets (since
BT is using l2cap's datagram-style sockets.)  With this checkin, a full
robot-vs-robot game is possible with palm as host and linux as client.
Linux as host isn't started yet.
2006-08-26 21:15:20 +00:00
ehouse
74c6b241d7 Put up BT device browser while user is picking connection method
rather than when trying to send for first time, then pass address
through from conns dialog to bt code.
2006-08-26 21:12:10 +00:00
ehouse
406d746fbf add LOG_HEX 2006-08-26 20:28:48 +00:00
ehouse
0c915e61b0 First shot at bluetooth support (turned off in Makefile by default).
A full robot vs. robot game now works between two Treos.  Added UI to
choose BT as transport mechanism, and added new send proc to establish
socket connection between host and guest.  Works only for two devices:
no piconet yet.  No error recovery, ability to quit game in middle,
start new game, etc.
2006-08-23 04:44:55 +00:00
ehouse
94b952fb26 Fix assert: implicit cast to boolean doesn't work when bit being
tested is outside the low-order byte.
2006-08-22 04:20:40 +00:00
ehouse
1e8966c6f7 Fix compile errors due to missing UNUSED macros 2006-08-17 01:31:49 +00:00
ehouse
4daabf6fe5 Set -Wunused-parameter for those versions of gcc that support it, and
deal with the output by removing params where possible and elsewhere
by adding XP_UNUSED macro wrapping __attribute__((unused)).  There
should be NO change in function in spite of the large number of files.
2006-08-16 13:44:44 +00:00
ehouse
35261484a2 include svn version in name of generated .exe file. 2006-08-16 01:30:31 +00:00
ehouse
61959b394a patch from Peter Rovnak. For Slovak support, need to specify the tray
font by name in order to get one that has all the necessary faces.  Seems
to make no difference on US/English systems, but it works for him on a
localized device.
2006-08-16 01:29:21 +00:00
ehouse
0fed666438 script for averaging results of running 'time' multiple times. 2006-08-12 02:01:57 +00:00
ehouse
5d161cdd77 optimize for the case where tiles are < 32. Previous imlementation of
64-tiles support increases engine times by ~5%.  This removes that effect.
I can't measure any slowdown vs. pre-change engines.
2006-08-12 01:59:03 +00:00
ehouse
a2840b42ac Change LANG to XWLANG to avoid conflict with ENV variable. 2006-08-11 01:44:08 +00:00
ehouse
e68771939e fix broken ce build: remove ifdefs. 2006-08-11 01:33:19 +00:00
ehouse
0b868f5b53 Base the number of bytes used to store tiles on the number in the
current dictionary.  This allows us to continue to open games saved
with older code using older dictionaries while still supporting the
new format for up to 64 tiles.  Old versions may crash when opening
games created by new versions, but that's probably ok.
2006-08-10 01:21:31 +00:00
ehouse
c41b211735 increase possible number of unique tiles from 32 to 64 in order to
support Slovak which has 40.  This change is preliminary: it seems to
work for both existing and dicts with >32 chars, but it breaks backwards
compatibility: existing saved games will crash this code.  I think the
fix is to deduce the number of bits per tile from the number in the
dictionary being used, but that's not in yet.
2006-08-09 04:56:34 +00:00
ehouse
7c0c6461cd add another const 2006-08-09 04:52:43 +00:00
ehouse
ef8add4b26 was being just a bit too cute 2006-08-09 04:49:17 +00:00
ehouse
af2eb79a4e make some ptrs const 2006-08-09 04:48:34 +00:00
ehouse
b5164aa0c5 hide dict files -- playing with svn:ignore 2006-07-29 21:36:24 +00:00
ehouse
d493502714 tweak button location 2006-07-28 08:04:00 +00:00
ehouse
8903c2ad3f fix change between Local players/Total players when device role changes in newgame dlg 2006-07-28 08:03:33 +00:00
ehouse
e4493c2255 better compile-command in header 2006-07-28 07:53:18 +00:00
ehouse
6e88146396 turn on flip menu for PPC build too 2006-07-28 07:52:40 +00:00
ehouse
8c7624fe7d cleanup: remove overly verbose logging 2006-07-28 07:51:49 +00:00
ehouse
44a4dab13a Cleanup prior to adding Swedish to BYOD. 2006-07-22 16:05:45 +00:00
ehouse
5f8ba8a570 get symbian compiling. Untested. 2006-07-22 16:04:39 +00:00
ehouse
d43acd6b46 check for remaining memory being < 0, not just <=, since we allocate exactly as much as we need. Fixes failure due to being out of memory at same time as having finished parsing stdin. 2006-07-22 16:03:14 +00:00
ehouse
de0c62fb39 Compensate for OS' failure to deliver penup events by checking for
pendownness at critical points when an up event should have been
processed: when another pen down happens, when about to scroll, and
when events (menus and buttons) occur.  This seems to catch all the
lingering miniwindow problems. Add flip menuitem (win32 only for now).
2006-07-07 08:39:31 +00:00
ehouse
27057de11e Replace a bunch of doMirror parameters with a single function, called
after a flip, that invalidates y,x for every x,y that's invalid.
2006-07-07 08:27:13 +00:00
ehouse
4beb291f0d remove rc3 from version: ready to ship 2006-07-05 00:16:18 +00:00
ehouse
58bb0734b8 round up when determining top coord of letter in cell. Fixes "Q"
getting drawn higher than other ascii chars, and does not break even
taller chars in Danish or Portuguese.
2006-07-04 00:16:08 +00:00
ehouse
63a948cbd4 Exclude high-res bitmaps from lowres build 2006-07-03 23:45:18 +00:00
ehouse
a1fcd56d55 on low-res screens, don't expand timer's clip rect to avoid erasing cell border below. 2006-07-03 23:44:51 +00:00
ehouse
dfb8104eb8 ppm files no longer used. Remove. 2006-07-03 23:06:25 +00:00
ehouse
e76e23f7f5 Enlarge Preferences... button by one pixel 2006-07-03 22:34:36 +00:00
ehouse
8c86ba26d8 add more cases to messageToBuf. Effects debug build only. 2006-07-03 22:32:29 +00:00
ehouse
ef941e2c75 up version to rc3; make all elements of prefs dlg the same height so they
line up when moving between global and local sets.
2006-07-02 01:08:45 +00:00
ehouse
501e1f7a5f add messageToBuf (debug-only ); change newgame's J button to R (for
"rearrange"); tweak locations of various dialog widgets for better
layout.
2006-07-02 00:42:41 +00:00
ehouse
f8aea3b953 keep calling newg_juggle until there's a change. 2006-07-02 00:40:16 +00:00
ehouse
1c65ffaac2 fix showing of timer field when timer disabled when switching from global
to local prefs; use num-getter utils rather than convert to/from text.
2006-07-02 00:39:31 +00:00
ehouse
5ea2b3f8a2 in juggle, need to adjust rows after swapping to get passwd fields enabled
in sync with passwd checkbox.
2006-07-02 00:34:41 +00:00
ehouse
4da329a482 Get rid of param removed from board_handlePenUp. 2006-07-01 14:22:09 +00:00
ehouse
e0072c9b87 UI compromise on juggle: force something to happen, so the user sees a
change, then juggle again so the outcome is random.  This works on Palm
because draws are not cached: if two players wind up not moving you still
see them move then move back.
2006-07-01 14:18:00 +00:00
ehouse
72bd18316d juggle until something changes. This is better than there sometimes being
no change, until I figure out how to force drawing as on Palm.
2006-07-01 14:14:48 +00:00
ehouse
3fe3e05548 default dict now gzipped (no real change) 2006-07-01 14:13:29 +00:00
ehouse
9a52d82e0d newg_juggle returns bool indicating whether anything changed 2006-06-29 03:38:25 +00:00
ehouse
5fb3705535 don't cast size to a char! 2006-06-28 14:11:46 +00:00
ehouse
de20e83bdb A couple of tweaks so it works on byod with sample wordlist. 2006-06-28 03:38:42 +00:00
ehouse
504f9641ea remove parameter following API change 2006-06-28 03:11:26 +00:00
ehouse
5ebbf3f4d0 Support for Portuguese based on info from user in Brazil 2006-06-28 03:08:22 +00:00
ehouse
968dcf2835 removed a param from board_handlePenUp 2006-06-27 06:31:36 +00:00
ehouse
7614d971c1 randIntArray runs once and returns whether array is modified. Tray calls
again until it is.  newgame calls once: it's possible that juggling won't
do anything.  Still pending: do we tell users when nothing changed, or
leave them to figure out that it's not a bug?
2006-06-27 06:30:44 +00:00
ehouse
354cde389e remove unused parameter 2006-06-26 04:39:48 +00:00
ehouse
f2906db239 Up version string to rc2. 2006-06-24 01:22:47 +00:00
ehouse
a6d140581c Turn on BitBlt scrolling. 2006-06-24 01:22:10 +00:00
ehouse
6ecbf11ad6 Rewrite juggle to just create a second set of players in juggled order.
The previous too-cute algorithm failed when any player wasn't moving.
2006-06-24 01:20:44 +00:00
ehouse
6870178490 implement vertical scrolling using BitBlt. It's faster and smoother, but
commented out for now since it may be better not to add so late in the cycle.
2006-06-22 04:59:18 +00:00
ehouse
a08dc22023 Use new xplatform newgame logic to replace palm's in newgame.c, and make other
changes (shifting util functions around) that follow from that.  Back
version number down to 4.1.5 since that'll be the next shipped from this
branch.  Add juggle button to newgame -- the whole point of this.
2006-06-22 04:57:46 +00:00
ehouse
037bce2196 Use new xplatform newgame logic to replace palm's in newgame.c, and make other
changes (shifting util functions around) that follow from that.  Back
version number down to 4.1.5 since that'll be the next shipped from this
branch.  Add juggle button to newgame -- the whole point of this.
2006-06-22 04:57:08 +00:00
ehouse
cdc74b668a turn off advanced networking by default for push to release 2006-06-22 04:52:33 +00:00
ehouse
e32a445788 remove overactive log message 2006-06-22 03:37:21 +00:00
ehouse
15df92fc65 add missing include file 2006-06-22 03:36:51 +00:00
ehouse
4d79c85e94 up version string to rc1; add DEBUG to makefile help. 2006-06-18 21:54:59 +00:00
ehouse
45979f547a disable juggle button if only one player active; copy all four players when saving game state after dismissal. 2006-06-18 19:02:47 +00:00
ehouse
46cd6e8536 add ifdef for compile with some optional condition 2006-06-16 01:46:47 +00:00
ehouse
f271aee094 add commented-out code to draw juggle icon instead of "J" button. It's too much work to get it looking good before ship. 2006-06-16 01:30:20 +00:00
ehouse
f60dade9a0 move randIntArray to strutils, and use instead of similar code to juggle tiles in tray. 2006-06-16 01:19:11 +00:00
ehouse
a4cabd9cf7 Allow no space for REM text when no tiles left to allow more room for scores. 2006-06-16 01:15:44 +00:00
ehouse
b8a8c1c175 Fix juggle so it works for 3 players too. 2006-06-15 13:05:56 +00:00
ehouse
77793e31b8 Run server after gameinfo dialog dismissed in case a player's become a robot. 2006-06-15 12:39:54 +00:00
ehouse
a4ac6f9ff4 call server_do after gameinfo dialog returns in case a player has
become a robot.
2006-06-14 06:22:21 +00:00
ehouse
133016bd1d cleanup; fix compile of non-debug win32 version 2006-06-11 20:12:20 +00:00
ehouse
73c0cefb52 Add "Save current game as" to save file dialog; remove frequent-save hack. 2006-06-11 05:27:16 +00:00
ehouse
1af17b7672 Catch up with changes including three enabled states for control and
setting dialog strings.  Align titles with columns for standalone version.
2006-06-10 16:15:31 +00:00
ehouse
0460136a90 You can always change passwd for local player. 2006-06-10 16:10:33 +00:00
ehouse
b80808bc57 Support new tri-part enabled type; add "game info" dialog/menu to test
read-only side; support new attributes for column head and nplayers
label; hide labels as well as controls that go with them.
2006-06-10 05:50:27 +00:00
ehouse
44abbc4493 Add new attributes to cover strings for number of players and remote
column head; make enabled an enum to differentiate between hidden and
disabled.
2006-06-10 05:45:53 +00:00
ehouse
1967a137ef Tweak widget positions to fit juggle button on device 2006-06-08 02:03:33 +00:00
ehouse
16dd84b059 Fix to compile in STANDALONE mode, e.g. for current PPC. 2006-06-08 01:51:34 +00:00
ehouse
5fff2997d6 First cut at using new nwgamest common code to replace PPC-only logic
for updating fields of new game dialog as players are added, made
remote, robots enabled, etc.  Removes a lot of code and fixes some
bugs in (non-yet-shipped) multi-device version.  As a bonus, added "J"
button to juggle players.  Seems to work well on Win32.  Haven't
tested on PPC yet.
2006-06-08 01:35:20 +00:00
ehouse
956c169d08 Refer to players as "remote" rather than "not local" to be consistent
with Palm and PPC; fix juggle bug by adjusting lines after moving them.
2006-06-08 01:26:18 +00:00
ehouse
e58d397c2b change newgame api names; implement juggle; change getter to take a
callback to copy strings that will go out of scope before the getter
returns (e.g. wince).  Use changed API in gtk dialog.
2006-06-07 01:45:03 +00:00
ehouse
8c176ed53c use common/nwgamest.c. Lots of code removed, and the dialog works now. 2006-06-07 01:28:37 +00:00
ehouse
9b6562e455 make a param const 2006-06-07 01:26:55 +00:00
ehouse
d918b9cb44 add common/nwgamest.{c,h} to make new game dialog logic cross-platform 2006-06-07 01:26:04 +00:00
ehouse
003f801314 up version number; add to list of dirs searched for .xwd files 2006-06-07 01:20:56 +00:00
ehouse
0fe04af4b4 Turned on leak-checking at shutdown for debug version, and fixed leaks and
crashes in destructors that had never been called before.  Seems now to 
free all allocated memory before exiting.
2006-05-30 05:12:02 +00:00
ehouse
2ba984775a trivial optimization: add 1 only once 2006-05-30 04:34:35 +00:00
ehouse
d029d6600d To show it and to prevent it's being cleared, write current password
into field in game info dialog.
2006-05-28 18:16:08 +00:00
ehouse
e26e149f4c silence compiler warnings. 2006-05-28 16:16:46 +00:00
ehouse
b8d3d477a5 fix scrolling and invalidation for flipped boards, and especially
where the board is still not fully visible when the tray is hidden.
2006-05-28 16:08:58 +00:00
ehouse
90dfc15ae9 use signed types to avoid overflow and disappearing scores 2006-05-28 16:02:16 +00:00
ehouse
d0c6e8517b center letter in tile even when it's too big. 2006-05-28 15:04:57 +00:00
ehouse
e75ef1ca53 fix a couple of compile warnings 2006-05-28 14:53:02 +00:00
ehouse
8639c4e5cd define CALLBACK to quiet warnings for CE build. 2006-05-28 00:42:34 +00:00
ehouse
b9f5925ceb Move button size #defines into .rc file. They're scaled by the time C
code sees them and so shouldn't be relied on outside the .rc file.
2006-05-28 00:41:44 +00:00
ehouse
3db196156b Calculate old window width correctly when figuring new width. Fixes
problem of buttons drawn too close to right edge.
2006-05-28 00:40:28 +00:00
ehouse
fde2ef1ee2 Before putting dialog into landscape mode, make sure it won't be wider
than the screen.  That is, don't be fooled when in portrait mode by a
screen height that's SIP-reduced.
2006-05-27 22:52:10 +00:00
ehouse
054fd21981 Cleanup password dialog 2006-05-27 22:47:33 +00:00
ehouse
4a28deb1b1 Lots of little tweaks to dialogs to get them looking better and to
work better in landscape mode; got rid of multiple DEFPUSHBUTTONs.
2006-05-27 22:21:21 +00:00
ehouse
ecb7243714 Lots of little tweaks to dialogs to get them looking better and to
work better in landscape mode; got rid of multiple DEFPUSHBUTTONs.
2006-05-27 22:21:09 +00:00
ehouse
14eef0a4b8 Move buttons in landscape mode for color sel dialogs too. 2006-05-27 22:19:30 +00:00
ehouse
3e934624a4 modify API for "portraitizing" dialogs, and space the buttons evenly
rather than stacking all from bottom.  This doesn't quit work on ce
since GetWindowInfo isn't available and IsWindowVisible does the wrong
thing.
2006-05-27 17:18:42 +00:00
ehouse
04e9dfb76a strcat becomes strcpy: trivial optimization 2006-05-25 04:07:49 +00:00
ehouse
be930f344c For dialogs in portrait-mode, move OK and Cancel buttons to the right
side and shrink up from the bottom
2006-05-25 03:41:32 +00:00
ehouse
340214d87d remove trailing <cr> to sometimes eliminate scrollbar 2006-05-23 02:01:26 +00:00
ehouse
65540759b5 clear multiple tile selection when trade ends even if cancelled 2006-05-23 01:53:18 +00:00
ehouse
abad0c7fd0 Get rid of hard-coded tile number limit in server_formatRemainingTiles 2006-05-23 01:52:20 +00:00
ehouse
113b9cea5f n## Lines starting with '## ' will be removed from the log message.
change version string to include b8
2006-05-21 02:09:03 +00:00
ehouse
778e68e4dd Increase size of buffer used to accumulate letters for "tiles left"
dialog.  French has 15 "E"s, and the old buffer size allowed an
overflow (crash) when at least 13 of any letter were left.
2006-05-21 01:54:48 +00:00
ehouse
d6ddeb0f87 update nHiddenRows so scrolling finally works 2006-05-20 06:22:33 +00:00
ehouse
27b740c03b draw lines rather than bullets to indicate whose turn it is in vertical mode 2006-05-20 06:21:53 +00:00
ehouse
5df612c1cd Change misleading function name; no code change. 2006-05-19 13:45:48 +00:00
ehouse
19414ae505 Finish scrollbar work by passing number of visible rows to
util_trayHiddenChange, which means an API change.  In board, calculate
bottom of board based on bottom of tray when tray is hidden, and round
so that it's an exact multiple of cell height.  In wince, take
advantage of the new parameter to fix the scrollbar so that very
constrained boards can be scrolled even when the tray is hidden.
2006-05-19 13:44:05 +00:00
ehouse
f69d433b7c Reset divider location on new game. 2006-05-19 13:31:18 +00:00
ehouse
70be257d8c First attempt to set board bounds based on tray bottom if tray
overlaps board.
2006-05-17 06:12:40 +00:00
ehouse
912d221b1c Replace overlap param with nHidden to give more flexibility in
creating situations where board must be scrolled.
2006-05-17 06:10:24 +00:00
ehouse
fd5355b627 Include output of svnversion in Palm version's About dialog. For
Catalan and Spanish as well as English.  There's also some character
conversion in the former two that may be linked to my local LANG
setting now being en_US.utf8.  May need to revisit if there are
problems.
2006-05-15 04:24:30 +00:00
ehouse
5dca33c5ab factor out updateScrollInfo so I can update scroller live once I get
super-small boards figured out.
2006-05-14 15:28:57 +00:00
ehouse
bb7e827703 for vertical scoreboards, force miniwindow to be entirely inside the board. 2006-05-14 15:27:29 +00:00
ehouse
e98ef5b962 move scrollbar into its own box so it doesn't force buttons to be over-tall 2006-05-14 15:26:21 +00:00
ehouse
afa496cb19 Incorporate svnversion output in About box; add CAB target 2006-05-14 15:22:48 +00:00
ehouse
94b46bc6c6 Incorporate svnversion output in usage() 2006-05-14 14:47:32 +00:00
ehouse
4bb82554e5 Since board can now sometimes only partially hide tray, introduce
distinction between obscuring and completely hiding.  In former case,
erase the tray rather than draw it partially hidden.  This means
drawing the tray before rather than after the board, which is a big
change that so far doesn't seem to have hurt anything.  If it does, it
might be necessary to draw it before and after the board.
2006-05-12 08:03:08 +00:00
ehouse
3ea23396d2 add compile-command 2006-05-12 07:59:38 +00:00
ehouse
ba1aefcd49 make tray hide button toggle hidden state 2006-05-12 07:59:21 +00:00
ehouse
54e17e76b1 rewrite score formatting to put is-turn bullets above/below for
vertical scoreboard; reduce inter-line spacing and otherwise tweak
drawing.
2006-05-12 07:58:31 +00:00
ehouse
308aa3ae42 fix compiler warning 2006-05-12 07:55:36 +00:00
ehouse
dbab3bc4fd Add ability, in win32 version, to specify height and width on wine's
commandline -- to ease debugging of layout code.
2006-05-12 07:54:59 +00:00
ehouse
121163e586 Turn on -Wall for compilers, and fix warnings that result. Got 'em
all for win32 build, but some remain for wince that I'm unable to fix.
2006-05-12 07:25:43 +00:00
ehouse
73b244e11f Turn on -Wall for compilers, and fix warnings that result. Got 'em
all for win32 build, but some remain for wince that I'm unable to fix.
2006-05-12 07:17:35 +00:00
ehouse
543df9f681 minor code improvement 2006-05-11 03:02:11 +00:00
ehouse
469a23a183 fix too-tall cells in vertical scoreboard case 2006-05-11 03:01:39 +00:00
ehouse
216615577b minor fixes to drawing spacing (what I meant to check in) 2006-05-11 03:00:50 +00:00
ehouse
3b7e22dc1c minor fixes to drawing spacing 2006-05-11 02:58:36 +00:00
ehouse
c496593800 tweak score layout, and remove a U8 that was overflowing on win32 2006-05-10 13:42:44 +00:00
ehouse
7297ab4be8 fix layout for vertical scoreboard option 2006-05-09 12:31:41 +00:00
ehouse
36993ba258 catch up with API change 2006-05-09 04:05:19 +00:00
ehouse
3a4c5dfff6 catch up with API change 2006-05-09 04:04:56 +00:00
ehouse
468c6efd37 first cut at supporting landscape mode by moving scoreboard to left edge of screen from top. 2006-05-09 02:01:27 +00:00
ehouse
28411a4466 API change: board is responsible for figuring tile size and giving
extra pixels to divider.
2006-05-06 14:42:38 +00:00
ehouse
e8377f242c Alert user of a previous version that dict location is being fixed 2006-05-05 12:51:35 +00:00
ehouse
e7868afd67 Alert user of a previous version that dict location is being fixed 2006-05-05 12:51:08 +00:00
ehouse
aa09dfba91 catch up with API changes 2006-05-05 12:49:02 +00:00
ehouse
99ba48ce3e add poolsize and fsize args to better warn users when dict is too big.
Later need to modify the build process to specify the size needed.
2006-05-02 13:28:07 +00:00
ehouse
653fdb6a7b Improve out-of-memory message; don't double-count words. 2006-05-01 14:00:06 +00:00
ehouse
fd7c649cb0 first cut at script to package binary, shortcut and BasEnglish
dictionary into an installable .cab file.
2006-04-30 21:52:17 +00:00
ehouse
3d5345f53b pretty up About text. 2006-04-30 21:51:19 +00:00
ehouse
f700c88bca update version number 2006-04-30 21:06:25 +00:00
ehouse
3c7b895bed List dictionaries alphabetically, which requires first storing them in
sorted order then adding all at once to the menu.
2006-04-30 19:54:40 +00:00
ehouse
7d60d05436 move CE_MAXDICTS to header 2006-04-30 19:45:48 +00:00
ehouse
22e6ddde2a Bring over from personal archive. I don't know if this works yet:
waiting for a wordlist.
2006-04-30 16:17:21 +00:00
ehouse
c0c5332098 add 'sort -u' to get rid of duplicates. All info files should have this.... 2006-04-30 15:15:28 +00:00
ehouse
328c96c617 fix filter to eliminate words with unused letters; catch up count of
'G' tiles with gtoal's list.
2006-04-30 14:52:43 +00:00
ehouse
4ec6af22cb Include name of dict so it can get printed. 2006-04-30 13:58:24 +00:00
ehouse
0295579e32 More cleanup for Spanish dict building. Seems to work now. 2006-04-30 04:44:10 +00:00
ehouse
8124a01010 Cleanup for Spanish dict building: die when can't build correctly, and
do same for WINCE as for FRANK re: specials
2006-04-30 04:27:33 +00:00
ehouse
834c43e131 sort to get rid of duplicates and so sort inside dict2dawg won't be needed 2006-04-30 02:35:26 +00:00
ehouse
3a37c11970 check that this version number stuff works 2006-04-29 16:47:01 +00:00
ehouse
4493ed8482 attempt to print subversion revision number with -v option 2006-04-29 16:40:48 +00:00
ehouse
993ab25c61 use stream_putString 2006-04-25 13:46:59 +00:00
ehouse
ef6ebe6bac Add, and use, stream_putString. Saves 500 bytes on win32. 2006-04-25 13:31:15 +00:00
ehouse
3b94d0f0a2 When unable to open a dictionary whose path has been saved, look for
it elsewhere in the set of possible directories.  This should help
ease the transition to there being a limited number of places where
dicts can be, since games saved previously will still work after the
dicts they reference have been moved.  Also, clean up callbacks making
their return values consistent: true means done.
2006-04-25 04:25:08 +00:00
ehouse
6687984bf0 On win32 too, return null when dict not found. 2006-04-24 13:36:23 +00:00
ehouse
1b447272b2 Replace generic "no dictionaries found" warning with list of directories searched and URL from which to download. 2006-04-24 04:34:42 +00:00
ehouse
d4bb0f307f pass the rigth size to LoadString 2006-04-22 14:31:43 +00:00
ehouse
bc2a99b474 More of dict search change: failed to save buffer before checkin 2006-04-22 14:28:22 +00:00
ehouse
eb7f62308e Show current dict in dropdown in game info mode. (Had disappeared in recent changes.) 2006-04-22 14:19:21 +00:00
ehouse
4b8e877205 Go back to writing to \Program Files\Crosswords, since we now look
there automatically.
2006-04-22 14:06:11 +00:00
ehouse
d8ab05a04e rewrite ceLocateNDicts to do recursive searches from a list of
directories stored in resources.  On device this is currently
"\Program Files\Crosswords" and "\SD Card".  (Just "." for win32.)
Later may need to restrict on the card too.  Still to do: make "no
dicts found" Alert list the places searched.
2006-04-22 14:05:09 +00:00
ehouse
dc908e52b2 set DEBUG in compile-command; no code change 2006-04-22 13:55:19 +00:00
ehouse
13e584ac68 make combobox tall enough that it can pop down 2006-04-20 13:48:44 +00:00
ehouse
7d14763d8c rename function to link with pocketpc-sdk 2006-04-20 13:47:58 +00:00
ehouse
97d3deffdd display filename only (no path, and no extention) in dropdown, but retain full path internally to use after choice is made. 2006-04-20 04:39:46 +00:00
ehouse
e96aaccef9 debug-only function for logging wchar_t strings 2006-04-20 04:38:40 +00:00
ehouse
fc0c7c3f80 When creating dicts dropdown, set 0th as default if there's been no match. 2006-04-20 03:56:38 +00:00
ehouse
b5843a5486 forgot to save before commiting.... 2006-04-19 04:57:51 +00:00
ehouse
5a8c1ef2af ceLocateNDicts now takes a callback. Use that to build menu of dicts
rather than call OpenFile, which doesn't let you browse much of the
file system on CE.  Heading for installing dicts in Program Files so
users never have to worry about them.
2006-04-19 04:56:00 +00:00
ehouse
ddb21c3cfc Install into /My Documents/Crosswords since that's the only place the
OpenFile dialog will let you browse.  And use filename as -a option so
more than one dictionary can be installed -- without that the
installer treats all dicts as versions of the same app and removes the
old before installing the new.
2006-04-16 05:49:59 +00:00
ehouse
6680edebb6 Rewrite dictionary location code so that it can more effeciently
produce a list of dictionaries.  The API has changed slightly, but the
new ability isn't used yet.
2006-04-16 05:12:52 +00:00
ehouse
b26982a3df Seems to work to pack a .xwd file so that it's installed on a device
when clicked.  Still haven't figured out how to include info about the
app name, developer name etc.
2006-04-15 23:46:24 +00:00
ehouse
1d40eddbb5 exit if can't open table file; include assert for compile on sarge 2006-04-14 08:23:28 +00:00
ehouse
3df1e461e4 For already-sorted case, read words from file on as-needed basis rather
than build a vector to hold them.
2006-04-14 05:23:30 +00:00
ehouse
8f909cd3a7 Use new compiled dict2dawg when present. 2006-04-13 15:30:15 +00:00
ehouse
b70bee3d53 A final bit of cleanup. All the perl is gone. 2006-04-13 04:04:03 +00:00
ehouse
d6dc4bf30c Cleanup: remove dead code. 2006-04-13 03:58:54 +00:00
ehouse
131d4c9bd4 Use a single huge buffer for all strings rather than calling malloc
for each.  Makes a measureable speed difference.
2006-04-13 03:52:48 +00:00
ehouse
08557184a5 debug: works now! Also ifdef out debug/verbose code. 2006-04-13 03:49:41 +00:00
ehouse
72532d72a8 print letter as well as tile in text dumps (same as cpp version) 2006-04-13 03:06:18 +00:00
ehouse
b89ed5b999 add -debug arg for parity with cpp version, and add -mn flag to usage(). 2006-04-13 02:58:39 +00:00
ehouse
0c7081bf36 Tons of changes continuing port from perl. Doesn't quite work yet, but close. 2006-04-13 02:57:43 +00:00
ehouse
2863379b9b Starting work on cpp version of dict2dawg.pl. This is nowhere near complete. 2006-04-12 04:39:49 +00:00
ehouse
b10ca04e07 don't exclude BEYOND_IR-only fields 2006-04-07 03:08:23 +00:00
ehouse
cb05850fe3 Catch up with draw.h API changes (mostly just adding consts) 2006-04-04 02:43:12 +00:00
ehouse
dd779cebbc Quick meaningless checkin (update comments) to check svn config 2006-04-03 03:37:53 +00:00
ehouse
2300d55567 Draw bitmap chars ("specials", e.g. for Spanish) centered in rect
rather than at x,y.  This lines them up with normal letters on the
board as it changes size.
2006-04-02 22:27:44 +00:00
ehouse
88b37a1beb Fix crash when no dictionary by checking for null model before calling
cePositionBoard on WM_SETTINGCHANGE event
2006-04-02 21:52:15 +00:00
ehouse
08e8c4a858 Get rid of TALL_FONT macro, since it's permanently on anyway. 2006-04-01 21:25:58 +00:00
ehouse
63a8e0adbb Add macros to draw.h, and use 'em for wince, so that a platform can choose to call draw.h methods via a vtable or static linking. 2006-04-01 21:01:20 +00:00
ehouse
9be9e55986 Fix formatting (by way of playing with svn) 2006-04-01 16:54:40 +00:00
ehouse
0563b244bb Catch up with API changes (all adding const to rect and char ptrs) 2006-04-01 16:48:13 +00:00
ehouse
3388fc9f7b Remove HIGHRES compile-time tests: all palm releases will have HIGHRES
support now; build in different directories.
2006-03-31 10:57:01 +00:00
ehouse
3da83805cc handle cmdline opts in a less-fancy way that works on freebsd too. 2006-03-22 04:33:34 +00:00
ehouse
a8463b9341 link pthreads in a way that works on freebsd too 2006-03-22 04:31:27 +00:00
ehouse
b29bde8e37 include stdio.h for freebsd 2006-03-21 04:05:33 +00:00
ehouse
96d6623026 include pthread.h for freebsd 2006-03-21 04:04:43 +00:00
ehouse
3f819b871d implement ResetEvent and SetEvent 2006-03-21 03:47:58 +00:00
ehouse
9166d66589 use MS macro to get winsock functions instead of eponymous posix ones.
With this change, play over IP works again!
2006-03-21 03:47:15 +00:00
ehouse
25b0d63b1a get rid of unneeded DH() 2006-03-20 04:13:40 +00:00
ehouse
6f9e7ed94c add an underbar to separate numerals 2006-03-18 03:35:20 +00:00
ehouse
300c29be35 add a couple of missing icon images 2006-03-18 03:34:15 +00:00
ehouse
a121388762 no harm in copying field when feature not available; may help newer
version to open file.
2006-03-04 16:07:21 +00:00
ehouse
3ad2b8e38e fix errors that became apparant when feature flags turned on and
stopped building wince resources with _WIN32_WCE on.
2006-03-04 15:57:39 +00:00
ehouse
8332e6746b colorsel dialog works now on wince, so remove warning dialog 2006-03-04 15:56:31 +00:00
ehouse
67c638643d fix colorsel dialog on wince by defining MY_COLOR_SEL for .rc files
too.  Also stop defining _WIN32_WCE for win32 .rc files.  Turn on all
other missing XW-feature flags in .rc file too.
2006-03-04 15:55:57 +00:00
ehouse
162cb99c53 ignore .stamp files 2006-03-04 15:36:06 +00:00
ehouse
6b140d641b fix b5 crasher: check for stream equivalence with the older version
now that current version's been upped.  Rename old version to better
indicate when it was current.
2006-03-04 06:12:38 +00:00
ehouse
b91ad07b03 add target to upload binary 2006-03-04 06:09:42 +00:00
ehouse
091f8ca2e3 move on to next beta 2006-02-28 05:29:37 +00:00
ehouse
10d38faa33 add install target 2006-02-27 00:08:32 +00:00
ehouse
90412fe9d4 bring in transparant small icon change from 4.1 branch 2006-02-26 23:56:06 +00:00
ehouse
eb2a4d513e up alpha version 2006-02-26 23:53:55 +00:00
ehouse
772c262b5e first checked in. works 2006-02-26 23:51:57 +00:00
ehouse
a393bd97b7 update copyright -- thought I'd done this... 2006-02-20 02:07:18 +00:00
ehouse
667c705f44 strip all .exe files, not just for release. 2006-02-20 01:57:18 +00:00
ehouse
afb90f6d90 Check .xwd files coming back from OpenFile dlg, and reject with msg to
user those that aren't valid.  This catches corrupt files and other app
files ending with .xwd.
2006-02-20 01:56:34 +00:00
ehouse
e9ef9bea2c change about box text for beta 5. 2006-02-20 01:51:46 +00:00
ehouse
95a7f64eff strip release binaries 2006-02-19 16:07:14 +00:00
ehouse
788ebda35b tweak code so board is right width in release build. Looks as if I'm
working around a code-gen bug, but I haven't looked at the asm output.
2006-02-19 05:48:51 +00:00
ehouse
7a6c44de80 update comments to describe building with Linux tools 2006-02-18 21:59:04 +00:00
ehouse
e12abddcd9 new directories to ignore 2006-02-18 14:08:04 +00:00
ehouse
fb0d471dae add const decls to draw.h and dictnry.h functions where appropriate,
and modify "subclass" methods to match.  Should be no code change, but
this makes the intent of the APIs clearer.
2006-02-18 06:39:40 +00:00
ehouse
dde823a5ca update help target 2006-02-18 06:37:01 +00:00
ehouse
a4c7d48eb5 make XP_UCHAR signed to avoid warnings calling string.h funcs 2006-02-18 06:36:39 +00:00
ehouse
447af498a2 fix warning 2006-02-18 06:35:48 +00:00
ehouse
6161e9d0ad new directories and file extensions to ignore 2006-02-17 07:33:08 +00:00
ehouse
b9aa155761 cast threadstart func ptrs. Not sure why... 2006-02-17 07:31:21 +00:00
ehouse
826a6dd82e tie aygshell to Wince rather than making it separate feature 2006-02-17 07:30:54 +00:00
ehouse
268442b782 use __VA_ARGS__ in debug macros 2006-02-17 07:29:25 +00:00
ehouse
a8add11453 clean up usage 2006-02-17 07:28:41 +00:00
ehouse
de830f328f don't include in curses-only build 2006-02-17 07:28:17 +00:00
ehouse
e9499cb4ed formatting only 2006-02-17 07:27:58 +00:00
ehouse
5aeb5dc6fa makefile cleanup 2006-02-17 07:27:36 +00:00
ehouse
472b61dbe3 get rid of printf 2006-02-16 03:32:19 +00:00
ehouse
7dccae2d3c make color buttons owner-draw, and draw them. This fixes bug where
all are the background color, and seems to fix win32 build altogether.
Wince build still needs to respond to the buttons being pressed.
2006-02-16 03:31:44 +00:00
ehouse
d601ba3488 provide sensible path for saved files on win32 so state can be preserved 2006-02-15 13:09:36 +00:00
ehouse
32454235cc use native color-picker on win32 2006-02-14 04:54:28 +00:00
ehouse
dd9298e95f make remDim 16-bit so doesn't overflow on large-screened devices 2006-02-14 04:53:45 +00:00
ehouse
92fb9fb9b2 turn off broken color sel until have time to fix 2006-02-14 04:52:31 +00:00
ehouse
233479a959 get rid of null-termination and 'sort -z' since that option isn't on
new ISP's BSD sort.
2006-02-10 05:12:25 +00:00
ehouse
098adea254 better way of doing debug builds 2006-02-07 14:46:08 +00:00
ehouse
1fd52dee8f back out change that had window drawing too narrow 2006-02-07 14:45:30 +00:00
ehouse
257afd1474 separate debug build; pass flags to linker so OS won't run in emulation mode 2006-02-06 15:00:46 +00:00
ehouse
ffd9b66bc5 lots of tweaks toward a beta build on linux. works now, but takes a
hex editor.
2006-02-06 04:48:20 +00:00
ehouse
e7dd853d07 attempt to show different title when in debug mode 2006-02-06 04:44:09 +00:00
ehouse
2ee7e7a0f2 tweak -- but these will be going away as soon as mingw and debian's
pocketpc-sdk catch up with me.
2006-02-06 04:43:32 +00:00
ehouse
8f7e41e89d cleanup closing in on building correctly -- which now works, though it
takes a hex editor.  May have fixed a bug with a missing CloseHandle
call.
2006-02-06 04:41:14 +00:00
ehouse
96a45af102 type changes to stop warnings 2006-01-31 14:40:49 +00:00
ehouse
502cddcf1f debug macros and wierd rewrite of code using random and mod. This makes it work on ce! 2006-01-31 06:42:53 +00:00
ehouse
323240fa6b missed one ce-specific struct. This makes it work on ce! 2006-01-31 06:41:49 +00:00
ehouse
559662ea98 pass the right param to WinMain. This makes it work on ce! 2006-01-31 06:41:16 +00:00
ehouse
8fc0404158 use debhacks; add flags to compile for wince 2006-01-28 19:05:39 +00:00
ehouse
3f577181dd use debhacks 2006-01-28 19:03:10 +00:00
ehouse
2ea8c2e0cd use debhacks; ifdef out cmdbar stuff which debian tools don't support yet 2006-01-28 19:02:04 +00:00
ehouse
a3feee8027 first checked in. may have bugs 2006-01-28 18:58:04 +00:00