Commit graph

2711 commits

Author SHA1 Message Date
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