ehouse
8f08667f5d
Lots more changes, and some reversions. Win32, gtk and ncurses all
...
work now including saving/opening games. Network play probably
doesn't as writing/reading a dict from stream has to change. It's
doubtful patches from this branch will be merged. Rather, I'll take
the concepts and crib some code when re-implementing. Concepts:
XP_UCHAR becomes UTF-8 on both platforms, and on wince we translate to
wchar_t just as now but from the utf-8 codepage. That keeps the work
and risk to a minimum.
2009-03-29 15:53:15 +00:00
ehouse
2d33d47d67
Too many changes to list. Linux works to display utf-8 dict text on
...
gtk and curses, but crashes when saving game (-f option.) Wince
doesn't even compile. This is to backup partial changes, not a
revision to build.
2009-03-22 23:58:22 +00:00
ehouse
23b07772c0
invalCellsUnderRect didn't work for rects not intersecting board; fix.
2008-12-16 05:30:25 +00:00
ehouse
28638c4f23
When hideTileValues changes, inval all tray tiles.
2008-12-03 13:38:54 +00:00
ehouse
8a81089d22
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
239227ada3
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
e1cf1573b0
fix inval of focussed tile to take divider into account.
2008-11-20 05:12:48 +00:00
ehouse
c65d2cf574
add getters
2008-11-10 16:01:46 +00:00
ehouse
8492bc7c7a
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
3b28583d0d
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
bc8ebcc1b2
use three bits for scoreboard cursor in anticipate of making Rem selectable.
2008-10-21 03:19:54 +00:00
ehouse
1fb537ba41
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
b5a823fd93
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
960fee16cc
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
42ad517e52
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
918c876e13
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
181e880d8d
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
2803f239df
Put up dialog when user asks for hint and the feature's disabled.
2008-07-24 12:37:05 +00:00
ehouse
5fb7bb95d4
selInfo can't be left null when board created, as selPlayer is 0.
...
Point at pti[0] to fix crasher.
2008-07-18 09:03:54 +00:00
ehouse
52650992ee
combine all per-player arrays in board into a single array of structs.
...
access can then be via a ptr, more effecient and faster. The change
seems to save 1K of generated code. No changes to algorithms, only to
field access.
2008-07-18 07:49:00 +00:00
ehouse
e83786759c
break board.c up so isn't too large for 68K on palm when compiled for
...
debugging.
2008-07-17 05:06:08 +00:00
ehouse
2923f301a5
Fix cosmetic problems when changing focus and board overlaps tray.
...
The goal is to have the tray drawn on top, even if it's otherwise
hidden, when the whole thing's focussed. Fix is to inval and
recalculate rects more often as focus changes or tray is hidden.
2008-06-07 23:14:26 +00:00
ehouse
e60d338488
Remove all tabs. No code changes.
2008-05-31 03:26:16 +00:00
ehouse
d053f0731f
Fix so curses-only builds and curses build doesn't segfault.
2008-05-26 00:27:48 +00:00
ehouse
ca7c14128a
fix bug: don't advance arrow if unable to move tile to board (introduced with recent tile index changes)
2008-05-24 16:21:03 +00:00
ehouse
73e0313263
Fix bug that number key tries to move tile to board even during trade.
...
Generalize use of number to select tile in tray so that during trade
keys will toggle selected tiles. Letters too.
2008-05-19 01:18:43 +00:00
ehouse
1d5446bfdf
Trying to give smartphone users way to use keypad to move tiles to
...
board. Enabling key-to-text works, but constants to turn it off
aren't in cegcc. So for b2 add a quick hack where 1 means first tile
in tray, 7 means last (rightmost). Enable and test on gtk.
2008-05-11 20:29:43 +00:00
ehouse
465daf0a15
While tap on draggable tile should not return it to tray, return-key on same tile should.
...
That's the only way to return a single tile on smartphone.
2008-05-11 16:20:37 +00:00
ehouse
83c6abdfae
A bit of cleanup; no code change.
2008-05-11 15:23:22 +00:00
ehouse
f1ec47aa93
force miniwindow entirely onto board even if natural position is on
...
tray; fix overdrawing onto miniwindow by making timer proc return a
boolean and only redrawing (on wince) when it's true.
2008-04-12 15:36:31 +00:00
ehouse
72457bf28c
add ability to scroll the board by dragging it. add new method
...
util_altKeyDown to allow user to choose between scrolling board and
dragging the hint rect when both are possible. add adjustYOffset;
make it and board_setYOffset more tolerant of out-of-bounds inputs and
use that to simplify calling code.
2008-04-08 03:55:53 +00:00
ehouse
f1c8dd6190
Implement scrolling during drag via timer rather than by counting on
...
getting notified when pen is dragged off the board. The latter won't
happen if the board is up against the edge of the screen.
2008-03-29 20:23:27 +00:00
ehouse
ffd7dffd27
When scrolling in response to a drag, invalidate under the tile both
...
before and after the scroll. Otherwise on platforms where scrolling
is via a bitmove the old position gets scrolled away and never redrawn
leaving ghost tile parts lying around.
2008-03-15 14:00:05 +00:00
ehouse
ddafe8b97a
Indicate empty cell with CELL_ISEMPTY rather than an empty string; fix
...
palm to not draw star on top of placed tile.
2008-03-14 09:36:42 +00:00
ehouse
88ef41af15
rewrite invalCellsUnderRect to be less stupid: start from rect passed
...
in rather than whole board.
2008-03-14 09:20:26 +00:00
ehouse
3dbf026372
fold hint-region-drag into dragdrpp, saving a bunch of code and
...
gaining scrolling during drag on small screens.
2008-03-13 12:23:22 +00:00
ehouse
0f18efb925
Make function static
2008-03-11 12:28:57 +00:00
ehouse
1eb2933d49
Don't return tile to tray on a simple tap when drag-drop is available; move
...
function between files.
2008-03-11 12:22:10 +00:00
ehouse
0988159795
add owner param to drawTileMidDrag so can color tiles correctly
2008-03-11 11:48:53 +00:00
ehouse
c26eed3462
merge with drag_n_drop branch: apply patch generated with this command on that branch: svn diff -r 2080:2087
2008-03-08 23:16:21 +00:00
ehouse
93f95588d8
add and call util_turnChanged
2008-02-26 13:46:33 +00:00
ehouse
ff457236ef
Don't hide tray if there's only one player.
2008-02-16 15:53:00 +00:00
ehouse
df4c9fe442
Don't cast char array to long and write to it! Newer arm compilers
...
don't like this -- or maybe I was just lucky until now.
2008-02-04 06:13:11 +00:00
ehouse
f70bdb54ae
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
b527110379
replace all __FUNCTION__ with __func__
2007-12-02 19:13:25 +00:00
ehouse
4aa1f8188b
reset in/out var before each call to util_askPassword
2007-06-10 14:54:47 +00:00
ehouse
92f3f87543
Fix so compiles curses-only, and so curses cell can be 2x1 (for square board)
2007-06-01 02:08:04 +00:00
ehouse
41b81f463e
Hide tray on turn transitions when more than one non-robot local player present in game.
2007-05-20 20:46:29 +00:00
ehouse
7795068a40
Fix bug where arrow gets placed in wrong cell when tapping on tentative tiles to remove them while board is flipped.
2007-05-18 04:09:10 +00:00
ehouse
69912147de
When showing cell values, also show tile values if the don't-show tile values preference is set.
2007-04-06 01:41:16 +00:00