Commit graph

3782 commits

Author SHA1 Message Date
eehouse
7e20bd1a30 add about menu to opening dialog 2010-02-01 05:45:39 +00:00
eehouse
38ed6c925b remove unneeded intents 2010-02-01 05:45:24 +00:00
eehouse
0485b6d4e6 invoke prefs from games list activity too 2010-02-01 05:45:10 +00:00
eehouse
967ba62dff Fix to compile on Palm (68K): remove parameters removed by r3013 and
move slot moved by r2982.  Fix -- with gross ifdefs -- warning in
pool.c caused by Palm's random() being the only 16-bit one.
2010-02-01 03:17:46 +00:00
eehouse
6893fe742a fix r3013 breakage: remove gameID params 2010-02-01 01:50:38 +00:00
eehouse
87eae92006 turn off debugging for a release 2010-01-31 22:10:10 +00:00
eehouse
24285b5d7a include device role in game list summary 2010-01-31 21:46:04 +00:00
eehouse
9f250c99ef get rid of gameID param. This change breaks all other platforms... 2010-01-31 21:35:07 +00:00
eehouse
caa5d6a55f implement enough networking to play a game via relay (provided I don't
quit on either device.)  Uses java.nio, a single thread blocking on
select() and a single SocketChannel.  Outbound packets are queued, and
incoming packets reassembled then passed to the JNIThread to be sent
to the jni for parsing.
2010-01-31 21:26:21 +00:00
eehouse
15ce0a12da add game_receiveMessage() (see prev note) 2010-01-31 21:22:55 +00:00
eehouse
b0e88eff83 implement util_makeStreamFromAddr() and (android-only)
game_receiveMessage(), the latter combining
comms_checkIncomingStream() and server_receiveMessage() which are
always used together and require a stream be passed between which
currently can't happen across jni.
2010-01-31 21:17:21 +00:00
eehouse
69cbff63f6 Hardcode ip address of emulator's host rather than eehouse.org for
easier debugging.  Needs to be in a preference....
2010-01-31 21:14:49 +00:00
eehouse
41472c4984 assert have at least one remote player 2010-01-31 21:13:31 +00:00
eehouse
49402ed218 Get comms info (host name, etc.) from user and pass it through to the
send proc.  Along the way, write jni code to instantiate a new object
including setting enums.  *Now* I'm ready for networking....
2010-01-30 20:06:06 +00:00
eehouse
bb90dce2c4 coalesce CMD_DO messages; fixes robot-vs-robot game. 2010-01-30 15:33:57 +00:00
eehouse
3798084dab idle via a local Runnable rather than having whole class implement it. 2010-01-30 15:33:16 +00:00
eehouse
20aad594e4 don't explain robot scores by default 2010-01-30 15:31:08 +00:00
eehouse
a01844e751 add Hex dict for help with testing. Don't ship. :-) 2010-01-30 14:56:21 +00:00
eehouse
7b0f100f27 wire in enough comms that java's send proc gets called when device is
a guest.  Networking's next....
2010-01-30 14:38:44 +00:00
eehouse
b915319178 create and pass to jni CommsTransport instance when game isn't standalone 2010-01-30 14:36:55 +00:00
eehouse
5b1a0f167e class that will implement network for comms 2010-01-30 14:35:33 +00:00
eehouse
4b9fa4d42a new "class" wraps TransportProcs 2010-01-30 14:33:28 +00:00
eehouse
333c5fc040 add makeByteArray() 2010-01-30 14:32:20 +00:00
eehouse
8def96dd59 pass params, e.g. clean, to make 2010-01-30 13:44:45 +00:00
eehouse
ee2fe9d193 get/set enums from C; preserve device role setting from ui to saved
game.
2010-01-30 13:44:12 +00:00
eehouse
c2e1e916b8 relay feature and logging on 2010-01-30 13:43:21 +00:00
eehouse
e86d656b4a substitute smaller built-in dict to save time moving bits during
development; don't hard-code name of built-in.
2010-01-30 03:31:20 +00:00
eehouse
6dfac28b13 rearrange to work with newer version of ndk and sdk just installed 2010-01-30 03:18:01 +00:00
ehouse
52b7205474 cache common java objects for reuse rather than build anew each time.
Seems to speed drawing a bit.
2010-01-27 13:51:23 +00:00
ehouse
40ac5694fd first submitted translation, for Catalan; improve string-checking
script to include locale directories
2010-01-27 05:19:59 +00:00
ehouse
5a288d3068 turn off debug for alpha drop 2010-01-26 14:52:52 +00:00
ehouse
874ef7e571 use top 16 bits of random in picking tiles. Seems to give better
results on android; will need to test with other platforms before
merging.
2010-01-26 14:51:00 +00:00
ehouse
ec085d8944 lots of little changes toward making prefs (per-game and global) work,
which they more-or-less do.  Some still not captured.
2010-01-26 14:48:37 +00:00
ehouse
c682a7caac snapshot work toward getting networking done. 2010-01-26 14:46:48 +00:00
ehouse
90f93aefa8 Add lots of widgets. List of players can no longer be a list since it
wants to scroll, so it's textview subclasses that don't show focus
correctly yet.
2010-01-26 14:43:39 +00:00
ehouse
0649597d90 Add prefs activity. 2010-01-26 14:38:31 +00:00
ehouse
4425eaa99e move showColors into CommonPrefs, removing separate storage in linux
and wince and removing setter from board and jni APIs.  Palm change
pending.
2010-01-26 04:14:18 +00:00
ehouse
b3dba204c6 fix compile warning 2010-01-26 04:03:21 +00:00
ehouse
73749f97a5 script to check .xml and .java files for missing string entries and to
add stubs.
2010-01-26 04:02:05 +00:00
ehouse
8a4c31b203 rename file 2010-01-25 03:05:15 +00:00
ehouse
68079d3590 Add ability to open utf8-formatted dicts and to display bitmap tiles
(though poorly.)  Both required processing in the jni that isn't
possible (e.g. because no libiconv included) so I created callbacks
into java from the dict building code.  Add ability to download dicts,
to select them, to add and remove players and make them robots or
human.  Robot-vs-robot game doesn't work well (robots trade a lot and
server_do seems not to be getting called enough) but will soon.
Coalesce penMove events.  Implement game list menuitems like delete,
copy, etc.
2010-01-25 02:49:14 +00:00
ehouse
676fd73fc0 Activity for downloading dicts with nothing but a WebView in it.
Works, but not cleanly.  Still need to get the path to
/sdcard/downloads programatically, and to exit cleanly back to parent
Activity.
2010-01-25 02:23:04 +00:00
ehouse
bf33bd4a0f ask permission to write to storage and use internet; add DictActivity;
take control of orientation changes for several activities.
2010-01-25 02:20:32 +00:00
ehouse
fc28573f21 include java files in TAGS 2010-01-25 02:09:08 +00:00
ehouse
82382a7cfa Pass results back via timers and call board_draw() when so indicates.
Needed to test dragDropSetAdd.  Candidate for merge to trunk.
2010-01-25 00:28:30 +00:00
ehouse
1073a98f9f add dragDropSetAdd which causes mid-drag tiles to be treated as if
they're 2/3 their height higher.  Meant to work better on touchscreens
where finger would otherwise prevent user from seeing where the drop
will land.  Still not tested or tuned on device.
2010-01-25 00:19:54 +00:00
ehouse
59aa9f6e15 instead of measuring glyphs one at a time, put hdc in TRANSPARENT mode
and draw them all, then measure the stack.  Candidate for merge to
main for wince release.
2010-01-25 00:12:09 +00:00
ehouse
b3c8327db1 Players are now in a list with a view into which they can be opened for editing. 2010-01-20 06:55:45 +00:00
ehouse
960fbd0b33 Fire GameConfig activity to edit a game; use file save/open methods in
Utils.
2010-01-20 06:54:09 +00:00
ehouse
f4535f3408 2010-01-20 06:52:37 +00:00
ehouse
dd05c5b58e add constructor that names player by position in game. (Template
needs to come from strings.xml)
2010-01-20 06:50:59 +00:00
ehouse
171318156d Remove board layout to JNIThread; format scores to show remaining
tiles and whose turn it is.
2010-01-20 06:49:38 +00:00
ehouse
7f0768a4f9 do board layout here rather than in BoardView so main thread isn't
talking to jni (fixes assert in jni catching overlapping calls from
both threads); call server_writeFinalScores for BoardActivity.
2010-01-20 06:48:43 +00:00
ehouse
92d5bbbf18 more strings and menu items 2010-01-20 06:44:58 +00:00
ehouse
ad013b8cc7 add server_writeFinalScores. 2010-01-20 06:44:02 +00:00
ehouse
a62af87a61 fix bogus assert; plug leaks when makeGameFromStream can only read a
gi; implement writeFinalScores.
2010-01-20 06:43:10 +00:00
ehouse
706fe3f927 implement remSelected and notifyGameOver 2010-01-20 06:41:14 +00:00
ehouse
7eccde84e3 Add utils like juggle() to be called from GameConfig; always keep max
number of LocalPlayer instances around so they can be filled from jni
code (which is easier than making the jni construct new instances.)
2010-01-20 06:38:29 +00:00
ehouse
531ae8ea1a add file open/save functions. 2010-01-20 06:35:56 +00:00
ehouse
406a6a4a98 clean up GameConfig activity intent filter 2010-01-20 06:29:21 +00:00
ehouse
08017179c5 fix bogus assertion 2010-01-20 05:52:13 +00:00
ehouse
6bf9de70d5 Generate file with same name as class it contains. 2010-01-19 13:29:19 +00:00
ehouse
f7907c866d Move jni calls for Game menu items into jni thread 2010-01-19 13:28:32 +00:00
ehouse
b3cf0b41e1 Get rid of separate tile picker in favor of having existing
BlockingActivity do it.  This may not work when picking from the pool
is enabled but is cleaner for now.
2010-01-17 17:51:27 +00:00
ehouse
f509b766e9 don't log every function. 2010-01-17 17:49:13 +00:00
ehouse
69c8577dcb Back out change adding Looper. Using own queue is better because its
length can be tested and there's no race condition (between the looper
being available and the parent thread wanting to post messages) when
the constructor inits the queue.
2010-01-16 18:56:32 +00:00
ehouse
5c183acb5e Run JNIThread inside a Looper; use BlockingActivity to implement
dialogs requiring an immediate response.  The Looper change was made
in the hopes that a new Activity wouldn't be required and may not be
necessary.
2010-01-16 18:39:27 +00:00
ehouse
35943e8731 add util_userError() 2010-01-16 18:34:27 +00:00
ehouse
2d46bd60c9 Add transparent activity that can be called from a thread that will
block until the dialog it puts up gets an answer.  Calling
showDialog() from the thread I want to block didn't work.
2010-01-16 18:27:22 +00:00
ehouse
7c4198c05e implement util_getUserString and features like formatRemainingTiles
that display a bunch of text.  Started working on util_userQuery.
2010-01-16 14:16:27 +00:00
ehouse
a7d4d20998 Sanity check yOffset. Fixes problem where a scrolled board in
landscape mode is displayed in portrait with the top rows missing
though no scrolling should be needed.
2010-01-15 13:51:29 +00:00
ehouse
f9c9b41b3a save and open games by file rather than one globally, and display some
info about each in games list (though all still have the same players
and dict.)
2010-01-15 13:48:26 +00:00
ehouse
3beba51b6f add jni methods, and modify common code, so a CurGameInfo struct alone
can be read from and stored to a game file.
2010-01-15 13:44:29 +00:00
ehouse
a3a313fdb4 cleanup; refresh view on regaining focus rather than using
startActivityForResult
2010-01-13 13:31:23 +00:00
ehouse
c04c6974ba turn debug back on 2010-01-13 13:29:55 +00:00
ehouse
b2f0b91a23 save phony "new game" even if names not set 2010-01-13 12:57:02 +00:00
ehouse
cf60be5082 implement board_beginTrade() 2010-01-13 12:29:11 +00:00
ehouse
7f999134d7 touch .java file that uses svn version so it'll always get picked up. 2010-01-13 12:17:26 +00:00
ehouse
de3f45044f Don't show extra file in game list. 2010-01-13 12:16:43 +00:00
ehouse
1106ddd6bb Turn off DEBUG for release and STUBBED_DICT for good. 2010-01-13 12:15:46 +00:00
ehouse
20e8ba9eb0 add draw_objFinished() 2010-01-13 12:14:12 +00:00
ehouse
fa44159823 Use clipping in scoreboard and tray; show selected tiles with thicker
border.
2010-01-13 12:13:05 +00:00
ehouse
0e160011e3 add draw_objFinished(); turn boilerplate into macros. 2010-01-13 12:11:24 +00:00
ehouse
cb57fcc0be Add target, as default, that generates svn version for about box. 2010-01-13 12:03:32 +00:00
ehouse
21b3b29eab fix typos 2010-01-12 13:47:17 +00:00
ehouse
14372216d0 implement showValues; pause engine to handle events; call srandom
during init; add menus and call notImpl() for them.
2010-01-12 13:39:19 +00:00
ehouse
839e707069 refresh list view on (some) changes; get rid of unused button. 2010-01-12 13:32:19 +00:00
ehouse
47d29d8d4d don't draw tile values < 0 2010-01-12 13:30:20 +00:00
ehouse
1a4f0e04bf add copy constructors; change starting game to two players, second a
robot.
2010-01-12 13:20:18 +00:00
ehouse
71fe75049b new menus and shortcuts; tweak formatting 2010-01-12 13:18:16 +00:00
ehouse
4db53ed176 add Toast-based temporary about box with svnversion and notImpl() function 2010-01-12 13:15:47 +00:00
ehouse
11b453d5cf fix to compile with debugging turned off 2010-01-10 23:39:54 +00:00
ehouse
8d6d22f425 fix to compile with debugging turned off 2010-01-10 23:38:49 +00:00
ehouse
e76306a543 fix drawing blank tiles 2010-01-10 18:12:48 +00:00
ehouse
da0b54273f make all columns stretchable to fix oversized second button 2010-01-10 18:08:11 +00:00
ehouse
6b5be9a276 remove logging 2010-01-10 17:35:50 +00:00
ehouse
2c3e45318d All I wanted was to implement a tile picker, but it turns out dialogs
can't be synchronous on Android: you can't block the main UI thread.
So now there's a new background thread to which all jni activity
except game opening and saving is delegated (and these happen before
and after the thread exists.)  Tile picking works because the request
comes in on the background thread which then blocks until the
BoardActivity reports that the tile picker's gone away.
2010-01-10 17:35:23 +00:00
ehouse
50991fd028 Add common head/tail macros to all jni entrypoints that save/restore
the jni env passed in so all calls happening inside will use the right
one.  Required as part of running a second thread, re. which see
longer comment to follow
2010-01-10 17:29:09 +00:00
ehouse
cc527acb49 pass in/store ptr to JNIEnv* rather than env itself 2010-01-10 17:25:46 +00:00
ehouse
148d433e81 add makeStringArray 2010-01-10 17:23:30 +00:00
ehouse
552b718738 tile picker strings and intent 2010-01-10 17:20:18 +00:00
ehouse
6a4a0a8775 include thread id in logs 2010-01-10 17:19:30 +00:00
ehouse
5c762466aa new activity/layout for picking tiles 2010-01-10 17:18:37 +00:00
ehouse
a91f662327 save and restore games (though there's a global game for now). 2010-01-09 17:19:25 +00:00
ehouse
5d9dc49bf0 formatting changes only 2010-01-09 17:18:15 +00:00
ehouse
cd5069474e don't store dict: it's in the model 2010-01-09 17:11:31 +00:00
ehouse
278b815a3e fix ntohl; allow null Strings 2010-01-09 17:10:59 +00:00
ehouse
9761596e6e add system menu to games list with "delete all" item; implement roughly 2010-01-09 14:39:34 +00:00
ehouse
35dd738c26 add onDispose call to game_dispose, and implement it such that jni
doesn't leak.
2010-01-09 13:30:23 +00:00
ehouse
3db30a2995 increase bits stored for yOffset to 4 in case whole thing scrolled. 2010-01-07 14:47:01 +00:00
ehouse
c68c01a82a set focusable here not in code 2010-01-07 14:38:16 +00:00
ehouse
ef68670c0c remove claim to handle orientation changes. Now on screen turn
activity is destroyed and recreated, allowing to lay the board out
anew.  This is inefficient, but a good test for now.
2010-01-07 14:37:09 +00:00
ehouse
4b9c328d8e don't log draw; too verbose 2010-01-07 14:35:04 +00:00
ehouse
b14cf81df4 to fix board getting erased on every draw, draw to our own bitmap and
canvas and blit that to draw's canvas each time.  Requires keeping x
and y offset since board doesn't fill the view; requires erasing tiles
and score entries before drawing.
2010-01-07 14:34:07 +00:00
ehouse
f6a951f845 add yOffsetChange commented out 2010-01-07 14:30:56 +00:00
ehouse
fdce005fb0 add vertScrollBoard 2010-01-07 14:29:49 +00:00
ehouse
e1c92707e7 implement scoreBegin; add vertScrollBoard 2010-01-07 14:28:53 +00:00
ehouse
9bd51e4305 add yOffsetChange commented out (not needed for scrolling, just for UI
to show thumb.)
2010-01-07 14:27:20 +00:00
ehouse
ecd5667cf0 makeIntArray takes array of initial values 2010-01-07 14:24:53 +00:00
ehouse
df7a445a9e widen a couple of labels 2010-01-05 14:11:39 +00:00
ehouse
96041e1937 latest from translator 2010-01-05 14:05:04 +00:00
ehouse
da91820525 Draw 'X' icon in empty middle square; start first player as non-robot
to show it.
2010-01-04 06:03:28 +00:00
ehouse
052c99c9db remove symlinks if they're not back to us -- so that more than one
copy of the tree can be active.
2010-01-04 05:50:12 +00:00
ehouse
4a4b05f66c make backgrounds transparent 2010-01-04 05:48:42 +00:00
ehouse
7655ccf064 latest from translator 2010-01-03 22:56:29 +00:00
ehouse
7d0b30f05a icon for middle cell 2010-01-03 22:31:26 +00:00
eehouse
ef188164e2 implement drawBoardArrow, but without setting tranparency correctly. 2010-01-03 01:02:14 +00:00
ehouse
1b350e0c34 remove translate comments where done; add (one) where missing. 2010-01-03 00:54:52 +00:00
ehouse
3fb90e2ca2 new file from tranlator 2010-01-02 22:31:27 +00:00
ehouse
b7a508b52e update copyright: it's a new year 2010-01-02 20:32:12 +00:00
ehouse
833d338e24 new file from tranlator 2010-01-02 20:27:30 +00:00
eehouse
d206aef266 initial checkin of java source for android port 2010-01-02 19:30:20 +00:00
eehouse
1a5ae00777 initial checkin of jni source and build scripts for android port 2010-01-02 19:10:08 +00:00
eehouse
c7729ca25c add a calloc to mempool 2010-01-02 01:42:07 +00:00
eehouse
b5e1e3a2c6 add assert -- unset numPlayers trashed stack 2010-01-02 01:41:12 +00:00
eehouse
a6e6e2b05c fix stubbed dict support 2010-01-02 01:40:25 +00:00
ehouse
0dfdb315ee up version to b9 2009-12-28 00:20:15 +00:00
ehouse
5cf5345eb1 Set addrChanged on role change even if conns dlg not used: fixes bug
where freshly installed device fails to connect.
2009-12-28 00:18:52 +00:00
ehouse
a3fa0d402c Don't call getHostAddr until have data to send: it's flat-out wrong on
wince, and works better when done later.
2009-12-28 00:14:09 +00:00
ehouse
dfe1d849cd Set up ConnMgr proc ptrs *before* attempting to use them. 2009-12-27 23:53:41 +00:00
ehouse
56ece4ee5f make provision of dict path optional 2009-12-27 21:33:53 +00:00
ehouse
d5e641ee52 Add the ALL_HERE alert to the set not duplicated. 2009-12-27 19:04:29 +00:00
ehouse
378d02f1f5 Don't enable COMMS_HEARTBEAT for wince either; copy .cab file to www
path if shell variable set.
2009-12-27 19:03:17 +00:00
ehouse
7ac98bfcfb Don't require a timeout waiting for a game to connect initially, and
make no timeout the default.
2009-12-27 18:17:24 +00:00
ehouse
c15998a10a add two missing strings (commented requiring translation) 2009-12-27 17:37:49 +00:00
ehouse
fe69b8403e cleanup script; no functional change 2009-12-27 17:36:18 +00:00
ehouse
d80c04dd6b remove whitespace that was confusing check_ids.sh 2009-12-27 17:33:11 +00:00
ehouse
37b80527e6 Don't put certain alerts up more than once at a time -- to prevent a
huge number of stacking up when networked device is unattended or in
background.  Same infrastructure should support a checkbox in some
dialogs by which users say "Don't show me this again."
2009-12-27 02:54:30 +00:00
ehouse
9b2eb9273c remove mistaken assert 2009-12-27 00:49:13 +00:00
ehouse
9e8496c429 This should eventually be part of cegcc's headers. But use it locally
until then.
2009-12-23 06:09:25 +00:00
ehouse
9976b8d7a1 remove stuff duplicate by what should be cegcc header file. Renamed
this to make room for that.
2009-12-23 06:08:47 +00:00
ehouse
3ae0df2764 Add ifdefs to work with and without cegcc support for ConnMgr (which
for now seems to lack ability to link so I'm still loading procs by
name); don't close ConnMgr connection when phone stopped so can get
notified of further changes and needn't restart; on WM_ACTIVATE, put
full-screen mode in sync with prefs setting to fix crash where app is
launched while running and yields to prev running copy which then crashes
on exit on Treo700w (see recent checkin 2853).
2009-12-23 06:01:26 +00:00
ehouse
488a102977 Fix to compile for win32. 2009-12-21 15:31:06 +00:00
ehouse
098cd1b297 Implement enough connmgr support, loading the dll and getting proc
addresses by name, to successfully bring up cellular connection for
rest of networking to use when it's down.  This is a start: eventually
the stuff in connmgr.h (being added here) should be replaced by
support added to cegcc (including link info so the proc ptrs go away.)
Still to do: figure out how to detect when phone is turned on so can
try again without user needing to restart the app.
2009-12-21 06:43:21 +00:00
ehouse
3fb3616e6c When exiting turn on fullscreen mode after saving prefs to prevent,
for some unknown reason, crash on Wince 5.0 (or at least the Treo700W
I'm testing on.)
2009-12-21 06:36:04 +00:00
ehouse
b084c5e5b2 reduce logging 2009-12-21 06:21:37 +00:00
ehouse
638337384b set flag on exit and don't allocate anything or try to send via
network; clear globals var after freeing it.
2009-12-18 04:24:55 +00:00
ehouse
28265749f9 fix unused var warning in release build 2009-12-17 13:09:10 +00:00
ehouse
81d41a621f fix connsdlg: resize, respace and for French ifdef out unsupported choices (to match other .rc files) 2009-12-16 02:48:27 +00:00
ehouse
da4b288838 inform of need to reboot after language change as FYI rather than error 2009-12-16 02:46:00 +00:00
ehouse
a1be2fb8fc add ports relay is listening on to http display 2009-12-16 02:43:52 +00:00
ehouse
da6a8eb2f0 Strings for new error and progress messages, in English and marked
needing translation.
2009-12-14 04:17:14 +00:00
ehouse
0a381b5a44 Implement callback for connect-to-relay success and new error message
for provinding too many players.
2009-12-14 04:12:20 +00:00
ehouse
fc17df2a7e When guest connects, check if providing too many players before
reponding to connection request so that we just deny the request (with
new error code) rather than revoking it later.
2009-12-14 04:10:23 +00:00
ehouse
35f068e05c Implement new callback giving progress connecting with relay. 2009-12-14 04:06:26 +00:00
ehouse
8450c9da2b New callback called on first connect to relay and on first ALLHERE
message so users can see progress.  Handle new relay message ALLBACK
meaning "ALLHERE but not for the first time".
2009-12-14 04:03:17 +00:00
ehouse
273f3d2f4a don't show turn confirm dialog by default 2009-12-14 02:54:56 +00:00
ehouse
dd236d55d6 include RELAY_NAME_DEFAULT in help target 2009-12-10 05:29:05 +00:00
ehouse
936ae796fd up version strings to b8 2009-12-10 05:28:28 +00:00
ehouse
d90f6707cc Improve error message 2009-12-10 05:28:03 +00:00
ehouse
6af05df5ba Remember role when changes so can pass to conns dlg. 2009-12-09 05:25:38 +00:00
ehouse
32634c4847 Add help text explaining room and connect order to conns dialog.
Still need to add for other .rc files and polish the text.
2009-12-09 05:11:20 +00:00
ehouse
015b0d42d8 include title in head with summary readable in tab 2009-12-08 14:51:03 +00:00
ehouse
12b17e13b6 My first post-initial-translation pass: lots of little tweaks to make
stuff fit better.
2009-12-05 04:22:33 +00:00
ehouse
770980790c add linebreak 2009-12-05 04:21:44 +00:00
ehouse
4d7637cfe2 cleanup: combine clauses 2009-12-05 02:36:59 +00:00
ehouse
07be694df6 Respond to disconnect error from comms with new error message then new
game dialog with conns already open on top.  It's opened as soon as
new game gets its first WM_PAINT message, which may not be best.
Tested only on win32 so far.
2009-12-04 09:09:07 +00:00
ehouse
9f7c0db09f Always launch host first, sleep to make sure it'll be connected and
the room registered before launching any guests.
2009-12-04 08:56:51 +00:00
ehouse
c893fd4a9e On receipt of connection-denied message via new rerror callback, put
up new error messages and then conns dialog so user can connect again
after changing room name or just waiting.  A new game is started so
that comms is re-inited and will try again to connect to relay.
2009-12-04 08:18:49 +00:00
ehouse
14b060707f Report relay connection denials due to misordering out to platform,
and refuse to connect again until comms has been reset.  This goes
with platform code to put up the new game/conns dialogs on disconnect
errors.
2009-12-04 08:14:03 +00:00
ehouse
65230143e4 Allow editing relay host and port in debug version 2009-12-04 08:11:45 +00:00
ehouse
26469d734c Modify state machine and return new error codes to force host to
connect first, guests second, with clear error messages if the order's
wrong.  This seems to make it simpler for users to get a connection
right.  Code holding multiple games worth of hosts and guests in a
cref is gone.
2009-12-04 08:03:27 +00:00
ehouse
337c36dfd2 remove unused parameter 2009-12-04 07:59:07 +00:00
ehouse
7ad59e3e2b cleanup 2009-12-04 07:54:14 +00:00
ehouse
a8e4eca525 fix debug build compile errors. Duh. 2009-12-04 02:19:58 +00:00
ehouse
c8aa9d7f72 fix non-dbg build compile errors and warnings 2009-12-03 03:05:35 +00:00
ehouse
8c21f74cc3 First cut at Czech translation; include it in set of dlls built. 2009-12-02 06:01:19 +00:00
ehouse
05d6cfbd6e new file ready for localization 2009-11-27 19:35:50 +00:00
ehouse
d6436bbf65 up version number 2009-11-26 02:26:09 +00:00
ehouse
8007e5597b Fix stupid typo that broke both backspace and drag-to-scroll. 2009-11-26 02:23:21 +00:00
ehouse
a0fa8f94da force update scroll info when changing the set of visible widgets. fixes bug where smartphone didn't scroll prefs dlg after switch to global prefs. 2009-11-26 02:20:34 +00:00
ehouse
cc24c63dd9 Tweak control size 2009-11-23 02:15:38 +00:00
ehouse
d5f7a0693f Handle missing relay error messages. 2009-11-22 19:25:49 +00:00
ehouse
8c7aab4247 Add error message for relay/comms protocol version mismatch; remove
ability to edit relay address and port by default.
2009-11-22 18:02:26 +00:00
ehouse
7fbd2bed45 Fix to compile when RELAY feature disabled 2009-11-22 18:00:20 +00:00
ehouse
077b2c4789 Fix to compile when RELAY feature disabled; handle error code for
incorrect relay version flags.
2009-11-22 17:58:59 +00:00
ehouse
3cdf4aa0bf Fix to compile when RELAY feature disabled 2009-11-22 17:56:54 +00:00
ehouse
5ab3425377 allow default relay port, like name, to be set at compile time 2009-11-22 16:30:20 +00:00
ehouse
55478369e4 listen on only one port by default 2009-11-22 16:29:23 +00:00
ehouse
98ad2c3147 draw pending score smaller when has more digits; move rem up one pixel same as score. 2009-11-19 02:29:39 +00:00
ehouse
b8e7cd411f fix to use new API. (this and prev checkin via terminal app on phone :-) 2009-11-19 02:26:38 +00:00
ehouse
3d6b43f032 fix palm and palm-arm compile problems including using changed APIs. 2009-11-19 02:22:32 +00:00
ehouse
370d04f318 Add notion of minimum length to font match and calc longest score
string in the scoreboard at beginning of draw.  Fixes problem where
scores > 99 didn't fit vertical scoreboard.
2009-11-18 13:51:32 +00:00
ehouse
3eadd93aa6 Pass scores and remaining tiles count to draw_scoreBegin so can
determine font size based on max length.   API change.
2009-11-18 13:24:56 +00:00
ehouse
e9287fcbbf reorder some formal params; provide width so score font isn't
recalculated each time.
2009-11-17 05:32:21 +00:00
ehouse
6bd1c4be15 up version strings to b6 2009-11-16 01:20:30 +00:00
ehouse
17f27f3764 revert r2797; endian issues are screwing up mask calculation 2009-11-15 21:05:44 +00:00
ehouse
784906fde0 set biPlanes and color table entry 0. Now works, though not well yet,
on both PPC and Win32.
2009-11-15 20:44:50 +00:00
ehouse
caf4165eba Process bitmap buffers 16- rather than 8-bits at a time. 2009-11-15 18:25:09 +00:00
ehouse
b38891269e Use scoreboard font for Remaining tiles display. Rewrite
glyph-measurement code to use device-independent monochrome bitmaps
and to look at the buffer rather than call GetPixel over and over.
Not tested yet on WinMo (beyond confirming that it compiles/links) but
it seems much faster on desktop.
2009-11-15 18:19:07 +00:00
ehouse
11a00ddb9b Remove Rem string and up dll version number. 2009-11-15 15:48:35 +00:00
ehouse
6d44cfa7fc assume log strings are utf-8, as they may contain dict letters 2009-11-15 15:46:57 +00:00
ehouse
7966f20829 for REM rect too place innerRect centered in outerRect 2009-11-15 15:45:50 +00:00
ehouse
61e087fbfe new string and some old translated/shortened 2009-11-11 04:35:25 +00:00
ehouse
c1827562dc be consistent is use of variable vs real name 2009-11-10 14:37:42 +00:00
ehouse
3d53711e31 new string translated 2009-11-10 04:21:06 +00:00
ehouse
2ecf415618 Remove on case where HandleEvents was being called recursively and
creating unexpected state transitions; add assert to catch any future
recursion.
2009-11-09 05:30:42 +00:00
ehouse
393cccb86c Add MSGONLY state to indicate cref being kept alive only to preserve
messages for a latter connection.
2009-11-09 05:29:06 +00:00
ehouse
b84c1a10d9 Use different rooms for each game. The relay, or maybe it's the linux
client's TERM handler, can't handle so many connectings on same room.
2009-11-09 05:25:20 +00:00
ehouse
b7e2567c7d account for new comms relay state in displaying relay conn status 2009-11-09 03:29:13 +00:00
ehouse
8be09b3fc4 Complete script so it runs gtk versions one host at a time (after
connecting) to test the relay's new disconnected message-storing
feature.  Works except when the gtk client crashes, which is a lot.
2009-11-09 00:06:53 +00:00
ehouse
4025c37604 Make "Room 1" the default room name. 2009-11-09 00:03:43 +00:00
ehouse
aae12428da Add limited support for store-and-forward (where limitations include
that all devices must be connected initially and that it's all memory
based so a crash wipes stored messages.)  Accept messages for
forwarding when in the MISSING state, not just the ALLHERE state.
Store messages that can't be sent now, and send any that have
accumulated when a host reconnects.  When a cref loses its last
connection, keep it around unless it has no messages stored (as will
be the case when a game ends.)
2009-11-08 21:35:39 +00:00
ehouse
2d4ae3e44a When forwarding message, lookup cref by socket if cookieID == 0, as
can be the case when through to a non-all-connected game.
2009-11-08 21:32:36 +00:00
ehouse
f6fb019732 Send to relay if connected, even if not all hosts present. And detect
duplicate initial packets a bit better.  This change goes with the
next checkin on the relay side: move to modified store-and-forward so
devices can connect at different times once the game is established.
2009-11-08 21:30:13 +00:00
ehouse
8e0dad43c7 get rid of overlogged message 2009-11-08 21:25:43 +00:00
ehouse
066c3de9a7 add to gtk version a quick -F option to use new skip-confirm feature 2009-11-08 17:25:19 +00:00
ehouse
a61d01c5ff add new global preference that allows turning off confirmation dialog
after each turn.  Meant to fix ID: 2735517 feature request on sf.net.
2009-11-08 17:00:20 +00:00
ehouse
86d6f8d0a3 script and helper for testing proposed store-and-forward relay feature. 2009-11-05 04:31:23 +00:00
ehouse
ed52582ea4 get rid of states and code for checking numbers of players -- since
any number is allowed now.
2009-11-03 05:03:20 +00:00
ehouse
3bdfda6548 Make it possible for multiple games to connect using the same room
name.  All new connections are stored together, and after each
connection an attempt is made to build one complete game with a host
and however many guests.  All remaining devices are moved into a new
pending record in the same state, and the completed game is treated as
always.  Seems to work, though nearly 20% of linux instances are
failing to connect the relay run from the new test script samename.sh.
Need to figure out why.

Also added logging of seed and connname to comms.c since games
launched together can no longer be certain to connect on the relay.
This allows the test script to identify joined games from their logs
and detect success or failure.

This checkin changes the relay protocol, so relay and clients will
both need to be upgraded.
2009-11-02 01:01:47 +00:00
ehouse
11b586cd4b lookup hearbeat recipient by socket rather then cookieID since
cookieID isn't always correct until later
2009-11-02 00:45:54 +00:00
ehouse
e65db4b8c2 use log macro rather than fprintf to stderr 2009-11-02 00:09:56 +00:00
ehouse
84ac5223b2 script to test new feature where lots of games can use the same "room"
and will just get mached up as soon as a host and right-sized set of
guests is available.  Basically works, but will never exit if any of
the games fails to exit (as is happening most times), so still need to
detect failures.
2009-11-02 00:09:11 +00:00
ehouse
7d411526d3 add .2 for consistent time formatting 2009-11-01 01:40:18 +00:00
ehouse
7a71c4636b change varible names; remove instance variable than can be on the stack. 2009-11-01 01:38:03 +00:00
ehouse
82c15f7f09 update script for b5 2009-10-25 15:09:16 +00:00
ehouse
231c0b4f44 claiming to handle EN_SETFOCUS broke text insertion for StrBox on PPC
(but not SP).  So for now, note focus changes and scroll if
appropriate but don't claim to have handled them.
2009-10-25 15:06:52 +00:00
ehouse
cfd1350dac white space only: get rid of annoying extra spaces at ends of lines. 2009-10-25 15:03:12 +00:00
ehouse
b957e9c195 Only set StrBox font on Win32. WinMo devices seem to have Unicode
font even if not localized.
2009-10-25 15:00:06 +00:00
ehouse
34032a9d0a set rem text color, which otherwise varies. 2009-10-25 14:57:42 +00:00
ehouse
fa5d36517a Track EDITTEXTs in dialogs when following focus with scroll position.
This seems to fix bug where conns dialog wouldn't scroll on
Smartphone, though I'm not sure why.
2009-10-25 00:55:19 +00:00
ehouse
32916d2918 adjustForConnType only needed when several compiled in. 2009-10-25 00:53:15 +00:00
ehouse
27c518dec4 When tray's hidden you can't see that you're in trade mode. So try
revealing the tray (and so showing the mode) before aborting trade
request due to being in trade mode.
2009-10-25 00:23:00 +00:00
ehouse
1c94e2c6cc Resource tweaks: fix blank picker for Catalan; make Polish and
Catalan trade miniwindow messages three lines for better fit; tweak
hint-limits dialogs for Catalan; re-layout Connections dialog (though
it doesn't scroll on Smartphone!)
2009-10-24 17:44:11 +00:00
ehouse
0dfdb767df dialog text only: invite->room 2009-10-24 16:35:33 +00:00
ehouse
244e0f58db Don't set address in standalone game (should fix assertion
failure/possible crash); set default menu to Undo after it's been used
once.
2009-10-24 15:12:45 +00:00
ehouse
5602827ebf Print remaining tiles in scoreboard smaller and using tile background
color in attempt to make it clearer what the number means.  The goal
is to remove clutter and make more room for player name.
2009-10-24 14:53:17 +00:00
ehouse
85da3d2082 add parens for clarity 2009-10-24 14:50:23 +00:00
ehouse
899c67f3fe ce code no longer needs to ask if dict is utf-8, as internally all
are.
2009-10-23 09:02:02 +00:00
ehouse
ab853ffb3b All dict strings are utf8, so don't ever convert using CP_ACP. Fixes
misdisplay of Spanish Ñ in tray and on board.
2009-10-23 08:56:43 +00:00
ehouse
6aca59abe0 Make state private to ceblank.c; all dict strings are utf8, so don't
ever convert using CP_ACP.  Fixes misdisplay of Spanish Ñ.
2009-10-23 08:54:54 +00:00
ehouse
8ec7b01595 fix catalan trade miniwindow by making buffer large enough to convert
text without errors.
2009-10-23 07:53:31 +00:00
ehouse
b126b8b6bf more tweaks for smartphone 2009-10-22 02:47:46 +00:00
ehouse
06cd5f5a0e tweak dialog layout 2009-10-21 03:43:20 +00:00
ehouse
a1f3d1280f Move scripts to scripts dir; build cab files in built dir along with
the files they contain.
2009-10-21 03:39:23 +00:00
ehouse
9cdb9ce45b fix to work with new pocketpc-cab, which strips an extra layer of \
from dos pathnames.
2009-10-20 04:07:16 +00:00
ehouse
cdf418b904 Don't assume resources aren't utf-8 because current dict isn't.
Always assuming they're utf-8 seems to work, so do that for now.
Fixes problems with Catalan messages when using English dict.
2009-10-17 04:14:01 +00:00
ehouse
ad2ba1c249 Don't assume resources aren't utf-8 because current dict isn't.
Always assuming they're utf-8 seems to work, so do that for now.
Fixes problems with Catalan messages when using English dict.
2009-10-17 04:10:28 +00:00
ehouse
0d326c0252 Generalize code for moving lower items up to cover hidden items, and
use for role-config and juggle buttons in gameinfo dlg.
2009-10-17 04:01:59 +00:00
ehouse
1929505c10 Make GameInfo struct private 2009-10-17 03:38:37 +00:00
ehouse
2daea90580 cleanup prefs dialog (and comment where needs translation changes to
fit)
2009-10-16 12:42:05 +00:00
ehouse
ca7038043a a few tweaks to dialog layout 2009-10-16 03:35:31 +00:00
ehouse
1fa8b2e48f remove unused param (not even compiled on Palm); on wince, try to
duplicate for timer the vertical offset used for scores.
2009-10-16 03:20:39 +00:00
ehouse
458b904280 build dlls into cabs too 2009-10-16 03:18:38 +00:00
ehouse
33903f5d61 bug fix: warn about language change when it, not prefs, changes. 2009-10-16 03:17:17 +00:00
ehouse
88e159f8a2 make executable 2009-10-16 03:16:17 +00:00
ehouse
e7af07637d latest changes from Joan 2009-10-16 03:15:47 +00:00
ehouse
f80b1d74f2 include name of player whose turn it is in scoreboard entry, reducing
length until it fits.  (Still needs polishing...)
2009-10-15 12:44:53 +00:00
ehouse
e539b49948 include name of player whose turn it is in scoreboard entry, reducing
length until it fits.
2009-10-15 12:42:07 +00:00
ehouse
e7f476c13e format last player whose turn it is, and track remaining space, so
platform code can include the name as a turn indicator.
2009-10-15 12:38:47 +00:00
ehouse
dde7cfa9b1 add a const 2009-10-15 12:37:42 +00:00
ehouse
db0c4d24a2 stop building allcaps .rc; increase beta version. 2009-10-02 05:49:49 +00:00
ehouse
5ba99f45d7 warn about need to restart to pick up language change after last
opportunity to cancel is passed.  Change wording to make sense.
2009-10-02 05:48:48 +00:00
ehouse
05928b368d indicate utf8 as codepage, which fixes Catalan resource display. Change encoding of French
to utf8 as well.
2009-10-02 05:46:51 +00:00
ehouse
c860123e0d add and use local copy of pocketpc-cab which is said to work for smartphone too. Not yet tested. 2009-10-02 05:45:23 +00:00
ehouse
dac3ecdda1 Make cestrbox state private. And set font of TEXTEDIT to one that, at
least on English-localized WINE, prevents dropping accents and other
diacriticals from Polish text (so that StrBox behaves same as
MessageBox in that regard.)  Still need to test on US and localized
Wince and with other languages (.dlls and dicts).
2009-10-01 04:15:18 +00:00
ehouse
b1faf6ac8a windres in mingw32 is broken. Add script that tests for the bug and
call from Makefile to abort if building on unpatched machine.  (Bug
report's been submitted.)
2009-10-01 04:11:36 +00:00
ehouse
1fba7d7ef6 add a couple of consts 2009-10-01 04:09:46 +00:00
ehouse
451315f2c4 change field name to Room and move to first position from third 2009-09-30 03:10:55 +00:00
ehouse
8a577909b1 restore HI_RES_AWARE resource that got lost in l10n changes. 2009-09-30 02:50:11 +00:00
ehouse
6c17c27ee1 Add first pass at Catalan translation, exactly as from translator. 2009-09-30 01:58:03 +00:00
ehouse
c2a8eddfcb Cleanup script; up versions to b4 (in anticipation :-) 2009-09-28 04:40:33 +00:00
ehouse
e1eac23a3c Break blank dialog out of palmmain and replace old macros in palmbt so
can compile debug 68K version again.  Organizational change only, no
code/behavior.
2009-09-28 03:59:59 +00:00
ehouse
c2dd21fc4a Add bitmaps for relay status on palm; refresh icon on form update. 2009-09-27 21:54:56 +00:00
ehouse
469f741991 Turn IR on again 2009-09-27 18:55:16 +00:00
ehouse
b24cab9af3 Just enough changes to get compiling on Palm again: seems to work
against the relay!  Begin process of displaying relay status via icon
reusing BT's spot.
2009-09-27 16:33:36 +00:00
ehouse
448033f722 Make compile for release builds too... 2009-09-26 18:31:33 +00:00
ehouse
9f7b5e077c Ignore async responses if handles don't match to drop outdated
requests.
2009-09-26 18:27:28 +00:00
ehouse
5e3d40a691 up wince version to beta 3 2009-09-26 14:38:23 +00:00
ehouse
0e43675abf Address problems matching [re]connections to games: first, go back to
setting connName when all in a game are present.  Second, have every
host include in connections a random number.  That number is made part
of the connName and in general used to test whether a host belongs in
a particular game.  Add this "seed" to web interface.  Means new
versions for relay protocol and game stream format.  Latter is handled
correctly so older games can be opened.
2009-09-26 14:37:49 +00:00
ehouse
edde3e2fd5 cleanup 2009-09-26 14:33:52 +00:00
ehouse
2721561324 add option to include new duplicate packets flag 2009-09-26 14:33:09 +00:00
ehouse
030ae52a4b Store start time as time_t rather than string. 2009-09-26 14:05:51 +00:00
ehouse
827f44ff48 Script to put games on relay that need partners, great for testing
with just one handheld.
2009-09-26 13:48:58 +00:00
ehouse
547c1758a9 For testing, add option to send duplicates of all packets 2009-09-26 13:47:51 +00:00
ehouse
881639c230 fix null ptr exception using null engine. Logic error was not exposed
earlier because except in multi-device game the UI would not allow you
to ask an engine-less robot player for a hint.
2009-09-25 10:17:35 +00:00
ehouse
17cbbe563f replace remaining binary bmps with ascii pgms 2009-09-24 04:37:59 +00:00
ehouse
91ccf3bac5 Replace four bitmaps with one drawn on top of background of green and
red based on connection progress.  Store the bitmap as a pgm, and
generate the .bmp from it at build time.
2009-09-24 04:26:28 +00:00
ehouse
ef8c85734e don't send on disconnect unless connected 2009-09-22 03:50:37 +00:00
ehouse
98e175965d Replace letters as indicators of network status with icons. So far
just rects that change from red to green as we connect -- which could
be done in less space by painting.
2009-09-22 03:49:26 +00:00
ehouse
086d480fe3 cleanup 2009-09-22 03:47:21 +00:00
ehouse
6e276510eb More tweaks from across the pond. 2009-09-22 03:46:04 +00:00
ehouse
6008633712 No link as part of dll .cab 2009-09-22 03:42:29 +00:00
ehouse
b1352f013c prepend Test_ to cookie/room name 2009-09-22 03:38:43 +00:00
ehouse
0395c5d26f b1 -> b2 2009-09-21 12:49:57 +00:00
ehouse
a13e1d6488 add util_clearTimer, implement on all platforms, and call when closing
comms to fix crash on Wince when timer fired after comms had been
deleted.  The closure stored and passed in was no longer a valid ptr.
2009-09-21 12:49:08 +00:00
ehouse
f8848321c4 Didn't mean to check in not deleting tmp files 2009-09-21 12:46:36 +00:00
ehouse
63fc1e048a Fix crash going from connected to standalone game: don't invoke sockrw
code when its "self" is null.
2009-09-20 22:23:56 +00:00
ehouse
5fa3e2209c build .cabs for .dlls (based on same for .exes) 2009-09-20 21:55:31 +00:00
ehouse
a91fd28773 fix some warnings when building linux client without debugging but
with warnings as errors.
2009-09-20 21:51:29 +00:00
ehouse
e8b372c274 fix more release build unused var warnings 2009-09-20 21:11:58 +00:00
ehouse
7d48ad714f fix some warnings when building without debugging 2009-09-20 20:49:37 +00:00
ehouse
52055d6334 add USE_CURSES to help 2009-09-20 20:48:05 +00:00
ehouse
a3b326205a Do a better job of handling failure to connect or loss of connection:
look for errors coming with FD_CONNECT message, look for FD_CLOSE
message, and inform relay when connection is lost so its reconnect
logic is triggered.  This seems at least to handle the case where I
kill the relay mid-game.
2009-09-20 19:00:54 +00:00
ehouse
cd2da3b1c3 Let's call this beta rather than alpha in first release: it's solid. 2009-09-20 18:58:40 +00:00
ehouse
ad2cf1a7ea Tweaks prior to sending to new translator 2009-09-20 18:58:05 +00:00
ehouse
b219e8b279 Send notification when device disconnnects without closing socket (in
addition to the existing one sent when a socket is closed).
2009-09-20 18:47:47 +00:00
ehouse
1da25307e5 Display relay state on board, horizontal scoreboard mode only for now. 2009-09-20 18:45:25 +00:00
ehouse
a5556469ef fix timer formatting 2009-09-20 05:00:23 +00:00
ehouse
250e223a20 add bqRemoveAll 2009-09-19 21:28:07 +00:00
ehouse
ffacbcb36a Move "For" column left. 2009-09-19 04:59:19 +00:00
ehouse
765a36508e Fix so can really be the main language; two static labels shouldn't
have been in Polish.
2009-09-19 04:46:11 +00:00
ehouse
f1b355b1ce Move english resources into l10n directory, and change build so that
any of the languges can be the one built-in and english can be in a
.dll.  English can now serve as a template for translation.
2009-09-19 04:16:19 +00:00
ehouse
45bdccd4e8 Format time more compactly 2009-09-18 03:50:01 +00:00
ehouse
cfad371bb6 use D-A instead of arbitrary letters for conn state -- which will be icons soon anyway. 2009-09-17 03:49:25 +00:00
ehouse
048dccebae Don't force conns dialog open on new game. 2009-09-17 03:48:45 +00:00
ehouse
1117e76f64 Invite->Room; tweak some phrases 2009-09-17 03:45:13 +00:00
ehouse
a9e8f5b493 shorten column headings; don't assign cid until game is full. 2009-09-17 03:42:12 +00:00
ehouse
e8ae5e43ad don't timeout games just because they're set to sleep a long time between moves. 2009-09-17 03:41:08 +00:00
ehouse
283a249548 More tweaks from translator 2009-09-16 03:50:16 +00:00
ehouse
4ce9a87be5 Use new relay status callback, and similar callback added to socket
read/writer, to provide connection status beside scoreboard (in area
outside that managed by code in common/).  Simple letters now, it'll
be icons eventually.
2009-09-15 13:04:34 +00:00
ehouse
d5d20293ce print log timestamps with padding 0s for better sorting 2009-09-15 12:54:40 +00:00
ehouse
135048a3cf Extend name change to relay's web interface 2009-09-14 03:31:54 +00:00
ehouse
18e9301e87 rename Cookie to Invite, a change that may change. Rename everywhere
in clients but not in relay where cookie is too pervasive.  (There are
no code changes in this checkin.)
2009-09-14 03:11:11 +00:00
ehouse
6603949b0e Fix bug where device quitting one game to start another with same
cookie winds up connecting to the old game -- by flagging a cref as
full and no longer accepting connections without connNames even when
in the MISSING state.  Required a protocol changes so that devices get
their connNames as early as possible.
2009-09-14 01:55:03 +00:00
ehouse
7eeede45c3 exit if unable to open socket 2009-09-13 15:27:19 +00:00
ehouse
b42e1adb0a New phrase and tweaks from translator, including shortening that
allows reverting color dialog changes; change xWords->Crosswords for
consistency.
2009-09-13 14:47:50 +00:00
ehouse
535e97b855 replace array of indices with array of ptrs for faster & smaller code 2009-09-13 05:28:12 +00:00
ehouse
49ac5d10a2 fix lookup of "special" char strings: Spanish and Catalan apparently
displayed properly since I merged the unicode changes in.
2009-09-13 04:57:44 +00:00
ehouse
5c95c7b603 fix wince to compile with new APIs 2009-09-12 23:31:48 +00:00
ehouse
f83f6d64ed drop a bit of logging 2009-09-12 23:17:04 +00:00
ehouse
6c4b991566 Modify comms and games APIs so single struct of callbacks is passed
instead of multiple callbacks; add callback called when relay state
changes; adapt linux and palm clients to new API.  (Wince changes
pending.)
2009-09-12 21:39:13 +00:00
ehouse
86b560c441 fix to compile on palm: accomodate old compiler and new dict struct
fields.  Network play against relay works!
2009-09-12 15:35:03 +00:00
ehouse
f1e27d4945 Don't bother calculating gameID as common code does it. 2009-09-12 15:10:10 +00:00
ehouse
85f9ac8598 revert to iso_8859-2 until have time to figure out why utf-8 doesn't
convert correctly (though it does for Polish)
2009-09-12 15:05:26 +00:00
ehouse
f0737e1356 prevent label overlap 2009-09-12 04:23:53 +00:00
ehouse
d0127c503a fix some allcaps; mark what needs tranlation. 2009-09-11 07:49:19 +00:00
ehouse
35449825bc Add new error string; convert to utf-8. 2009-09-11 07:45:14 +00:00
ehouse
2f0ec7e583 fix some string display bugs by using utf8 when converting; handle
Resend Messages menuitem (with error when standalone); add string for
that new error.
2009-09-11 07:44:27 +00:00
ehouse
df9b7bea2b More translations. 2009-09-11 07:05:31 +00:00
ehouse
448ea05443 Start adding logging to sockets code... 2009-09-07 18:23:49 +00:00
ehouse
03eeb93925 Prefs file is created HIDDEN; open it that way too. 2009-09-07 18:22:52 +00:00
ehouse
4e8d340304 Don't re-open conns dlg if in standalone mode 2009-09-07 16:55:54 +00:00
ehouse
13e50dd149 when only one conn mode available localized versions shouldn't show
choice either
2009-09-07 16:46:55 +00:00
ehouse
e8825e119c add comment re: stream format non-change for utf-8 2009-09-05 13:14:42 +00:00
ehouse
615603b66b Add define set to number of conn types compiled in; use it to compile
out conn type choice where there's only one (none to be made).  Refuse
to dismiss conns dialog when cookie not chosen.
2009-09-05 13:08:46 +00:00
ehouse
8ddc8612a8 experimental CC def should not have been checked in 2009-09-05 13:00:35 +00:00
ehouse
044c38e02f change formatting, variable name 2009-09-04 12:32:16 +00:00
ehouse
1c865eb2cc static linking for recent cegcc; don't ask mingw windres to do utf8 2009-09-04 12:31:15 +00:00
ehouse
3a1c2572dd Merge in unicode changes to read in utf-8 dictionary format 2009-09-04 12:30:10 +00:00
ehouse
c010a73098 copy over tall-narrow game info dialog layout from other .rc files 2009-09-04 12:18:46 +00:00
ehouse
7ca629a2f5 don't log socket closing as an error 2009-09-04 11:02:09 +00:00
ehouse
8acbe2c08f Don't sort tiles in blank picker! 2009-09-01 13:59:45 +00:00
ehouse
f72a8a5904 updates from translator 2009-09-01 12:41:56 +00:00
ehouse
188eea4646 Try again if fail to connect to relay. 2009-08-30 15:25:13 +00:00
ehouse
6827ab5d88 Unify signal handlers that do same thing; clean memory leaks and a
double-dispose.
2009-08-30 15:23:05 +00:00
ehouse
dd666472a3 Fix compiler warning in non-debug case. 2009-08-30 15:20:18 +00:00
ehouse
95a70862be Lock cref before calling method that assumes lock. 2009-08-30 15:18:40 +00:00
ehouse
2a569df97f For privacy, don't show host IP unless connection is local. 2009-08-30 15:16:06 +00:00
ehouse
1d2bd69251 Some fixup, e.g. missing or duplicated IDs, left from merge. 2009-08-29 16:10:56 +00:00
ehouse
1c8147c21c Tweak to support non-ascii utf-8 chars from dicts. Seems to display
Catalan and Polish fine (on board.)
2009-08-29 16:09:58 +00:00
ehouse
d86d2b556a Tweak to support non-ascii utf-8 chars from dicts. Seems to display
Catalan and Polish fine (on board.)
2009-08-29 16:09:24 +00:00
ehouse
9ae95366eb merge in changes from 2546 to current HEAD on wince_42_branch to catch up with localizability. Tested only on win32 so far, where can switch locales and play via relay 2009-08-29 13:37:37 +00:00
ehouse
6a36c045b6 fix wince compile error 2009-08-29 13:06:48 +00:00
ehouse
d29b048504 timeout games after five minutes no matter what 2009-08-23 15:35:47 +00:00
ehouse
b15665e041 serve http view from cached data and make cache refresh rate
configurable.  Should make it harder to attack the relay on http port.
2009-08-21 12:32:57 +00:00
ehouse
537de614b9 remove timer assert; log socket errors 2009-08-21 12:15:40 +00:00
ehouse
dbf9daf71b Fix problems reconnecting hosts where some but not all received the
ALLHERE message and connName: change relay protocol so cookie is
included in RECONNECT message, and hostIDs are not assigned until
ALLHERE, and change host-to-game matching to use connName first but
fall back to cookie.  This fixes nearly all cases failing to reconnect
after relay goes down.
2009-08-21 12:00:09 +00:00
ehouse
f5f5df990e Drive hosts launched from list of local roles in anticipation of
splitting tests between machines.
2009-08-21 03:31:34 +00:00
ehouse
493d3c226f log when crash 2009-08-20 12:12:43 +00:00
ehouse
1264cacdc1 when one participant in a game crashes kill the rest so another can
begin.
2009-08-20 11:56:33 +00:00
ehouse
53133839a4 don't log list of sockets by default 2009-08-20 03:50:40 +00:00
ehouse
e96becb05f variable name change only (for clarity) 2009-08-13 12:59:55 +00:00
ehouse
522bd8636d include timestamp in "game finished ok" output 2009-07-31 13:04:37 +00:00
ehouse
e746e2bc5b Fix assertion failures 2009-07-31 13:03:38 +00:00
ehouse
fbd3559e3b Fix assertion failures 2009-07-31 13:03:05 +00:00
ehouse
47d6d53419 make log file location configurable; remember start time as used for
permenent IDs on spawn rather than overall boot to avoid duplicating
cids.
2009-07-31 13:02:05 +00:00
ehouse
7077a11af6 pass .css file 2009-07-31 12:58:47 +00:00
ehouse
acbf8180ef add missing lock(); track and display uptime of daemon child as well as parent 2009-07-31 12:56:04 +00:00
ehouse
80ccdd6d04 spelling... 2009-07-31 12:47:58 +00:00
ehouse
f537169db5 Assign 0 not NULL to pthread variables. 2009-07-31 12:43:04 +00:00
ehouse
bcc887c0b1 Need to remove before inserting. Todo: is there a replace? 2009-07-31 12:39:47 +00:00
ehouse
503db9cc6f up copyright 2009-07-30 12:54:17 +00:00
ehouse
f35f2fe696 add css file path 2009-07-30 12:52:05 +00:00
ehouse
ba97f096dc make css file for http interface configurable; fix bug where
connections arriving too close together would wind up with different
crefs (using new mutex).
2009-07-30 12:49:21 +00:00
ehouse
631bf4b179 write to named file for use on ISP from cron 2009-07-30 12:46:40 +00:00
ehouse
2641ab6430 bug fix: mark after locking so will unlock in destructor 2009-07-30 12:39:45 +00:00
ehouse
7338a706cb option to randomly kill xwords instances 2009-07-29 04:31:23 +00:00
ehouse
192fb50bf8 add SIGINT handler that calls quit (to save files). Listen for errors in poll. 2009-07-29 04:29:29 +00:00
ehouse
4a5d74a0af rename state to take up less space in browser; add number of respawns
to status display.
2009-07-29 04:25:21 +00:00
ehouse
8be31357ad track per-cref lifetime and display it via http 2009-07-28 05:41:15 +00:00
ehouse
9ab746d8ac Include strerror output in a few socket-related error messages. 2009-07-28 05:17:44 +00:00
ehouse
8284799abe Fix crashes resulting from deleting cref instances in one thread while
another wanted to operate on them.  The root problem is that you can't
dispose of a mutex while somebody's blocking on it.  So now the
locking mutexes live inside the cref class.  When the lock owner
realizes the cref needs to die, it sets a flag and it's moved to a
recycled list.  A thread blocking on the mutex will then get it, but
checks the flag and releases it immediately if it's being recycled.
(Also improve the http interface a bit.)  With these changes I've run
31K (and counting) games against the relay without a crash or deadlock
(using sim_real.sh.)  The main problem that remains is that sometimes
two games using the same cookie wind up with two crefs (and so never
connect.)
2009-07-28 05:15:26 +00:00
ehouse
0d03ed71bb cleanup 2009-07-28 05:09:24 +00:00
ehouse
6b1cf247bf Don't alloc storage for fds and log buffer each time through poll
loop; instead reuse and realloc when needs to grow.
2009-07-28 05:08:15 +00:00
ehouse
8c7c457a54 shorten state names so they take up less webpage space. 2009-07-28 05:06:25 +00:00
ehouse
62b7d3c3a4 Clean up gtk case and fix post-game log checking. 2009-07-28 05:02:09 +00:00
ehouse
3b62e04d07 don't use -lmcheck. It causes a lot of crashes in places where it
certainly looks as if nothing is wrong.
2009-07-28 05:00:18 +00:00
ehouse
dddd5e1dd8 clean up logging. I got some cores that suggest overflow. This fixes
that if indeed it was happening.  Problems with sockets disappearing
while in poll may remain.
2009-07-16 04:43:33 +00:00
ehouse
19cff0f7c5 make all game ids (cookies) unique; fix success test 2009-07-16 04:36:30 +00:00
ehouse
0a0d4804dd store keys and values as const char* instead of string since the
string code was involved in a lot of crashes.
2009-07-16 04:23:02 +00:00
ehouse
8a0d963c95 include abbreviated uptime in stat row 2009-07-16 02:56:25 +00:00
ehouse
c5e73fd725 Add to http display number of games currently being hosted. 2009-07-13 03:01:22 +00:00
ehouse
582eb88f9a int->bool 2009-07-13 02:58:16 +00:00
ehouse
fed0458f2e various improvements. Runs games forever now, though exit is clumsy. 2009-07-13 02:57:41 +00:00
ehouse
d7cd277893 Add option to close stdin on startup, which seems required to run
curses version from script.  There's probably a better way...
2009-07-12 01:32:14 +00:00
ehouse
df293db349 script to run lots of games with events at more natural intervals against relay. 2009-07-12 01:18:09 +00:00
ehouse
4c523b628c Make slow-robot work for curses client too. 2009-07-10 05:04:04 +00:00
ehouse
184a154c52 New feature, meant for testing relay, makes robot skip random number
of seconds within specified range before making a move.  Working only
on gtk so far, and will probably never be used other than on linux
clients.
2009-07-09 12:43:51 +00:00
ehouse
854b3d9349 use synchronized method to add map entries 2009-07-06 02:02:59 +00:00
ehouse
2ef16d44ca Include number of games played in html output; don't report closed
sockets found while reporting closed sockets (to avoid deadlock);
remove sockets from crefmgr's map when closing them so new connections
using same (re-used) socket aren't treated as belonging to open games.
2009-07-06 01:50:51 +00:00
ehouse
a680a6e5fe Always close sockets we're done with. Otherwise they leak -- don't get reused. 2009-07-06 01:32:30 +00:00
ehouse
37dc9b7b88 running under valgrind I need to handle SIGPIPE. 2009-07-06 01:31:16 +00:00
ehouse
7893c2066a get rid of gratuitous echo 2009-07-05 01:46:27 +00:00
ehouse
c0073183ba improve relay test script to better run in a loop. 2009-07-03 14:55:20 +00:00
ehouse
f4db39f490 synchronize reads of std::map to fix crash due to memory corruption.
Apparently containers aren't thread-safe even for reads.
2009-07-03 14:54:21 +00:00
ehouse
a954286960 avoid mempool assertions by cleaning up on way out 2009-06-30 12:55:47 +00:00
ehouse
9b29e45ea4 plug valgrind-found leak; prefer localtime_r. 2009-06-29 12:58:30 +00:00
ehouse
c347bbd963 tweak new game dialog 2009-05-01 04:36:58 +00:00
ehouse
e19e8411cb fix compilation error 2009-05-01 04:29:13 +00:00
ehouse
927c363edf Move more (hopefully this is it) strings into resources; make sure all
three .rc files have all strings.
2009-04-30 04:25:17 +00:00
ehouse
ce09a83b12 script to check that .rc files have all expected ids defined 2009-04-30 04:20:30 +00:00
ehouse
ee2e1e1234 Move another string from code into resources. 2009-04-26 20:21:21 +00:00
ehouse
0c5088192d remove logging 2009-04-26 20:20:14 +00:00
ehouse
e4977e2c5f Add ability to scroll dialogs by dragging. Works only on
touchscreens, and has no sense of momentum.
2009-04-26 20:10:28 +00:00
ehouse
eb5ee8431b check string ids back in rather than generating; move macro from .rc
file into new .h all can include; use XWCOMBO more; build shippable
files in new built directory within obj_*; don't tell windres that
french is english.
2009-04-24 05:36:31 +00:00
ehouse
6638b251e0 Give all labels real IDs so can be moved; flesh out locale picker
dialog; add macro to replace listbox/combo triplet; rename some ids.
2009-04-23 12:37:07 +00:00
ehouse
568c75ba9a list dlls by name rather than pattern 2009-04-23 12:31:03 +00:00
ehouse
e573fa4fb5 add missing include 2009-04-23 12:12:57 +00:00
ehouse
3ae06069b4 Fix typo 2009-04-22 12:50:31 +00:00
ehouse
efe9fdf974 When resize dialog, put half the now-wider right margin on the left. 2009-04-21 12:42:51 +00:00
ehouse
984ec5934b get rid of translate comments. no code change. 2009-04-21 04:44:30 +00:00
ehouse
d06ade3cd7 Tweak resource layout to fit French translations better. 2009-04-21 04:29:37 +00:00
ehouse
173b49c2e2 Latest French translations; copyright catchup. 2009-04-19 17:36:28 +00:00
ehouse
c5ade1431a Move a few more strings into resources. 2009-04-19 17:34:14 +00:00
ehouse
481e2acb92 Add dialog for choosing localization .dll; save choice in prefs and open on boot. 2009-04-19 17:33:39 +00:00
ehouse
a7bf9f611d strip .dlls for size -- and since this seems to work around cegcc's problem with winmo 6.1 2009-04-19 17:12:55 +00:00
ehouse
8d6150e025 First cut from translator. 2009-04-14 03:38:33 +00:00
ehouse
80b9fde2da Starting point for French translation. 2009-04-14 03:34:41 +00:00
ehouse
51b0fd5e4e Changes to use .dll on wince: create window, which creates its menu,
after loading prefs since that's where language pref will be stored.
But for now, hard-code to load French so translator can see it
immediately.  Also, create l10n directory in which localized .rc files
will live and modify Make file to .dlls from all.
2009-04-14 03:33:46 +00:00
ehouse
76c0a518f1 change -j to -j3. No code change. 2009-04-14 03:27:32 +00:00
ehouse
61fc087c5d annotate template for translators. No code change. 2009-04-11 16:49:04 +00:00
ehouse
d19f052503 Track HINSTANCE of localization .dll separately, passing it where
appropriate; move rest (I think) of strings into resource; load menu
for win32 app after loading localization .dll.
2009-04-11 15:45:59 +00:00
ehouse
be7fe94650 add more strings 2009-04-11 15:41:40 +00:00
ehouse
aeb6d94248 generate string resource IDs from a list to avoid the trouble of keeping them sequential. 2009-04-11 15:40:19 +00:00
ehouse
d5afc6f252 generate string resource IDs from a list to avoid the trouble of keeping them sequential. 2009-04-11 15:40:01 +00:00
ehouse
848ccaaff7 remove resources (e.g. colors) that don't need localization; add more strings. 2009-04-11 15:38:40 +00:00
ehouse
2727cacae0 Start factoring out strings for localization: move most to resource,
add new file that loads resources (working around LoadString not
working as docs say it should).  Add all-caps version for testing and
not-yet-working cmdline change to use it.
2009-04-09 13:48:38 +00:00
ehouse
9df574b6f6 Fix to compile (and so dicts are read into new internal format) on Palm. 2009-04-07 04:33:47 +00:00
ehouse
669e423ca8 Use new dict API to get rid of XP_UCHAR4 type, replacing with const XP_UCHAR*. 2009-04-07 04:23:56 +00:00
ehouse
2838f421a5 fix a couple of null ptr exceptions 2009-04-05 23:48:33 +00:00
ehouse
7b5259a5c0 Use simpler API (no behavior change; not utf-8 related). 2009-04-05 20:19:29 +00:00
ehouse
f3b53e4aaf When dict is utf8, convert to wchar_t assuming CP_UTF8 rather than CP_ACP. 2009-04-05 20:18:46 +00:00
ehouse
f0d6dda9dd A couple of new types for xp code dealing with utf8. 2009-04-05 19:27:30 +00:00
ehouse
241b24c862 Read new dicts and old into new format. 2009-04-05 19:24:10 +00:00
ehouse
a9b88d95b2 Read new dicts and old into new format. 2009-04-05 19:22:55 +00:00
ehouse
641ae18864 Use new dict api to support utf8 faces. 2009-04-05 19:20:22 +00:00
ehouse
9f6114fb9e don't cast. 2009-04-05 19:18:47 +00:00
ehouse
96cfd7c7dd New stream version: dict sent over wire has faces as utf8 (unless dict is not.) 2009-04-05 19:16:52 +00:00
ehouse
38a23ba74f Begin changes for utf8 support (mostly from unicode_branch). Dict now
provides tiles as null-terminated const strings ptrs to which can be
passed and stored.  They're utf8 strings.  Old dicts still work,
platform must convert to utf8 on load.
2009-04-05 19:02:21 +00:00
ehouse
4a308f4f8e Don't use unitialized variables (thanks valgrind :-) 2009-04-05 18:47:45 +00:00
ehouse
b63c75f36e use libncursesw 2009-04-05 18:35:51 +00:00
ehouse
926f5963a3 rename only: stream_putString to stream_catString. 2009-03-29 18:26:59 +00:00
ehouse
8dca48b3ea Useful ftell, commented out. 2009-03-29 18:13:09 +00:00
ehouse
9e5b3f8f29 Changes to fix BYOD (though still need native speaker confirmation) 2009-03-14 22:33:53 +00:00
ehouse
690bf80b7b Fix so can build iso-8859-2 Polish dicts using make (won't work on
BYOD yet): add encoding to emacs mode line and fix the letters,
including hard-coding them as decimal numbers until I can figure out
how to get perl (in xloc.pm) to emit iso-8859-2 instead of utf8.
2009-03-14 19:27:29 +00:00
ehouse
0b0bf96cd5 accept ISO-8859-2; remove unused param; add assert that EOF/EOL aren't
part of a multibyte char
2009-03-14 19:22:15 +00:00
ehouse
b16a07d0ba build dict2dawg with debug symbols 2009-03-14 19:21:09 +00:00
ehouse
fbe95478ba rename now() as uptime(); drop NTHREADS to 1 for now; include time of
server boot in connName and keep counter in memory rather than a file.
2009-03-10 12:52:17 +00:00
ehouse
f9e6c5631d Move WSACleanup into main where it can be called once per launch
rather than per use of relay, parallel to WSAStartup.
2009-03-08 20:01:47 +00:00
ehouse
f874183475 Use nwgamest support for separate config button beside role combo, and
remove hack responding to tap (without change) on that combo.
2009-03-08 20:00:20 +00:00
ehouse
cb72b3ffef call gi_initPlayerInfo() for defaults when not provided on commandline. 2009-03-08 19:57:27 +00:00
ehouse
53fca87b10 Go back to combo box for role, and add config button beside it using new support in nwgamest. 2009-03-08 19:56:48 +00:00
ehouse
de4c57e740 include strerror output in logging when socket read fails 2009-03-08 19:56:01 +00:00
ehouse
d7eaa8e574 Add functions names to log statements. 2009-03-08 19:54:50 +00:00
ehouse
4e1155583f Add support for a config button as a cleaner alternative to launching
comms config dialogs on changes to host type (which often involved
platform-specific hackery to trigger the dialog when user doesn't want
to change role)
2009-03-08 19:54:14 +00:00
ehouse
f598340239 relay name defaults to eehouse.org, easier to set at compile time for testing 2009-03-08 19:47:36 +00:00
ehouse
4909ae0137 Close down relay connection when comms going away. Fixes crashes when
new game is standalone and prev used relay.  Add logging code in comms.
2009-03-06 13:43:03 +00:00
ehouse
8fd1d5b2a9 cleanup for new compiler: -D option, winsock2.h, fix warning 2009-03-06 04:53:56 +00:00
ehouse
44ef132d85 swprintf->_snwprintf to make newer cegcc happy 2009-03-06 04:52:06 +00:00
ehouse
1b49a26736 do loglevel and ports via the general-purpose config mech. No special
cases remain.
2009-03-05 13:49:01 +00:00
ehouse
3469dc7bf3 Make refresh interval configurable. 2009-03-02 05:29:06 +00:00
ehouse
6b3265ac47 Change config class from having a method for every configurable value
to returing values for string keys so adding a new config doesn't mean
modifying that class.  Then add new config for addr passed to bind so
relay can be run to accept http connections from remote machines.
2009-03-02 01:50:14 +00:00
ehouse
dbec991e9a use PID as cookie so creation order visible on relay during testing 2009-03-02 01:46:10 +00:00
ehouse
14cb742b38 don't pass wrong proc ptr 2009-03-02 01:45:16 +00:00
ehouse
9a8abb770d in web console list hosts present rather than just the count 2009-02-28 19:35:32 +00:00
ehouse
213c66b391 Reset all relay-related variable on new game. Fixes bug where devices
couldn't switch roles or join a new game.
2009-02-28 19:27:45 +00:00
ehouse
61c07ba1a3 Make all of a non-server's players local. 2009-02-28 19:25:46 +00:00
ehouse
acb37fda4f fix checkServerRole which was incorrectly counting players in client
case.
2009-02-28 19:25:08 +00:00
ehouse
aa48b4c3ed plug memory leak by closing relay socket when quitting 2009-02-28 19:19:42 +00:00
ehouse
3f01c9129e Lots of changes to make gtk version better test with relay: make
possible to start without specifying comms params, to switch roles
and/or number of players when starting new game; clean up dialogs,
esp. use notebook widget to have tab switch between comms types.
2009-02-28 18:52:44 +00:00
ehouse
c2b34e459d include pid in log for better multi-device debugging 2009-02-28 18:50:21 +00:00
ehouse
13415e895e test script, first draft. 2009-02-28 16:31:34 +00:00
ehouse
46cb6c2955 fix assertion on exit: nuke mempool after everything it contains; call
gtk_main_quit rather than gtk_exit() so can exit from main()
2009-02-28 16:31:03 +00:00
ehouse
3bf116c936 Add an http interface (read-only web console). 2009-02-28 16:15:59 +00:00
ehouse
21d4203fe2 Empty out queue and use existing code to re-add elems we want to keep.
Candidate for 4.2.
2009-02-28 16:11:09 +00:00
ehouse
9abb637330 assert queue ok after deleting. Candidate for moving to 4.2 branch if
to be used for Palm.
2009-02-28 15:06:12 +00:00
ehouse
233bf5ffde Fix crasher: removing ACK'd messages left list in inconsistent state.
Candidate for moving to 4.2 branch if to be used for Palm.
2009-02-28 14:40:50 +00:00
ehouse
9cb1f8ab59 minimal test for comparing cegcc versions 2009-02-25 03:45:14 +00:00
ehouse
bac17d8c1e start adding conns dialog 2009-02-24 04:34:37 +00:00
ehouse
8d1289d3b7 Create type to hold array rather than passing array whose lenght is assumed. 2009-02-23 04:01:15 +00:00
ehouse
03c806e961 add tarball target to help 2009-02-21 17:15:09 +00:00
ehouse
b2112371b2 Make it possible to see comms dialog in read-only mode when role
selector is disabled (for game info use of new game dialog.)
2009-02-21 17:03:30 +00:00
ehouse
317b3cbfaf Toward a palm build whose only comms mode is relay (no IR, which was
always default.)  Plays half a robot-robot game via relay as client --
that is, debugging remains.
2009-02-17 05:54:28 +00:00
ehouse
44a3888d6d Add enum to debug-only logging. 2009-02-14 16:24:06 +00:00
ehouse
fb3d4cf2ba Draw arrow only if inval bit set and cell is otherwise unoccupied.
Fixes wince bug where tile dragged onto arrow disappears.  Should be
merged to 4.2 branch.
2009-02-14 16:23:18 +00:00
ehouse
2be682b4e9 Use new bufqueue util 2009-02-09 02:51:43 +00:00
ehouse
b2acdbae91 Add simple helper for keeping a queue of buffers in a single array. 2009-02-09 02:44:58 +00:00
ehouse
9ce82a7c94 fix leak of packet buffers; get rid of multithread code. 2009-02-07 18:20:16 +00:00
ehouse
326e57e742 commented-out setting of default relay host name 2009-02-07 18:18:24 +00:00
ehouse
644dc3b5ad detect duplicate initial connect packets by checking what socket they're on. 2009-02-07 18:17:17 +00:00
ehouse
80b3425b5b log size of incoming packets 2009-02-07 18:15:17 +00:00
ehouse
43982e1a07 validate initial message correctly when comms heartbeat not being
used; improve logging.
2009-02-07 18:14:28 +00:00
ehouse
42b314966b If platform doesn't provide a game id, use current seconds. 2009-02-07 18:12:46 +00:00
ehouse
5a5cba9d1b Handle case where packet contains several messages; attempt to send on
socket-writable and on receiving message to be sent; cleanup.  With
this change full robot-vs-robot game has worked over relay, but not
reliably.  I think it's the relay's fault.  Still tested only on Win32.
2009-02-01 16:46:00 +00:00
ehouse
8d1da3ee0e Put back code initiating connection when starting client game. 2009-02-01 16:43:01 +00:00
ehouse
53b27c96c9 Helps to compile platforms too before checking in... 2009-02-01 16:20:18 +00:00
ehouse
46f72de960 new files into svn:ignore 2009-02-01 16:03:31 +00:00
ehouse
1ac4ef3bc6 Attempt to detect connections that are duplicates by checking if that
socket is already in a connection.  This doesn't seem to always work,
and I may be leaking cref instances when it does, so needs debugging
still.
2009-02-01 16:00:20 +00:00
ehouse
6ba2032187 clean up event logging 2009-02-01 15:55:45 +00:00
ehouse
c672fcfafd Make it possible to run same binary against relay with relay heartbeat
and direct with comms heartbeat.  This mostly means changing ifdefs.
2009-02-01 15:50:58 +00:00
ehouse
1a99dc7e1c Beginning of rewrite of socket code for communication with relay,
replacing dedicated threads for read and write with non-blocking
sockets driven from the main window proc.  So far it can do a
round-trip against the relay on win32, and compiles but isn't tested
on wince.
2009-01-31 18:06:09 +00:00
ehouse
9e7144d8c9 comment about APIs to use for implementation (probably the last checkin of this file.) 2009-01-31 18:03:06 +00:00
ehouse
0d08147472 Turn off SMS by default (pending confirming a way to use the apis in unsigned app); add commented-out NO_DRAW option. 2009-01-31 18:02:02 +00:00
ehouse
b9dce19a93 if setlocale doesn't work, try again with en_US -- works around
problem on my ISP.
2009-01-28 03:32:21 +00:00
ehouse
3a643c51a4 cleanup; set locale based on ENV 2009-01-25 20:31:13 +00:00
ehouse
b7fa674c28 Set locale based on params passed in, only on ENV if not specified. 2009-01-25 20:13:36 +00:00
ehouse
90f8a276e1 Cleanup to run on a machine that's utf8: specify iso-8859-1 when needed. 2009-01-25 18:57:05 +00:00
ehouse
f6d8924593 make tarball ready to be dropped into byod 2009-01-25 18:48:29 +00:00
ehouse
b2dd3f02b0 Need to escape period in grep pattern to get literal dot! 2009-01-22 04:30:35 +00:00
ehouse
24622876bb change default dictionary 2009-01-21 05:36:43 +00:00
ehouse
c2f1ff3d06 smartphone-size small bitmaps 2009-01-21 05:25:43 +00:00
ehouse
52a4a92e14 If smallest bitmap is too big, use it anyway at full size. 2009-01-18 19:52:46 +00:00
ehouse
50a6f93b99 Pick largest possible bitmap; fix inconsistency between cedict's idea
of bitmap format and cedraw's: rows are padded to 8-bit boundary, not
necessarily 16-bit.
2009-01-18 18:29:27 +00:00
ehouse
f422305542 Make smaller bitmaps 8x8 since that's the smallest size that can be
required and StretchBlt to smaller can't work for letters.
2009-01-18 18:25:33 +00:00
ehouse
06632f5495 get rid of excess logging (one line) 2009-01-18 18:17:08 +00:00
ehouse
ac1a88f603 Add __func__ to what's tracked for allocation in debug builds 2009-01-18 16:37:44 +00:00
ehouse
e1bc780beb In tray, when values are hidden draw letters instead of bitmap if
they'll fit.
2009-01-17 20:30:49 +00:00
ehouse
e6132b3dde Scale bitmaps for specials to the size of an M so they look right next
to other letters.
2009-01-17 18:49:35 +00:00
ehouse
dd1f9aa8ca Include function name in assertion failure message; always print to
file before putting up warning.
2009-01-17 18:44:45 +00:00
ehouse
d58d9bedd7 return TRUE after handling WM_INITDIALOG 2009-01-17 18:41:15 +00:00
ehouse
702940fe06 Tweaks to bitmaps; build for wince by default 2009-01-17 18:39:08 +00:00
ehouse
c754726b0f Don't pass valid bitmaps ptr when drawing blank tile. 2009-01-17 18:24:18 +00:00
ehouse
2e488374f1 bug fix: fix reversed width and height params to StretchBlt 2009-01-17 15:45:24 +00:00
ehouse
a56d84b64d add emacs mode line 2009-01-14 13:41:25 +00:00
ehouse
08ceeb85b7 Fix size test for bitmap caching 2009-01-14 13:27:56 +00:00
ehouse
21f5f329a0 Get rid of bogus assert 2009-01-14 13:02:38 +00:00
ehouse
8aadcb3406 Get rid of unused parameter 2009-01-14 13:02:08 +00:00
ehouse
5505c435a2 Don't pass new bitmaps struct to draw code uninitialized 2009-01-14 12:51:55 +00:00
ehouse
09c879dccc Add sms support, largely untested. 2009-01-13 13:33:56 +00:00
ehouse
41ae10f8b6 Allow language Makefile to specify encoding. Pass to perl and c++
dict builders, using it to open files and to determine whether to do
multi-to-wide conversion.
2009-01-13 13:32:07 +00:00
ehouse
7b8e4e0fd3 Add target to build all languages. Stops on Swedish at the moment. 2009-01-13 13:19:15 +00:00
ehouse
4e619601c2 To support Catalan, add Makefile and bitmaps for three special tiles.
The first of these, L-high-dot-L, requires Unicode to be properly
drawn, but the current dict format doesn't support it so it'll be L-L
for now.  Bitmaps are still rough.
2009-01-13 13:17:58 +00:00
ehouse
aee316372e Use new api. Use small for cell and large for tile still, but now
create and cache an actual HBITMAP, and prefer it to letters.  This is
needed for Catalan where "L-L" will never fit.  Still to be done:
prefer letters to bitmap where they'll actually fit (devices where
tiles drawn wider), and position better in tray.  May also want to
allow scaling.
2009-01-13 13:11:05 +00:00
ehouse
88364775a1 cleanup: get rid of confusing but harmless * 2009-01-13 13:03:59 +00:00
ehouse
99a5a7912b Use new draw API but same bitmap as always (large in tile, small in
cell.)  In cases where bitmap and text provided, prefer bitmap.
2009-01-13 13:02:17 +00:00
ehouse
6d7a81fce6 change draw api so all available bitmaps (only 2 in current format)
can be passed for tile and cell drawing
2009-01-13 12:57:56 +00:00
ehouse
eb1e667c17 Add type Letter to represent what are Tiles in Crosswords:
lang-independent indices into the set of letters in use.  Should be no
change in functionality or code generated.
2009-01-07 05:13:45 +00:00
ehouse
948981434b Fix compiler warnings. Should be no change in generated code. 2009-01-07 05:03:13 +00:00
ehouse
5d7ee61448 Turn on relay by default. 2009-01-07 04:54:23 +00:00
ehouse
ac8c06d9cf Turn on and enable UI for relay and sms transport. relay doensn't
work, at least on win32 where threading code is broken, and former is
completely stubbed out.
2009-01-05 14:13:40 +00:00
ehouse
4595191395 Always use GetForegroundWindow to find parent 2009-01-05 14:06:52 +00:00
ehouse
0b82d75bc8 add controls for sms connecting 2009-01-05 14:05:56 +00:00
ehouse
7158ef3802 Cleanup; add sms example to usage() 2009-01-05 02:11:13 +00:00
ehouse
dc82fc6bff Use the new common/strutils binToSms routines. For now, use glib's
too and assert output is the same.
2009-01-05 02:10:27 +00:00
ehouse
abeb5376c0 Implement, with help from glib base64 source, routines to turn binary
into SMS-compatible strings and back.  This should ensure that the
format is cross-platform.
2009-01-05 02:08:55 +00:00
ehouse
e570d692b5 cleanup. SMS, not BT, is the default conType for other than Palm. 2009-01-05 02:07:30 +00:00
ehouse
c731e0d231 Remove newlines from debug statements. 2009-01-05 01:59:04 +00:00
ehouse
4698b835e8 Fix to compile with relay enabled and not STANDALONE_ONLY. Verified
that win32 build can open games saved by previous version, but nothing
else (e.g. use of network or even dialogs to set up relay connection
parameters.)
2009-01-04 00:00:45 +00:00
ehouse
342674276a Cleanup to build with relay enabled; don't enable any network features
if STANDALONE_ONLY is defined.
2009-01-03 23:56:20 +00:00
ehouse
e32e231dd5 New stream version makes standalone and multi-device build formats the
same so new Wince can open files saved by current version.  Tweaks to
build with relay and heartbeat turned on.
2009-01-03 23:54:25 +00:00
ehouse
863f79bfb9 Fix compile errors using latest gcc (fread etc must have return value checked) 2009-01-03 18:12:34 +00:00
ehouse
552f6350f9 tweaks to stop/start script to run on an ISP's server better 2008-12-31 04:26:37 +00:00
ehouse
c53fe0857c Don't parse the same conf file twice in a row. 2008-12-31 04:21:03 +00:00
ehouse
1c3be799b7 start counter for uptime at launch 2008-12-31 04:19:23 +00:00
ehouse
9fc325a334 include new file in tarball 2008-12-31 04:16:55 +00:00
ehouse
32121c5634 include svnversion output in tarball 2008-12-30 05:17:00 +00:00
ehouse
ea6fff8f28 replace int with bool where appropriate; fix to compile with newer g++ 2008-12-30 05:13:30 +00:00
ehouse
cefd69d8b3 Since there's now a flag indicating whether to show the value of a
tile, make value unsigned.  Adjust/fix platforms.  Add cmdline flag to
linux apps for hiding values.
2008-12-29 03:09:35 +00:00
ehouse
1755267d55 Add support to gtk app for tranport over "sms", with files containing
base64-encoded data as the messages.  Make necessary changes to comms.
This is the foundation for doing real SMS transport on handhelds.
Currently a full robot game works for two gtk clients provided the
server is launched first.
2008-12-29 01:35:29 +00:00
ehouse
270006f47b rename variables; fix compiler warning. 2008-12-20 04:25:41 +00:00
ehouse
7e2f2fd38e invalCellsUnderRect didn't work for rects not intersecting board; fix. 2008-12-16 05:30:25 +00:00
ehouse
bc01341f95 When values are hidden, draw letters as large as possible in the tile. 2008-12-13 07:34:16 +00:00
ehouse
13001301ec Indicate tiles whose values should be hidden with a new bit rather
than a negative value.
2008-12-13 07:32:53 +00:00
ehouse
3666235462 App name and game name don't fit most titlebars, so use app name only
when game has none yet.
2008-12-13 07:29:47 +00:00
ehouse
dab2f23479 Use Ok for stringbox, Done for Saved games dialog; next release to be
rc1, not b7
2008-12-13 04:39:06 +00:00
ehouse
9e7bfe0ff7 Provide default player names in game info dialog rather than when
creating the very first game to fix bug where creating a game with n+m
players from a saved game with n yields m blank default names.
2008-12-12 13:42:52 +00:00
ehouse
59cd2a83d1 Make tray tiles one pixel taller, extending all the way to bottom of
screen.
2008-12-12 13:40:41 +00:00
ehouse
cb7b8bf84f Back out change: button to dismiss Saved games dialog is "Done" again,
not "Ok".
2008-12-12 05:28:53 +00:00
ehouse
e28363f369 Warn when unable to open a saved game (generally when an older version
of the app tries to open game saved by newer version.)
2008-12-11 13:48:59 +00:00
ehouse
37518415ea fix occasional crash: null-out ptrs after deleting what they point to. 2008-12-11 13:42:21 +00:00
ehouse
909bcb1dca Don't open saved games dialog unless current game has a name:
cancelling name request cancels saved games dlg too.
2008-12-08 05:51:21 +00:00
ehouse
5aa7289dfe Don't remove extension if there's isn't one (fixes new segfault.) 2008-12-08 05:50:25 +00:00
ehouse
19d8f307b1 Add appropriate icon flags to all uses of MessageBox; remove a couple
of unnecessary Cancel buttons.
2008-12-07 16:24:26 +00:00
ehouse
c38297711e Fix other sites putting up dialogs claiming main window as parent when
it isn't.
2008-12-07 05:21:13 +00:00
ehouse
c791010603 Don't let smartphone users set hintlimits checkbox, and explain
why. Fix bug calling MessageBox with main window ptr from dialog.
Include name of preexisting file when warning user who enters it while
saving/renaming.
2008-12-07 01:30:18 +00:00
ehouse
e37cfa6ce8 up version to b7 2008-12-06 22:21:38 +00:00
ehouse
c82fb50055 Use SetBkMode to prevent overlapping tile face/value pairs from
erasing each other.
2008-12-06 22:14:40 +00:00
ehouse
57197f8b2c Mods to saved games dialog: allow to rename the current game; after
renaming or duplicating a game, make that new name the one initially
selected in the listbox; remove sorting code relying on OS to sort
when CBS_SORT set.
2008-12-06 20:28:01 +00:00
ehouse
6da758b5fa set text color before drawing star bitmap to make color consistent;
add utility function for setting colors to reduce code size.
2008-12-06 16:22:43 +00:00
ehouse
af1ca9af84 Quash some compile-time warnings. snprintf instead of sprintf. 2008-12-06 15:59:30 +00:00
ehouse
5508ae4593 Add testcases for Treo-sized screens. 2008-12-04 06:17:14 +00:00
ehouse
a9fbd3c027 Ignore bitmap for tiles, using string instead. 2008-12-04 06:16:37 +00:00
ehouse
dbb8dd4713 Fix blank picker on PPC by making dropdown tall enough to drop. 2008-12-04 06:15:57 +00:00
ehouse
d3d3dd561f Pass string for tile even when it has a bitmap. Let platform decide which to use. 2008-12-04 06:13:59 +00:00
ehouse
088ab1451e Use minimum height for tile value; draw bitmaps (clipped) even if too large. 2008-12-03 13:42:30 +00:00
ehouse
62aca48673 Make Show values the left softkey after chosen once. 2008-12-03 13:40:07 +00:00
ehouse
7ae7b91e40 When hideTileValues changes, inval all tray tiles. 2008-12-03 13:38:54 +00:00
ehouse
1c6460f64a Add "Hide tile values" checkbox and support it. 2008-12-03 13:37:55 +00:00
ehouse
de6f6dcdef draw bitmaps larger when will fit; draw hint region border thicker and
in player color; rename constants.
2008-12-02 13:47:18 +00:00
ehouse
b3d3f80860 Lots of little tweaks to dialog item locations. Also, don't make
phonies combo/list box sorted since that screws up order of choices.
2008-12-01 13:19:14 +00:00
ehouse
3bb15ab093 add (unused) missing defines for IME stuff, which can't work until I
figure out how to test for presence of qwerty keyboard
2008-12-01 13:16:58 +00:00
ehouse
5c53620470 if scrollbar has focus when removed due to screen resize, don't
continue to draw indicator rects in focus color
2008-12-01 13:11:58 +00:00
ehouse
f8870da48f Don't draw hint rect, or start drag to change it, if hints are disallowed. 2008-12-01 13:06:37 +00:00
ehouse
438be9dd2a When tray overlaps board yet is hidden, should not be on top except
when focussed.  Remember state before gained focus, and restore it
when loses.
2008-12-01 13:04:14 +00:00
ehouse
b78a46e110 When tray overlaps board yet is hidden, should not be on top except
when focussed.  Remember state before gained focus, and restore it
when loses.
2008-12-01 13:03:42 +00:00
ehouse
ce2420840d a bit of cleanup 2008-11-22 19:43:47 +00:00
ehouse
6e9f5791d6 Fix bug: when using hint limits to restrict first move on empty board
limits were ignored for the vertical search.  Fix is to make
special-case treatment of first move more integrated so special limits
code isn't needed.
2008-11-22 19:32:42 +00:00
ehouse
b24f3d66a7 fix warning when DEBUG not defined 2008-11-22 17:14:08 +00:00
ehouse
7d9259f16a update readme 2008-11-22 16:49:55 +00:00
ehouse
44ae99a075 remove redundant set of #defines for whether we're compiling for desktop or wince 2008-11-22 16:43:55 +00:00
ehouse
5118e415c7 use a gharish color for focus so doesn't get lost 2008-11-22 16:37:58 +00:00
ehouse
542e441b69 hide focus when pen used, but remember where it was (don't set to
OBJ_NONE) so can replace it when focus keys used again.
2008-11-22 16:37:29 +00:00
ehouse
46b574b4e7 fix inval of focussed tile to take divider into account. 2008-11-20 05:12:48 +00:00
ehouse
68778333a4 finish rem: changes and fix crash: show Remaining tiles dialog and draw focussed 2008-11-19 05:08:57 +00:00
ehouse
5f27b1552c When fewer than 4 players shown in game info dialog, move controls
higher that are below player rows. On some screen sizes this prevents
those items from being off-screen. Note that this requires use of
DM_RESETSCROLL message to get Smartphone to recalc scroll info and
that DM_RESETSCROLL is not yet defined in cegcc.
2008-11-18 12:36:27 +00:00
ehouse
d4e2f5c07a Fix timer positioning; provide default values for w32 height & width;
put up dialog on assertion failures now that they're uncommon.
2008-11-13 05:46:21 +00:00
ehouse
a91aea537a up beta version 2008-11-12 04:55:54 +00:00
ehouse
ce82507db0 Add checkmarks to four menuitems to show state; add fullScreen
menuitem to w32 version and give it something to do.
2008-11-10 18:49:26 +00:00
ehouse
d4bc42b0a1 add getters 2008-11-10 16:01:46 +00:00
ehouse
e2cd0b5807 Speed up font calculation by interleaving width and height
constraints; simplify pending score display by using %dp rather than
trying to fit two strings in the many possible sizes of tiles.
2008-11-08 16:25:49 +00:00
ehouse
30df2166ab Don't assert when unknown key seen; just ignore. 2008-11-08 16:19:04 +00:00
ehouse
cfc00206c1 fix release build compile error. 2008-11-06 06:30:30 +00:00
ehouse
5cb97bf636 New Ubuntu has a stricter compiler... 2008-11-06 03:16:09 +00:00
ehouse
3958950ad1 When finding font to fit height, optionally force it to fit width as
well.  Mechanism used for Rem only so far, but will work for score too
as long as we don't need it to shrink font as score gets longer.
Current impl worries about height first, then width; would be better
to look at both simultaneously to reach the goal more quickly.
2008-11-02 23:17:38 +00:00
ehouse
e6399c74c1 Fix bug making glyphs from random garbage; when narrowing in on
correct font size, compute based on ratio from what we have rather
than just reducing by one each pass.
2008-11-02 04:17:42 +00:00
ehouse
be3863dd5a For win32 builds, locate files relative to ./ 2008-11-02 04:15:10 +00:00
ehouse
93e615b44c Don't skip over occupied tiles when moving cursor unless alt key is
down.  Smartphone doesn't have an alt key, and this
simplier-to-understand behavior should be the default.
2008-11-02 03:43:33 +00:00
ehouse
661a12ae5c bug: choosing hint menu also chooses commit-turn if focus happens to
be on 7th tile.  Problem is that OS sends key up after handling menu.
Fix is to track when we've seen a keyDown, and drop keyUp events when
we haven't.
2008-10-31 04:36:44 +00:00
ehouse
9e9d8a9d79 show non-dived focus as tray with background and perimeter tiles with
background rather than opaque border.  Looks better on a range of
screen sizes.
2008-10-31 04:33:20 +00:00
ehouse
9cd570f152 add a few new WM_ constants for debugging 2008-10-31 04:31:46 +00:00
ehouse
4ff04dac84 When tray's not revealed, cursor should travel over all tiles to be
consistent with display of 7 tiles even if some are really on board.
2008-10-31 04:30:58 +00:00
ehouse
96d9baaac1 Compress user-visible name so more likely to fit on-device widgets 2008-10-29 08:47:12 +00:00
ehouse
cbdf8edcf5 Use SHGetSpecialFolderPath to locate dicts in /Document Files/Crosswords; reserve 1-pixel space around Rem: text 2008-10-29 08:46:02 +00:00
ehouse
91b20350f7 Make much smaller .ico file by hand using GIMP, and check it in. png
files are inputs to that process but not used in the build until I
figure out how to script building the .ico.
2008-10-26 21:05:44 +00:00
ehouse
e30c72c829 make -q option take number of seconds to pause before quitting 2008-10-26 15:33:21 +00:00
ehouse
a59c2456d5 Tray cannot be exactly same height as cells as it has thicker borders.
Reserve that difference from calculation of cell height so tray will
pick it up later.
2008-10-26 15:01:05 +00:00
ehouse
b684bb238a Add a 16x16 icon. Remove the .ico file from svn, adding instead the
three .png files from which it's built.  Build now depends on icotool,
which is in Debian and so not a problem.  The resulting .ico is
probably 3x the size built with winders tools, so eventually I should
fix icotool or nag its author.
2008-10-25 21:59:46 +00:00
ehouse
3c8f9d7049 Get rid of string constants referencing \My Documents, using instead
SHGetSpecialFolderPath.  Cache the result of calling it.  Note that
mingw SHGetSpecialFolderPath headers define SHGetSpecialFolderPath as
SHGetSpecialFolderPathW which isn't in the library; hack around that.
2008-10-25 18:08:36 +00:00
ehouse
9b17c20117 gtk/ncurses support for Rem: focus and showing remaining tiles. Also
rewrite gtkask to use gtk_message_dialog and add sigint handler.
2008-10-24 09:07:30 +00:00
ehouse
3b5337d7d2 wince support for Rem: focus and showing remaining tiles 2008-10-24 09:05:13 +00:00
ehouse
77d14163b1 track focus on Rem: region of scoreboard in addition to players' score
areas, pass into draw whether to show it highlighted, and fire a util
method when it's clicked on.  Intent is that platforms show the
remaining tiles dialog.
2008-10-24 08:56:20 +00:00
ehouse
56cc76b913 Save games in different directory for debug version to prevent
crashing when opening wrong-format files.
2008-10-24 08:36:44 +00:00
ehouse
7c5b8d25fd change name of platform in about box 2008-10-24 08:35:50 +00:00
ehouse
944789b14c use three bits for scoreboard cursor in anticipate of making Rem selectable. 2008-10-21 03:19:54 +00:00
ehouse
c48f836fe7 back out 2245: having scrollbar be focusable is a better way of allowing scrolling than overloading cursor movement; scroll cursor onscreen when diving and it is off 2008-10-20 02:23:17 +00:00
ehouse
afbb5ed2fe Fix bug: tray too short on large screen. Always make tray a multiple
of cell size when possible, using minimum when needed.
2008-10-20 01:24:59 +00:00
ehouse
bff5f9b7c9 Send message on back key only when coming up, not going down, to
prevent double-dismiss of dialogs.
2008-10-18 19:38:31 +00:00
ehouse
c81e85deef Remove overdesigned edit-control-caching mechanism in favor of just
asking if the current focus owner is an edit control.
2008-10-14 05:25:15 +00:00
ehouse
4dde28bc28 Walk dialog's controls and make a list of Edit controls so that dialog
procs don't have to pass them in.  Compare handles rather than IDs.
2008-10-13 05:46:45 +00:00
ehouse
7281423100 Trapped back key should exit dialog even if it has an edit control if
that control does not have focus.  Do that.  And since I can't figure
out how to use APIs available in CE to find edit controls dynamically
each dialog proc has to pass its IDs in.  May fix that later, in which
case ceDlgSetEdits() should be removed.
2008-10-13 01:26:20 +00:00
ehouse
3992e4299f Remove logging; add WM_ constants for message logging. 2008-10-13 01:22:58 +00:00
ehouse
40e33036db Test (including a hack on undocumented bits in WM_HOTKEY's lParam)
whether back key resulted in a focus undive, and if it didn't, quit
the app.  Not quitting would best be done using SHNavigateBack, but
cegcc doesn't seem to have that.  And even the default behavior,
without messing with back keys at all, is to minimize, which means you
can't delete the .exe later without soft reset.  That may be my bug,
but for now we're exiting.
2008-10-13 01:17:13 +00:00
ehouse
4e07fb053d add 22x22 icon for smartphone 2008-10-13 01:05:42 +00:00
ehouse
097a85d115 Fix bug: don't delete current game name when user might still cancel
new game creation.
2008-10-11 23:56:04 +00:00
ehouse
3e3ff73e52 first cut at script to produce zipfile and readme 2008-10-11 22:59:18 +00:00
ehouse
ac5bbced8f mark debug-only formals and wrap in #defines to fix compile-time
warnings of clean wince build.
2008-10-11 17:58:43 +00:00
ehouse
86fb79d969 Fix to compile and run for IP-direct case, possibly breaking
heartbeats used over bluetooth.
2008-10-11 17:33:07 +00:00
ehouse
a26f6ad658 flag unusued param to fix compile error; move code used only in
multi-device games inside ifdefs.
2008-10-11 17:30:35 +00:00
ehouse
0f3b206371 inval font cache when new dict has different chars; use cell size as a
minimum font heigth for tray; darken default player 4 color for better
contrast.
2008-10-11 16:53:22 +00:00
ehouse
bbe8cceb6e debug changes: change defines to remove gremlin-only code; add missing constants. 2008-10-11 16:46:08 +00:00
ehouse
51a0825b51 Really old change: write struct differently in RFCOMM case 2008-10-11 15:04:11 +00:00
ehouse
018be047ad fix bug: need to reset engine when divider moved via keys as well as
when dragged.
2008-10-10 08:38:23 +00:00
ehouse
37e922e92b drawing tweaks: better test for wide short tray tile; don't inval
scroll rects unless focus shifting.
2008-10-09 12:12:25 +00:00
ehouse
5e839d82e4 get rid of excessive logging 2008-10-09 12:07:30 +00:00
ehouse
d7f17ecbe0 add function for logging location reached when debugging 2008-10-09 12:04:57 +00:00
ehouse
190c0aca88 Modify layout code to keep cells close to square when possible,
leaving significant border space on highly rectangular screens.
2008-10-08 04:42:16 +00:00
ehouse
a8fb37504d Don't choke when words are longer than 15 letters. 2008-10-08 04:37:44 +00:00
ehouse
a4f27e5525 Draw focussed scrollbar using WM_CTLCOLORSCROLLBAR. Onlyworks on
Win32, so keep old method for Wince.
2008-10-07 04:00:37 +00:00
ehouse
5ba97223f8 Set aside portion of scrollbar rect above and below it and color that
with focus color when the scrollbar has keyboard focus.  This should
help users figure out how one-handed nav works.  Better would be to
override background color of the scrollbar and draw it full-sized, but
I havne't figured out how.  This is good enough for beta.
2008-10-01 08:31:43 +00:00
ehouse
e0d73f4cd4 add width x height to title bar correctly (debug w32 only) 2008-09-29 05:07:35 +00:00
ehouse
8cecbd45c4 put dictionary in place if none there 2008-09-29 05:06:24 +00:00
ehouse
2f618616df Draw divider using player color, not always black. 2008-09-28 17:55:27 +00:00
ehouse
f8bb0ae202 Two large changes. First, layout board etc. based only on screen
dimensions and one constant giving the minimum height of a cell.
Replaces a bunch of constants that didn't scale to different sized
screens well.  Second, add the vertical scrollbar into the focus
rotation.  Once I have it showing that it's focussed it'll be easier
to figure out how to scroll the screen.
2008-09-28 17:50:04 +00:00
ehouse
ae6610a94f Script for testing a bunch of Wince device resolution under Wine. 2008-09-28 17:38:18 +00:00
ehouse
41e6f4abe2 Fix nasty crashers: restore previous game when unable to open new,
e.g. because it was created with a dict that's no longer available (in
which case warn to that effect.)
2008-09-28 16:48:30 +00:00
ehouse
8a6992132b comments and assertions 2008-09-28 16:47:11 +00:00
ehouse
d1603aa543 Fix crash when switching to game with same-language dict: inform draw
even if tile sets the same since old is about to be destroyed.
2008-09-28 16:43:24 +00:00
ehouse
79ec57be8d Bug: tap on hidden tray doesn't reveal it (likely new). Fix by always
reversing hidden tray on giving it focus and by finding tray to be
location of pen even when hidden (but only the part not under the
board.)
2008-09-27 16:59:04 +00:00
ehouse
e84a7c7a2d clean up tile-picker dlg 2008-09-27 15:58:07 +00:00
ehouse
7627672324 Add more WM_ constants 2008-09-27 15:15:14 +00:00
ehouse
df28e86fc8 Improve the font dialog 2008-09-27 15:10:53 +00:00
ehouse
63422f9c1d When moving cursor within board, scroll board if it's possible to do
so, and only if it is not move the cursor (or if needed to keep it
visible after scroll.)  This makes it easier for users to scroll --
but may not be needed if focussing scrolbar works.
2008-09-27 15:07:48 +00:00
ehouse
0fd14dc0b7 {G|S}etWindowLong -> {G|S}etWindowLongPtr as per MSDN docs 2008-09-27 15:05:26 +00:00
ehouse
564b827f6d Make new FAA 4.1 the default Spanish dictionary source; build three
dicts (8, 9 and 15) by default (all: target).
2008-09-18 03:55:04 +00:00
ehouse
eb1f083a19 Require two key events to reveal tray and act on a tile; don't treat
divider as wider (to make it easier to tap on) when keyboard being
used to select.
2008-09-18 03:53:53 +00:00
ehouse
1a1beed2f3 cleanup: name changes; don't measure the same glyph twice. 2008-09-18 03:50:04 +00:00
ehouse
1536a05ac2 bug fix: check which combo is generating events rather than assume all
are meant to change number of players.
2008-09-18 03:48:29 +00:00
ehouse
b3f8902307 Check in files forgotten before: simple font browser. 2008-09-18 03:47:04 +00:00
ehouse
f021964213 fix ncurses version so it can save games and read them back in: make existing gtk code run on both. 2008-09-18 03:46:27 +00:00
ehouse
ac03c4be61 Fix to compile with newer g++; increase size of buffer to handle largest Spanish wordlist. 2008-09-18 03:44:43 +00:00
ehouse
33c99a2371 cleanup; to get better idea of what fonts are available on smartphone
add rough font chooser dialog.  Is commented out and not meant to
ship.
2008-09-17 04:19:20 +00:00
ehouse
fd6345c1cb move logLastError 2008-09-14 16:06:51 +00:00
ehouse
82030b5382 plug leak: DeleteObject can't nuke an object CE didn't create 2008-09-14 16:06:18 +00:00
ehouse
4d7a781673 move logLastError 2008-09-14 16:01:28 +00:00
ehouse
e176540b5e remove unused defines 2008-09-14 14:38:16 +00:00
ehouse
93f120e274 Up copyright date. 2008-09-14 14:37:44 +00:00
ehouse
302f7524ef Up beta version; fix sizes to avoid clipping on some CE devices. 2008-09-14 14:36:31 +00:00
ehouse
d27b0d4eed Extend use of fitted fonts to scoreboard, allowing scoreboard to have
non-constant size eventually.
2008-09-13 15:24:23 +00:00
ehouse
720160e7de Pass streams to cedraw on save and restore, adding version flag for
backward compatibility.  Within cedraw, save cached font info to
remove the visible delay on startup.
2008-09-10 12:18:30 +00:00
ehouse
1825939981 Reduce parameter count. No logic change. 2008-09-10 11:57:30 +00:00
ehouse
34c4bdab9a In case where board can't fully fill screen, track the rects on either
side and erase them when they're invalidated.  When seeking best-fit
font, pull glyphs to measure from dictionary rather than assuming
A-Z. Speed font measuring code by passing over all glyphs only once,
noting tallest and lowest-extending then measuring only those two as
smaller sizes are tried.  This *may* make the process fast enough that
I don't need to cache the information across boots: need to try on
real hardware.
2008-09-09 12:31:02 +00:00
ehouse
69f667fba3 logRect utility 2008-09-09 12:20:45 +00:00
ehouse
d2cb36029b Had to comment out BLANKS_FIRST to compile new wince font code, so
assert that blank test catches only one tile per dict.
2008-09-09 12:20:09 +00:00
ehouse
61a3602dc5 Don't save dict as part of model. It's redundant as the platform code
already saves the name and passes the dict in.
2008-09-09 12:18:32 +00:00
ehouse
a1f3e3d174 call draw_dictChanged on load so draw can calc fonts immediately 2008-09-09 12:16:06 +00:00
ehouse
36627fb051 Add listeners to model so board can be notified whenever dictionary
changes.  Pass dict into draw via new API, removing it from the
draw_begin calls.
2008-09-05 12:11:37 +00:00
ehouse
36213460e0 Make CEDrawCtx def private; erase background when OS invalidates it.
This gets rid of what's visible behind the board when it's not
full-screen width, but causes a lot of flashing.  Better will be to
make board.c own an entire rectangle and to decide board dimensions
itself.
2008-09-01 15:10:28 +00:00
ehouse
cc627f6b6d Shrink scoreboard a bit. Goal's to not needs scrolling on small
screens, but still needs work.
2008-09-01 15:07:46 +00:00
ehouse
2daf7d503a Pick fonts based on actual size of the subset of glyphs we'll use.
This allows a better fit without hard-coding offsets.  It also takes
considerable time at startup, so either the algorithm has to be
improved or I need to cache the data as part of prefs (and delete it
when switching between landscape and portrait on devices that allow
that.)
2008-08-30 18:55:20 +00:00
ehouse
bd2eff236c catch up with API changes. GTK to use this still needs to be fixed! 2008-08-30 13:54:47 +00:00
ehouse
797b859c8e add pointer support to LIB_NO_UI case 2008-08-30 13:28:53 +00:00
ehouse
4d6aec67fe error message when hit feature is off but you try to use it; clean up memory on way out. 2008-08-30 13:27:27 +00:00
ehouse
1384be6895 Get rid of cute-but-confusing feature whereby the menuitem to which
the left softkey is set is removed from the right key's menu.  More
important is that menu-9-6 always mean "exit".
2008-08-27 12:38:01 +00:00
ehouse
bf505d1a62 Go back to using combobox on PPC but keep spinners on Smartphone.
Meaning: both exist in the resource, and at runtime we disable the
unwanted one and lookup IDs and sometimes window messages in order to
operate on 'em.  Also, spinners send WM_NOTIFY messages, so handle
that.  Current implementation is a bit of a hack but works.
2008-08-27 12:16:33 +00:00
ehouse
5e6ba430fe fix newg_attrChanged to exit quickly when there's no change 2008-08-27 12:09:30 +00:00
ehouse
07e7032c16 give serverRole a default value. 2008-08-27 12:08:07 +00:00
ehouse
5588ed30ad Fix cached pen remaining after color preference changed. 2008-08-02 14:35:40 +00:00
ehouse
39eb88b14f Replace dropdowns in limited-hint dialog with spinners. Combine flags
for spinners into a macro to guarantee all same.
2008-08-01 11:13:13 +00:00
ehouse
3859e84c52 fix major leakage by closing one game before opening another. 2008-08-01 10:47:32 +00:00
ehouse
be219b71f2 fix scrollbars now that I finally understand what nPage is supposed to be. 2008-08-01 10:37:52 +00:00
ehouse
691f5fea19 fix drawing on 320x320 devices by forcing Wince to treat them as 320x320. 2008-07-30 04:08:45 +00:00
ehouse
454788ad04 better leak debugging 2008-07-28 05:05:39 +00:00
ehouse
6c5e3b7149 draw divider focussed when all of tray has focus 2008-07-28 05:04:34 +00:00
ehouse
30fcb88e43 fix problems drawing focus so letters still visible on board. 2008-07-28 05:03:37 +00:00
ehouse
925964675a add game names in sorted order 2008-07-28 05:02:39 +00:00
ehouse
da105cfb16 fix typo 2008-07-28 05:02:11 +00:00
ehouse
507c5e87d8 add new warning message 2008-07-28 05:01:03 +00:00
ehouse
0c751cc4d1 Add feature lost when five-way drag of divider became possible: don't
allow focus rect to stop on any empty tray slot but the leftmost.
2008-07-24 12:39:46 +00:00
ehouse
ac0a9f4ac5 Put up dialog when user asks for hint and the feature's disabled. 2008-07-24 12:37:05 +00:00
ehouse
b00a2ac384 Fix drawing of divider -- is too narrow to shrink horizontally so do so vertically; implement warnf with a dialog. 2008-07-24 04:16:48 +00:00
ehouse
9f82df49f6 Draw top-level board and tray focus as rect (like palm) rather than by
shading certain tiles/cells.  Up version number.  Change capitalization.
2008-07-20 16:33:19 +00:00
ehouse
7ded50b908 nuke unused variable 2008-07-20 16:31:50 +00:00
ehouse
8d6ae9424c Draw divider smaller when focussed so color shows. Looks like crap,
but better than having focus disappear when on divider.
2008-07-18 09:20:20 +00:00
ehouse
fd805791e4 Quiet over-enthusiastic logging of state transitions. 2008-07-18 09:06:09 +00:00
ehouse
47088c8030 Return true on preflight for cursor move so will get called again.
Fixes tray nav on Palm.
2008-07-18 09:05:04 +00:00
ehouse
ab89d78ac8 selInfo can't be left null when board created, as selPlayer is 0.
Point at pti[0] to fix crasher.
2008-07-18 09:03:54 +00:00
ehouse
c20e85eccd combine all per-player arrays in board into a single array of structs.
access can then be via a ptr, more effecient and faster.  The change
seems to save 1K of generated code.  No changes to algorithms, only to
field access.
2008-07-18 07:49:00 +00:00
ehouse
5422b82fd3 Implement new model for focus/tray interaction aimed at smartphones
with five-ways and no obvious alt key.  Focus once dived into tray
moves over tiles *and* divider.  Tap of center key toggles
selectedness of object under focus.  Movement of focus when object is
selected drags the object (tile or divider) unless in trade mode.
This is easier to discover and behaves more like drag-and-drop -- and
lets you move the divider.  Works for linux and win32.  Key nav in
tray is broken on palm.
2008-07-17 05:16:09 +00:00
ehouse
e1c7211738 make function signature match param type 2008-07-17 05:07:01 +00:00
ehouse
0d44c26373 break board.c up so isn't too large for 68K on palm when compiled for
debugging.
2008-07-17 05:06:08 +00:00
ehouse
bc05761c4a change API for drawing divider so it can be focussed as well as
selected.  Being using that information in palm and wince.  For GTK,
use color rather than ugly black rects to indicate focus.
2008-07-17 05:03:01 +00:00
ehouse
47b27f0e46 remove unused variable 2008-07-17 05:01:24 +00:00
ehouse
df52f6a47a Accept words that contain no vowels. 2008-07-12 19:37:27 +00:00
ehouse
8e25e205fc update in accordance with current Dutch practice (says an informant) 2008-07-10 03:13:33 +00:00
ehouse
ad52e63ff0 separate UI-specific code so that a non-UI linux library can be compiled, e.g. for use with a toolkit not gtk or ncurses 2008-06-30 03:39:27 +00:00
ehouse
ebc481ddc0 Implement dup, delete and rename buttons in saved games dialog.
Differs from Palm in having no edit field.  Rather, a separate dialog
comes up to get the new name.  Rather than reload the spinbox with a
new set of saved games after an action, just close and reopen the
dialog.
2008-06-26 04:17:14 +00:00
ehouse
951d7e1c7e Use GetModuleFileName to find dictionaries in same directory as executable. Replace cute attempt to cons up list of possible dict locations with a string in a resource. Get rid of two-year-old code explaining a change in where dicts live. Fix typo putting 4K buffer on stack. 2008-06-13 05:25:20 +00:00
ehouse
2ed08ac7da Fix cosmetic problems when changing focus and board overlaps tray.
The goal is to have the tray drawn on top, even if it's otherwise
hidden, when the whole thing's focussed.  Fix is to inval and
recalculate rects more often as focus changes or tray is hidden.
2008-06-07 23:14:26 +00:00
ehouse
2905af749e Fix crasher: don't start a board-scroll operation and attempt to end
by dropping a tile.  (This part is to detect that no drag actuall happened.)
2008-06-07 23:07:31 +00:00
ehouse
183d5514ca Fix crasher: don't start a board-scroll operation and attempt to end
by dropping a tile.
2008-06-07 23:05:54 +00:00
ehouse
bbfdeb6bf8 Draw tiles hanging a bit below board when hidden to allow testing of
common case on wince devices.
2008-06-07 23:03:47 +00:00
ehouse
6153fc9854 Up version of APIs being used. Using non-hex may have been a mistake
anyway.  Remove locally defined function that's available with higher
version.
2008-06-07 15:59:56 +00:00
ehouse
49a897c0de Remove tabs. Whitespace changes only. 2008-06-07 14:47:55 +00:00
ehouse
80b73824e1 Cleanup: fix for win32; remove constants that belong in cegcc; etc. 2008-06-07 14:42:20 +00:00
ehouse
930ed69d6b Finally fix scroll-follows-focus for color edit dialog (the tallest).
Trick was to add BS_NOTIFY property to dialog controls and look for
the WM_COMMAND->BN_SETFOCUS message.
2008-06-07 14:40:05 +00:00
ehouse
fa1f65283f for win32, look for dicts locally. 2008-06-07 13:46:27 +00:00
ehouse
a29ab639fc rename and reorganize/simplify dialog-handling code common to all
dialogs, handling scrolling and backspace key (smartphone only) and
scroll-by-focus in a single place.
2008-06-05 04:29:28 +00:00
ehouse
3555414ffc Fix dictionary-search code to look in top-level temporary directories
rather than hard-coded "SD Card" etc. to work in non-English cases;
fix password dialog to fit, and simplify it; fix backspace on
smartphone for all dialogs with EDIT fields to actually backspace
rather than exiting app; and in main window have it raise focus.  This
change requires SHSendBackToFocusWindow(), which is not yet in cegcc.
Until I get a patch accepted this breaks wince builds.
2008-05-31 22:07:29 +00:00
ehouse
f749fdd560 Remove all tabs. No code changes. 2008-05-31 03:26:16 +00:00
ehouse
af089de849 Move to new cegcc, whose tools have slightly different name. 2008-05-26 00:47:40 +00:00
ehouse
bd6aed4b5a Fix so curses-only builds and curses build doesn't segfault. 2008-05-26 00:27:48 +00:00
ehouse
1355b61906 set background color in timer, preventing flash of color when focus on scoreboard. 2008-05-25 15:54:34 +00:00
ehouse
64199cf1ec clip so arrow doesn't overwrite cell border on smartphone with small cells. 2008-05-25 15:31:54 +00:00
ehouse
556e947cad Prevent Pts in temp score display from overwriting number: draw it
first, and use a font the right size.
2008-05-25 15:08:59 +00:00
ehouse
ec8786b2a7 cleanup: remove dead function; move variables closer to where used 2008-05-25 15:08:03 +00:00
ehouse
8fa530303a fix bug: don't advance arrow if unable to move tile to board (introduced with recent tile index changes) 2008-05-24 16:21:03 +00:00
ehouse
c6da605b56 add missing error message 2008-05-24 16:08:13 +00:00
ehouse
4c191e0755 Don't specify g++ version; add some consts to fix warnings with newer g++. 2008-05-21 03:49:11 +00:00
ehouse
6280129788 Fix bug that number key tries to move tile to board even during trade.
Generalize use of number to select tile in tray so that during trade
keys will toggle selected tiles.  Letters too.
2008-05-19 01:18:43 +00:00
ehouse
51d4c608f9 Don't include mingwm10.dll in .cab. Doesn't seem to be needed. 2008-05-12 02:51:22 +00:00
ehouse
5502c3ef8b Trying to give smartphone users way to use keypad to move tiles to
board.  Enabling key-to-text works, but constants to turn it off
aren't in cegcc.  So for b2 add a quick hack where 1 means first tile
in tray, 7 means last (rightmost).  Enable and test on gtk.
2008-05-11 20:29:43 +00:00
ehouse
290f505a98 While tap on draggable tile should not return it to tray, return-key on same tile should.
That's the only way to return a single tile on smartphone.
2008-05-11 16:20:37 +00:00
ehouse
f5b5da9dc5 Fix trade window draw and timer draw by setting clip rect. Change
softkey to turnDone when trading.  Tweak trade-related user messages.
2008-05-11 15:25:04 +00:00
ehouse
1a2ce36bb0 A bit of cleanup; no code change. 2008-05-11 15:23:22 +00:00
ehouse
cf6a3db940 Work around what appears to be smartphone bug where grouped radio
buttons are not kept in sync by manually unchecking one when the
other's selected. Also add terminating WS_GROUP bits; they're supposed
to be there, but did not help.
2008-05-11 13:58:04 +00:00
ehouse
4e9f1c6c2b remove unnecessary memset 2008-05-11 13:55:58 +00:00
ehouse
9617f503a9 Make prefs dialog narrower so fits smartphone screen. 2008-05-10 22:33:07 +00:00
ehouse
bbd9384a9e fix win32 build 2008-05-10 21:11:54 +00:00
ehouse
180de81e58 Fix color edit dialog itself. Shrink to fit smartphone screen. And
use another owner-drawn button for the sample so it can be located in
the resource file.
2008-05-10 21:09:12 +00:00
ehouse
3d6f26cc3d Work around apparent limitation to smartphone/ppc, that ownerdraw
buttons don't generate WM_MESSAGE events and ownerdraw static controls
don't get drawn: have one disabled ownerdraw button as the color
sample and a real button to trigger the edit.
2008-05-10 18:41:16 +00:00
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